@dcl/account-site 6.8.0 → 6.9.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/assets/Address-BHGD07NO.js +1 -0
- package/assets/Authorization-DmoiysGx.js +1 -0
- package/assets/CoinbaseSDKConnection-C9-JnGls.js +1 -0
- package/assets/{ConstantsUtil-Dl5WOfjM.js → ConstantsUtil-g0AjdkOa.js} +1 -1
- package/assets/{ExchangeController-JD5-aj9j.js → ExchangeController-C-OE-irq.js} +1 -1
- package/assets/{HelpersUtil-BYRqEOLc.js → HelpersUtil-C073QcrZ.js} +1 -1
- package/assets/InAppWalletConnectUI-Bdxz0Bmy.js +1 -0
- package/assets/{NetworkUtil-CORVq-U7.js → NetworkUtil-BooKnyFI.js} +1 -1
- package/assets/{QRCodeRenderer-CAUMCMrQ.js → QRCodeRenderer-C2O8aJw5.js} +1 -1
- package/assets/Solidity-D6b-SCK0.js +1 -0
- package/assets/{SwapController-CENGi_f8.js → SwapController-DITN3ZmR.js} +1 -1
- package/assets/ThirdwebWalletManager-BUJ2S4b0.js +298 -0
- package/assets/TypedData-ByTQ7nLR.js +2 -0
- package/assets/addresses-DVWfx5EX.js +1 -0
- package/assets/arweave-CldmCeKB.js +1 -0
- package/assets/{biconomy-DURQhrK6.js → biconomy-C7JeDEA3.js} +1 -1
- package/assets/biconomy-C9hDxeVn.js +1 -0
- package/assets/{ccip-CzLewx-i.js → ccip-BtKXNXL8.js} +1 -1
- package/assets/{ccip-DGvrteB6.js → ccip-ByfH6Pp1.js} +1 -1
- package/assets/ccip-sd4F7RdI.js +1 -0
- package/assets/{chains-ClhAINLn.js → chains-ClhzAPRM.js} +1 -1
- package/assets/{common-BaZ48mbG.js → common-5Sx2Oaqw.js} +1 -1
- package/assets/common-DAlzQshe.js +1 -0
- package/assets/concat-hex-D_Hd0Y8j.js +1 -0
- package/assets/{controller-CgHGY4fa.js → controller-BKewv9ws.js} +2 -2
- package/assets/controller-CMiTdXrl.js +2 -0
- package/assets/{data-capture-C3H4h0ye.js → data-capture-SGXWH8uV.js} +1 -1
- package/assets/decimals-BkxTCZnw.js +1 -0
- package/assets/{decimals-wNlF21S5.js → decimals-DYCSb7r6.js} +1 -1
- package/assets/decimals-Den2KPun.js +1 -0
- package/assets/{detectExtension-ywrU3B9f.js → detectExtension-BqT-gQP6.js} +1 -1
- package/assets/detectExtension-DRxhZaJ-.js +1 -0
- package/assets/{email-EtC4Qw7k.js → email-D9PJu66O.js} +1 -1
- package/assets/{embedded-wallet-BLxx2nq0.js → embedded-wallet-BNJE9JJY.js} +1 -1
- package/assets/{engine-CbOuNdui.js → engine-BpIYDc2z.js} +1 -1
- package/assets/engine-CmO-qFS1.js +1 -0
- package/assets/estimate-l1-fee-DnqX0KQm.js +2 -0
- package/assets/{estimate-l1-fee-COxQ74Xh.js → estimate-l1-fee-n2GS47w0.js} +1 -1
- package/assets/eth_estimateGas-DVJqp0a0.js +1 -0
- package/assets/eth_estimateGas-ZIidgCSn.js +1 -0
- package/assets/{eth_getStorageAt-CLxjZO4t.js → eth_getStorageAt-DMscVfg3.js} +1 -1
- package/assets/eth_getTransactionCount-CMQovf3i.js +1 -0
- package/assets/{eth_getTransactionCount-BKcuSAaU.js → eth_getTransactionCount-h82D3bxu.js} +1 -1
- package/assets/{ethereum-D98w8ceQ.js → ethereum-Db4wQ8cQ.js} +1 -1
- package/assets/{extractIPFS-Bwmi3T5d.js → extractIPFS-446jiCiR.js} +1 -1
- package/assets/extractIPFS-tOg-rRc-.js +1 -0
- package/assets/{features-BqZGfYIj.js → features-Bya_uQnq.js} +1 -1
- package/assets/{fetchTokenMetadata-BrBgEOsH.js → fetchTokenMetadata-B1jhcJrg.js} +2 -2
- package/assets/fetchTokenMetadata-DXhdZ9jJ.js +2 -0
- package/assets/{fortmatic-Rdz9ucwd.js → fortmatic-DWc9CMNy.js} +1 -1
- package/assets/get-bytecode-FPC_G1PK.js +1 -0
- package/assets/get-ecosystem-wallet-info-BH812YkU.js +1 -0
- package/assets/{get-ecosystem-wallet-info-DfHMq1Kz.js → get-ecosystem-wallet-info-CsVSXoZ9.js} +1 -1
- package/assets/{getBalance-ZH0H3K3Z.js → getBalance-BJu93LMj.js} +2 -2
- package/assets/getBalance-BjubRO2E.js +1 -0
- package/assets/getCurrencyMetadata-B6uMlDub.js +2 -0
- package/assets/{getInstalledModules-DRhOlDcR.js → getInstalledModules-C_LJpz_7.js} +1 -1
- package/assets/getInstalledModules-cmepPgT8.js +1 -0
- package/assets/getNFT-BLT_Nrf_.js +2 -0
- package/assets/{getNFT-GNDwObaN.js → getNFT-Cf6D_49D.js} +1 -1
- package/assets/{getNFT-D6wHZRiB.js → getNFT-ClRsQ9zy.js} +2 -2
- package/assets/getNFT-uyJP8nm4.js +1 -0
- package/assets/{hashTypedData-41394cRH.js → hashTypedData-CLob9Zsk.js} +1 -1
- package/assets/{if-defined-DwiGupeI.js → if-defined-BfXFCfhz.js} +1 -1
- package/assets/in-app-wallet-calls-C0n9HjId.js +1 -0
- package/assets/{in-app-wallet-calls-CPU2uJ6f.js → in-app-wallet-calls-DUqkYMt1.js} +1 -1
- package/assets/index-1chDcRmP.js +2 -0
- package/assets/{index-CawWU9rF.js → index-4aItPLLW.js} +1 -1
- package/assets/{index-BEFVLZMS.js → index-9x3mVUYQ.js} +1 -1
- package/assets/{index-BR8a5etK.js → index-ACY2zvow.js} +1 -1
- package/assets/index-B1VBbtk9.js +1 -0
- package/assets/index-B4kmUY0d.js +2 -0
- package/assets/{index-Fv-acDXO.js → index-B6-Xobl2.js} +79 -78
- package/assets/{index-DIBbErfW.js → index-BGg37GBj.js} +1 -1
- package/assets/{index-C5zfi_7H.js → index-BQsaEzy7.js} +1 -1
- package/assets/{index-BOh2weBI.js → index-BRxU5H7H.js} +1 -1
- package/assets/{index-8zzhpxyI.js → index-BSP467IN.js} +1 -1
- package/assets/{index-DYQDZBEQ.js → index-BXifexJq.js} +1 -1
- package/assets/{index-phZWvHfL.js → index-Bi3OUhfd.js} +1 -1
- package/assets/{index-LZKkcZAZ.js → index-BkdqENWn.js} +1 -1
- package/assets/{index-BUjD0aLT.js → index-Bqkhbf-j.js} +1 -1
- package/assets/{index-CAfWDhIh.js → index-BrNT2tPP.js} +1 -1
- package/assets/index-BuLBr4CJ.js +3 -0
- package/assets/index-CBfD9fG_.js +3 -0
- package/assets/{index-Cm5owbs6.js → index-CCxvZC9z.js} +1 -1
- package/assets/{index-dE7qT1rS.js → index-CCzw3eWF.js} +1 -1
- package/assets/{index-BYXYehKA.js → index-CFnBXD-E.js} +2 -2
- package/assets/{index-Bi4I_eXH.js → index-CFy1Eegq.js} +1 -1
- package/assets/{index-vbDUNbAe.js → index-CGT2TfpK.js} +1 -1
- package/assets/{index-DjP1lSeJ.js → index-CLLWxWw1.js} +1 -1
- package/assets/{index-BjsRGW04.js → index-CMAF5KQo.js} +1 -1
- package/assets/{index-DDz_fX9F.js → index-CRXo5c7W.js} +1 -1
- package/assets/{index-C8LVWiNY.js → index-CXPEr8lr.js} +1 -1
- package/assets/{index-C79cRihP.js → index-C_CWRNXS.js} +1 -1
- package/assets/{index-B2fn3xIB.js → index-Ci26p999.js} +1 -1
- package/assets/{index-BkDiaE7t.js → index-Cja4UOCF.js} +1 -1
- package/assets/{index-C8qQNWbc.js → index-CpXrWP2a.js} +1 -1
- package/assets/{index-CgxIIYSr.js → index-Cv59_Dqg.js} +1 -1
- package/assets/{index-BbTsvCPk.js → index-CwOCLTiY.js} +1 -1
- package/assets/{index-C52TTugH.js → index-CxlJ-ZjW.js} +1 -1
- package/assets/{index-CJe1v77g.js → index-D-By2c9G.js} +1 -1
- package/assets/{index-CSiyIFnr.js → index-D0Jyo-s4.js} +1 -1
- package/assets/{index-mD5QWGsm.css → index-D2E7Umr3.css} +3 -3
- package/assets/{index-DLargbIn.js → index-DAGLKstf.js} +2 -2
- package/assets/{index-CSOxc5sc.js → index-DMZH80fA.js} +4 -4
- package/assets/index-DO01SzHY.js +4 -0
- package/assets/{index-DaWq4Nzj.js → index-DPWaLJzM.js} +1 -1
- package/assets/{index-DL0Eu5uz.js → index-DQt5rtxO.js} +1 -1
- package/assets/{index-jGki-zKe.js → index-DSqN93eC.js} +1 -1
- package/assets/{index-DjWVQGcv.js → index-DcZ1OZua.js} +1 -1
- package/assets/{index-BWZPtavh.js → index-DdD6BFNW.js} +1 -1
- package/assets/{index-8Zxz62OX.js → index-DftmpJ8E.js} +2 -2
- package/assets/{index-ZEPn8qKc.js → index-DuB7aae8.js} +1 -1
- package/assets/{index-rAbloVh4.js → index-TpT45Yhr.js} +4 -4
- package/assets/{index-B8gDkzKR.js → index-yvAPBrdI.js} +1 -1
- package/assets/index.es-BdGfQ9jz.js +29 -0
- package/assets/{index.es-BdRu1h__.js → index.es-CN4hhQIr.js} +1 -1
- package/assets/index.es-Cjo6uLeK.js +1 -0
- package/assets/{index.es-pnQCY6-7.js → index.es-LxVxXtUw.js} +1 -1
- package/assets/is-smart-wallet-kSShE3hl.js +1 -0
- package/assets/{native-CjSUDNml.js → native-CXizm-TO.js} +1 -1
- package/assets/{networks-B6IlNWMm.js → networks-DyswiDcL.js} +1 -1
- package/assets/oauth-CbK0gPlt.js +1 -0
- package/assets/{onramp-BTk7sVPr.js → onramp-phO3GqLV.js} +1 -1
- package/assets/{openzeppelin-BKxO6pj6.js → openzeppelin-CASw4uSB.js} +1 -1
- package/assets/openzeppelin-Dkk77Xr9.js +1 -0
- package/assets/ownerOf-Dn5Rvewb.js +1 -0
- package/assets/{ownerOf-CYvZRT99.js → ownerOf-HLFmP4SY.js} +1 -1
- package/assets/parse-typed-data-BSOEUDy_.js +1 -0
- package/assets/{parseNft-DhQFzpJp.js → parseNft-CwiONVVV.js} +2 -2
- package/assets/{parseSignature-DoNNAGxu.js → parseSignature-BsYIWxqL.js} +13 -13
- package/assets/{parseSignature-BduqmbK2.js → parseSignature-DXMGd6Bf.js} +3 -3
- package/assets/passkeys-tlSlZIRR.js +1 -0
- package/assets/{pay-with-exchange-CgOu6Uya.js → pay-with-exchange-BsYgDiHf.js} +1 -1
- package/assets/{qr-overlay-Bm0XTjkI.js → qr-overlay-B21EcFCK.js} +1 -1
- package/assets/{qr-overlay-DyMiJXUk.js → qr-overlay-CDVJkAma.js} +1 -1
- package/assets/read-contract-D8CQ_i-D.js +1 -0
- package/assets/{receive-r5RgRUWl.js → receive-CVGDvas8.js} +1 -1
- package/assets/{ref-Ki-jDMmv.js → ref-DeR4tBmt.js} +1 -1
- package/assets/resolveImplementation-2abc0dxK.js +1 -0
- package/assets/{resolveImplementation-B8tKI-wG.js → resolveImplementation-Cr9HN7sF.js} +1 -1
- package/assets/{rpc-nyXL61KJ.js → rpc-BuDu_uQE.js} +1 -1
- package/assets/{rpc-rFcFDQyb.js → rpc-DjXtIps7.js} +2 -2
- package/assets/secp256k1-BlHNYIaG.js +1 -0
- package/assets/{secp256k1-CPRDF0BA.js → secp256k1-CJ52XpcF.js} +1 -1
- package/assets/{send-DeIfSZo1.js → send-DP5QRJYD.js} +1 -1
- package/assets/send-batch-transaction-De71luzT.js +1 -0
- package/assets/{send-batch-transaction-CIuDJ271.js → send-batch-transaction-Dx0kM3Nk.js} +1 -1
- package/assets/{send-eip712-transaction-CknhU72d.js → send-eip712-transaction-Dm4F9s4t.js} +2 -2
- package/assets/send-eip712-transaction-q3anVEgs.js +2 -0
- package/assets/send-gasless-transaction-CQa_Dj1Y.js +2 -0
- package/assets/{send-gasless-transaction-yIAhbb7k.js → send-gasless-transaction-mWAyMAXy.js} +2 -2
- package/assets/send-transaction-B0F9brDJ.js +2 -0
- package/assets/{session-proposal-qDW11rpc.js → session-proposal-FRNsvDTi.js} +1 -1
- package/assets/session-proposal-ef7aaaHV.js +1 -0
- package/assets/session-request-Bz2BIU-j.js +2 -0
- package/assets/{session-request-By9y-Ayi.js → session-request-Cwmcu41B.js} +2 -2
- package/assets/sha256-BPZogG9w.js +1 -0
- package/assets/{sha256-_sKanFR7.js → sha256-DViOA4V5.js} +1 -1
- package/assets/{signing-Db0bjZpz.js → signing-D7Nlzpwh.js} +5 -5
- package/assets/signing-DhfHxzxy.js +2 -0
- package/assets/sleep-B_ShGKZF.js +1 -0
- package/assets/{socials-BcoSkWK5.js → socials-BZcwTEhb.js} +1 -1
- package/assets/{swaps-Bj8TNJkd.js → swaps-Cam24Ey2.js} +1 -1
- package/assets/switch-chain-YGyDlbyD.js +1 -0
- package/assets/thirdweb-B7gLwLri.js +27 -0
- package/assets/to-serializable-transaction-DAYFWHyO.js +23 -0
- package/assets/{totalSupply-CcNS_GzH.js → totalSupply-BZIagNGM.js} +1 -1
- package/assets/totalSupply-CWYDbbpl.js +1 -0
- package/assets/{transactionReceipt-CdsZdsdr.js → transactionReceipt-B-BG4ub0.js} +1 -1
- package/assets/{transactions-DuCMsSn_.js → transactions-CSAp5P5s.js} +1 -1
- package/assets/types-DFEAKZ3L.js +4 -0
- package/assets/utils-BtpzmIxp.js +2 -0
- package/assets/{utils-mHMkg6Kp.js → utils-Onbz2awt.js} +1 -1
- package/assets/{verifyHash-CboNxe2B.js → verifyHash-Bx9bP5KA.js} +3 -3
- package/assets/{w3m-modal-Cv35RGiT.js → w3m-modal-C63bxWaq.js} +1 -1
- package/assets/wait-for-tx-receipt-CuLnfaKm.js +1 -0
- package/assets/{wait-for-tx-receipt-Drv8Lr1P.js → wait-for-tx-receipt-DhBzWdPW.js} +1 -1
- package/assets/{wallets-GwhGT1dM.js → wallets-SiIK_4eu.js} +6 -6
- package/assets/{web-connector-bxGgXqpW.js → web-connector-BnZ6I9U8.js} +3 -3
- package/assets/web-connector-DJrJBk0_.js +2 -0
- package/assets/{zora-sepolia-Cm6nfoBw.js → zora-sepolia-5TL5obss.js} +1 -1
- package/index.html +2 -2
- package/package.json +3 -3
- package/assets/CoinbaseSDKConnection-BKJdrNl1.js +0 -1
- package/assets/InAppWalletConnectUI-BCpqJr7x.js +0 -1
- package/assets/ThirdwebWalletManager-C0WgXnZx.js +0 -326
- package/assets/biconomy-dnUC9FHi.js +0 -1
- package/assets/ccip-gHbZ_fY7.js +0 -1
- package/assets/common-DXGQjmn7.js +0 -1
- package/assets/concat-hex-BkDmxQZp.js +0 -1
- package/assets/controller-XOXJb_Xj.js +0 -2
- package/assets/decimals-Bk-qoHwa.js +0 -1
- package/assets/detectExtension-BeXqHbY8.js +0 -1
- package/assets/engine-BZxfKBvb.js +0 -1
- package/assets/estimate-l1-fee-CpxowJdJ.js +0 -2
- package/assets/eth_estimateGas-BI87Z6lb.js +0 -1
- package/assets/eth_estimateGas-D6jt3ABx.js +0 -1
- package/assets/eth_getTransactionCount-DX2PE6Uh.js +0 -1
- package/assets/extractIPFS-LV30uJp-.js +0 -1
- package/assets/fetchTokenMetadata-D7KlTBZU.js +0 -2
- package/assets/get-ecosystem-wallet-info-BpGtHQgI.js +0 -1
- package/assets/getBalance-B2S2mDBX.js +0 -1
- package/assets/getCurrencyMetadata-DO1CX_p4.js +0 -2
- package/assets/getInstalledModules-DQWxNwhQ.js +0 -1
- package/assets/getNFT-BS49C2kr.js +0 -1
- package/assets/getNFT-CW_k-N6S.js +0 -2
- package/assets/in-app-wallet-calls-C-2B-t-w.js +0 -1
- package/assets/index-BDODUKme.js +0 -1
- package/assets/index-BKKV2746.js +0 -3
- package/assets/index-C1yUcBr3.js +0 -2
- package/assets/index-DJX4jI7z.js +0 -2
- package/assets/index-DKiQCady.js +0 -3
- package/assets/index.es-DkH7OFeN.js +0 -29
- package/assets/index.es-anFcjT3-.js +0 -1
- package/assets/openzeppelin-C8E5DMGT.js +0 -1
- package/assets/ownerOf-CLN-nhw1.js +0 -1
- package/assets/resolveImplementation-YurP5AVa.js +0 -1
- package/assets/secp256k1-CLk510R-.js +0 -1
- package/assets/send-batch-transaction-BRauQRcY.js +0 -1
- package/assets/send-eip712-transaction-CJ8IBHyz.js +0 -2
- package/assets/send-gasless-transaction-Ds_GyVDO.js +0 -2
- package/assets/session-proposal-BOjuBppp.js +0 -1
- package/assets/session-request-BltijLOZ.js +0 -2
- package/assets/sha256-uQaZGirP.js +0 -1
- package/assets/signing-GXncBciP.js +0 -2
- package/assets/switch-chain-DXxIqQkk.js +0 -1
- package/assets/thirdweb-COhbCMEp.js +0 -27
- package/assets/totalSupply-ur_EDW6t.js +0 -1
- package/assets/web-connector-B0B4AGqG.js +0 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var Ja=Object.defineProperty;var Ya=(e,t,n)=>t in e?Ja(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var D=(e,t,n)=>Ya(e,typeof t!="symbol"?t+"":t,n);import{l as Wn,B as Jn,_ as Qa,h as Te,y as qt,T as Xa}from"./hooks.module-BNtNDAZY.js";import{l as Zt}from"./index-Fv-acDXO.js";import{E as _a}from"./index-B2fn3xIB.js";import{dw as $a,dt as ei,dq as ti,cm as de,du as ni,aS as we,d9 as ri,cn as Ge,co as Yn,d7 as te,dG as ai,dH as ii,dI as si,dJ as Qn,dK as oi,dL as jr,dM as gt,dN as It,dO as Dr,dP as Be,dQ as Ct,dR as ci,dS as Wt,dT as Le,dU as oe,dV as Jt,dW as Xn,dX as Yt,dY as ui,dZ as _n,d_ as rt,d$ as Mr,e0 as it,e1 as di,e2 as li,ca as Lr,ap as Fe,aD as ue,cj as U,ck as Tt,Z as nt,cc as me,al as C,an as pi,ds as fi,dx as mi,am as yi,e3 as hi,aq as Me,cd as gi,dm as $n,aG as Qt,cp as er,cu as bi,cf as wi,dj as tr,x as Fr,cl as st,ao as nr}from"./ThirdwebWalletManager-C0WgXnZx.js";import{t as vi}from"./sha256-uQaZGirP.js";import{ab as xi,bA as Ei,bG as Mt,g as ge,bO as Gr,r as Xt,am as Si,bP as ki,bM as rr,aW as Ai,aV as Pi,aU as Oi,A as Nn,d as Un,e as Se,bQ as Ii,a1 as Ci,U as zr,bR as Ti,bS as Bi,bT as Ri,O as Ni,au as Ui,aw as ar,y as Hr,R as Kr,bo as Vr,bE as ji,bs as Di}from"./parseSignature-DoNNAGxu.js";import{L as Mi,M as Li,N as Fi,O as Gi}from"./index.es-DkH7OFeN.js";import"./store-CraP4F4Y.js";import"./webauthn.min-CGpVStYZ.js";import"./rpc-rFcFDQyb.js";const zi={gasPriceOracle:{address:"0x420000000000000000000000000000000000000F"},l1Block:{address:"0x4200000000000000000000000000000000000015"},l2CrossDomainMessenger:{address:"0x4200000000000000000000000000000000000007"},l2Erc721Bridge:{address:"0x4200000000000000000000000000000000000014"},l2StandardBridge:{address:"0x4200000000000000000000000000000000000010"},l2ToL1MessagePasser:{address:"0x4200000000000000000000000000000000000016"}},Hi={block:ti({format(e){var n;return{transactions:(n=e.transactions)==null?void 0:n.map(r=>{if(typeof r=="string")return r;const a=ni(r);return a.typeHex==="0x7e"&&(a.isSystemTx=r.isSystemTx,a.mint=r.mint?de(r.mint):void 0,a.sourceHash=r.sourceHash,a.type="deposit"),a}),stateRoot:e.stateRoot}}}),transaction:ei({format(e){const t={};return e.type==="0x7e"&&(t.isSystemTx=e.isSystemTx,t.mint=e.mint?de(e.mint):void 0,t.sourceHash=e.sourceHash,t.type="deposit"),t}}),transactionReceipt:$a({format(e){return{l1GasPrice:e.l1GasPrice?de(e.l1GasPrice):null,l1GasUsed:e.l1GasUsed?de(e.l1GasUsed):null,l1Fee:e.l1Fee?de(e.l1Fee):null,l1FeeScalar:e.l1FeeScalar?Number(e.l1FeeScalar):null}}})};function Ki(e,t){return Zi(e)?qi(e):xi(e,t)}const Vi={transaction:Ki};function qi(e){Wi(e);const{sourceHash:t,data:n,from:r,gas:a,isSystemTx:i,mint:s,to:c,value:o}=e,u=[t,r,c??"0x",s?we(s):"0x",o?we(o):"0x",a?we(a):"0x",i?"0x1":"0x",n??"0x"];return ri(["0x7e",vi(u)])}function Zi(e){return e.type==="deposit"||typeof e.sourceHash<"u"}function Wi(e){const{from:t,to:n}=e;if(t&&!Ge(t))throw new Yn({address:t});if(n&&!Ge(n))throw new Yn({address:n})}const le={blockTime:2e3,contracts:zi,formatters:Hi,serializers:Vi},Ji=te({id:42161,name:"Arbitrum One",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},blockTime:250,rpcUrls:{default:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://arbiscan.io",apiUrl:"https://api.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7654707}}}),Yi=te({id:43114,name:"Avalanche",blockTime:1700,nativeCurrency:{decimals:18,name:"Avalanche",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax.network/ext/bc/C/rpc"]}},blockExplorers:{default:{name:"SnowTrace",url:"https://snowtrace.io",apiUrl:"https://api.snowtrace.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:11907934}}}),Ye=1,qr=te({...le,id:8453,name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://basescan.org",apiUrl:"https://api.basescan.org/api"}},contracts:{...le.contracts,disputeGameFactory:{[Ye]:{address:"0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e"}},l2OutputOracle:{[Ye]:{address:"0x56315b90c40730925ec5485cf004d835058518A0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:5022},portal:{[Ye]:{address:"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e",blockCreated:17482143}},l1StandardBridge:{[Ye]:{address:"0x3154Cf16ccdb4C6d922629664174b904d80F2C35",blockCreated:17482143}}},sourceId:Ye});({...qr});const Qe=11155111,Zr=te({...le,id:84532,network:"base-sepolia",name:"Base Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://sepolia.basescan.org",apiUrl:"https://api-sepolia.basescan.org/api"}},contracts:{...le.contracts,disputeGameFactory:{[Qe]:{address:"0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1"}},l2OutputOracle:{[Qe]:{address:"0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254"}},portal:{[Qe]:{address:"0x49f53e41452c74589e85ca1677426ba426459e85",blockCreated:4446677}},l1StandardBridge:{[Qe]:{address:"0xfd0Bf71F60660E2f608ed56e1659C450eB113120",blockCreated:4446677}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1059647}},testnet:!0,sourceId:Qe});({...Zr});const Qi=te({id:56,name:"BNB Smart Chain",blockTime:750,nativeCurrency:{decimals:18,name:"BNB",symbol:"BNB"},rpcUrls:{default:{http:["https://56.rpc.thirdweb.com"]}},blockExplorers:{default:{name:"BscScan",url:"https://bscscan.com",apiUrl:"https://api.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15921452}}}),Xi=te({id:1,name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},blockTime:12e3,rpcUrls:{default:{http:["https://eth.merkle.io"]}},blockExplorers:{default:{name:"Etherscan",url:"https://etherscan.io",apiUrl:"https://api.etherscan.io/api"}},contracts:{ensUniversalResolver:{address:"0xeeeeeeee14d718c2b47d9923deab1335e144eeee",blockCreated:23085558},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}}),Xe=1,_i=te({...le,id:10,name:"OP Mainnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.optimism.io"]}},blockExplorers:{default:{name:"Optimism Explorer",url:"https://optimistic.etherscan.io",apiUrl:"https://api-optimistic.etherscan.io/api"}},contracts:{...le.contracts,disputeGameFactory:{[Xe]:{address:"0xe5965Ab5962eDc7477C8520243A95517CD252fA9"}},l2OutputOracle:{[Xe]:{address:"0xdfe97868233d1aa22e815a266982f2cf17685a27"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:4286263},portal:{[Xe]:{address:"0xbEb5Fc579115071764c7423A4f12eDde41f106Ed"}},l1StandardBridge:{[Xe]:{address:"0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1"}}},sourceId:Xe}),_e=11155111,$i=te({...le,id:11155420,name:"OP Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.optimism.io"]}},blockExplorers:{default:{name:"Blockscout",url:"https://optimism-sepolia.blockscout.com",apiUrl:"https://optimism-sepolia.blockscout.com/api"}},contracts:{...le.contracts,disputeGameFactory:{[_e]:{address:"0x05F9613aDB30026FFd634f38e5C4dFd30a197Fa1"}},l2OutputOracle:{[_e]:{address:"0x90E9c4f8a994a250F6aEfd61CAFb4F2e895D458F"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1620204},portal:{[_e]:{address:"0x16Fc5058F25648194471939df75CF27A2fdC48BC"}},l1StandardBridge:{[_e]:{address:"0xFBb0621E0B23b5478B630BD55a5f21f67730B0F1"}}},testnet:!0,sourceId:_e}),es=te({id:137,name:"Polygon",blockTime:2e3,nativeCurrency:{name:"POL",symbol:"POL",decimals:18},rpcUrls:{default:{http:["https://polygon-rpc.com"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://polygonscan.com",apiUrl:"https://api.polygonscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:25770160}}}),ot=1,ts=te({...le,id:7777777,name:"Zora",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.zora.energy"],webSocket:["wss://rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://explorer.zora.energy",apiUrl:"https://explorer.zora.energy/api"}},contracts:{...le.contracts,l2OutputOracle:{[ot]:{address:"0x9E6204F750cD866b299594e2aC9eA824E2e5f95c"}},multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:5882},portal:{[ot]:{address:"0x1a0ad011913A150f69f6A19DF447A0CfD9551054"}},l1StandardBridge:{[ot]:{address:"0x3e2Ea9B92B7E48A52296fD261dc26fd995284631"}}},sourceId:ot});class Wr extends ai{constructor(t,n){super(),this.finished=!1,this.destroyed=!1,ii(t);const r=si(n);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const a=this.blockLen,i=new Uint8Array(a);i.set(r.length>a?t.create().update(r).digest():r);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=t.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(t){return Qn(this),this.iHash.update(t),this}digestInto(t){Qn(this),oi(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){const t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:a,destroyed:i,blockLen:s,outputLen:c}=this;return t=t,t.finished=a,t.destroyed=i,t.blockLen=s,t.outputLen=c,t.oHash=n._cloneInto(t.oHash),t.iHash=r._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const Jr=(e,t,n)=>new Wr(e,t).update(n).digest();Jr.create=(e,t)=>new Wr(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Q=BigInt(0),q=BigInt(1),Oe=BigInt(2),ns=BigInt(3),_t=BigInt(4),ir=BigInt(5),sr=BigInt(8);function re(e,t){const n=e%t;return n>=Q?n:t+n}function rs(e,t,n){if(t<Q)throw new Error("invalid exponent, negatives unsupported");if(n<=Q)throw new Error("invalid modulus");if(n===q)return Q;let r=q;for(;t>Q;)t&q&&(r=r*e%n),e=e*e%n,t>>=q;return r}function $t(e,t){if(e===Q)throw new Error("invert: expected non-zero number");if(t<=Q)throw new Error("invert: expected positive modulus, got "+t);let n=re(e,t),r=t,a=Q,i=q;for(;n!==Q;){const c=r/n,o=r%n,u=a-i*c;r=n,n=o,a=i,i=u}if(r!==q)throw new Error("invert: does not exist");return re(a,t)}function as(e){const t=(e-q)/Oe;let n,r,a;for(n=e-q,r=0;n%Oe===Q;n/=Oe,r++);for(a=Oe;a<e&&rs(a,t,e)!==e-q;a++)if(a>1e3)throw new Error("Cannot find square root: likely non-prime P");if(r===1){const s=(e+q)/_t;return function(o,u){const d=o.pow(u,s);if(!o.eql(o.sqr(d),u))throw new Error("Cannot find square root");return d}}const i=(n+q)/Oe;return function(c,o){if(c.pow(o,t)===c.neg(c.ONE))throw new Error("Cannot find square root");let u=r,d=c.pow(c.mul(c.ONE,a),n),h=c.pow(o,i),m=c.pow(o,n);for(;!c.eql(m,c.ONE);){if(c.eql(m,c.ZERO))return c.ZERO;let l=1;for(let f=c.sqr(m);l<u&&!c.eql(f,c.ONE);l++)f=c.sqr(f);const x=c.pow(d,q<<BigInt(u-l-1));d=c.sqr(x),h=c.mul(h,x),m=c.mul(m,d),u=l}return h}}function is(e){if(e%_t===ns){const t=(e+q)/_t;return function(r,a){const i=r.pow(a,t);if(!r.eql(r.sqr(i),a))throw new Error("Cannot find square root");return i}}if(e%sr===ir){const t=(e-ir)/sr;return function(r,a){const i=r.mul(a,Oe),s=r.pow(i,t),c=r.mul(a,s),o=r.mul(r.mul(c,Oe),s),u=r.mul(c,r.sub(o,r.ONE));if(!r.eql(r.sqr(u),a))throw new Error("Cannot find square root");return u}}return as(e)}const ss=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function os(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=ss.reduce((r,a)=>(r[a]="function",r),t);return Ct(e,n)}function cs(e,t,n){if(n<Q)throw new Error("invalid exponent, negatives unsupported");if(n===Q)return e.ONE;if(n===q)return t;let r=e.ONE,a=t;for(;n>Q;)n&q&&(r=e.mul(r,a)),a=e.sqr(a),n>>=q;return r}function us(e,t){const n=new Array(t.length),r=t.reduce((i,s,c)=>e.is0(s)?i:(n[c]=i,e.mul(i,s)),e.ONE),a=e.inv(r);return t.reduceRight((i,s,c)=>e.is0(s)?i:(n[c]=e.mul(i,n[c]),e.mul(i,s)),a),n}function Yr(e,t){const n=t!==void 0?t:e.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Qr(e,t,n=!1,r={}){if(e<=Q)throw new Error("invalid field: expected ORDER > 0, got "+e);const{nBitLength:a,nByteLength:i}=Yr(e,t);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let s;const c=Object.freeze({ORDER:e,isLE:n,BITS:a,BYTES:i,MASK:It(a),ZERO:Q,ONE:q,create:o=>re(o,e),isValid:o=>{if(typeof o!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof o);return Q<=o&&o<e},is0:o=>o===Q,isOdd:o=>(o&q)===q,neg:o=>re(-o,e),eql:(o,u)=>o===u,sqr:o=>re(o*o,e),add:(o,u)=>re(o+u,e),sub:(o,u)=>re(o-u,e),mul:(o,u)=>re(o*u,e),pow:(o,u)=>cs(c,o,u),div:(o,u)=>re(o*$t(u,e),e),sqrN:o=>o*o,addN:(o,u)=>o+u,subN:(o,u)=>o-u,mulN:(o,u)=>o*u,inv:o=>$t(o,e),sqrt:r.sqrt||(o=>(s||(s=is(e)),s(c,o))),invertBatch:o=>us(c,o),cmov:(o,u,d)=>d?u:o,toBytes:o=>n?jr(o,i):gt(o,i),fromBytes:o=>{if(o.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+o.length);return n?Dr(o):Be(o)}});return Object.freeze(c)}function Xr(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function _r(e){const t=Xr(e);return t+Math.ceil(t/2)}function ds(e,t,n=!1){const r=e.length,a=Xr(t),i=_r(t);if(r<16||r<i||r>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+r);const s=n?Dr(e):Be(e),c=re(s,t-q)+q;return n?jr(c,a):gt(c,a)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const or=BigInt(0),en=BigInt(1);function Lt(e,t){const n=t.negate();return e?n:t}function $r(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function Ft(e,t){$r(e,t);const n=Math.ceil(t/e)+1,r=2**(e-1),a=2**e,i=It(e),s=BigInt(e);return{windows:n,windowSize:r,mask:i,maxNumber:a,shiftBy:s}}function cr(e,t,n){const{windowSize:r,mask:a,maxNumber:i,shiftBy:s}=n;let c=Number(e&a),o=e>>s;c>r&&(c-=i,o+=en);const u=t*r,d=u+Math.abs(c)-1,h=c===0,m=c<0,l=t%2!==0;return{nextN:o,offset:d,isZero:h,isNeg:m,isNegF:l,offsetF:u}}function ls(e,t){if(!Array.isArray(e))throw new Error("array expected");e.forEach((n,r)=>{if(!(n instanceof t))throw new Error("invalid point at index "+r)})}function ps(e,t){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach((n,r)=>{if(!t.isValid(n))throw new Error("invalid scalar at index "+r)})}const Gt=new WeakMap,ea=new WeakMap;function zt(e){return ea.get(e)||1}function fs(e,t){return{constTimeNegate:Lt,hasPrecomputes(n){return zt(n)!==1},unsafeLadder(n,r,a=e.ZERO){let i=n;for(;r>or;)r&en&&(a=a.add(i)),i=i.double(),r>>=en;return a},precomputeWindow(n,r){const{windows:a,windowSize:i}=Ft(r,t),s=[];let c=n,o=c;for(let u=0;u<a;u++){o=c,s.push(o);for(let d=1;d<i;d++)o=o.add(c),s.push(o);c=o.double()}return s},wNAF(n,r,a){let i=e.ZERO,s=e.BASE;const c=Ft(n,t);for(let o=0;o<c.windows;o++){const{nextN:u,offset:d,isZero:h,isNeg:m,isNegF:l,offsetF:x}=cr(a,o,c);a=u,h?s=s.add(Lt(l,r[x])):i=i.add(Lt(m,r[d]))}return{p:i,f:s}},wNAFUnsafe(n,r,a,i=e.ZERO){const s=Ft(n,t);for(let c=0;c<s.windows&&a!==or;c++){const{nextN:o,offset:u,isZero:d,isNeg:h}=cr(a,c,s);if(a=o,!d){const m=r[u];i=i.add(h?m.negate():m)}}return i},getPrecomputes(n,r,a){let i=Gt.get(r);return i||(i=this.precomputeWindow(r,n),n!==1&&Gt.set(r,a(i))),i},wNAFCached(n,r,a){const i=zt(n);return this.wNAF(i,this.getPrecomputes(i,n,a),r)},wNAFCachedUnsafe(n,r,a,i){const s=zt(n);return s===1?this.unsafeLadder(n,r,i):this.wNAFUnsafe(s,this.getPrecomputes(s,n,a),r,i)},setWindowSize(n,r){$r(r,t),ea.set(n,r),Gt.delete(n)}}}function ms(e,t,n,r){if(ls(n,e),ps(r,t),n.length!==r.length)throw new Error("arrays of points and scalars must have equal length");const a=e.ZERO,i=ci(BigInt(n.length)),s=i>12?i-3:i>4?i-2:i?2:1,c=It(s),o=new Array(Number(c)+1).fill(a),u=Math.floor((t.BITS-1)/s)*s;let d=a;for(let h=u;h>=0;h-=s){o.fill(a);for(let l=0;l<r.length;l++){const x=r[l],f=Number(x>>BigInt(h)&c);o[f]=o[f].add(n[l])}let m=a;for(let l=o.length-1,x=a;l>0;l--)x=x.add(o[l]),m=m.add(x);if(d=d.add(m),h!==0)for(let l=0;l<s;l++)d=d.double()}return d}function ta(e){return os(e.Fp),Ct(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Yr(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function ur(e){e.lowS!==void 0&&rt("lowS",e.lowS),e.prehash!==void 0&&rt("prehash",e.prehash)}function ys(e){const t=ta(e);Ct(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:r,a}=t;if(n){if(!r.eql(a,r.ZERO))throw new Error("invalid endomorphism, can only be defined for Koblitz curves that have a=0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error("invalid endomorphism, expected beta: bigint and splitScalar: function")}return Object.freeze({...t})}class hs extends Error{constructor(t=""){super(t)}}const ye={Err:hs,_tlv:{encode:(e,t)=>{const{Err:n}=ye;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length&1)throw new n("tlv.encode: unpadded data");const r=t.length/2,a=it(r);if(a.length/2&128)throw new n("tlv.encode: long form length too big");const i=r>127?it(a.length/2|128):"";return it(e)+i+a+t},decode(e,t){const{Err:n}=ye;let r=0;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length<2||t[r++]!==e)throw new n("tlv.decode: wrong tlv");const a=t[r++],i=!!(a&128);let s=0;if(!i)s=a;else{const o=a&127;if(!o)throw new n("tlv.decode(long): indefinite length not supported");if(o>4)throw new n("tlv.decode(long): byte length is too big");const u=t.subarray(r,r+o);if(u.length!==o)throw new n("tlv.decode: length bytes not complete");if(u[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const d of u)s=s<<8|d;if(r+=o,s<128)throw new n("tlv.decode(long): not minimal encoding")}const c=t.subarray(r,r+s);if(c.length!==s)throw new n("tlv.decode: wrong value length");return{v:c,l:t.subarray(r+s)}}},_int:{encode(e){const{Err:t}=ye;if(e<be)throw new t("integer: negative integers are not allowed");let n=it(e);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=ye;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return Be(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=ye,a=oe("signature",e),{v:i,l:s}=r.decode(48,a);if(s.length)throw new t("invalid signature: left bytes after parsing");const{v:c,l:o}=r.decode(2,i),{v:u,l:d}=r.decode(2,o);if(d.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(c),s:n.decode(u)}},hexFromSig(e){const{_tlv:t,_int:n}=ye,r=t.encode(2,n.encode(e.r)),a=t.encode(2,n.encode(e.s)),i=r+a;return t.encode(48,i)}},be=BigInt(0),J=BigInt(1);BigInt(2);const dr=BigInt(3);BigInt(4);function gs(e){const t=ys(e),{Fp:n}=t,r=Qr(t.n,t.nBitLength),a=t.toBytes||((f,p,g)=>{const y=p.toAffine();return Wt(Uint8Array.from([4]),n.toBytes(y.x),n.toBytes(y.y))}),i=t.fromBytes||(f=>{const p=f.subarray(1),g=n.fromBytes(p.subarray(0,n.BYTES)),y=n.fromBytes(p.subarray(n.BYTES,2*n.BYTES));return{x:g,y}});function s(f){const{a:p,b:g}=t,y=n.sqr(f),E=n.mul(y,f);return n.add(n.add(E,n.mul(f,p)),g)}if(!n.eql(n.sqr(t.Gy),s(t.Gx)))throw new Error("bad generator point: equation left != right");function c(f){return Mr(f,J,t.n)}function o(f){const{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:y,n:E}=t;if(p&&typeof f!="bigint"){if(Yt(f)&&(f=Jt(f)),typeof f!="string"||!p.includes(f.length))throw new Error("invalid private key");f=f.padStart(g*2,"0")}let O;try{O=typeof f=="bigint"?f:Be(oe("private key",f,g))}catch{throw new Error("invalid private key, expected hex or "+g+" bytes, got "+typeof f)}return y&&(O=re(O,E)),Le("private key",O,J,E),O}function u(f){if(!(f instanceof m))throw new Error("ProjectivePoint expected")}const d=_n((f,p)=>{const{px:g,py:y,pz:E}=f;if(n.eql(E,n.ONE))return{x:g,y};const O=f.is0();p==null&&(p=O?n.ONE:n.inv(E));const R=n.mul(g,p),T=n.mul(y,p),w=n.mul(E,p);if(O)return{x:n.ZERO,y:n.ZERO};if(!n.eql(w,n.ONE))throw new Error("invZ was invalid");return{x:R,y:T}}),h=_n(f=>{if(f.is0()){if(t.allowInfinityPoint&&!n.is0(f.py))return;throw new Error("bad point: ZERO")}const{x:p,y:g}=f.toAffine();if(!n.isValid(p)||!n.isValid(g))throw new Error("bad point: x or y not FE");const y=n.sqr(g),E=s(p);if(!n.eql(y,E))throw new Error("bad point: equation left != right");if(!f.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class m{constructor(p,g,y){if(p==null||!n.isValid(p))throw new Error("x required");if(g==null||!n.isValid(g))throw new Error("y required");if(y==null||!n.isValid(y))throw new Error("z required");this.px=p,this.py=g,this.pz=y,Object.freeze(this)}static fromAffine(p){const{x:g,y}=p||{};if(!p||!n.isValid(g)||!n.isValid(y))throw new Error("invalid affine point");if(p instanceof m)throw new Error("projective point not allowed");const E=O=>n.eql(O,n.ZERO);return E(g)&&E(y)?m.ZERO:new m(g,y,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){const g=n.invertBatch(p.map(y=>y.pz));return p.map((y,E)=>y.toAffine(g[E])).map(m.fromAffine)}static fromHex(p){const g=m.fromAffine(i(oe("pointHex",p)));return g.assertValidity(),g}static fromPrivateKey(p){return m.BASE.multiply(o(p))}static msm(p,g){return ms(m,r,p,g)}_setWindowSize(p){x.setWindowSize(this,p)}assertValidity(){h(this)}hasEvenY(){const{y:p}=this.toAffine();if(n.isOdd)return!n.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);const{px:g,py:y,pz:E}=this,{px:O,py:R,pz:T}=p,w=n.eql(n.mul(g,T),n.mul(O,E)),k=n.eql(n.mul(y,T),n.mul(R,E));return w&&k}negate(){return new m(this.px,n.neg(this.py),this.pz)}double(){const{a:p,b:g}=t,y=n.mul(g,dr),{px:E,py:O,pz:R}=this;let T=n.ZERO,w=n.ZERO,k=n.ZERO,I=n.mul(E,E),Y=n.mul(O,O),z=n.mul(R,R),j=n.mul(E,O);return j=n.add(j,j),k=n.mul(E,R),k=n.add(k,k),T=n.mul(p,k),w=n.mul(y,z),w=n.add(T,w),T=n.sub(Y,w),w=n.add(Y,w),w=n.mul(T,w),T=n.mul(j,T),k=n.mul(y,k),z=n.mul(p,z),j=n.sub(I,z),j=n.mul(p,j),j=n.add(j,k),k=n.add(I,I),I=n.add(k,I),I=n.add(I,z),I=n.mul(I,j),w=n.add(w,I),z=n.mul(O,R),z=n.add(z,z),I=n.mul(z,j),T=n.sub(T,I),k=n.mul(z,Y),k=n.add(k,k),k=n.add(k,k),new m(T,w,k)}add(p){u(p);const{px:g,py:y,pz:E}=this,{px:O,py:R,pz:T}=p;let w=n.ZERO,k=n.ZERO,I=n.ZERO;const Y=t.a,z=n.mul(t.b,dr);let j=n.mul(g,O),ee=n.mul(y,R),S=n.mul(E,T),A=n.add(g,y),P=n.add(O,R);A=n.mul(A,P),P=n.add(j,ee),A=n.sub(A,P),P=n.add(g,E);let B=n.add(O,T);return P=n.mul(P,B),B=n.add(j,S),P=n.sub(P,B),B=n.add(y,E),w=n.add(R,T),B=n.mul(B,w),w=n.add(ee,S),B=n.sub(B,w),I=n.mul(Y,P),w=n.mul(z,S),I=n.add(w,I),w=n.sub(ee,I),I=n.add(ee,I),k=n.mul(w,I),ee=n.add(j,j),ee=n.add(ee,j),S=n.mul(Y,S),P=n.mul(z,P),ee=n.add(ee,S),S=n.sub(j,S),S=n.mul(Y,S),P=n.add(P,S),j=n.mul(ee,P),k=n.add(k,j),j=n.mul(B,P),w=n.mul(A,w),w=n.sub(w,j),j=n.mul(A,ee),I=n.mul(B,I),I=n.add(I,j),new m(w,k,I)}subtract(p){return this.add(p.negate())}is0(){return this.equals(m.ZERO)}wNAF(p){return x.wNAFCached(this,p,m.normalizeZ)}multiplyUnsafe(p){const{endo:g,n:y}=t;Le("scalar",p,be,y);const E=m.ZERO;if(p===be)return E;if(this.is0()||p===J)return this;if(!g||x.hasPrecomputes(this))return x.wNAFCachedUnsafe(this,p,m.normalizeZ);let{k1neg:O,k1:R,k2neg:T,k2:w}=g.splitScalar(p),k=E,I=E,Y=this;for(;R>be||w>be;)R&J&&(k=k.add(Y)),w&J&&(I=I.add(Y)),Y=Y.double(),R>>=J,w>>=J;return O&&(k=k.negate()),T&&(I=I.negate()),I=new m(n.mul(I.px,g.beta),I.py,I.pz),k.add(I)}multiply(p){const{endo:g,n:y}=t;Le("scalar",p,J,y);let E,O;if(g){const{k1neg:R,k1:T,k2neg:w,k2:k}=g.splitScalar(p);let{p:I,f:Y}=this.wNAF(T),{p:z,f:j}=this.wNAF(k);I=x.constTimeNegate(R,I),z=x.constTimeNegate(w,z),z=new m(n.mul(z.px,g.beta),z.py,z.pz),E=I.add(z),O=Y.add(j)}else{const{p:R,f:T}=this.wNAF(p);E=R,O=T}return m.normalizeZ([E,O])[0]}multiplyAndAddUnsafe(p,g,y){const E=m.BASE,O=(T,w)=>w===be||w===J||!T.equals(E)?T.multiplyUnsafe(w):T.multiply(w),R=O(this,g).add(O(p,y));return R.is0()?void 0:R}toAffine(p){return d(this,p)}isTorsionFree(){const{h:p,isTorsionFree:g}=t;if(p===J)return!0;if(g)return g(m,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:p,clearCofactor:g}=t;return p===J?this:g?g(m,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return rt("isCompressed",p),this.assertValidity(),a(m,this,p)}toHex(p=!0){return rt("isCompressed",p),Jt(this.toRawBytes(p))}}m.BASE=new m(t.Gx,t.Gy,n.ONE),m.ZERO=new m(n.ZERO,n.ONE,n.ZERO);const l=t.nBitLength,x=fs(m,t.endo?Math.ceil(l/2):l);return{CURVE:t,ProjectivePoint:m,normPrivateKeyToScalar:o,weierstrassEquation:s,isWithinCurveOrder:c}}function bs(e){const t=ta(e);return Ct(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function ws(e){const t=bs(e),{Fp:n,n:r}=t,a=n.BYTES+1,i=2*n.BYTES+1;function s(S){return re(S,r)}function c(S){return $t(S,r)}const{ProjectivePoint:o,normPrivateKeyToScalar:u,weierstrassEquation:d,isWithinCurveOrder:h}=gs({...t,toBytes(S,A,P){const B=A.toAffine(),N=n.toBytes(B.x),W=Wt;return rt("isCompressed",P),P?W(Uint8Array.from([A.hasEvenY()?2:3]),N):W(Uint8Array.from([4]),N,n.toBytes(B.y))},fromBytes(S){const A=S.length,P=S[0],B=S.subarray(1);if(A===a&&(P===2||P===3)){const N=Be(B);if(!Mr(N,J,n.ORDER))throw new Error("Point is not on curve");const W=d(N);let _;try{_=n.sqrt(W)}catch(se){const $=se instanceof Error?": "+se.message:"";throw new Error("Point is not on curve"+$)}const X=(_&J)===J;return(P&1)===1!==X&&(_=n.neg(_)),{x:N,y:_}}else if(A===i&&P===4){const N=n.fromBytes(B.subarray(0,n.BYTES)),W=n.fromBytes(B.subarray(n.BYTES,2*n.BYTES));return{x:N,y:W}}else{const N=a,W=i;throw new Error("invalid Point, expected length of "+N+", or uncompressed "+W+", got "+A)}}}),m=S=>Jt(gt(S,t.nByteLength));function l(S){const A=r>>J;return S>A}function x(S){return l(S)?s(-S):S}const f=(S,A,P)=>Be(S.slice(A,P));class p{constructor(A,P,B){Le("r",A,J,r),Le("s",P,J,r),this.r=A,this.s=P,B!=null&&(this.recovery=B),Object.freeze(this)}static fromCompact(A){const P=t.nByteLength;return A=oe("compactSignature",A,P*2),new p(f(A,0,P),f(A,P,2*P))}static fromDER(A){const{r:P,s:B}=ye.toSig(oe("DER",A));return new p(P,B)}assertValidity(){}addRecoveryBit(A){return new p(this.r,this.s,A)}recoverPublicKey(A){const{r:P,s:B,recovery:N}=this,W=T(oe("msgHash",A));if(N==null||![0,1,2,3].includes(N))throw new Error("recovery id invalid");const _=N===2||N===3?P+t.n:P;if(_>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const X=N&1?"03":"02",pe=o.fromHex(X+m(_)),se=c(_),$=s(-W*se),Ne=s(B*se),ve=o.BASE.multiplyAndAddUnsafe(pe,$,Ne);if(!ve)throw new Error("point at infinify");return ve.assertValidity(),ve}hasHighS(){return l(this.s)}normalizeS(){return this.hasHighS()?new p(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return Xn(this.toDERHex())}toDERHex(){return ye.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Xn(this.toCompactHex())}toCompactHex(){return m(this.r)+m(this.s)}}const g={isValidPrivateKey(S){try{return u(S),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{const S=_r(t.n);return ds(t.randomBytes(S),t.n)},precompute(S=8,A=o.BASE){return A._setWindowSize(S),A.multiply(BigInt(3)),A}};function y(S,A=!0){return o.fromPrivateKey(S).toRawBytes(A)}function E(S){const A=Yt(S),P=typeof S=="string",B=(A||P)&&S.length;return A?B===a||B===i:P?B===2*a||B===2*i:S instanceof o}function O(S,A,P=!0){if(E(S))throw new Error("first arg must be private key");if(!E(A))throw new Error("second arg must be public key");return o.fromHex(A).multiply(u(S)).toRawBytes(P)}const R=t.bits2int||function(S){if(S.length>8192)throw new Error("input is too large");const A=Be(S),P=S.length*8-t.nBitLength;return P>0?A>>BigInt(P):A},T=t.bits2int_modN||function(S){return s(R(S))},w=It(t.nBitLength);function k(S){return Le("num < 2^"+t.nBitLength,S,be,w),gt(S,t.nByteLength)}function I(S,A,P=Y){if(["recovered","canonical"].some(Ae=>Ae in P))throw new Error("sign() legacy options not supported");const{hash:B,randomBytes:N}=t;let{lowS:W,prehash:_,extraEntropy:X}=P;W==null&&(W=!0),S=oe("msgHash",S),ur(P),_&&(S=oe("prehashed msgHash",B(S)));const pe=T(S),se=u(A),$=[k(se),k(pe)];if(X!=null&&X!==!1){const Ae=X===!0?N(n.BYTES):X;$.push(oe("extraEntropy",Ae))}const Ne=Wt(...$),ve=pe;function jt(Ae){const Ue=R(Ae);if(!h(Ue))return;const Dt=c(Ue),Ze=o.BASE.multiply(Ue).toAffine(),Pe=s(Ze.x);if(Pe===be)return;const We=s(Dt*s(ve+Pe*se));if(We===be)return;let Je=(Ze.x===Pe?0:2)|Number(Ze.y&J),je=We;return W&&l(We)&&(je=x(We),Je^=1),new p(Pe,je,Je)}return{seed:Ne,k2sig:jt}}const Y={lowS:t.lowS,prehash:!1},z={lowS:t.lowS,prehash:!1};function j(S,A,P=Y){const{seed:B,k2sig:N}=I(S,A,P),W=t;return ui(W.hash.outputLen,W.nByteLength,W.hmac)(B,N)}o.BASE._setWindowSize(8);function ee(S,A,P,B=z){var Je;const N=S;A=oe("msgHash",A),P=oe("publicKey",P);const{lowS:W,prehash:_,format:X}=B;if(ur(B),"strict"in B)throw new Error("options.strict was renamed to lowS");if(X!==void 0&&X!=="compact"&&X!=="der")throw new Error("format must be compact or der");const pe=typeof N=="string"||Yt(N),se=!pe&&!X&&typeof N=="object"&&N!==null&&typeof N.r=="bigint"&&typeof N.s=="bigint";if(!pe&&!se)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let $,Ne;try{if(se&&($=new p(N.r,N.s)),pe){try{X!=="compact"&&($=p.fromDER(N))}catch(je){if(!(je instanceof ye.Err))throw je}!$&&X!=="der"&&($=p.fromCompact(N))}Ne=o.fromHex(P)}catch{return!1}if(!$||W&&$.hasHighS())return!1;_&&(A=t.hash(A));const{r:ve,s:jt}=$,Ae=T(A),Ue=c(jt),Dt=s(Ae*Ue),Ze=s(ve*Ue),Pe=(Je=o.BASE.multiplyAndAddUnsafe(Ne,Dt,Ze))==null?void 0:Je.toAffine();return Pe?s(Pe.x)===ve:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:O,sign:j,verify:ee,ProjectivePoint:o,Signature:p,utils:g}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function vs(e){return{hash:e,hmac:(t,...n)=>Jr(e,t,li(...n)),randomBytes:di}}function xs(e,t){const n=r=>ws({...e,...vs(r)});return{...n(t),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const na=Qr(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),Es=na.create(BigInt("-3")),Ss=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),lr=xs({a:Es,b:Ss,Fp:na,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},Lr),ks="@base-org/account",As="2.5.0",ra={name:ks,version:As},Ps="https://keys.coinbase.com/connect",tn="https://rpc.wallet.coinbase.com",Bt=ra.name,qe=ra.version;function aa(e,t){let n;try{n=e()}catch{return}return{getItem:a=>{var i;const s=o=>o===null?null:JSON.parse(o,void 0),c=(i=n.getItem(a))!=null?i:null;return c instanceof Promise?c.then(s):s(c)},setItem:(a,i)=>n.setItem(a,JSON.stringify(i,void 0)),removeItem:a=>n.removeItem(a)}}const nn=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then(r){return nn(r)(n)},catch(r){return this}}}catch(n){return{then(r){return this},catch(r){return nn(r)(n)}}}},Os=(e,t)=>(n,r,a)=>{let i={storage:aa(()=>localStorage),partialize:f=>f,version:0,merge:(f,p)=>({...p,...f}),...t},s=!1;const c=new Set,o=new Set;let u=i.storage;if(!u)return e((...f)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),n(...f)},r,a);const d=()=>{const f=i.partialize({...r()});return u.setItem(i.name,{state:f,version:i.version})},h=a.setState;a.setState=(f,p)=>{h(f,p),d()};const m=e((...f)=>{n(...f),d()},r,a);a.getInitialState=()=>m;let l;const x=()=>{var f,p;if(!u)return;s=!1,c.forEach(y=>{var E;return y((E=r())!=null?E:m)});const g=((p=i.onRehydrateStorage)==null?void 0:p.call(i,(f=r())!=null?f:m))||void 0;return nn(u.getItem.bind(u))(i.name).then(y=>{if(y)if(typeof y.version=="number"&&y.version!==i.version){if(i.migrate){const E=i.migrate(y.state,y.version);return E instanceof Promise?E.then(O=>[!0,O]):[!0,E]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,y.state];return[!1,void 0]}).then(y=>{var E;const[O,R]=y;if(l=i.merge(R,(E=r())!=null?E:m),n(l,!0),O)return d()}).then(()=>{g==null||g(l,void 0),l=r(),s=!0,o.forEach(y=>y(l))}).catch(y=>{g==null||g(void 0,y)})};return a.persist={setOptions:f=>{i={...i,...f},f.storage&&(u=f.storage)},clearStorage:()=>{u==null||u.removeItem(i.name)},getOptions:()=>i,rehydrate:()=>x(),hasHydrated:()=>s,onHydrate:f=>(c.add(f),()=>{c.delete(f)}),onFinishHydration:f=>(o.add(f),()=>{o.delete(f)})},i.skipHydration||x(),l||m},Is=Os,pr=e=>{let t;const n=new Set,r=(u,d)=>{const h=typeof u=="function"?u(t):u;if(!Object.is(h,t)){const m=t;t=d??(typeof h!="object"||h===null)?h:Object.assign({},t,h),n.forEach(l=>l(t,m))}},a=()=>t,c={setState:r,getState:a,getInitialState:()=>o,subscribe:u=>(n.add(u),()=>n.delete(u))},o=t=e(r,a,c);return c},jn=e=>e?pr(e):pr,Cs=()=>({chains:[]}),Ts=()=>({keys:{}}),Bs=()=>({account:{}}),Rs=()=>({subAccount:void 0}),Ns=()=>({subAccountConfig:{}}),Us=()=>({spendPermissions:[]}),js=()=>({config:{version:qe}}),Z=jn(Is((...e)=>({...Cs(...e),...Ts(...e),...Bs(...e),...Rs(...e),...Us(...e),...js(...e),...Ns(...e)}),{name:"base-acc-sdk.store",storage:aa(()=>localStorage),partialize:e=>({chains:e.chains,keys:e.keys,account:e.account,subAccount:e.subAccount,spendPermissions:e.spendPermissions,config:e.config})})),Ds={get:()=>Z.getState().subAccountConfig,set:e=>{Z.setState(t=>({subAccountConfig:{...t.subAccountConfig,...e}}))},clear:()=>{Z.setState({subAccountConfig:{}})}},Ms={get:()=>Z.getState().subAccount,set:e=>{Z.setState(t=>({subAccount:t.subAccount?{...t.subAccount,...e}:{address:e.address,...e}}))},clear:()=>{Z.setState({subAccount:void 0})}},Dn={get:()=>Z.getState().spendPermissions,set:e=>{Z.setState({spendPermissions:e})},clear:()=>{Z.setState({spendPermissions:[]})}},Ls={get:()=>Z.getState().account,set:e=>{Z.setState(t=>({account:{...t.account,...e}}))},clear:()=>{Z.setState({account:{}})}},Fs={get:()=>Z.getState().chains,set:e=>{Z.setState({chains:e})},clear:()=>{Z.setState({chains:[]})}},Gs={get:e=>Z.getState().keys[e],set:(e,t)=>{Z.setState(n=>({keys:{...n.keys,[e]:t}}))},clear:()=>{Z.setState({keys:{}})}},ia={get:()=>Z.getState().config,set:e=>{Z.setState(t=>({config:{...t.config,...e}}))}},zs={subAccounts:Ms,subAccountsConfig:Ds,spendPermissions:Dn,account:Ls,chains:Fs,keys:Gs,config:ia},b={...Z,...zs},Hs='!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ClientAnalytics=t():e.ClientAnalytics=t()}(this,(function(){return(()=>{var e={792:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],n=0;n<e.length;n++)t.push(255&e.charCodeAt(n));return t},bytesToString:function(e){for(var t=[],n=0;n<e.length;n++)t.push(String.fromCharCode(e[n]));return t.join("")}}};e.exports=t},562:e=>{var t,n;t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n={rotl:function(e,t){return e<<t|e>>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&n.rotl(e,8)|4278255360&n.rotl(e,24);for(var t=0;t<e.length;t++)e[t]=n.endian(e[t]);return e},randomBytes:function(e){for(var t=[];e>0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],n=0,r=0;n<e.length;n++,r+=8)t[r>>>5]|=e[n]<<24-r%32;return t},wordsToBytes:function(e){for(var t=[],n=0;n<32*e.length;n+=8)t.push(e[n>>>5]>>>24-n%32&255);return t},bytesToHex:function(e){for(var t=[],n=0;n<e.length;n++)t.push((e[n]>>>4).toString(16)),t.push((15&e[n]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],n=0;n<e.length;n+=2)t.push(parseInt(e.substr(n,2),16));return t},bytesToBase64:function(e){for(var n=[],r=0;r<e.length;r+=3)for(var i=e[r]<<16|e[r+1]<<8|e[r+2],a=0;a<4;a++)8*r+6*a<=8*e.length?n.push(t.charAt(i>>>6*(3-a)&63)):n.push("=");return n.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\\/]/gi,"");for(var n=[],r=0,i=0;r<e.length;i=++r%4)0!=i&&n.push((t.indexOf(e.charAt(r-1))&Math.pow(2,-2*i+8)-1)<<2*i|t.indexOf(e.charAt(r))>>>6-2*i);return n}},e.exports=n},335:e=>{function t(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},762:(e,t,n)=>{var r,i,a,o,s;r=n(562),i=n(792).utf8,a=n(335),o=n(792).bin,(s=function(e,t){e.constructor==String?e=t&&"binary"===t.encoding?o.stringToBytes(e):i.stringToBytes(e):a(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var n=r.bytesToWords(e),c=8*e.length,u=1732584193,l=-271733879,d=-1732584194,p=271733878,m=0;m<n.length;m++)n[m]=16711935&(n[m]<<8|n[m]>>>24)|4278255360&(n[m]<<24|n[m]>>>8);n[c>>>5]|=128<<c%32,n[14+(c+64>>>9<<4)]=c;var f=s._ff,v=s._gg,g=s._hh,b=s._ii;for(m=0;m<n.length;m+=16){var h=u,w=l,y=d,T=p;u=f(u,l,d,p,n[m+0],7,-680876936),p=f(p,u,l,d,n[m+1],12,-389564586),d=f(d,p,u,l,n[m+2],17,606105819),l=f(l,d,p,u,n[m+3],22,-1044525330),u=f(u,l,d,p,n[m+4],7,-176418897),p=f(p,u,l,d,n[m+5],12,1200080426),d=f(d,p,u,l,n[m+6],17,-1473231341),l=f(l,d,p,u,n[m+7],22,-45705983),u=f(u,l,d,p,n[m+8],7,1770035416),p=f(p,u,l,d,n[m+9],12,-1958414417),d=f(d,p,u,l,n[m+10],17,-42063),l=f(l,d,p,u,n[m+11],22,-1990404162),u=f(u,l,d,p,n[m+12],7,1804603682),p=f(p,u,l,d,n[m+13],12,-40341101),d=f(d,p,u,l,n[m+14],17,-1502002290),u=v(u,l=f(l,d,p,u,n[m+15],22,1236535329),d,p,n[m+1],5,-165796510),p=v(p,u,l,d,n[m+6],9,-1069501632),d=v(d,p,u,l,n[m+11],14,643717713),l=v(l,d,p,u,n[m+0],20,-373897302),u=v(u,l,d,p,n[m+5],5,-701558691),p=v(p,u,l,d,n[m+10],9,38016083),d=v(d,p,u,l,n[m+15],14,-660478335),l=v(l,d,p,u,n[m+4],20,-405537848),u=v(u,l,d,p,n[m+9],5,568446438),p=v(p,u,l,d,n[m+14],9,-1019803690),d=v(d,p,u,l,n[m+3],14,-187363961),l=v(l,d,p,u,n[m+8],20,1163531501),u=v(u,l,d,p,n[m+13],5,-1444681467),p=v(p,u,l,d,n[m+2],9,-51403784),d=v(d,p,u,l,n[m+7],14,1735328473),u=g(u,l=v(l,d,p,u,n[m+12],20,-1926607734),d,p,n[m+5],4,-378558),p=g(p,u,l,d,n[m+8],11,-2022574463),d=g(d,p,u,l,n[m+11],16,1839030562),l=g(l,d,p,u,n[m+14],23,-35309556),u=g(u,l,d,p,n[m+1],4,-1530992060),p=g(p,u,l,d,n[m+4],11,1272893353),d=g(d,p,u,l,n[m+7],16,-155497632),l=g(l,d,p,u,n[m+10],23,-1094730640),u=g(u,l,d,p,n[m+13],4,681279174),p=g(p,u,l,d,n[m+0],11,-358537222),d=g(d,p,u,l,n[m+3],16,-722521979),l=g(l,d,p,u,n[m+6],23,76029189),u=g(u,l,d,p,n[m+9],4,-640364487),p=g(p,u,l,d,n[m+12],11,-421815835),d=g(d,p,u,l,n[m+15],16,530742520),u=b(u,l=g(l,d,p,u,n[m+2],23,-995338651),d,p,n[m+0],6,-198630844),p=b(p,u,l,d,n[m+7],10,1126891415),d=b(d,p,u,l,n[m+14],15,-1416354905),l=b(l,d,p,u,n[m+5],21,-57434055),u=b(u,l,d,p,n[m+12],6,1700485571),p=b(p,u,l,d,n[m+3],10,-1894986606),d=b(d,p,u,l,n[m+10],15,-1051523),l=b(l,d,p,u,n[m+1],21,-2054922799),u=b(u,l,d,p,n[m+8],6,1873313359),p=b(p,u,l,d,n[m+15],10,-30611744),d=b(d,p,u,l,n[m+6],15,-1560198380),l=b(l,d,p,u,n[m+13],21,1309151649),u=b(u,l,d,p,n[m+4],6,-145523070),p=b(p,u,l,d,n[m+11],10,-1120210379),d=b(d,p,u,l,n[m+2],15,718787259),l=b(l,d,p,u,n[m+9],21,-343485551),u=u+h>>>0,l=l+w>>>0,d=d+y>>>0,p=p+T>>>0}return r.endian([u,l,d,p])})._ff=function(e,t,n,r,i,a,o){var s=e+(t&n|~t&r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._gg=function(e,t,n,r,i,a,o){var s=e+(t&r|n&~r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._hh=function(e,t,n,r,i,a,o){var s=e+(t^n^r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._ii=function(e,t,n,r,i,a,o){var s=e+(n^(t|~r))+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._blocksize=16,s._digestsize=16,e.exports=function(e,t){if(null==e)throw new Error("Illegal argument "+e);var n=r.wordsToBytes(s(e,t));return t&&t.asBytes?n:t&&t.asString?o.bytesToString(n):r.bytesToHex(n)}},2:(e,t,n)=>{"use strict";n.r(t),n.d(t,{Perfume:()=>ze,incrementUjNavigation:()=>Le,markStep:()=>Re,markStepOnce:()=>qe});var r,i,a={isResourceTiming:!1,isElementTiming:!1,maxTime:3e4,reportOptions:{},enableNavigationTracking:!0},o=window,s=o.console,c=o.navigator,u=o.performance,l=function(){return c.deviceMemory},d=function(){return c.hardwareConcurrency},p="mark.",m=function(){return u&&!!u.getEntriesByType&&!!u.now&&!!u.mark},f="4g",v=!1,g={},b={value:0},h={value:{beacon:0,css:0,fetch:0,img:0,other:0,script:0,total:0,xmlhttprequest:0}},w={value:0},y={value:0},T={},k={isHidden:!1,didChange:!1},_=function(){k.isHidden=!1,document.hidden&&(k.isHidden=document.hidden,k.didChange=!0)},S=function(e,t){try{var n=new PerformanceObserver((function(e){t(e.getEntries())}));return n.observe({type:e,buffered:!0}),n}catch(e){s.warn("Perfume.js:",e)}return null},E=function(){return!!(d()&&d()<=4)||!!(l()&&l()<=4)},x=function(e,t){switch(e){case"slow-2g":case"2g":case"3g":return!0;default:return E()||t}},O=function(e){return parseFloat(e.toFixed(4))},j=function(e){return"number"!=typeof e?null:O(e/Math.pow(1024,2))},N=function(e,t,n,r,i){var s,u=function(){a.analyticsTracker&&(k.isHidden&&!["CLS","INP"].includes(e)||a.analyticsTracker({attribution:r,metricName:e,data:t,navigatorInformation:c?{deviceMemory:l()||0,hardwareConcurrency:d()||0,serviceWorkerStatus:"serviceWorker"in c?c.serviceWorker.controller?"controlled":"supported":"unsupported",isLowEndDevice:E(),isLowEndExperience:x(f,v)}:{},rating:n,navigationType:i}))};["CLS","INP"].includes(e)?u():(s=u,"requestIdleCallback"in o?o.requestIdleCallback(s,{timeout:3e3}):s())},I=function(e){e.forEach((function(e){if(!("self"!==e.name||e.startTime<b.value)){var t=e.duration-50;t>0&&(w.value+=t,y.value+=t)}}))};!function(e){e.instant="instant",e.quick="quick",e.moderate="moderate",e.slow="slow",e.unavoidable="unavoidable"}(r||(r={}));var P,M,B,C,D,A=((i={})[r.instant]={vitalsThresholds:[100,200],maxOutlierThreshold:1e4},i[r.quick]={vitalsThresholds:[200,500],maxOutlierThreshold:1e4},i[r.moderate]={vitalsThresholds:[500,1e3],maxOutlierThreshold:1e4},i[r.slow]={vitalsThresholds:[1e3,2e3],maxOutlierThreshold:1e4},i[r.unavoidable]={vitalsThresholds:[2e3,5e3],maxOutlierThreshold:2e4},i),L={RT:[100,200],TBT:[200,600],NTBT:[200,600]},U=function(e,t){return L[e]?t<=L[e][0]?"good":t<=L[e][1]?"needsImprovement":"poor":null},R=function(e,t,n){Object.keys(t).forEach((function(e){"number"==typeof t[e]&&(t[e]=O(t[e]))})),N(e,t,null,n||{})},q=function(e){var t=e.attribution,n=e.name,r=e.rating,i=e.value,o=e.navigationType;"FCP"===n&&(b.value=i),["FCP","LCP"].includes(n)&&!T[0]&&(T[0]=S("longtask",I)),"FID"===n&&setTimeout((function(){k.didChange||(q({attribution:t,name:"TBT",rating:U("TBT",w.value),value:w.value,navigationType:o}),R("dataConsumption",h.value))}),1e4);var s=O(i);s<=a.maxTime&&s>=0&&N(n,s,r,t,o)},F=function(){return window.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0]},z=function(e){if("loading"===document.readyState)return"loading";var t=F();if(t){if(e<t.domInteractive)return"loading";if(0===t.domContentLoadedEventStart||e<t.domContentLoadedEventStart)return"dom-interactive";if(0===t.domComplete||e<t.domComplete)return"dom-content-loaded"}return"complete"},K=function(e){var t=e.nodeName;return 1===e.nodeType?t.toLowerCase():t.toUpperCase().replace(/^#/,"")},$=function(e,t){var n="";try{for(;e&&9!==e.nodeType;){var r=e,i=r.id?"#"+r.id:K(r)+(r.className&&r.className.length?"."+r.className.replace(/\\s+/g,"."):"");if(n.length+i.length>(t||100)-1)return n||i;if(n=n?i+">"+n:i,r.id)break;e=r.parentNode}}catch(e){}return n},Q=-1,W=function(){return Q},H=function(e){addEventListener("pageshow",(function(t){t.persisted&&(Q=t.timeStamp,e(t))}),!0)},V=function(){var e=F();return e&&e.activationStart||0},J=function(e,t){var n=F(),r="navigate";return W()>=0?r="back-forward-cache":n&&(r=document.prerendering||V()>0?"prerender":document.wasDiscarded?"restore":n.type.replace(/_/g,"-")),{name:e,value:void 0===t?-1:t,rating:"good",delta:0,entries:[],id:"v3-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:r}},X=function(e,t,n){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){var r=new PerformanceObserver((function(e){Promise.resolve().then((function(){t(e.getEntries())}))}));return r.observe(Object.assign({type:e,buffered:!0},n||{})),r}}catch(e){}},G=function(e,t){var n=function n(r){"pagehide"!==r.type&&"hidden"!==document.visibilityState||(e(r),t&&(removeEventListener("visibilitychange",n,!0),removeEventListener("pagehide",n,!0)))};addEventListener("visibilitychange",n,!0),addEventListener("pagehide",n,!0)},Z=function(e,t,n,r){var i,a;return function(o){t.value>=0&&(o||r)&&((a=t.value-(i||0))||void 0===i)&&(i=t.value,t.delta=a,t.rating=function(e,t){return e>t[1]?"poor":e>t[0]?"needs-improvement":"good"}(t.value,n),e(t))}},Y=function(e){requestAnimationFrame((function(){return requestAnimationFrame((function(){return e()}))}))},ee=function(e){document.prerendering?addEventListener("prerenderingchange",(function(){return e()}),!0):e()},te=-1,ne=function(){return"hidden"!==document.visibilityState||document.prerendering?1/0:0},re=function(e){"hidden"===document.visibilityState&&te>-1&&(te="visibilitychange"===e.type?e.timeStamp:0,ae())},ie=function(){addEventListener("visibilitychange",re,!0),addEventListener("prerenderingchange",re,!0)},ae=function(){removeEventListener("visibilitychange",re,!0),removeEventListener("prerenderingchange",re,!0)},oe=function(){return te<0&&(te=ne(),ie(),H((function(){setTimeout((function(){te=ne(),ie()}),0)}))),{get firstHiddenTime(){return te}}},se=function(e,t){t=t||{},ee((function(){var n,r=[1800,3e3],i=oe(),a=J("FCP"),o=X("paint",(function(e){e.forEach((function(e){"first-contentful-paint"===e.name&&(o.disconnect(),e.startTime<i.firstHiddenTime&&(a.value=Math.max(e.startTime-V(),0),a.entries.push(e),n(!0)))}))}));o&&(n=Z(e,a,r,t.reportAllChanges),H((function(i){a=J("FCP"),n=Z(e,a,r,t.reportAllChanges),Y((function(){a.value=performance.now()-i.timeStamp,n(!0)}))})))}))},ce={passive:!0,capture:!0},ue=new Date,le=function(e,t){P||(P=t,M=e,B=new Date,me(removeEventListener),de())},de=function(){if(M>=0&&M<B-ue){var e={entryType:"first-input",name:P.type,target:P.target,cancelable:P.cancelable,startTime:P.timeStamp,processingStart:P.timeStamp+M};C.forEach((function(t){t(e)})),C=[]}},pe=function(e){if(e.cancelable){var t=(e.timeStamp>1e12?new Date:performance.now())-e.timeStamp;"pointerdown"==e.type?function(e,t){var n=function(){le(e,t),i()},r=function(){i()},i=function(){removeEventListener("pointerup",n,ce),removeEventListener("pointercancel",r,ce)};addEventListener("pointerup",n,ce),addEventListener("pointercancel",r,ce)}(t,e):le(t,e)}},me=function(e){["mousedown","keydown","touchstart","pointerdown"].forEach((function(t){return e(t,pe,ce)}))},fe=0,ve=1/0,ge=0,be=function(e){e.forEach((function(e){e.interactionId&&(ve=Math.min(ve,e.interactionId),ge=Math.max(ge,e.interactionId),fe=ge?(ge-ve)/7+1:0)}))},he=function(){return D?fe:performance.interactionCount||0},we=0,ye=function(){return he()-we},Te=[],ke={},_e=function(e){var t=Te[Te.length-1],n=ke[e.interactionId];if(n||Te.length<10||e.duration>t.latency){if(n)n.entries.push(e),n.latency=Math.max(n.latency,e.duration);else{var r={id:e.interactionId,latency:e.duration,entries:[e]};ke[r.id]=r,Te.push(r)}Te.sort((function(e,t){return t.latency-e.latency})),Te.splice(10).forEach((function(e){delete ke[e.id]}))}},Se={},Ee=function e(t){document.prerendering?ee((function(){return e(t)})):"complete"!==document.readyState?addEventListener("load",(function(){return e(t)}),!0):setTimeout(t,0)},xe=function(e,t){t=t||{};var n=[800,1800],r=J("TTFB"),i=Z(e,r,n,t.reportAllChanges);Ee((function(){var a=F();if(a){var o=a.responseStart;if(o<=0||o>performance.now())return;r.value=Math.max(o-V(),0),r.entries=[a],i(!0),H((function(){r=J("TTFB",0),(i=Z(e,r,n,t.reportAllChanges))(!0)}))}}))},Oe=function(e){e.forEach((function(e){e.identifier&&q({attribution:{identifier:e.identifier},name:"ET",rating:null,value:e.startTime})}))},je=function(e){e.forEach((function(e){if(a.isResourceTiming&&R("resourceTiming",e),e.decodedBodySize&&e.initiatorType){var t=e.decodedBodySize/1e3;h.value[e.initiatorType]+=t,h.value.total+=t}}))},Ne=function(){!function(e,t){xe((function(e){!function(e){if(e.entries.length){var t=e.entries[0],n=t.activationStart||0,r=Math.max(t.domainLookupStart-n,0),i=Math.max(t.connectStart-n,0),a=Math.max(t.requestStart-n,0);e.attribution={waitingTime:r,dnsTime:i-r,connectionTime:a-i,requestTime:e.value-a,navigationEntry:t}}else e.attribution={waitingTime:0,dnsTime:0,connectionTime:0,requestTime:0}}(e),function(e){e.value>0&&q(e)}(e)}),t)}(0,a.reportOptions.ttfb),function(e,t){!function(e,t){t=t||{},ee((function(){var e,n=[.1,.25],r=J("CLS"),i=-1,a=0,o=[],s=function(e){i>-1&&function(e){!function(e){if(e.entries.length){var t=e.entries.reduce((function(e,t){return e&&e.value>t.value?e:t}));if(t&&t.sources&&t.sources.length){var n=(r=t.sources).find((function(e){return e.node&&1===e.node.nodeType}))||r[0];if(n)return void(e.attribution={largestShiftTarget:$(n.node),largestShiftTime:t.startTime,largestShiftValue:t.value,largestShiftSource:n,largestShiftEntry:t,loadState:z(t.startTime)})}}var r;e.attribution={}}(e),function(e){q(e)}(e)}(e)},c=function(t){t.forEach((function(t){if(!t.hadRecentInput){var n=o[0],i=o[o.length-1];a&&t.startTime-i.startTime<1e3&&t.startTime-n.startTime<5e3?(a+=t.value,o.push(t)):(a=t.value,o=[t]),a>r.value&&(r.value=a,r.entries=o,e())}}))},u=X("layout-shift",c);u&&(e=Z(s,r,n,t.reportAllChanges),se((function(t){i=t.value,r.value<0&&(r.value=0,e())})),G((function(){c(u.takeRecords()),e(!0)})),H((function(){a=0,i=-1,r=J("CLS",0),e=Z(s,r,n,t.reportAllChanges),Y((function(){return e()}))})))}))}(0,t)}(0,a.reportOptions.cls),function(e,t){se((function(e){!function(e){if(e.entries.length){var t=F(),n=e.entries[e.entries.length-1];if(t){var r=t.activationStart||0,i=Math.max(0,t.responseStart-r);return void(e.attribution={timeToFirstByte:i,firstByteToFCP:e.value-i,loadState:z(e.entries[0].startTime),navigationEntry:t,fcpEntry:n})}}e.attribution={timeToFirstByte:0,firstByteToFCP:e.value,loadState:z(W())}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.fcp),function(e,t){!function(e,t){t=t||{},ee((function(){var n,r=[100,300],i=oe(),a=J("FID"),o=function(e){e.startTime<i.firstHiddenTime&&(a.value=e.processingStart-e.startTime,a.entries.push(e),n(!0))},s=function(e){e.forEach(o)},c=X("first-input",s);n=Z(e,a,r,t.reportAllChanges),c&&G((function(){s(c.takeRecords()),c.disconnect()}),!0),c&&H((function(){var i;a=J("FID"),n=Z(e,a,r,t.reportAllChanges),C=[],M=-1,P=null,me(addEventListener),i=o,C.push(i),de()}))}))}((function(e){!function(e){var t=e.entries[0];e.attribution={eventTarget:$(t.target),eventType:t.name,eventTime:t.startTime,eventEntry:t,loadState:z(t.startTime)}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.fid),function(e,t){!function(e,t){t=t||{},ee((function(){var n,r=[2500,4e3],i=oe(),a=J("LCP"),o=function(e){var t=e[e.length-1];if(t){var r=Math.max(t.startTime-V(),0);r<i.firstHiddenTime&&(a.value=r,a.entries=[t],n())}},s=X("largest-contentful-paint",o);if(s){n=Z(e,a,r,t.reportAllChanges);var c=function(){Se[a.id]||(o(s.takeRecords()),s.disconnect(),Se[a.id]=!0,n(!0))};["keydown","click"].forEach((function(e){addEventListener(e,c,{once:!0,capture:!0})})),G(c,!0),H((function(i){a=J("LCP"),n=Z(e,a,r,t.reportAllChanges),Y((function(){a.value=performance.now()-i.timeStamp,Se[a.id]=!0,n(!0)}))}))}}))}((function(e){!function(e){if(e.entries.length){var t=F();if(t){var n=t.activationStart||0,r=e.entries[e.entries.length-1],i=r.url&&performance.getEntriesByType("resource").filter((function(e){return e.name===r.url}))[0],a=Math.max(0,t.responseStart-n),o=Math.max(a,i?(i.requestStart||i.startTime)-n:0),s=Math.max(o,i?i.responseEnd-n:0),c=Math.max(s,r?r.startTime-n:0),u={element:$(r.element),timeToFirstByte:a,resourceLoadDelay:o-a,resourceLoadTime:s-o,elementRenderDelay:c-s,navigationEntry:t,lcpEntry:r};return r.url&&(u.url=r.url),i&&(u.lcpResourceEntry=i),void(e.attribution=u)}}e.attribution={timeToFirstByte:0,resourceLoadDelay:0,resourceLoadTime:0,elementRenderDelay:e.value}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.lcp),function(e,t){!function(e,t){t=t||{},ee((function(){var n=[200,500];"interactionCount"in performance||D||(D=X("event",be,{type:"event",buffered:!0,durationThreshold:0}));var r,i=J("INP"),a=function(e){e.forEach((function(e){e.interactionId&&_e(e),"first-input"===e.entryType&&!Te.some((function(t){return t.entries.some((function(t){return e.duration===t.duration&&e.startTime===t.startTime}))}))&&_e(e)}));var t,n=(t=Math.min(Te.length-1,Math.floor(ye()/50)),Te[t]);n&&n.latency!==i.value&&(i.value=n.latency,i.entries=n.entries,r())},o=X("event",a,{durationThreshold:t.durationThreshold||40});r=Z(e,i,n,t.reportAllChanges),o&&(o.observe({type:"first-input",buffered:!0}),G((function(){a(o.takeRecords()),i.value<0&&ye()>0&&(i.value=0,i.entries=[]),r(!0)})),H((function(){Te=[],we=he(),i=J("INP"),r=Z(e,i,n,t.reportAllChanges)})))}))}((function(t){!function(e){if(e.entries.length){var t=e.entries.sort((function(e,t){return t.duration-e.duration||t.processingEnd-t.processingStart-(e.processingEnd-e.processingStart)}))[0];e.attribution={eventTarget:$(t.target),eventType:t.name,eventTime:t.startTime,eventEntry:t,loadState:z(t.startTime)}}else e.attribution={}}(t),e(t)}),t)}((function(e){return q(e)}),a.reportOptions.inp),a.isResourceTiming&&S("resource",je),a.isElementTiming&&S("element",Oe)},Ie=function(e){var t="usageDetails"in e?e.usageDetails:{};R("storageEstimate",{quota:j(e.quota),usage:j(e.usage),caches:j(t.caches),indexedDB:j(t.indexedDB),serviceWorker:j(t.serviceWorkerRegistrations)})},Pe={finalMarkToStepsMap:{},startMarkToStepsMap:{},active:{},navigationSteps:{}},Me=function(e){delete Pe.active[e]},Be=function(){return Pe.navigationSteps},Ce=function(e){var t;return null!==(t=Be()[e])&&void 0!==t?t:{}},De=function(e,t,n){var r="step."+e,i=u.getEntriesByName(p+t).length>0;if(u.getEntriesByName(p+n).length>0&&a.steps){var o=A[a.steps[e].threshold],s=o.maxOutlierThreshold,c=o.vitalsThresholds;if(i){var l=u.measure(r,p+t,p+n),d=l.duration;if(d<=s){var m=function(e,t){return e<=t[0]?"good":e<=t[1]?"needsImprovement":"poor"}(d,c);d>=0&&(N("userJourneyStep",d,m,{stepName:e},void 0),u.measure("step.".concat(e,"_vitals_").concat(m),{start:l.startTime+l.duration,end:l.startTime+l.duration,detail:{type:"stepVital",duration:d}}))}}}},Ae=function(){var e=Be(),t=Pe.startMarkToStepsMap,n=Object.keys(e).length;if(0===n)return{};var r={},i=n-1,a=Ce(i);if(Object.keys(a).forEach((function(e){var n,i=null!==(n=t[e])&&void 0!==n?n:[];Object.keys(i).forEach((function(e){r[e]=!0}))})),n>1){var o=Ce(i-1);Object.keys(o).forEach((function(e){var n,i=null!==(n=t[e])&&void 0!==n?n:[];Object.keys(i).forEach((function(e){r[e]=!0}))}))}return r},Le=function(){var e,t=Object.keys(Pe.navigationSteps).length;Pe.navigationSteps[t]={};var n=Ae();null===(e=a.onMarkStep)||void 0===e||e.call(a,"",Object.keys(n))},Ue=function(e){var t,n,r,i,o,s,c;if(Pe.finalMarkToStepsMap[e]){!function(e){var t=Pe.navigationSteps,n=Pe.finalMarkToStepsMap,r=Object.keys(t).length;if(0!==r){var i=r-1,a=Ce(i);if(a&&n[e]){var o=n[e];o&&Object.keys(o).forEach((function(e){if(a[e]){var n=Ce(i)||{};n[e]=!1,t[i]=n}if(r>1){var o=i-1,s=Ce(o);s[e]&&(s[e]=!1,t[o]=s)}}))}}}(e);var u=Pe.finalMarkToStepsMap[e];Object.keys(u).forEach((function(t){var n=u[t];n.forEach(Me),Promise.all(n.map((function(n){return function(e,t,n,r){return new(n||(n=Promise))((function(e,t){function i(e){try{o(r.next(e))}catch(e){t(e)}}function a(e){try{o(r.throw(e))}catch(e){t(e)}}function o(t){var r;t.done?e(t.value):(r=t.value,r instanceof n?r:new n((function(e){e(r)}))).then(i,a)}o((r=r.apply(undefined,[])).next())}))}(0,0,void 0,(function(){return function(e,t){var n,r,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,r&&(i=2&a[0]?r.return:a[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;switch(r=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,r=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){o=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){o.label=a[1];break}if(6===a[0]&&o.label<i[1]){o.label=i[1],i=a;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(a);break}i[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],r=0}finally{n=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}}(this,(function(r){switch(r.label){case 0:return[4,De(n,t,e)];case 1:return r.sent(),[2]}}))}))}))).catch((function(){}))}))}else r=e,i=Pe.navigationSteps,o=Object.keys(i).length,(c=Ce(s=(o>0?o:1)-1)||[])[r]=!0,i[s]=c,function(e){var t,n=null!==(t=Pe.startMarkToStepsMap[e])&&void 0!==t?t:[];Object.keys(n).forEach((function(e){Pe.active[e]||(Pe.active[e]=!0)}))}(e);if(a.enableNavigationTracking){var l=Ae();null===(t=a.onMarkStep)||void 0===t||t.call(a,e,Object.keys(l))}else null===(n=a.onMarkStep)||void 0===n||n.call(a,e,Object.keys(Pe.active))},Re=function(e){u.mark(p+e),Ue(e)},qe=function(e){0===u.getEntriesByName(p+e).length&&(u.mark(p+e),Ue(e))},Fe=0,ze=function(){function e(e){if(void 0===e&&(e={}),this.v="9.0.0-rc.3",a.analyticsTracker=e.analyticsTracker,a.isResourceTiming=!!e.resourceTiming,a.isElementTiming=!!e.elementTiming,a.maxTime=e.maxMeasureTime||a.maxTime,a.reportOptions=e.reportOptions||a.reportOptions,a.steps=e.steps,a.onMarkStep=e.onMarkStep,a.enableNavigationTracking=e.enableNavigationTracking,m()){"PerformanceObserver"in o&&Ne(),void 0!==document.hidden&&document.addEventListener("visibilitychange",_);var t=function(){if(!m())return{};var e=u.getEntriesByType("navigation")[0];if(!e)return{};var t=e.responseStart,n=e.responseEnd;return{fetchTime:n-e.fetchStart,workerTime:e.workerStart>0?n-e.workerStart:0,totalTime:n-e.requestStart,downloadTime:n-t,timeToFirstByte:t-e.requestStart,headerSize:e.transferSize-e.encodedBodySize||0,dnsLookupTime:e.domainLookupEnd-e.domainLookupStart,redirectTime:e.redirectEnd-e.redirectStart}}();R("navigationTiming",t),t.redirectTime&&q({attribution:{},name:"RT",rating:U("RT",t.redirectTime),value:t.redirectTime}),R("networkInformation",function(){if("connection"in c){var e=c.connection;return"object"!=typeof e?{}:(f=e.effectiveType,v=!!e.saveData,{downlink:e.downlink,effectiveType:e.effectiveType,rtt:e.rtt,saveData:!!e.saveData})}return{}}()),c&&c.storage&&"function"==typeof c.storage.estimate&&c.storage.estimate().then(Ie),a.steps&&a.steps&&(Pe.startMarkToStepsMap={},Pe.finalMarkToStepsMap={},Pe.active={},Pe.navigationSteps={},Object.entries(a.steps).forEach((function(e){var t,n,r=e[0],i=e[1].marks,a=i[0],o=i[1],s=null!==(n=Pe.startMarkToStepsMap[a])&&void 0!==n?n:{};if(s[r]=!0,Pe.startMarkToStepsMap[a]=s,Pe.finalMarkToStepsMap[o]){var c=Pe.finalMarkToStepsMap[o][a]||[];c.push(r),Pe.finalMarkToStepsMap[o][a]=c}else Pe.finalMarkToStepsMap[o]=((t={})[a]=[r],t)})))}}return e.prototype.start=function(e){m()&&!g[e]&&(g[e]=!0,u.mark("mark_".concat(e,"_start")))},e.prototype.end=function(e,t,n){if(void 0===t&&(t={}),void 0===n&&(n=!0),m()&&g[e]){u.mark("mark_".concat(e,"_end")),delete g[e];var r=function(e){u.measure(e,"mark_".concat(e,"_start"),"mark_".concat(e,"_end"));var t=u.getEntriesByName(e).pop();return t&&"measure"===t.entryType?t.duration:-1}(e);n&&R(e,O(r),t)}},e.prototype.endPaint=function(e,t){var n=this;setTimeout((function(){n.end(e,t)}))},e.prototype.clear=function(e){delete g[e],u.clearMarks&&(u.clearMarks("mark_".concat(e,"_start")),u.clearMarks("mark_".concat(e,"_end")))},e.prototype.markNTBT=function(){var e=this;this.start("ntbt"),y.value=0,clearTimeout(Fe),Fe=setTimeout((function(){e.end("ntbt",{},!1),q({attribution:{},name:"NTBT",rating:U("NTBT",y.value),value:y.value}),y.value=0}),2e3)},e}()},426:(e,t)=>{"use strict";Symbol.for("react.element"),Symbol.for("react.portal"),Symbol.for("react.fragment"),Symbol.for("react.strict_mode"),Symbol.for("react.profiler"),Symbol.for("react.provider"),Symbol.for("react.context"),Symbol.for("react.forward_ref"),Symbol.for("react.suspense"),Symbol.for("react.memo"),Symbol.for("react.lazy"),Symbol.iterator;var n={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},r=Object.assign,i={};function a(e,t,r){this.props=e,this.context=t,this.refs=i,this.updater=r||n}function o(){}function s(e,t,r){this.props=e,this.context=t,this.refs=i,this.updater=r||n}a.prototype.isReactComponent={},a.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},a.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},o.prototype=a.prototype;var c=s.prototype=new o;c.constructor=s,r(c,a.prototype),c.isPureReactComponent=!0;Array.isArray,Object.prototype.hasOwnProperty;var u={current:null};t.useCallback=function(e,t){return u.current.useCallback(e,t)},t.useEffect=function(e,t){return u.current.useEffect(e,t)},t.useRef=function(e){return u.current.useRef(e)}},784:(e,t,n)=>{"use strict";e.exports=n(426)},353:function(e,t,n){var r;!function(i,a){"use strict";var o="function",s="undefined",c="object",u="string",l="major",d="model",p="name",m="type",f="vendor",v="version",g="architecture",b="console",h="mobile",w="tablet",y="smarttv",T="wearable",k="embedded",_="Amazon",S="Apple",E="ASUS",x="BlackBerry",O="Browser",j="Chrome",N="Firefox",I="Google",P="Huawei",M="LG",B="Microsoft",C="Motorola",D="Opera",A="Samsung",L="Sharp",U="Sony",R="Xiaomi",q="Zebra",F="Facebook",z="Chromium OS",K="Mac OS",$=function(e){for(var t={},n=0;n<e.length;n++)t[e[n].toUpperCase()]=e[n];return t},Q=function(e,t){return typeof e===u&&-1!==W(t).indexOf(W(e))},W=function(e){return e.toLowerCase()},H=function(e,t){if(typeof e===u)return e=e.replace(/^\\s\\s*/,""),typeof t===s?e:e.substring(0,350)},V=function(e,t){for(var n,r,i,s,u,l,d=0;d<t.length&&!u;){var p=t[d],m=t[d+1];for(n=r=0;n<p.length&&!u&&p[n];)if(u=p[n++].exec(e))for(i=0;i<m.length;i++)l=u[++r],typeof(s=m[i])===c&&s.length>0?2===s.length?typeof s[1]==o?this[s[0]]=s[1].call(this,l):this[s[0]]=s[1]:3===s.length?typeof s[1]!==o||s[1].exec&&s[1].test?this[s[0]]=l?l.replace(s[1],s[2]):a:this[s[0]]=l?s[1].call(this,l,s[2]):a:4===s.length&&(this[s[0]]=l?s[3].call(this,l.replace(s[1],s[2])):a):this[s]=l||a;d+=2}},J=function(e,t){for(var n in t)if(typeof t[n]===c&&t[n].length>0){for(var r=0;r<t[n].length;r++)if(Q(t[n][r],e))return"?"===n?a:n}else if(Q(t[n],e))return"?"===n?a:n;return e},X={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},G={browser:[[/\\b(?:crmo|crios)\\/([\\w\\.]+)/i],[v,[p,"Chrome"]],[/edg(?:e|ios|a)?\\/([\\w\\.]+)/i],[v,[p,"Edge"]],[/(opera mini)\\/([-\\w\\.]+)/i,/(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,/(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i],[p,v],[/opios[\\/ ]+([\\w\\.]+)/i],[v,[p,D+" Mini"]],[/\\bopr\\/([\\w\\.]+)/i],[v,[p,D]],[/(kindle)\\/([\\w\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,/(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,/(?:ms|\\()(ie) ([\\w\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,/(heytap|ovi)browser\\/([\\d\\.]+)/i,/(weibo)__([\\d\\.]+)/i],[p,v],[/(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i],[v,[p,"UC"+O]],[/microm.+\\bqbcore\\/([\\w\\.]+)/i,/\\bqbcore\\/([\\w\\.]+).+microm/i],[v,[p,"WeChat(Win) Desktop"]],[/micromessenger\\/([\\w\\.]+)/i],[v,[p,"WeChat"]],[/konqueror\\/([\\w\\.]+)/i],[v,[p,"Konqueror"]],[/trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i],[v,[p,"IE"]],[/ya(?:search)?browser\\/([\\w\\.]+)/i],[v,[p,"Yandex"]],[/(avast|avg)\\/([\\w\\.]+)/i],[[p,/(.+)/,"$1 Secure "+O],v],[/\\bfocus\\/([\\w\\.]+)/i],[v,[p,N+" Focus"]],[/\\bopt\\/([\\w\\.]+)/i],[v,[p,D+" Touch"]],[/coc_coc\\w+\\/([\\w\\.]+)/i],[v,[p,"Coc Coc"]],[/dolfin\\/([\\w\\.]+)/i],[v,[p,"Dolphin"]],[/coast\\/([\\w\\.]+)/i],[v,[p,D+" Coast"]],[/miuibrowser\\/([\\w\\.]+)/i],[v,[p,"MIUI "+O]],[/fxios\\/([-\\w\\.]+)/i],[v,[p,N]],[/\\bqihu|(qi?ho?o?|360)browser/i],[[p,"360 "+O]],[/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i],[[p,/(.+)/,"$1 "+O],v],[/(comodo_dragon)\\/([\\w\\.]+)/i],[[p,/_/g," "],v],[/(electron)\\/([\\w\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i],[p,v],[/(metasr)[\\/ ]?([\\w\\.]+)/i,/(lbbrowser)/i,/\\[(linkedin)app\\]/i],[p],[/((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i],[[p,F],v],[/(kakao(?:talk|story))[\\/ ]([\\w\\.]+)/i,/(naver)\\(.*?(\\d+\\.[\\w\\.]+).*\\)/i,/safari (line)\\/([\\w\\.]+)/i,/\\b(line)\\/([\\w\\.]+)\\/iab/i,/(chromium|instagram)[\\/ ]([-\\w\\.]+)/i],[p,v],[/\\bgsa\\/([\\w\\.]+) .*safari\\//i],[v,[p,"GSA"]],[/musical_ly(?:.+app_?version\\/|_)([\\w\\.]+)/i],[v,[p,"TikTok"]],[/headlesschrome(?:\\/([\\w\\.]+)| )/i],[v,[p,j+" Headless"]],[/ wv\\).+(chrome)\\/([\\w\\.]+)/i],[[p,j+" WebView"],v],[/droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i],[v,[p,"Android "+O]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i],[p,v],[/version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i],[v,[p,"Mobile Safari"]],[/version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i],[v,p],[/webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i],[p,[v,J,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\\/([\\w\\.]+)/i],[p,v],[/(navigator|netscape\\d?)\\/([-\\w\\.]+)/i],[[p,"Netscape"],v],[/mobile vr; rv:([\\w\\.]+)\\).+firefox/i],[v,[p,N+" Reality"]],[/ekiohf.+(flow)\\/([\\w\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,/(firefox)\\/([\\w\\.]+)/i,/(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,/(links) \\(([\\w\\.]+)/i,/panasonic;(viera)/i],[p,v],[/(cobalt)\\/([\\w\\.]+)/i],[p,[v,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i],[[g,"amd64"]],[/(ia32(?=;))/i],[[g,W]],[/((?:i[346]|x)86)[;\\)]/i],[[g,"ia32"]],[/\\b(aarch64|arm(v?8e?l?|_?64))\\b/i],[[g,"arm64"]],[/\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i],[[g,"armhf"]],[/windows (ce|mobile); ppc;/i],[[g,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i],[[g,/ower/,"",W]],[/(sun4\\w)[;\\)]/i],[[g,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i],[[g,W]]],device:[[/\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[d,[f,A],[m,w]],[/\\b((?:s[cgp]h|gt|sm)-\\w+|sc[g-]?[\\d]+a?|galaxy nexus)/i,/samsung[- ]([-\\w]+)/i,/sec-(sgh\\w+)/i],[d,[f,A],[m,h]],[/(?:\\/|\\()(ip(?:hone|od)[\\w, ]*)(?:\\/|;)/i],[d,[f,S],[m,h]],[/\\((ipad);[-\\w\\),; ]+apple/i,/applecoremedia\\/[\\w\\.]+ \\((ipad)/i,/\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i],[d,[f,S],[m,w]],[/(macintosh);/i],[d,[f,S]],[/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i],[d,[f,L],[m,h]],[/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i],[d,[f,P],[m,w]],[/(?:huawei|honor)([-\\w ]+)[;\\)]/i,/\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i],[d,[f,P],[m,h]],[/\\b(poco[\\w ]+)(?: bui|\\))/i,/\\b; (\\w+) build\\/hm\\1/i,/\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,/\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,/\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i],[[d,/_/g," "],[f,R],[m,h]],[/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i],[[d,/_/g," "],[f,R],[m,w]],[/; (\\w+) bui.+ oppo/i,/\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i],[d,[f,"OPPO"],[m,h]],[/vivo (\\w+)(?: bui|\\))/i,/\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i],[d,[f,"Vivo"],[m,h]],[/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i],[d,[f,"Realme"],[m,h]],[/\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,/\\bmot(?:orola)?[- ](\\w*)/i,/((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i],[d,[f,C],[m,h]],[/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i],[d,[f,C],[m,w]],[/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i],[d,[f,M],[m,w]],[/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,/\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,/\\blg-?([\\d\\w]+) bui/i],[d,[f,M],[m,h]],[/(ideatab[-\\w ]+)/i,/lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i],[d,[f,"Lenovo"],[m,w]],[/(?:maemo|nokia).*(n900|lumia \\d+)/i,/nokia[-_ ]?([-\\w\\.]*)/i],[[d,/_/g," "],[f,"Nokia"],[m,h]],[/(pixel c)\\b/i],[d,[f,I],[m,w]],[/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i],[d,[f,I],[m,h]],[/droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i],[d,[f,U],[m,h]],[/sony tablet [ps]/i,/\\b(?:sony)?sgp\\w+(?: bui|\\))/i],[[d,"Xperia Tablet"],[f,U],[m,w]],[/ (kb2005|in20[12]5|be20[12][59])\\b/i,/(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i],[d,[f,"OnePlus"],[m,h]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\\))/i,/(kf[a-z]+)( bui|\\)).+silk\\//i],[d,[f,_],[m,w]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i],[[d,/(.+)/g,"Fire Phone $1"],[f,_],[m,h]],[/(playbook);[-\\w\\),; ]+(rim)/i],[d,f,[m,w]],[/\\b((?:bb[a-f]|st[hv])100-\\d)/i,/\\(bb10; (\\w+)/i],[d,[f,x],[m,h]],[/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i],[d,[f,E],[m,w]],[/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i],[d,[f,E],[m,h]],[/(nexus 9)/i],[d,[f,"HTC"],[m,w]],[/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,/(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\\.))|sony(?!-bra))[-_ ]?([-\\w]*)/i],[f,[d,/_/g," "],[m,h]],[/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i],[d,[f,"Acer"],[m,w]],[/droid.+; (m[1-5] note) bui/i,/\\bmz-([-\\w]{2,})/i],[d,[f,"Meizu"],[m,h]],[/(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,/(hp) ([\\w ]+\\w)/i,/(asus)-?(\\w+)/i,/(microsoft); (lumia[\\w ]+)/i,/(lenovo)[-_ ]?([-\\w]+)/i,/(jolla)/i,/(oppo) ?([\\w ]+) bui/i],[f,d,[m,h]],[/(kobo)\\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\/([\\w\\.]+)/i,/(nook)[\\w ]+build\\/(\\w+)/i,/(dell) (strea[kpr\\d ]*[\\dko])/i,/(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,/(trinity)[- ]*(t\\d{3}) bui/i,/(gigaset)[- ]+(q\\w{1,9}) bui/i,/(vodafone) ([\\w ]+)(?:\\)| bui)/i],[f,d,[m,w]],[/(surface duo)/i],[d,[f,B],[m,w]],[/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i],[d,[f,"Fairphone"],[m,h]],[/(u304aa)/i],[d,[f,"AT&T"],[m,h]],[/\\bsie-(\\w*)/i],[d,[f,"Siemens"],[m,h]],[/\\b(rct\\w+) b/i],[d,[f,"RCA"],[m,w]],[/\\b(venue[\\d ]{2,7}) b/i],[d,[f,"Dell"],[m,w]],[/\\b(q(?:mv|ta)\\w+) b/i],[d,[f,"Verizon"],[m,w]],[/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i],[d,[f,"Barnes & Noble"],[m,w]],[/\\b(tm\\d{3}\\w+) b/i],[d,[f,"NuVision"],[m,w]],[/\\b(k88) b/i],[d,[f,"ZTE"],[m,w]],[/\\b(nx\\d{3}j) b/i],[d,[f,"ZTE"],[m,h]],[/\\b(gen\\d{3}) b.+49h/i],[d,[f,"Swiss"],[m,h]],[/\\b(zur\\d{3}) b/i],[d,[f,"Swiss"],[m,w]],[/\\b((zeki)?tb.*\\b) b/i],[d,[f,"Zeki"],[m,w]],[/\\b([yr]\\d{2}) b/i,/\\b(dragon[- ]+touch |dt)(\\w{5}) b/i],[[f,"Dragon Touch"],d,[m,w]],[/\\b(ns-?\\w{0,9}) b/i],[d,[f,"Insignia"],[m,w]],[/\\b((nxa|next)-?\\w{0,9}) b/i],[d,[f,"NextBook"],[m,w]],[/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[f,"Voice"],d,[m,h]],[/\\b(lvtel\\-)?(v1[12]) b/i],[[f,"LvTel"],d,[m,h]],[/\\b(ph-1) /i],[d,[f,"Essential"],[m,h]],[/\\b(v(100md|700na|7011|917g).*\\b) b/i],[d,[f,"Envizen"],[m,w]],[/\\b(trio[-\\w\\. ]+) b/i],[d,[f,"MachSpeed"],[m,w]],[/\\btu_(1491) b/i],[d,[f,"Rotor"],[m,w]],[/(shield[\\w ]+) b/i],[d,[f,"Nvidia"],[m,w]],[/(sprint) (\\w+)/i],[f,d,[m,h]],[/(kin\\.[onetw]{3})/i],[[d,/\\./g," "],[f,B],[m,h]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i],[d,[f,q],[m,w]],[/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i],[d,[f,q],[m,h]],[/smart-tv.+(samsung)/i],[f,[m,y]],[/hbbtv.+maple;(\\d+)/i],[[d,/^/,"SmartTV"],[f,A],[m,y]],[/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i],[[f,M],[m,y]],[/(apple) ?tv/i],[f,[d,S+" TV"],[m,y]],[/crkey/i],[[d,j+"cast"],[f,I],[m,y]],[/droid.+aft(\\w)( bui|\\))/i],[d,[f,_],[m,y]],[/\\(dtv[\\);].+(aquos)/i,/(aquos-tv[\\w ]+)\\)/i],[d,[f,L],[m,y]],[/(bravia[\\w ]+)( bui|\\))/i],[d,[f,U],[m,y]],[/(mitv-\\w{5}) bui/i],[d,[f,R],[m,y]],[/Hbbtv.*(technisat) (.*);/i],[f,d,[m,y]],[/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,/hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w\\+ ]*; *([\\w\\d][^;]*);([^;]*)/i],[[f,H],[d,H],[m,y]],[/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i],[[m,y]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[f,d,[m,b]],[/droid.+; (shield) bui/i],[d,[f,"Nvidia"],[m,b]],[/(playstation [345portablevi]+)/i],[d,[f,U],[m,b]],[/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i],[d,[f,B],[m,b]],[/((pebble))app/i],[f,d,[m,T]],[/(watch)(?: ?os[,\\/]|\\d,\\d\\/)[\\d\\.]+/i],[d,[f,S],[m,T]],[/droid.+; (glass) \\d/i],[d,[f,I],[m,T]],[/droid.+; (wt63?0{2,3})\\)/i],[d,[f,q],[m,T]],[/(quest( 2| pro)?)/i],[d,[f,F],[m,T]],[/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i],[f,[m,k]],[/(aeobc)\\b/i],[d,[f,_],[m,k]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i],[d,[m,h]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i],[d,[m,w]],[/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i],[[m,w]],[/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i],[[m,h]],[/(android[-\\w\\. ]{0,9});.+buil/i],[d,[f,"Generic"]]],engine:[[/windows.+ edge\\/([\\w\\.]+)/i],[v,[p,"EdgeHTML"]],[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i],[v,[p,"Blink"]],[/(presto)\\/([\\w\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,/ekioh(flow)\\/([\\w\\.]+)/i,/(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,/(icab)[\\/ ]([23]\\.[\\d\\.]+)/i,/\\b(libweb)/i],[p,v],[/rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i],[v,p]],os:[[/microsoft (windows) (vista|xp)/i],[p,v],[/(windows) nt 6\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,/(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i],[p,[v,J,X]],[/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i],[[p,"Windows"],[v,J,X]],[/ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,/ios;fbsv\\/([\\d\\.]+)/i,/cfnetwork\\/.+darwin/i],[[v,/_/g,"."],[p,"iOS"]],[/(mac os x) ?([\\w\\. ]*)/i,/(macintosh|mac_powerpc\\b)(?!.+haiku)/i],[[p,K],[v,/_/g,"."]],[/droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i],[v,p],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,/(blackberry)\\w*\\/([\\w\\.]*)/i,/(tizen|kaios)[\\/ ]([\\w\\.]+)/i,/\\((series40);/i],[p,v],[/\\(bb(10);/i],[v,[p,x]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i],[v,[p,"Symbian"]],[/mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i],[v,[p,N+" OS"]],[/web0s;.+rt(tv)/i,/\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i],[v,[p,"webOS"]],[/watch(?: ?os[,\\/]|\\d,\\d\\/)([\\d\\.]+)/i],[v,[p,"watchOS"]],[/crkey\\/([\\d\\.]+)/i],[v,[p,j+"cast"]],[/(cros) [\\w]+(?:\\)| ([\\w\\.]+)\\b)/i],[[p,z],v],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\\/(\\d+\\.[\\w\\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\);]+)/i,/\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,/(mint)[\\/\\(\\) ]?(\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,/(hurd|linux) ?([\\w\\.]*)/i,/(gnu) ?([\\w\\.]*)/i,/\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,/(haiku) (\\w+)/i],[p,v],[/(sunos) ?([\\w\\.\\d]*)/i],[[p,"Solaris"],v],[/((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,/(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,/\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\\w\\.]*)/i],[p,v]]},Z=function(e,t){if(typeof e===c&&(t=e,e=a),!(this instanceof Z))return new Z(e,t).getResult();var n=typeof i!==s&&i.navigator?i.navigator:a,r=e||(n&&n.userAgent?n.userAgent:""),b=n&&n.userAgentData?n.userAgentData:a,y=t?function(e,t){var n={};for(var r in e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return n}(G,t):G,T=n&&n.userAgent==r;return this.getBrowser=function(){var e,t={};return t[p]=a,t[v]=a,V.call(t,r,y.browser),t[l]=typeof(e=t[v])===u?e.replace(/[^\\d\\.]/g,"").split(".")[0]:a,T&&n&&n.brave&&typeof n.brave.isBrave==o&&(t[p]="Brave"),t},this.getCPU=function(){var e={};return e[g]=a,V.call(e,r,y.cpu),e},this.getDevice=function(){var e={};return e[f]=a,e[d]=a,e[m]=a,V.call(e,r,y.device),T&&!e[m]&&b&&b.mobile&&(e[m]=h),T&&"Macintosh"==e[d]&&n&&typeof n.standalone!==s&&n.maxTouchPoints&&n.maxTouchPoints>2&&(e[d]="iPad",e[m]=w),e},this.getEngine=function(){var e={};return e[p]=a,e[v]=a,V.call(e,r,y.engine),e},this.getOS=function(){var e={};return e[p]=a,e[v]=a,V.call(e,r,y.os),T&&!e[p]&&b&&"Unknown"!=b.platform&&(e[p]=b.platform.replace(/chrome os/i,z).replace(/macos/i,K)),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return r},this.setUA=function(e){return r=typeof e===u&&e.length>350?H(e,350):e,this},this.setUA(r),this};Z.VERSION="1.0.35",Z.BROWSER=$([p,v,l]),Z.CPU=$([g]),Z.DEVICE=$([d,f,m,b,h,y,w,T,k]),Z.ENGINE=Z.OS=$([p,v]),typeof t!==s?(e.exports&&(t=e.exports=Z),t.UAParser=Z):n.amdO?(r=function(){return Z}.call(t,n,t,e))===a||(e.exports=r):typeof i!==s&&(i.UAParser=Z);var Y=typeof i!==s&&(i.jQuery||i.Zepto);if(Y&&!Y.ua){var ee=new Z;Y.ua=ee.getResult(),Y.ua.get=function(){return ee.getUA()},Y.ua.set=function(e){ee.setUA(e);var t=ee.getResult();for(var n in t)Y.ua[n]=t[n]}}}("object"==typeof window?window:this)}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var a=t[r]={exports:{}};return e[r].call(a.exports,a,a.exports,n),a.exports}n.amdO={},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";n.r(r),n.d(r,{ActionType:()=>f,AmplitudePlatformName:()=>g,AnalyticsEventImportance:()=>l,AnalyticsQueries:()=>e,AuthStatus:()=>b,ComponentType:()=>m,IThresholdTier:()=>Jt,MetricType:()=>d,PlatformName:()=>v,SessionActions:()=>h,SessionAutomatedEvents:()=>w,SessionRank:()=>y,SubjectType:()=>p,UserTypeCommerce:()=>c,UserTypeInsto:()=>i,UserTypeRetail:()=>t,UserTypeRetailBusinessBanking:()=>s,UserTypeRetailEmployeeInternal:()=>a,UserTypeRetailEmployeePersonal:()=>o,UserTypeWallet:()=>u,automatedEvents:()=>xn,automatedMappingConfig:()=>In,clearMarkEntry:()=>Vn,clearPerformanceMarkEntries:()=>Xn,config:()=>A,createEventConfig:()=>On,createNewSpan:()=>Ln,createNewTrace:()=>Un,device:()=>W,endPerfMark:()=>Jn,exposeExperiment:()=>wn,flushQueue:()=>or,generateUUID:()=>V,getAnalyticsHeaders:()=>sr,getReferrerData:()=>le,getTracingHeaders:()=>An,getTracingId:()=>Dn,getUrlHostname:()=>pe,getUrlParams:()=>me,getUrlPathname:()=>fe,getUserContext:()=>ar,identify:()=>Tn,identifyFlow:()=>xe,identity:()=>H,identityFlow:()=>Se,incrementUjNavigation:()=>an,init:()=>yn,initNextJsTrackPageview:()=>_n,initTrackPageview:()=>kn,isEventKeyFormatValid:()=>we,isSessionEnded:()=>pt,location:()=>re,logEvent:()=>$t,logMetric:()=>Ht,logPageView:()=>on,logTrace:()=>Rn,markNTBT:()=>tn,markStep:()=>nn,markStepOnce:()=>rn,onVisibilityChange:()=>ln,optIn:()=>En,optOut:()=>Sn,perfMark:()=>Wn,persistentData:()=>oe,postMessage:()=>K,recordSessionDuration:()=>pn,removeFromIdentifyFlow:()=>Ee,savePersistentData:()=>st,sendScheduledEvents:()=>Bt,setBreadcrumbs:()=>ie,setConfig:()=>U,setLocation:()=>ae,setPagePath:()=>ve,setPageview:()=>Kt,setPersistentData:()=>se,setSessionStart:()=>dt,setTime:()=>Ue,startPerfMark:()=>Hn,timeStone:()=>Le,useEventLogger:()=>Yn,useLogEventOnMount:()=>tr,usePerformanceMarks:()=>rr});let e=function(e){return e.fbclid="fbclid",e.gclid="gclid",e.msclkid="msclkid",e.ptclid="ptclid",e.ttclid="ttclid",e.utm_source="utm_source",e.utm_medium="utm_medium",e.utm_campaign="utm_campaign",e.utm_term="utm_term",e.utm_content="utm_content",e}({});const t=0,i=1,a=2,o=3,s=4,c=5,u=6;let l=function(e){return e.low="low",e.high="high",e}({}),d=function(e){return e.count="count",e.rate="rate",e.gauge="gauge",e.distribution="distribution",e.histogram="histogram",e}({}),p=function(e){return e.commerce_merchant="commerce_merchant",e.device="device",e.edp_fingerprint_id="edp_fingerprint_id",e.nft_user="nft_user",e.user="user",e.wallet_user="wallet_user",e.uuid="user_uuid",e}({}),m=function(e){return e.unknown="unknown",e.banner="banner",e.button="button",e.card="card",e.chart="chart",e.content_script="content_script",e.dropdown="dropdown",e.link="link",e.page="page",e.modal="modal",e.table="table",e.search_bar="search_bar",e.service_worker="service_worker",e.text="text",e.text_input="text_input",e.tray="tray",e.checkbox="checkbox",e.icon="icon",e}({}),f=function(e){return e.unknown="unknown",e.blur="blur",e.click="click",e.change="change",e.dismiss="dismiss",e.focus="focus",e.hover="hover",e.select="select",e.measurement="measurement",e.move="move",e.process="process",e.render="render",e.scroll="scroll",e.view="view",e.search="search",e.keyPress="keyPress",e}({}),v=function(e){return e.unknown="unknown",e.web="web",e.android="android",e.ios="ios",e.mobile_web="mobile_web",e.tablet_web="tablet_web",e.server="server",e.windows="windows",e.macos="macos",e.extension="extension",e}({}),g=function(e){return e.web="Web",e.ios="iOS",e.android="Android",e}({}),b=function(e){return e[e.notLoggedIn=0]="notLoggedIn",e[e.loggedIn=1]="loggedIn",e}({}),h=function(e){return e.ac="ac",e.af="af",e.ah="ah",e.al="al",e.am="am",e.ar="ar",e.as="as",e}({}),w=function(e){return e.pv="pv",e}({}),y=function(e){return e.xs="xs",e.s="s",e.m="m",e.l="l",e.xl="xl",e.xxl="xxl",e}({});const T="https://analytics-service-dev.cbhq.net",k=3e5,_=5e3,S="analytics-db",E="experiment-exposure-db",x="Analytics SDK:",O=Object.values(e),j="pageview",N="session_duration",I={navigationTiming:{eventName:"perf_navigation_timing"},redirectTime:{eventName:"perf_redirect_time"},RT:{eventName:"perf_redirect_time"},TTFB:{eventName:"perf_time_to_first_byte"},networkInformation:{eventName:"perf_network_information"},storageEstimate:{eventName:"perf_storage_estimate"},FCP:{eventName:"perf_first_contentful_paint"},FID:{eventName:"perf_first_input_delay"},LCP:{eventName:"perf_largest_contentful_paint"},CLS:{eventName:"perf_cumulative_layout_shift"},TBT:{eventName:"perf_total_blocking_time"},NTBT:{eventName:"perf_navigation_total_blocking_time"},INP:{eventName:"perf_interact_to_next_paint"},ET:{eventName:"perf_element_timing"},userJourneyStep:{eventName:"perf_user_journey_step"}},P="1",M="web";function B(){return B=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},B.apply(this,arguments)}const C=/^(https?:\\/\\/)/;function D(e){return{eventsEndpoint:e+"/amp",metricsEndPoint:e+"/metrics",exposureEndpoint:e+"/track-exposures",tracesEndpoint:e+"/traces"}}const A=B({authCookie:"logged_in",amplitudeApiKey:"",batchEventsPeriod:_,batchEventsThreshold:30,batchMetricsPeriod:_,batchMetricsThreshold:30,batchTracesPeriod:_,batchTracesThreshold:30,headers:{},interactionManager:null,isAlwaysAuthed:!1,isProd:!1,isInternalApplication:!1,onError:(e,t)=>{console.error(x,e,t)},platform:v.unknown,projectName:"",ricTimeoutScheduleEvent:1e3,ricTimeoutSetDevice:500,showDebugLogging:!1,trackUserId:!1,version:null,apiEndpoint:T},D(T),{steps:{}}),L=[].reduce(((e,t)=>n=>e(t(n))),(e=>{if(!e.isProd)return e.isInternalApplication?(e.apiEndpoint="https://analytics-service-internal-dev.cbhq.net",B({},e,D(e.apiEndpoint))):e;const t=(e=>e.apiEndpoint?C.test(e.apiEndpoint)?e.apiEndpoint:`https://${e.apiEndpoint}`:e.isInternalApplication?"https://analytics-service-internal.cbhq.net":"https://as.coinbase.com")(e);return B({},e,{apiEndpoint:t},D(t))})),U=e=>{const{batchEventsThreshold:t,batchMetricsThreshold:n,batchTracesThreshold:r}=e,i=[t,n,r];for(const e of i)if((e||0)>30){console.warn("You are setting the threshhold for the batch limit to be greater than 30. This may cause request overload.");break}Object.assign(A,L(e))},R=[v.web,v.mobile_web,v.tablet_web];function q(){return"android"===A.platform}function F(){return"ios"===A.platform}function z(){return R.includes(A.platform)}function K(e){if(z()&&navigator&&"serviceWorker"in navigator&&navigator.serviceWorker.controller)try{navigator.serviceWorker.controller.postMessage(e)}catch(e){e instanceof Error&&A.onError(e)}}var $=n(353),Q=n.n($);const W={amplitudeOSName:null,amplitudeOSVersion:null,amplitudeDeviceModel:null,amplitudePlatform:null,browserName:null,browserMajor:null,osName:null,userAgent:null,width:null,height:null},H={countryCode:null,deviceId:null,device_os:null,isOptOut:!1,languageCode:null,locale:null,jwt:null,session_lcc_id:null,userAgent:null,userId:null},V=e=>e?(e^16*Math.random()>>e/4).toString(16):"10000000-1000-4000-8000-100000000000".replace(/[018]/g,V),J=()=>A.isAlwaysAuthed||!!H.userId,X=()=>{const e={};return H.countryCode&&(e.country_code=H.countryCode),e},G=()=>{const{platform:e}=A;if(e===v.web)switch(!0){case window.matchMedia("(max-width: 560px)").matches:return v.mobile_web;case window.matchMedia("(max-width: 1024px, min-width: 561px)").matches:return v.tablet_web}return e},Z=()=>{var e,t,n,r,i;z()?("requestIdleCallback"in window?window.requestIdleCallback(ne,{timeout:A.ricTimeoutSetDevice}):ne(),W.amplitudePlatform=g.web,W.userAgent=(null==(e=window)||null==(e=e.navigator)?void 0:e.userAgent)||null,ee({height:null!=(t=null==(n=window)?void 0:n.innerHeight)?t:null,width:null!=(r=null==(i=window)?void 0:i.innerWidth)?r:null})):F()?(W.amplitudePlatform=g.ios,W.userAgent=H.userAgent,W.userAgent&&ne()):q()&&(W.userAgent=H.userAgent,W.amplitudePlatform=g.android,W.userAgent&&ne())},Y=e=>{Object.assign(H,e),z()&&K({identity:{isAuthed:!!H.userId,locale:H.locale||null}})},ee=e=>{W.height=e.height,W.width=e.width},te=()=>{U({platform:G()}),z()&&K({config:{platform:A.platform}})},ne=()=>{var e;performance.mark&&performance.mark("ua_parser_start");const t=new(Q())(null!=(e=W.userAgent)?e:"").getResult();W.browserName=t.browser.name||null,W.browserMajor=t.browser.major||null,W.osName=t.os.name||null,W.amplitudeOSName=W.browserName,W.amplitudeOSVersion=W.browserMajor,W.amplitudeDeviceModel=W.osName,K({device:{browserName:W.browserName,osName:W.osName}}),performance.mark&&(performance.mark("ua_parser_end"),performance.measure("ua_parser","ua_parser_start","ua_parser_end"))},re={breadcrumbs:[],initialUAAData:{},pageKey:"",pageKeyRegex:{},pagePath:"",prevPageKey:"",prevPagePath:""};function ie(e){Object.assign(re,{breadcrumbs:e})}function ae(e){Object.assign(re,e)}const oe={eventId:0,sequenceNumber:0,sessionId:0,lastEventTime:0,sessionStart:0,sessionUUID:null,userId:null,ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0};function se(e){Object.assign(oe,e)}function ce(){var e,t;return null!=(e=null==(t=document)?void 0:t.referrer)?e:""}function ue(){return ue=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ue.apply(this,arguments)}const le=()=>{const e=ce();if(!e)return{};const t=new URL(e);return t.hostname===pe()?{}:{referrer:e,referring_domain:t.hostname}},de=()=>{const e=new URLSearchParams(me()),t={};return O.forEach((n=>{e.has(n)&&(t[n]=(e.get(n)||"").toLowerCase())})),t},pe=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.hostname)||""},me=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.search)||""},fe=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.pathname)||""},ve=()=>{const e=A.overrideWindowLocation?re.pagePath:fe()+me();e&&e!==re.pagePath&&(e!==re.pagePath&&ge(),re.pagePath=e,re.pageKeyRegex&&Object.keys(re.pageKeyRegex).some((e=>{if(re.pageKeyRegex[e].test(re.pagePath))return re.pageKey=e,!0})))},ge=()=>{if(z()){const e=ce();if(!re.prevPagePath&&e){const t=new URL(e);if(t.hostname===pe())return void(re.prevPagePath=t.pathname)}}re.prevPagePath=re.pagePath,re.prevPageKey=re.pageKey},be=e=>{z()&&Object.assign(e,z()?(Object.keys(re.initialUAAData).length>0||(new URLSearchParams(me()),re.initialUAAData=ue({},(()=>{const e={};return O.forEach((t=>{oe[t]&&(e[t]=oe[t])})),e})(),de(),le())),re.initialUAAData):re.initialUAAData)},he=/^[a-zd]+(_[a-zd]+)*$/;function we(e){return he.test(e)}function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ye.apply(this,arguments)}const Te=["action","component_type","component_name","context","logging_id"],ke=["num_non_hardware_accounts","ujs"],_e="ujs_",Se={};function Ee(e){e.forEach((e=>{ke.includes(e)&&delete Se[e]}))}function xe(e){var t;const n=Object.entries(e).reduce(((e,t)=>{const[n,r]=t;return!Te.includes(n)&&ke.includes(n)?we(n)?ye({},e,{[n]:r}):(A.onError(new Error("IdentityFlow property names must have snake case format"),{[n]:r}),e):e}),{});null!=(t=n.ujs)&&t.length&&(n.ujs=n.ujs.map((e=>`${_e}${e}`))),Object.assign(Se,n)}function Oe(){return A.platform!==v.unknown||(A.onError(new Error("SDK platform not initialized")),!1)}const je={eventsQueue:[],eventsScheduled:!1,metricsQueue:[],metricsScheduled:!1,tracesQueue:[],tracesScheduled:!1};function Ne(e){Object.assign(je,e)}const Ie={ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0,sqs:0},Pe={ac:20,af:5,ah:1,al:1,am:0,ar:10,as:20},Me={pv:25},Be={xs:0,s:1,m:1,l:2,xl:2,xxl:2},Ce=e=>e<15?y.xs:e<60?y.s:e<240?y.m:e<960?y.l:e<3840?y.xl:y.xxl,De=e=>{Object.assign(Ie,e)};function Ae(){return(new Date).getTime()}const Le={timeStart:Ae(),timeOnPagePath:0,timeOnPageKey:0,prevTimeOnPagePath:0,prevTimeOnPageKey:0,sessionDuration:0,sessionEnd:0,sessionStart:0,prevSessionDuration:0};function Ue(e){Object.assign(Le,e)}const Re=(e,t)=>t.some((t=>e instanceof t));let qe,Fe;const ze=new WeakMap,Ke=new WeakMap,$e=new WeakMap,Qe=new WeakMap,We=new WeakMap;let He={get(e,t,n){if(e instanceof IDBTransaction){if("done"===t)return Ke.get(e);if("objectStoreNames"===t)return e.objectStoreNames||$e.get(e);if("store"===t)return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return Je(e[t])},set:(e,t,n)=>(e[t]=n,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function Ve(e){return"function"==typeof e?(t=e)!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Fe||(Fe=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(Xe(this),e),Je(ze.get(this))}:function(...e){return Je(t.apply(Xe(this),e))}:function(e,...n){const r=t.call(Xe(this),e,...n);return $e.set(r,e.sort?e.sort():[e]),Je(r)}:(e instanceof IDBTransaction&&function(e){if(Ke.has(e))return;const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",a),e.removeEventListener("abort",a)},i=()=>{t(),r()},a=()=>{n(e.error||new DOMException("AbortError","AbortError")),r()};e.addEventListener("complete",i),e.addEventListener("error",a),e.addEventListener("abort",a)}));Ke.set(e,t)}(e),Re(e,qe||(qe=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]))?new Proxy(e,He):e);var t}function Je(e){if(e instanceof IDBRequest)return function(e){const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener("success",i),e.removeEventListener("error",a)},i=()=>{t(Je(e.result)),r()},a=()=>{n(e.error),r()};e.addEventListener("success",i),e.addEventListener("error",a)}));return t.then((t=>{t instanceof IDBCursor&&ze.set(t,e)})).catch((()=>{})),We.set(t,e),t}(e);if(Qe.has(e))return Qe.get(e);const t=Ve(e);return t!==e&&(Qe.set(e,t),We.set(t,e)),t}const Xe=e=>We.get(e),Ge=["get","getKey","getAll","getAllKeys","count"],Ze=["put","add","delete","clear"],Ye=new Map;function et(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return;if(Ye.get(t))return Ye.get(t);const n=t.replace(/FromIndex$/,""),r=t!==n,i=Ze.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!i&&!Ge.includes(n))return;const a=async function(e,...t){const a=this.transaction(e,i?"readwrite":"readonly");let o=a.store;return r&&(o=o.index(t.shift())),(await Promise.all([o[n](...t),i&&a.done]))[0]};return Ye.set(t,a),a}var tt;tt=He,He={...tt,get:(e,t,n)=>et(e,t)||tt.get(e,t,n),has:(e,t)=>!!et(e,t)||tt.has(e,t)};const nt={isReady:!1,idbKeyval:null};function rt(e){Object.assign(nt,e)}const it={},at=async e=>{if(!nt.idbKeyval)return Promise.resolve(null);try{return await nt.idbKeyval.get(e)}catch(e){return A.onError(new Error("IndexedDB:Get:InternalError")),Promise.resolve(null)}},ot=async(e,t)=>{if(nt.idbKeyval)try{await nt.idbKeyval.set(e,t)}catch(e){A.onError(new Error("IndexedDB:Set:InternalError"))}},st=()=>{"server"!==A.platform&&(se({sessionStart:Le.sessionStart,ac:Ie.ac,af:Ie.af,ah:Ie.ah,al:Ie.al,am:Ie.am,ar:Ie.ar,as:Ie.as,pv:Ie.pv}),H.userId&&se({userId:H.userId}),ot(S,oe))},ct="rgb(5,177,105)",ut=e=>{const{metricName:t,data:n}=e,r=e.importance||l.low;if(!A.showDebugLogging||!console)return;const i=`%c ${x}`,a=`color:${ct};font-size:11px;`,o=`Importance: ${r}`;console.group(i,a,t,o),n.forEach((e=>{e.event_type?console.log(e.event_type,e):console.log(e)})),console.groupEnd()},lt=e=>{const{metricName:t,data:n}=e,r=e.importance||l.low;if(!A.showDebugLogging||!console)return;const i=`color:${ct};font-size:11px;`,a=`%c ${x}`,o=`Importance: ${r}`;console.log(a,i,t,n,o)},dt=()=>{const e=Ae();oe.sessionId&&oe.lastEventTime&&oe.sessionUUID&&!pt(e)||(oe.sessionId=e,oe.sessionUUID=V(),Ue({sessionStart:e}),lt({metricName:"Started new session:",data:{persistentData:oe,timeStone:Le}})),oe.lastEventTime=e},pt=e=>e-oe.lastEventTime>18e5;function mt(){return mt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mt.apply(this,arguments)}const ft=e=>{var t;(e=>{switch(e.action){case f.click:Ie.ac+=1;break;case f.focus:Ie.af+=1;break;case f.hover:Ie.ah+=1;break;case f.move:Ie.am+=1;break;case f.scroll:Ie.al+=1;break;case f.search:Ie.ar+=1;break;case f.select:Ie.as+=1}})(t=e),t.event_type!==j?t.event_type===N&&((e=>{if(!e.session_rank)return;const t=e.session_rank;Object.values(h).forEach((e=>{Ie.sqs+=Ie[e]*Pe[e]})),Object.values(w).forEach((e=>{Ie.sqs+=Ie[e]*Me[e]})),Ie.sqs*=Be[t]})(t),Object.assign(t,Ie),De({ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0,sqs:0})):Ie.pv+=1;const n=e.event_type;delete e.event_type;const r=e.deviceId?e.deviceId:null,i=e.timestamp;return delete e.timestamp,se({eventId:oe.eventId+1}),se({sequenceNumber:oe.sequenceNumber+1}),dt(),st(),{device_id:H.deviceId||r||null,user_id:H.userId,timestamp:i,event_id:oe.eventId,session_id:oe.sessionId||-1,event_type:n,version_name:A.version||null,platform:W.amplitudePlatform,os_name:W.amplitudeOSName,os_version:W.amplitudeOSVersion,device_model:W.amplitudeDeviceModel,language:H.languageCode,event_properties:mt({},e,{session_uuid:oe.sessionUUID,height:W.height,width:W.width}),user_properties:X(),uuid:V(),library:{name:"@cbhq/client-analytics",version:"10.6.0"},sequence_number:oe.sequenceNumber,user_agent:W.userAgent||H.userAgent}},vt=e=>e.map((e=>ft(e)));function gt(){return gt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gt.apply(this,arguments)}const bt=e=>e.map((e=>(e=>{const t=e.tags||{},n=gt({authed:J()?"true":"false",platform:A.platform},t,{project_name:A.projectName,version_name:A.version||null});return{metric_name:e.metricName,page_path:e.pagePath||null,value:e.value,tags:n,type:e.metricType}})(e))),ht=e=>0!==je.metricsQueue.length&&(je.metricsQueue.length>=A.batchMetricsThreshold||(je.metricsScheduled||(je.metricsScheduled=!0,setTimeout((()=>{je.metricsScheduled=!1,e(bt(je.metricsQueue)),je.metricsQueue=[]}),A.batchMetricsPeriod)),!1)),wt=e=>0!==je.tracesQueue.length&&(je.tracesQueue.length>=A.batchTracesThreshold||(je.tracesScheduled||(je.tracesScheduled=!0,setTimeout((()=>{je.tracesScheduled=!1,e(je.tracesQueue),je.tracesQueue=[]}),A.batchTracesPeriod)),!1)),yt=e=>{var t;z()&&null!=(t=window)&&t.requestIdleCallback?window.requestIdleCallback(e,{timeout:A.ricTimeoutScheduleEvent}):(q()||F())&&A.interactionManager?A.interactionManager.runAfterInteractions(e):e()};function Tt(){return Tt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Tt.apply(this,arguments)}const kt="application/x-www-form-urlencoded; charset=UTF-8",_t=e=>{const{data:t,importance:n,isJSON:r,onError:i,url:a}=e,o=r?"application/json":kt,s=n||l.low,c=r?JSON.stringify(t):new URLSearchParams(t).toString();function u(){const e=new XMLHttpRequest;e.open("POST",a,!0),Object.keys(A.headers||{}).forEach((t=>{e.setRequestHeader(t,A.headers[t])})),e.setRequestHeader("Content-Type",kt),H.jwt&&e.setRequestHeader("authorization",`Bearer ${H.jwt}`),e.send(c)}if(!z()||r||!("sendBeacon"in navigator)||s!==l.low||A.headers&&0!==Object.keys(A.headers).length)if(z()&&!r)u();else{const e=Tt({},A.headers,{"Content-Type":o});H.jwt&&(e.Authorization=`Bearer ${H.jwt}`),fetch(a,{method:"POST",mode:"no-cors",headers:e,body:c}).catch((e=>{i(e,{context:"AnalyticsSDKApiError"})}))}else{const e=new Blob([c],{type:kt});try{navigator.sendBeacon.bind(navigator)(a,e)||u()}catch(e){console.error(e),u()}}};var St=n(762),Et=n.n(St);const xt=(e,t,n)=>{const r=e||"";return Et()("2"+r+t+n)};function Ot(){return Ot=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ot.apply(this,arguments)}class jt extends Error{constructor(e){super(e),this.name="CircularJsonReference",this.message=e,"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error(e).stack}}class Nt extends jt{constructor(...e){super(...e),this.name="DomReferenceInAnalyticsEvent"}}function It(){return It=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},It.apply(this,arguments)}const Pt=(e,t=l.low)=>{var n;e&&je.eventsQueue.push(e),nt.isReady&&(!A.trackUserId||H.userId?(t===l.high||(n=Mt,0!==je.eventsQueue.length&&(je.eventsQueue.length>=A.batchEventsThreshold||(je.eventsScheduled||(je.eventsScheduled=!0,setTimeout((()=>{je.eventsScheduled=!1,n(vt(je.eventsQueue)),je.eventsQueue=[]}),A.batchEventsPeriod)),0))))&&Bt():je.eventsQueue.length>10&&(A.trackUserId=!1,A.onError(new Error("userId not set in Logged-in"))))},Mt=(e,t=l.low)=>{if(H.isOptOut||0===e.length)return;let n;try{n=JSON.stringify(e)}catch(t){const r=e.map((e=>e.event_type)).join(", "),[i,a]=(e=>{try{const n=[];for(const r of e){const e=Ot({},r);r.event_properties&&(e.event_properties=Ot({},e.event_properties,{currentTarget:null,target:null,relatedTarget:null,_dispatchInstances:null,_targetInst:null,view:(t=r.event_properties.view,["string","number","boolean"].includes(typeof t)?r.event_properties.view:null)})),n.push(e)}return[!0,JSON.stringify(n)]}catch(e){return[!1,""]}var t})(e);if(!i)return void A.onError(new jt(t instanceof Error?t.message:"unknown"),{listEventType:r});n=a,A.onError(new Nt("Found DOM element reference"),{listEventType:r,stringifiedEventData:n})}const r=Ae().toString(),i=It({},{e:n,v:"2",upload_time:r},{client:A.amplitudeApiKey,checksum:xt(A.amplitudeApiKey,n,r)});_t({url:A.eventsEndpoint,data:i,importance:t,onError:A.onError}),ut({metricName:"Batch Events",data:e,importance:t})},Bt=()=>{Mt(vt(je.eventsQueue)),Ne({eventsQueue:[]})};function Ct(){return Ct=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ct.apply(this,arguments)}const Dt=Object.values(f),At=Object.values(m),Lt=e=>Dt.includes(e)?e:f.unknown,Ut=e=>At.includes(e)?e:m.unknown,Rt=(e,t,n)=>{const r={auth:J()?b.loggedIn:b.notLoggedIn,action:Lt(e),component_type:Ut(t),logging_id:n,platform:A.platform,project_name:A.projectName};return"number"==typeof H.userTypeEnum&&(r.user_type_enum=H.userTypeEnum),r},qt=e=>{const t=Ae();if(!e)return A.onError(new Error("missing logData")),Ct({},Rt(f.unknown,m.unknown),{locale:H.locale,session_lcc_id:H.session_lcc_id,timestamp:t,time_start:Le.timeStart});const n=Ct({},e,Rt(e.action,e.componentType,e.loggingId),{locale:H.locale,session_lcc_id:H.session_lcc_id,timestamp:t,time_start:Le.timeStart});return delete n.componentType,delete n.loggingId,n},Ft={blacklistRegex:[],isEnabled:!1};function zt(){return{page_key:re.pageKey,page_path:re.pagePath,prev_page_key:re.prevPageKey,prev_page_path:re.prevPagePath}}function Kt(e){Object.assign(Ft,e)}function $t(e,t,n=l.low){if(H.isOptOut)return;if(!Oe())return;const r=qt(t);!function(e){Ft.isEnabled&&(ve(),Object.assign(e,zt()))}(r),be(r),function(e){Object.keys(Se).length>0&&Object.assign(e,Se)}(r),r.has_double_fired=!1,r.event_type=e,n===l.high?Pt(r,n):yt((()=>{Pt(r)}))}function Qt(e,t=!1){t?_t({url:A.metricsEndPoint,data:{metrics:e},isJSON:!0,onError:A.onError}):yt((()=>{_t({url:A.metricsEndPoint,data:{metrics:e},isJSON:!0,onError:A.onError})})),ut({metricName:"Batch Metrics",data:e})}function Wt(){return Wt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Wt.apply(this,arguments)}function Ht(e){if(!Oe())return;v.server!==A.platform&&!e.pagePath&&re.pagePath&&(e.pagePath=re.pagePath);const t=Object.keys(Se).length?Wt({},e.tags,Se):e.tags;t&&Object.assign(e,{tags:t}),je.metricsQueue.push(e),ht(Qt)&&(Qt(bt(je.metricsQueue)),je.metricsQueue=[])}function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Vt.apply(this,arguments)}let Jt=function(e){return e.instant="instant",e.quick="quick",e.moderate="moderate",e.slow="slow",e.unavoidable="unavoidable",e}({});function Xt(e){return e.toLowerCase()}let Gt={};const Zt=(e,t)=>{null!=A&&A.onMarkStep&&A.onMarkStep(e,t),xe({ujs:t})};let Yt;const en={Perfume:()=>{},markStep:e=>{},markStepOnce:e=>{},incrementUjNavigation:()=>{}},tn=()=>{z()&&Yt&&Yt.markNTBT&&Yt.markNTBT()},nn=e=>{z()&&Yt&&en.markStep&&en.markStep(e)},rn=e=>{z()&&Yt&&en.markStepOnce&&en.markStepOnce(e)},an=()=>{z()&&Yt&&en.incrementUjNavigation&&en.incrementUjNavigation()};function on(e={callMarkNTBT:!0}){"unknown"!==A.platform&&(Ft.blacklistRegex.some((e=>e.test(fe())))||($t(j,{action:f.render,componentType:m.page}),e.callMarkNTBT&&tn()))}let sn=!1,cn=!1;const un=e=>{sn=!e.persisted},ln=(e,t="hidden",n=!1)=>{cn||(addEventListener("pagehide",un),addEventListener("beforeunload",(()=>{})),cn=!0),addEventListener("visibilitychange",(({timeStamp:n})=>{document.visibilityState===t&&e({timeStamp:n,isUnloading:sn})}),{capture:!0,once:n})},dn=36e3;function pn(){const e=pt(Ae());if(e&&(O.forEach((e=>{oe[e]&&delete oe[e]})),st()),!oe.lastEventTime||!Le.sessionStart||!e)return;const t=Math.round((oe.lastEventTime-Le.sessionStart)/1e3);if(t<1||t>dn)return;const n=Ce(t);$t(N,{action:f.measurement,componentType:m.page,session_duration:t,session_end:oe.lastEventTime,session_start:Le.sessionStart,session_rank:n})}function mn(){return mn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mn.apply(this,arguments)}const fn=[],vn=[],gn=()=>{const e=fn.shift();e&&e()},bn=()=>{const e=vn.shift();e&&e()};let hn={};function wn(e){const t=function(e){return{test_name:e.testName,group_name:e.group,subject_id:e.subjectId,exposed_at:Ae(),subject_type:e.subjectType,platform:A.platform}}(e);hn[e.testName]=hn[e.testName]||0,hn[e.testName]+k>Ae()?lt({metricName:`Event: exposeExperiment ${e.testName} not sent`,data:t}):(hn[e.testName]=Ae(),ot(E,hn),lt({metricName:`Event: exposeExperiment ${e.testName} sent`,data:t}),_t({url:A.exposureEndpoint,data:[t],onError:(t,n)=>{hn[e.testName]=0,ot(E,hn),A.onError(t,n)},isJSON:!0,importance:l.high}))}const yn=e=>{var t,r,i;U(e),z()&&(H.languageCode=(null==(t=navigator)?void 0:t.languages[0])||(null==(r=navigator)?void 0:r.language)||""),te(),(()=>{var e;if(z()&&null!=(e=window)&&e.indexedDB){const e=function(e,t,{blocked:n,upgrade:r,blocking:i,terminated:a}={}){const o=indexedDB.open(e,t),s=Je(o);return r&&o.addEventListener("upgradeneeded",(e=>{r(Je(o.result),e.oldVersion,e.newVersion,Je(o.transaction),e)})),n&&o.addEventListener("blocked",(e=>n(e.oldVersion,e.newVersion,e))),s.then((e=>{a&&e.addEventListener("close",(()=>a())),i&&e.addEventListener("versionchange",(e=>i(e.oldVersion,e.newVersion,e)))})).catch((()=>{})),s}("keyval-store",1,{upgrade(e){e.createObjectStore("keyval")}});rt({idbKeyval:{get:async t=>(await e).get("keyval",t),set:async(t,n)=>(await e).put("keyval",n,t),delete:async t=>(await e).delete("keyval",t),keys:async()=>(await e).getAllKeys("keyval")}})}else rt({idbKeyval:{get:async e=>new Promise((t=>{t(it[e])})),set:async(e,t)=>new Promise((n=>{it[e]=t,n(e)})),delete:async e=>new Promise((()=>{delete it[e]})),keys:async()=>new Promise((e=>{e(Object.keys(it))}))}})})(),lt({metricName:"Initialized Analytics:",data:{deviceId:H.deviceId}}),fn.push((()=>{Pt()})),(async()=>{const e=await at(S);rt({isReady:!0}),gn(),e&&(bn(),se({eventId:e.eventId||oe.eventId,sequenceNumber:e.sequenceNumber||oe.sequenceNumber,sessionId:e.sessionId||oe.sessionId,lastEventTime:e.lastEventTime||oe.lastEventTime,sessionUUID:e.sessionUUID||oe.sessionUUID}),function(e){se(mn({},function(e){const t={};return O.forEach((n=>{e[n]&&(t[n]=e[n])})),t}(e),de()))}(e),Ue({sessionStart:e.sessionStart||oe.sessionStart}),De({ac:e.ac||Ie.ac,af:e.af||Ie.af,ah:e.ah||Ie.ah,al:e.al||Ie.al,am:e.am||Ie.am,ar:e.ar||Ie.ar,as:e.as||Ie.as,pv:e.pv||Ie.pv}),A.trackUserId&&Y({userId:e.userId||H.userId}),pn(),lt({metricName:"Initialized Analytics IndexedDB:",data:e}))})(),async function(){at(E).then((e=>{hn=null!=e?e:{}})).catch((e=>{e instanceof Error&&A.onError(e)}))}(),Z(),z()&&(ln((()=>{se({lastEventTime:Ae()}),st(),Bt()}),"hidden"),ln((()=>{pn()}),"visible")),z()&&(i=()=>{var e,t,n,r;te(),ee({width:null!=(e=null==(t=window)?void 0:t.innerWidth)?e:null,height:null!=(n=null==(r=window)?void 0:r.innerHeight)?n:null})},addEventListener("resize",(()=>{requestAnimationFrame((()=>{i()}))}))),(()=>{if(z())try{const e=n(2);en.markStep=e.markStep,en.markStepOnce=e.markStepOnce,en.incrementUjNavigation=e.incrementUjNavigation,Yt=new e.Perfume({analyticsTracker:e=>{const{data:t,attribution:n,metricName:r,navigatorInformation:i,rating:a}=e,o=I[r],s=(null==n?void 0:n.category)||null;if(!o&&!s)return;const c=(null==i?void 0:i.deviceMemory)||0,u=(null==i?void 0:i.hardwareConcurrency)||0,l=(null==i?void 0:i.isLowEndDevice)||!1,p=(null==i?void 0:i.isLowEndExperience)||!1,v=(null==i?void 0:i.serviceWorkerStatus)||"unsupported",g=Vt({deviceMemory:c,hardwareConcurrency:u,isLowEndDevice:l,isLowEndExperience:p,serviceWorkerStatus:v},Gt),b={is_low_end_device:l,is_low_end_experience:p,page_key:re.pageKey||"",save_data:t.saveData||!1,service_worker:v,is_perf_metric:!0};if("navigationTiming"===r)t&&"number"==typeof t.redirectTime&&Ht({metricName:I.redirectTime.eventName,metricType:d.histogram,tags:b,value:t.redirectTime||0});else if("TTFB"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,vitalsScore:a||null},g)),Ht({metricName:I.TTFB.eventName,metricType:d.histogram,tags:Vt({},b),value:t}),a&&Ht({metricName:`perf_web_vitals_ttfb_${a}`,metricType:d.count,tags:b,value:1});else if("networkInformation"===r)null!=t&&t.effectiveType&&(Gt=t,$t(o.eventName,{action:f.measurement,componentType:m.page,networkInformationDownlink:t.downlink,networkInformationEffectiveType:t.effectiveType,networkInformationRtt:t.rtt,networkInformationSaveData:t.saveData,navigatorDeviceMemory:c,navigatorHardwareConcurrency:u}));else if("storageEstimate"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page},t,g)),Ht({metricName:"perf_storage_estimate_caches",metricType:d.histogram,tags:b,value:t.caches}),Ht({metricName:"perf_storage_estimate_indexed_db",metricType:d.histogram,tags:b,value:t.indexedDB});else if("CLS"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page,score:100*t||null,vitalsScore:a||null},g)),a&&Ht({metricName:`perf_web_vitals_cls_${a}`,metricType:d.count,tags:b,value:1});else if("FID"===r){const e=(null==n?void 0:n.performanceEntry)||null,r=parseInt((null==e?void 0:e.processingStart)||"");$t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,processingStart:null!=e&&e.processingStart?r:null,startTime:null!=e&&e.startTime?parseInt(e.startTime):null,vitalsScore:a||null},g)),a&&Ht({metricName:`perf_web_vitals_fidVitals_${a}`,metricType:d.count,tags:b,value:1})}else"userJourneyStep"===r?($t("perf_user_journey_step",Vt({action:f.measurement,componentType:m.page,duration:t||null,rating:null!=a?a:null,step_name:(null==n?void 0:n.stepName)||""},g)),Ht({metricName:`user_journey_step.${A.projectName}.${A.platform}.${(null==n?void 0:n.stepName)||""}_vitals_${a}`,metricType:d.count,tags:b,value:1}),Ht({metricName:`user_journey_step.${A.projectName}.${A.platform}.${(null==n?void 0:n.stepName)||""}`,metricType:d.distribution,tags:b,value:t||null})):I[r]&&t&&($t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,vitalsScore:a||null},g)),a&&(Ht({metricName:`perf_web_vitals_${Xt(r)}_${a}`,metricType:d.count,tags:b,value:1}),"LCP"===r&&Ht({metricName:`perf_web_vitals_${Xt(r)}`,metricType:d.distribution,tags:b,value:t})))},maxMeasureTime:3e4,steps:A.steps,onMarkStep:Zt})}catch(e){e instanceof Error&&A.onError(e)}})()},Tn=e=>{Y(e),e.userAgent&&Z(),lt({metricName:"Identify:",data:{countryCode:H.countryCode,deviceId:H.deviceId,userId:H.userId}})},kn=({blacklistRegex:e,pageKeyRegex:t,browserHistory:n})=>{Kt({blacklistRegex:e||[],isEnabled:!0}),ae({pageKeyRegex:t}),on({callMarkNTBT:!1}),n.listen((()=>{on()}))},_n=({blacklistRegex:e,pageKeyRegex:t,nextJsRouter:n})=>{Kt({blacklistRegex:e||[],isEnabled:!0}),ae({pageKeyRegex:t}),on({callMarkNTBT:!1}),n.events.on("routeChangeComplete",(()=>{on()}))},Sn=()=>{Y({isOptOut:!0}),ot(S,{})},En=()=>{Y({isOptOut:!1})},xn={Button:{label:"cb_button",uuid:"e921a074-40e6-4371-8700-134d5cd633e6",componentType:m.button}};function On(e,t,n){return{componentName:e,actions:t,data:n}}function jn(){return jn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jn.apply(this,arguments)}function Nn(e,t,n){const{componentName:r,data:i}=n;$t(e.label,jn({componentType:e.componentType,action:t,loggingId:e.uuid,component_name:r},i))}const In={actionMapping:{onPress:f.click,onHover:f.hover},handlers:{Button:{[f.click]:e=>Nn(xn.Button,f.click,e),[f.hover]:e=>Nn(xn.Button,f.hover,e)}}};function Pn(e,t=!1){t?_t({url:A.tracesEndpoint,data:{traces:e},isJSON:!0,onError:A.onError}):yt((()=>{_t({url:A.tracesEndpoint,data:{traces:e},isJSON:!0,onError:A.onError})})),ut({metricName:"Batch Traces",data:e})}function Mn(){return Mn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Mn.apply(this,arguments)}const Bn=1e6;function Cn(e){return e*Bn}function Dn(e=function(){var e;return null==(e=window)?void 0:e.crypto}()){const t=new Uint32Array(2);return null==e||e.getRandomValues(t),((BigInt(t[0])<<BigInt(32))+BigInt(t[1])).toString()}function An(e,t){return{"x-datadog-origin":"rum","x-datadog-parent-id":t,"x-datadog-sampling-priority":"1","x-datadog-trace-id":e}}function Ln(e){var t;const{name:n,traceId:r,spanId:i,start:a,duration:o,resource:s,meta:c}=e;return{duration:o?Cn(o):0,name:n,resource:s,service:A.projectName,span_id:null!=i?i:Dn(),start:a?Cn(a):0,trace_id:null!=r?r:Dn(),parent_id:P,type:M,meta:Mn({platform:A.platform},re.pageKey?{page_key:re.pageKey}:{},null!=(t=Se.ujs)&&t.length?{last_ujs:Se.ujs[Se.ujs.length-1]}:{},null!=c?c:{})}}function Un(e){return[Ln(e)]}function Rn(e,t){Oe()&&function(e){return e.length>0}(e)&&(t&&function(e,t){e.forEach((e=>function(e,t){const n=Mn({},e.meta,t.meta),r={start:t.start?Cn(t.start):e.start,duration:t.duration?Cn(t.duration):e.duration};Object.assign(e,t,Mn({meta:n},r))}(e,t)))}(e,t),je.tracesQueue.push(e),wt(Pn)&&(Pn(je.tracesQueue),je.tracesQueue=[]))}function qn(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,"string");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}function Fn(){return Fn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Fn.apply(this,arguments)}function zn(){return void 0!==typeof window&&"performance"in window&&"mark"in performance&&"getEntriesByName"in performance}function Kn(e,t){return`perf_${e}${null!=t&&t.label?`_${t.label}`:""}`}function $n(e,t,n){return`${Kn(e,n)}__${t}`}let Qn={};function Wn(e,t,n){if(!zn())return;const r=$n(e,t,n);if(performance.mark(r),"end"===t){const t=Kn(e,n);!function(e,t,n){try{performance.measure(e,t,n)}catch(e){A.onError(e)}}(t,$n(e,"start",n),r);const i=performance.getEntriesByName(t).pop();i&&Ht(Fn({metricName:e,metricType:d.distribution,value:i.duration},null!=n&&n.tags?{tags:n.tags}:{}))}}function Hn(e,t){if(!zn())return;const n=$n(e,"start",t);Qn[n]||(Wn(e,"start",t),Qn[n]=!0)}function Vn(e,t){const n=$n(e,"start",t),r=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(Qn,[n].map(qn));Qn=r}function Jn(e,t){if(!zn())return;const n=$n(e,"start",t);Qn[n]&&(Wn(e,"end",t),Vn(e,t))}function Xn(){zn()&&(performance.clearMarks(),Qn={})}var Gn=n(784);function Zn(){return Zn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Zn.apply(this,arguments)}function Yn(e,t,n=l.low){const r=(0,Gn.useRef)(t);return(0,Gn.useEffect)((()=>{r.current=t}),[t]),(0,Gn.useCallback)((t=>{$t(e,Zn({},r.current,t),n)}),[e,n])}function er(){return er=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},er.apply(this,arguments)}function tr(e,t,n=l.low){(0,Gn.useEffect)((()=>{const r=er({},t,{action:f.render});$t(e,r,n)}),[])}function nr(){return nr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nr.apply(this,arguments)}const rr=function(e,t){return{markStartPerf:(0,Gn.useCallback)((()=>Hn(e,t)),[e,t]),markEndPerf:(0,Gn.useCallback)((n=>Jn(e,nr({},t,n))),[e,t])}};function ir(){return ir=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ir.apply(this,arguments)}function ar(){return Object.entries(ir({},Se,zt(),{sessionUUID:oe.sessionUUID,userId:oe.userId})).reduce(((e,t)=>{return null!=(n=t[1])&&""!==n?ir({},e,{[t[0]]:t[1]}):e;var n}),{})}async function or(){return new Promise((e=>{Mt(vt(je.eventsQueue)),Qt(bt(je.metricsQueue),!0),Pn(je.tracesQueue,!0),Ne({eventsQueue:[],metricsQueue:[],tracesQueue:[]}),e()}))}function sr(){return{"X-CB-Device-ID":H.deviceId||"unknown","X-CB-Is-Logged-In":H.userId?"true":"false","X-CB-Pagekey":re.pageKey||"unknown","X-CB-UJS":(e=Se.ujs,void 0===e||0===e.length?"":e.join(",")),"X-CB-Platform":A.platform||"unknown","X-CB-Project-Name":A.projectName||"unknown","X-CB-Session-UUID":oe.sessionUUID||"unknown","X-CB-Version-Name":A.version?String(A.version):"unknown"};var e}})(),r})()}));',Ks=()=>new Promise((e,t)=>{if(typeof window>"u"){t(new Error("Telemetry is not supported in non-browser environments"));return}if(window.ClientAnalytics)return e();try{const n=document.createElement("script");n.textContent=Hs,n.type="text/javascript",document.head.appendChild(n),Vs(),document.head.removeChild(n),e()}catch{console.error("Failed to execute inlined telemetry script"),t()}}),Vs=()=>{if(typeof window<"u"){const e=b.config.get().deviceId??(crypto==null?void 0:crypto.randomUUID())??"";if(window.ClientAnalytics){const{init:t,identify:n,PlatformName:r}=window.ClientAnalytics;t({isProd:!0,amplitudeApiKey:"c66737ad47ec354ced777935b0af822e",platform:r.web,projectName:"base_account_sdk",showDebugLogging:!1,version:"1.0.0",apiEndpoint:"https://cca-lite.coinbase.com"}),n({deviceId:e}),b.config.set({deviceId:e})}}},qs="0xba5ed110efdba3d005bfc882d75358acbbb85842",ce=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"owner",type:"bytes"}],name:"AlreadyOwner",type:"error"},{inputs:[],name:"Initialized",type:"error"},{inputs:[{name:"owner",type:"bytes"}],name:"InvalidEthereumAddressOwner",type:"error"},{inputs:[{name:"key",type:"uint256"}],name:"InvalidNonceKey",type:"error"},{inputs:[{name:"owner",type:"bytes"}],name:"InvalidOwnerBytesLength",type:"error"},{inputs:[],name:"LastOwner",type:"error"},{inputs:[{name:"index",type:"uint256"}],name:"NoOwnerAtIndex",type:"error"},{inputs:[{name:"ownersRemaining",type:"uint256"}],name:"NotLastOwner",type:"error"},{inputs:[{name:"selector",type:"bytes4"}],name:"SelectorNotAllowed",type:"error"},{inputs:[],name:"Unauthorized",type:"error"},{inputs:[],name:"UnauthorizedCallContext",type:"error"},{inputs:[],name:"UpgradeFailed",type:"error"},{inputs:[{name:"index",type:"uint256"},{name:"expectedOwner",type:"bytes"},{name:"actualOwner",type:"bytes"}],name:"WrongOwnerAtIndex",type:"error"},{anonymous:!1,inputs:[{indexed:!0,name:"index",type:"uint256"},{indexed:!1,name:"owner",type:"bytes"}],name:"AddOwner",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"index",type:"uint256"},{indexed:!1,name:"owner",type:"bytes"}],name:"RemoveOwner",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"implementation",type:"address"}],name:"Upgraded",type:"event"},{stateMutability:"payable",type:"fallback"},{inputs:[],name:"REPLAYABLE_NONCE_KEY",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"addOwnerAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"x",type:"bytes32"},{name:"y",type:"bytes32"}],name:"addOwnerPublicKey",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"functionSelector",type:"bytes4"}],name:"canSkipChainIdValidation",outputs:[{name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[],name:"domainSeparator",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"entryPoint",outputs:[{name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{name:"target",type:"address"},{name:"value",type:"uint256"},{name:"data",type:"bytes"}],name:"execute",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{name:"target",type:"address"},{name:"value",type:"uint256"},{name:"data",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"executeBatch",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"calls",type:"bytes[]"}],name:"executeWithoutChainIdValidation",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"}],name:"getUserOpHashWithoutChainId",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"implementation",outputs:[{name:"$",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{name:"owners",type:"bytes[]"}],name:"initialize",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"account",type:"address"}],name:"isOwnerAddress",outputs:[{name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"bytes"}],name:"isOwnerBytes",outputs:[{name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{name:"x",type:"bytes32"},{name:"y",type:"bytes32"}],name:"isOwnerPublicKey",outputs:[{name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],name:"isValidSignature",outputs:[{name:"result",type:"bytes4"}],stateMutability:"view",type:"function"},{inputs:[],name:"nextOwnerIndex",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"index",type:"uint256"}],name:"ownerAtIndex",outputs:[{name:"",type:"bytes"}],stateMutability:"view",type:"function"},{inputs:[],name:"ownerCount",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"proxiableUUID",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{name:"index",type:"uint256"},{name:"owner",type:"bytes"}],name:"removeLastOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"index",type:"uint256"},{name:"owner",type:"bytes"}],name:"removeOwnerAtIndex",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"removedOwnersCount",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"hash",type:"bytes32"}],name:"replaySafeHash",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{name:"newImplementation",type:"address"},{name:"data",type:"bytes"}],name:"upgradeToAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"},{name:"userOpHash",type:"bytes32"},{name:"missingAccountFunds",type:"uint256"}],name:"validateUserOp",outputs:[{name:"validationData",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],sa=[{inputs:[{name:"implementation_",type:"address"}],stateMutability:"payable",type:"constructor"},{inputs:[],name:"OwnerRequired",type:"error"},{inputs:[{name:"owners",type:"bytes[]"},{name:"nonce",type:"uint256"}],name:"createAccount",outputs:[{name:"account",type:"address"}],stateMutability:"payable",type:"function"},{inputs:[{name:"owners",type:"bytes[]"},{name:"nonce",type:"uint256"}],name:"getAddress",outputs:[{name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"implementation",outputs:[{name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"initCodeHash",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"}],V={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,unsupportedChain:4902}},rn={"-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."},4902:{standard:"EIP-3085",message:"Unrecognized chain ID."}},oa="Unspecified error message.",Zs="Unspecified server error.";function Mn(e,t=oa){if(e&&Number.isInteger(e)){const n=e.toString();if(an(rn,n))return rn[n].message;if(ca(e))return Zs}return t}function Ws(e){if(!Number.isInteger(e))return!1;const t=e.toString();return!!(rn[t]||ca(e))}function Js(e,{shouldIncludeStack:t=!1}={}){const n={};if(e&&typeof e=="object"&&!Array.isArray(e)&&an(e,"code")&&Ws(e.code)){const r=e;n.code=r.code,r.message&&typeof r.message=="string"?(n.message=r.message,an(r,"data")&&(n.data=r.data)):(n.message=Mn(n.code),n.data={originalError:fr(e)})}else n.code=V.rpc.internal,n.message=mr(e,"message")?e.message:oa,n.data={originalError:fr(e)};return t&&(n.stack=mr(e,"stack")?e.stack:void 0),n}function ca(e){return e>=-32099&&e<=-32e3}function fr(e){return e&&typeof e=="object"&&!Array.isArray(e)?Object.assign({},e):e}function an(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function mr(e,t){return typeof e=="object"&&e!==null&&t in e&&typeof e[t]=="string"}const v={rpc:{parse:e=>ne(V.rpc.parse,e),invalidRequest:e=>ne(V.rpc.invalidRequest,e),invalidParams:e=>ne(V.rpc.invalidParams,e),methodNotFound:e=>ne(V.rpc.methodNotFound,e),internal:e=>ne(V.rpc.internal,e),server:e=>{if(!e||typeof e!="object"||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 ne(t,e)},invalidInput:e=>ne(V.rpc.invalidInput,e),resourceNotFound:e=>ne(V.rpc.resourceNotFound,e),resourceUnavailable:e=>ne(V.rpc.resourceUnavailable,e),transactionRejected:e=>ne(V.rpc.transactionRejected,e),methodNotSupported:e=>ne(V.rpc.methodNotSupported,e),limitExceeded:e=>ne(V.rpc.limitExceeded,e)},provider:{userRejectedRequest:e=>De(V.provider.userRejectedRequest,e),unauthorized:e=>De(V.provider.unauthorized,e),unsupportedMethod:e=>De(V.provider.unsupportedMethod,e),disconnected:e=>De(V.provider.disconnected,e),chainDisconnected:e=>De(V.provider.chainDisconnected,e),unsupportedChain:e=>De(V.provider.unsupportedChain,e),custom:e=>{if(!e||typeof e!="object"||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||typeof n!="string")throw new Error('"message" must be a nonempty string');return new da(t,n,r)}}};function ne(e,t){const[n,r]=ua(t);return new Ln(e,n||Mn(e),r)}function De(e,t){const[n,r]=ua(t);return new da(e,n||Mn(e),r)}function ua(e){if(e){if(typeof e=="string")return[e];if(typeof e=="object"&&!Array.isArray(e)){const{message:t,data:n}=e;if(t&&typeof t!="string")throw new Error("Must specify string message.");return[t||void 0,n]}}return[]}class Ln extends Error{constructor(n,r,a){if(!Number.isInteger(n))throw new Error('"code" must be an integer.');if(!r||typeof r!="string")throw new Error('"message" must be a nonempty string.');super(r);D(this,"code");D(this,"data");this.code=n,a!==void 0&&(this.data=a)}}class da extends Ln{constructor(t,n,r){if(!Ys(t))throw new Error('"code" must be an integer such that: 1000 <= code <= 4999');super(t,n,r)}}function Ys(e){return Number.isInteger(e)&&e>=1e3&&e<=4999}function yr(e){return typeof e=="object"&&e!==null&&"code"in e&&"data"in e&&e.code===-32090&&typeof e.data=="object"&&e.data!==null&&"type"in e.data&&e.data.type==="INSUFFICIENT_FUNDS"}function la(e){return typeof e=="object"&&e!==null&&"details"in e}function Qs(e){try{const t=JSON.parse(e.details);return new Ln(t.code,t.message,t.data)}catch{return null}}function ie(e,t,n){if(e==null)throw t??v.rpc.invalidParams({message:"value must be present",data:e})}function xe(e,t){if(!Array.isArray(e))throw v.rpc.invalidParams({message:t??"value must be an array",data:e})}const Xs=`Base Account SDK requires the Cross-Origin-Opener-Policy header to not be set to 'same-origin'. This is to ensure that the SDK can communicate with the Base Account app.
|
|
1
|
+
var Ja=Object.defineProperty;var Ya=(e,t,n)=>t in e?Ja(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var D=(e,t,n)=>Ya(e,typeof t!="symbol"?t+"":t,n);import{l as Wn,B as Jn,_ as Qa,h as Te,y as qt,T as Xa}from"./hooks.module-BNtNDAZY.js";import{a4 as _a,ao as $a,aa as ei,a9 as Yn,ab as ti,ap as ni,aq as ri,al as jr,aj as Zt}from"./index-B6-Xobl2.js";import{E as ai}from"./index-Ci26p999.js";import{E as de,j as we,p as ue,w as U,B as C,i as Me,v as Qn,e as Wt,C as Xn,z as ii,s as si,O as _n,h as it}from"./types-DFEAKZ3L.js";import{au as oi,as as ci,av as ui,al as di,J as Ge,O as $n,aj as te,f as Le,a as nt,N as me,c as li,s as pi,az as fi,W as mi,d as Dr}from"./to-serializable-transaction-DAYFWHyO.js";import{d as yi,f as hi,a as gi}from"./wait-for-tx-receipt-CuLnfaKm.js";import{t as bi}from"./sha256-BPZogG9w.js";import{ab as wi,bA as vi,bG as Mt,g as ge,bO as Mr,r as Jt,am as xi,bP as Ei,bM as er,aW as Si,aV as ki,aU as Ai,A as Nn,d as Un,e as Se,bQ as Pi,a1 as Oi,U as Lr,bR as Ii,bS as Ci,bT as Ti,O as Bi,au as Ri,aw as tr,y as Fr,R as Gr,bo as zr,bE as Ni,bs as Ui}from"./parseSignature-BsYIWxqL.js";import{L as ji,M as Di,N as Mi,O as Li}from"./index.es-BdGfQ9jz.js";import{ag as Hr,ah as gt,ai as It,aj as Kr,ak as Be,al as Ct,am as Fi,an as Yt,ao as Fe,ap as oe,aq as Qt,ar as nr,as as Xt,at as Gi,au as rr,av as rt,aw as Vr,ax as st,a8 as Tt}from"./ThirdwebWalletManager-BUJ2S4b0.js";import{i as ar}from"./index-DO01SzHY.js";import"./sleep-mAKpSMLY.js";import"./rpc-DjXtIps7.js";import"./oauth-CbK0gPlt.js";import"./send-transaction-B0F9brDJ.js";import"./is-smart-wallet-kSShE3hl.js";import"./get-bytecode-FPC_G1PK.js";import"./TypedData-ByTQ7nLR.js";import"./Address-BHGD07NO.js";import"./Solidity-D6b-SCK0.js";import"./parse-typed-data-BSOEUDy_.js";import"./Authorization-DmoiysGx.js";import"./store-CraP4F4Y.js";import"./addresses-DVWfx5EX.js";import"./read-contract-D8CQ_i-D.js";import"./utils-BtpzmIxp.js";import"./decimals-BkxTCZnw.js";import"./passkeys-tlSlZIRR.js";import"./webauthn.min-CGpVStYZ.js";import"./arweave-CAGvOb64.js";const zi={gasPriceOracle:{address:"0x420000000000000000000000000000000000000F"},l1Block:{address:"0x4200000000000000000000000000000000000015"},l2CrossDomainMessenger:{address:"0x4200000000000000000000000000000000000007"},l2Erc721Bridge:{address:"0x4200000000000000000000000000000000000014"},l2StandardBridge:{address:"0x4200000000000000000000000000000000000010"},l2ToL1MessagePasser:{address:"0x4200000000000000000000000000000000000016"}},Hi={block:ci({format(e){var n;return{transactions:(n=e.transactions)==null?void 0:n.map(r=>{if(typeof r=="string")return r;const a=ui(r);return a.typeHex==="0x7e"&&(a.isSystemTx=r.isSystemTx,a.mint=r.mint?de(r.mint):void 0,a.sourceHash=r.sourceHash,a.type="deposit"),a}),stateRoot:e.stateRoot}}}),transaction:oi({format(e){const t={};return e.type==="0x7e"&&(t.isSystemTx=e.isSystemTx,t.mint=e.mint?de(e.mint):void 0,t.sourceHash=e.sourceHash,t.type="deposit"),t}}),transactionReceipt:yi({format(e){return{l1GasPrice:e.l1GasPrice?de(e.l1GasPrice):null,l1GasUsed:e.l1GasUsed?de(e.l1GasUsed):null,l1Fee:e.l1Fee?de(e.l1Fee):null,l1FeeScalar:e.l1FeeScalar?Number(e.l1FeeScalar):null}}})};function Ki(e,t){return Zi(e)?qi(e):wi(e,t)}const Vi={transaction:Ki};function qi(e){Wi(e);const{sourceHash:t,data:n,from:r,gas:a,isSystemTx:i,mint:s,to:c,value:o}=e,u=[t,r,c??"0x",s?we(s):"0x",o?we(o):"0x",a?we(a):"0x",i?"0x1":"0x",n??"0x"];return di(["0x7e",bi(u)])}function Zi(e){return e.type==="deposit"||typeof e.sourceHash<"u"}function Wi(e){const{from:t,to:n}=e;if(t&&!Ge(t))throw new $n({address:t});if(n&&!Ge(n))throw new $n({address:n})}const le={blockTime:2e3,contracts:zi,formatters:Hi,serializers:Vi},Ji=te({id:42161,name:"Arbitrum One",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},blockTime:250,rpcUrls:{default:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://arbiscan.io",apiUrl:"https://api.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7654707}}}),Yi=te({id:43114,name:"Avalanche",blockTime:1700,nativeCurrency:{decimals:18,name:"Avalanche",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax.network/ext/bc/C/rpc"]}},blockExplorers:{default:{name:"SnowTrace",url:"https://snowtrace.io",apiUrl:"https://api.snowtrace.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:11907934}}}),Ye=1,qr=te({...le,id:8453,name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://basescan.org",apiUrl:"https://api.basescan.org/api"}},contracts:{...le.contracts,disputeGameFactory:{[Ye]:{address:"0x43edB88C4B80fDD2AdFF2412A7BebF9dF42cB40e"}},l2OutputOracle:{[Ye]:{address:"0x56315b90c40730925ec5485cf004d835058518A0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:5022},portal:{[Ye]:{address:"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e",blockCreated:17482143}},l1StandardBridge:{[Ye]:{address:"0x3154Cf16ccdb4C6d922629664174b904d80F2C35",blockCreated:17482143}}},sourceId:Ye});({...qr});const Qe=11155111,Zr=te({...le,id:84532,network:"base-sepolia",name:"Base Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://sepolia.basescan.org",apiUrl:"https://api-sepolia.basescan.org/api"}},contracts:{...le.contracts,disputeGameFactory:{[Qe]:{address:"0xd6E6dBf4F7EA0ac412fD8b65ED297e64BB7a06E1"}},l2OutputOracle:{[Qe]:{address:"0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254"}},portal:{[Qe]:{address:"0x49f53e41452c74589e85ca1677426ba426459e85",blockCreated:4446677}},l1StandardBridge:{[Qe]:{address:"0xfd0Bf71F60660E2f608ed56e1659C450eB113120",blockCreated:4446677}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1059647}},testnet:!0,sourceId:Qe});({...Zr});const Qi=te({id:56,name:"BNB Smart Chain",blockTime:750,nativeCurrency:{decimals:18,name:"BNB",symbol:"BNB"},rpcUrls:{default:{http:["https://56.rpc.thirdweb.com"]}},blockExplorers:{default:{name:"BscScan",url:"https://bscscan.com",apiUrl:"https://api.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15921452}}}),Xi=te({id:1,name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},blockTime:12e3,rpcUrls:{default:{http:["https://eth.merkle.io"]}},blockExplorers:{default:{name:"Etherscan",url:"https://etherscan.io",apiUrl:"https://api.etherscan.io/api"}},contracts:{ensUniversalResolver:{address:"0xeeeeeeee14d718c2b47d9923deab1335e144eeee",blockCreated:23085558},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}}),Xe=1,_i=te({...le,id:10,name:"OP Mainnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.optimism.io"]}},blockExplorers:{default:{name:"Optimism Explorer",url:"https://optimistic.etherscan.io",apiUrl:"https://api-optimistic.etherscan.io/api"}},contracts:{...le.contracts,disputeGameFactory:{[Xe]:{address:"0xe5965Ab5962eDc7477C8520243A95517CD252fA9"}},l2OutputOracle:{[Xe]:{address:"0xdfe97868233d1aa22e815a266982f2cf17685a27"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:4286263},portal:{[Xe]:{address:"0xbEb5Fc579115071764c7423A4f12eDde41f106Ed"}},l1StandardBridge:{[Xe]:{address:"0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1"}}},sourceId:Xe}),_e=11155111,$i=te({...le,id:11155420,name:"OP Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.optimism.io"]}},blockExplorers:{default:{name:"Blockscout",url:"https://optimism-sepolia.blockscout.com",apiUrl:"https://optimism-sepolia.blockscout.com/api"}},contracts:{...le.contracts,disputeGameFactory:{[_e]:{address:"0x05F9613aDB30026FFd634f38e5C4dFd30a197Fa1"}},l2OutputOracle:{[_e]:{address:"0x90E9c4f8a994a250F6aEfd61CAFb4F2e895D458F"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1620204},portal:{[_e]:{address:"0x16Fc5058F25648194471939df75CF27A2fdC48BC"}},l1StandardBridge:{[_e]:{address:"0xFBb0621E0B23b5478B630BD55a5f21f67730B0F1"}}},testnet:!0,sourceId:_e}),es=te({id:137,name:"Polygon",blockTime:2e3,nativeCurrency:{name:"POL",symbol:"POL",decimals:18},rpcUrls:{default:{http:["https://polygon-rpc.com"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://polygonscan.com",apiUrl:"https://api.polygonscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:25770160}}}),ot=1,ts=te({...le,id:7777777,name:"Zora",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.zora.energy"],webSocket:["wss://rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://explorer.zora.energy",apiUrl:"https://explorer.zora.energy/api"}},contracts:{...le.contracts,l2OutputOracle:{[ot]:{address:"0x9E6204F750cD866b299594e2aC9eA824E2e5f95c"}},multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:5882},portal:{[ot]:{address:"0x1a0ad011913A150f69f6A19DF447A0CfD9551054"}},l1StandardBridge:{[ot]:{address:"0x3e2Ea9B92B7E48A52296fD261dc26fd995284631"}}},sourceId:ot});class Wr extends _a{constructor(t,n){super(),this.finished=!1,this.destroyed=!1,$a(t);const r=ei(n);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const a=this.blockLen,i=new Uint8Array(a);i.set(r.length>a?t.create().update(r).digest():r);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=t.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(t){return Yn(this),this.iHash.update(t),this}digestInto(t){Yn(this),ti(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){const t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:a,destroyed:i,blockLen:s,outputLen:c}=this;return t=t,t.finished=a,t.destroyed=i,t.blockLen=s,t.outputLen=c,t.oHash=n._cloneInto(t.oHash),t.iHash=r._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const Jr=(e,t,n)=>new Wr(e,t).update(n).digest();Jr.create=(e,t)=>new Wr(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Q=BigInt(0),q=BigInt(1),Oe=BigInt(2),ns=BigInt(3),_t=BigInt(4),ir=BigInt(5),sr=BigInt(8);function re(e,t){const n=e%t;return n>=Q?n:t+n}function rs(e,t,n){if(t<Q)throw new Error("invalid exponent, negatives unsupported");if(n<=Q)throw new Error("invalid modulus");if(n===q)return Q;let r=q;for(;t>Q;)t&q&&(r=r*e%n),e=e*e%n,t>>=q;return r}function $t(e,t){if(e===Q)throw new Error("invert: expected non-zero number");if(t<=Q)throw new Error("invert: expected positive modulus, got "+t);let n=re(e,t),r=t,a=Q,i=q;for(;n!==Q;){const c=r/n,o=r%n,u=a-i*c;r=n,n=o,a=i,i=u}if(r!==q)throw new Error("invert: does not exist");return re(a,t)}function as(e){const t=(e-q)/Oe;let n,r,a;for(n=e-q,r=0;n%Oe===Q;n/=Oe,r++);for(a=Oe;a<e&&rs(a,t,e)!==e-q;a++)if(a>1e3)throw new Error("Cannot find square root: likely non-prime P");if(r===1){const s=(e+q)/_t;return function(o,u){const d=o.pow(u,s);if(!o.eql(o.sqr(d),u))throw new Error("Cannot find square root");return d}}const i=(n+q)/Oe;return function(c,o){if(c.pow(o,t)===c.neg(c.ONE))throw new Error("Cannot find square root");let u=r,d=c.pow(c.mul(c.ONE,a),n),h=c.pow(o,i),m=c.pow(o,n);for(;!c.eql(m,c.ONE);){if(c.eql(m,c.ZERO))return c.ZERO;let l=1;for(let f=c.sqr(m);l<u&&!c.eql(f,c.ONE);l++)f=c.sqr(f);const x=c.pow(d,q<<BigInt(u-l-1));d=c.sqr(x),h=c.mul(h,x),m=c.mul(m,d),u=l}return h}}function is(e){if(e%_t===ns){const t=(e+q)/_t;return function(r,a){const i=r.pow(a,t);if(!r.eql(r.sqr(i),a))throw new Error("Cannot find square root");return i}}if(e%sr===ir){const t=(e-ir)/sr;return function(r,a){const i=r.mul(a,Oe),s=r.pow(i,t),c=r.mul(a,s),o=r.mul(r.mul(c,Oe),s),u=r.mul(c,r.sub(o,r.ONE));if(!r.eql(r.sqr(u),a))throw new Error("Cannot find square root");return u}}return as(e)}const ss=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function os(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=ss.reduce((r,a)=>(r[a]="function",r),t);return Ct(e,n)}function cs(e,t,n){if(n<Q)throw new Error("invalid exponent, negatives unsupported");if(n===Q)return e.ONE;if(n===q)return t;let r=e.ONE,a=t;for(;n>Q;)n&q&&(r=e.mul(r,a)),a=e.sqr(a),n>>=q;return r}function us(e,t){const n=new Array(t.length),r=t.reduce((i,s,c)=>e.is0(s)?i:(n[c]=i,e.mul(i,s)),e.ONE),a=e.inv(r);return t.reduceRight((i,s,c)=>e.is0(s)?i:(n[c]=e.mul(i,n[c]),e.mul(i,s)),a),n}function Yr(e,t){const n=t!==void 0?t:e.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Qr(e,t,n=!1,r={}){if(e<=Q)throw new Error("invalid field: expected ORDER > 0, got "+e);const{nBitLength:a,nByteLength:i}=Yr(e,t);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let s;const c=Object.freeze({ORDER:e,isLE:n,BITS:a,BYTES:i,MASK:It(a),ZERO:Q,ONE:q,create:o=>re(o,e),isValid:o=>{if(typeof o!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof o);return Q<=o&&o<e},is0:o=>o===Q,isOdd:o=>(o&q)===q,neg:o=>re(-o,e),eql:(o,u)=>o===u,sqr:o=>re(o*o,e),add:(o,u)=>re(o+u,e),sub:(o,u)=>re(o-u,e),mul:(o,u)=>re(o*u,e),pow:(o,u)=>cs(c,o,u),div:(o,u)=>re(o*$t(u,e),e),sqrN:o=>o*o,addN:(o,u)=>o+u,subN:(o,u)=>o-u,mulN:(o,u)=>o*u,inv:o=>$t(o,e),sqrt:r.sqrt||(o=>(s||(s=is(e)),s(c,o))),invertBatch:o=>us(c,o),cmov:(o,u,d)=>d?u:o,toBytes:o=>n?Hr(o,i):gt(o,i),fromBytes:o=>{if(o.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+o.length);return n?Kr(o):Be(o)}});return Object.freeze(c)}function Xr(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function _r(e){const t=Xr(e);return t+Math.ceil(t/2)}function ds(e,t,n=!1){const r=e.length,a=Xr(t),i=_r(t);if(r<16||r<i||r>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+r);const s=n?Kr(e):Be(e),c=re(s,t-q)+q;return n?Hr(c,a):gt(c,a)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const or=BigInt(0),en=BigInt(1);function Lt(e,t){const n=t.negate();return e?n:t}function $r(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function Ft(e,t){$r(e,t);const n=Math.ceil(t/e)+1,r=2**(e-1),a=2**e,i=It(e),s=BigInt(e);return{windows:n,windowSize:r,mask:i,maxNumber:a,shiftBy:s}}function cr(e,t,n){const{windowSize:r,mask:a,maxNumber:i,shiftBy:s}=n;let c=Number(e&a),o=e>>s;c>r&&(c-=i,o+=en);const u=t*r,d=u+Math.abs(c)-1,h=c===0,m=c<0,l=t%2!==0;return{nextN:o,offset:d,isZero:h,isNeg:m,isNegF:l,offsetF:u}}function ls(e,t){if(!Array.isArray(e))throw new Error("array expected");e.forEach((n,r)=>{if(!(n instanceof t))throw new Error("invalid point at index "+r)})}function ps(e,t){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach((n,r)=>{if(!t.isValid(n))throw new Error("invalid scalar at index "+r)})}const Gt=new WeakMap,ea=new WeakMap;function zt(e){return ea.get(e)||1}function fs(e,t){return{constTimeNegate:Lt,hasPrecomputes(n){return zt(n)!==1},unsafeLadder(n,r,a=e.ZERO){let i=n;for(;r>or;)r&en&&(a=a.add(i)),i=i.double(),r>>=en;return a},precomputeWindow(n,r){const{windows:a,windowSize:i}=Ft(r,t),s=[];let c=n,o=c;for(let u=0;u<a;u++){o=c,s.push(o);for(let d=1;d<i;d++)o=o.add(c),s.push(o);c=o.double()}return s},wNAF(n,r,a){let i=e.ZERO,s=e.BASE;const c=Ft(n,t);for(let o=0;o<c.windows;o++){const{nextN:u,offset:d,isZero:h,isNeg:m,isNegF:l,offsetF:x}=cr(a,o,c);a=u,h?s=s.add(Lt(l,r[x])):i=i.add(Lt(m,r[d]))}return{p:i,f:s}},wNAFUnsafe(n,r,a,i=e.ZERO){const s=Ft(n,t);for(let c=0;c<s.windows&&a!==or;c++){const{nextN:o,offset:u,isZero:d,isNeg:h}=cr(a,c,s);if(a=o,!d){const m=r[u];i=i.add(h?m.negate():m)}}return i},getPrecomputes(n,r,a){let i=Gt.get(r);return i||(i=this.precomputeWindow(r,n),n!==1&&Gt.set(r,a(i))),i},wNAFCached(n,r,a){const i=zt(n);return this.wNAF(i,this.getPrecomputes(i,n,a),r)},wNAFCachedUnsafe(n,r,a,i){const s=zt(n);return s===1?this.unsafeLadder(n,r,i):this.wNAFUnsafe(s,this.getPrecomputes(s,n,a),r,i)},setWindowSize(n,r){$r(r,t),ea.set(n,r),Gt.delete(n)}}}function ms(e,t,n,r){if(ls(n,e),ps(r,t),n.length!==r.length)throw new Error("arrays of points and scalars must have equal length");const a=e.ZERO,i=Fi(BigInt(n.length)),s=i>12?i-3:i>4?i-2:i?2:1,c=It(s),o=new Array(Number(c)+1).fill(a),u=Math.floor((t.BITS-1)/s)*s;let d=a;for(let h=u;h>=0;h-=s){o.fill(a);for(let l=0;l<r.length;l++){const x=r[l],f=Number(x>>BigInt(h)&c);o[f]=o[f].add(n[l])}let m=a;for(let l=o.length-1,x=a;l>0;l--)x=x.add(o[l]),m=m.add(x);if(d=d.add(m),h!==0)for(let l=0;l<s;l++)d=d.double()}return d}function ta(e){return os(e.Fp),Ct(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Yr(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function ur(e){e.lowS!==void 0&&rt("lowS",e.lowS),e.prehash!==void 0&&rt("prehash",e.prehash)}function ys(e){const t=ta(e);Ct(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:r,a}=t;if(n){if(!r.eql(a,r.ZERO))throw new Error("invalid endomorphism, can only be defined for Koblitz curves that have a=0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error("invalid endomorphism, expected beta: bigint and splitScalar: function")}return Object.freeze({...t})}class hs extends Error{constructor(t=""){super(t)}}const ye={Err:hs,_tlv:{encode:(e,t)=>{const{Err:n}=ye;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length&1)throw new n("tlv.encode: unpadded data");const r=t.length/2,a=st(r);if(a.length/2&128)throw new n("tlv.encode: long form length too big");const i=r>127?st(a.length/2|128):"";return st(e)+i+a+t},decode(e,t){const{Err:n}=ye;let r=0;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length<2||t[r++]!==e)throw new n("tlv.decode: wrong tlv");const a=t[r++],i=!!(a&128);let s=0;if(!i)s=a;else{const o=a&127;if(!o)throw new n("tlv.decode(long): indefinite length not supported");if(o>4)throw new n("tlv.decode(long): byte length is too big");const u=t.subarray(r,r+o);if(u.length!==o)throw new n("tlv.decode: length bytes not complete");if(u[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const d of u)s=s<<8|d;if(r+=o,s<128)throw new n("tlv.decode(long): not minimal encoding")}const c=t.subarray(r,r+s);if(c.length!==s)throw new n("tlv.decode: wrong value length");return{v:c,l:t.subarray(r+s)}}},_int:{encode(e){const{Err:t}=ye;if(e<be)throw new t("integer: negative integers are not allowed");let n=st(e);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=ye;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return Be(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=ye,a=oe("signature",e),{v:i,l:s}=r.decode(48,a);if(s.length)throw new t("invalid signature: left bytes after parsing");const{v:c,l:o}=r.decode(2,i),{v:u,l:d}=r.decode(2,o);if(d.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(c),s:n.decode(u)}},hexFromSig(e){const{_tlv:t,_int:n}=ye,r=t.encode(2,n.encode(e.r)),a=t.encode(2,n.encode(e.s)),i=r+a;return t.encode(48,i)}},be=BigInt(0),J=BigInt(1);BigInt(2);const dr=BigInt(3);BigInt(4);function gs(e){const t=ys(e),{Fp:n}=t,r=Qr(t.n,t.nBitLength),a=t.toBytes||((f,p,g)=>{const y=p.toAffine();return Yt(Uint8Array.from([4]),n.toBytes(y.x),n.toBytes(y.y))}),i=t.fromBytes||(f=>{const p=f.subarray(1),g=n.fromBytes(p.subarray(0,n.BYTES)),y=n.fromBytes(p.subarray(n.BYTES,2*n.BYTES));return{x:g,y}});function s(f){const{a:p,b:g}=t,y=n.sqr(f),E=n.mul(y,f);return n.add(n.add(E,n.mul(f,p)),g)}if(!n.eql(n.sqr(t.Gy),s(t.Gx)))throw new Error("bad generator point: equation left != right");function c(f){return Vr(f,J,t.n)}function o(f){const{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:y,n:E}=t;if(p&&typeof f!="bigint"){if(Xt(f)&&(f=Qt(f)),typeof f!="string"||!p.includes(f.length))throw new Error("invalid private key");f=f.padStart(g*2,"0")}let O;try{O=typeof f=="bigint"?f:Be(oe("private key",f,g))}catch{throw new Error("invalid private key, expected hex or "+g+" bytes, got "+typeof f)}return y&&(O=re(O,E)),Fe("private key",O,J,E),O}function u(f){if(!(f instanceof m))throw new Error("ProjectivePoint expected")}const d=rr((f,p)=>{const{px:g,py:y,pz:E}=f;if(n.eql(E,n.ONE))return{x:g,y};const O=f.is0();p==null&&(p=O?n.ONE:n.inv(E));const R=n.mul(g,p),T=n.mul(y,p),w=n.mul(E,p);if(O)return{x:n.ZERO,y:n.ZERO};if(!n.eql(w,n.ONE))throw new Error("invZ was invalid");return{x:R,y:T}}),h=rr(f=>{if(f.is0()){if(t.allowInfinityPoint&&!n.is0(f.py))return;throw new Error("bad point: ZERO")}const{x:p,y:g}=f.toAffine();if(!n.isValid(p)||!n.isValid(g))throw new Error("bad point: x or y not FE");const y=n.sqr(g),E=s(p);if(!n.eql(y,E))throw new Error("bad point: equation left != right");if(!f.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class m{constructor(p,g,y){if(p==null||!n.isValid(p))throw new Error("x required");if(g==null||!n.isValid(g))throw new Error("y required");if(y==null||!n.isValid(y))throw new Error("z required");this.px=p,this.py=g,this.pz=y,Object.freeze(this)}static fromAffine(p){const{x:g,y}=p||{};if(!p||!n.isValid(g)||!n.isValid(y))throw new Error("invalid affine point");if(p instanceof m)throw new Error("projective point not allowed");const E=O=>n.eql(O,n.ZERO);return E(g)&&E(y)?m.ZERO:new m(g,y,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){const g=n.invertBatch(p.map(y=>y.pz));return p.map((y,E)=>y.toAffine(g[E])).map(m.fromAffine)}static fromHex(p){const g=m.fromAffine(i(oe("pointHex",p)));return g.assertValidity(),g}static fromPrivateKey(p){return m.BASE.multiply(o(p))}static msm(p,g){return ms(m,r,p,g)}_setWindowSize(p){x.setWindowSize(this,p)}assertValidity(){h(this)}hasEvenY(){const{y:p}=this.toAffine();if(n.isOdd)return!n.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);const{px:g,py:y,pz:E}=this,{px:O,py:R,pz:T}=p,w=n.eql(n.mul(g,T),n.mul(O,E)),k=n.eql(n.mul(y,T),n.mul(R,E));return w&&k}negate(){return new m(this.px,n.neg(this.py),this.pz)}double(){const{a:p,b:g}=t,y=n.mul(g,dr),{px:E,py:O,pz:R}=this;let T=n.ZERO,w=n.ZERO,k=n.ZERO,I=n.mul(E,E),Y=n.mul(O,O),z=n.mul(R,R),j=n.mul(E,O);return j=n.add(j,j),k=n.mul(E,R),k=n.add(k,k),T=n.mul(p,k),w=n.mul(y,z),w=n.add(T,w),T=n.sub(Y,w),w=n.add(Y,w),w=n.mul(T,w),T=n.mul(j,T),k=n.mul(y,k),z=n.mul(p,z),j=n.sub(I,z),j=n.mul(p,j),j=n.add(j,k),k=n.add(I,I),I=n.add(k,I),I=n.add(I,z),I=n.mul(I,j),w=n.add(w,I),z=n.mul(O,R),z=n.add(z,z),I=n.mul(z,j),T=n.sub(T,I),k=n.mul(z,Y),k=n.add(k,k),k=n.add(k,k),new m(T,w,k)}add(p){u(p);const{px:g,py:y,pz:E}=this,{px:O,py:R,pz:T}=p;let w=n.ZERO,k=n.ZERO,I=n.ZERO;const Y=t.a,z=n.mul(t.b,dr);let j=n.mul(g,O),ee=n.mul(y,R),S=n.mul(E,T),A=n.add(g,y),P=n.add(O,R);A=n.mul(A,P),P=n.add(j,ee),A=n.sub(A,P),P=n.add(g,E);let B=n.add(O,T);return P=n.mul(P,B),B=n.add(j,S),P=n.sub(P,B),B=n.add(y,E),w=n.add(R,T),B=n.mul(B,w),w=n.add(ee,S),B=n.sub(B,w),I=n.mul(Y,P),w=n.mul(z,S),I=n.add(w,I),w=n.sub(ee,I),I=n.add(ee,I),k=n.mul(w,I),ee=n.add(j,j),ee=n.add(ee,j),S=n.mul(Y,S),P=n.mul(z,P),ee=n.add(ee,S),S=n.sub(j,S),S=n.mul(Y,S),P=n.add(P,S),j=n.mul(ee,P),k=n.add(k,j),j=n.mul(B,P),w=n.mul(A,w),w=n.sub(w,j),j=n.mul(A,ee),I=n.mul(B,I),I=n.add(I,j),new m(w,k,I)}subtract(p){return this.add(p.negate())}is0(){return this.equals(m.ZERO)}wNAF(p){return x.wNAFCached(this,p,m.normalizeZ)}multiplyUnsafe(p){const{endo:g,n:y}=t;Fe("scalar",p,be,y);const E=m.ZERO;if(p===be)return E;if(this.is0()||p===J)return this;if(!g||x.hasPrecomputes(this))return x.wNAFCachedUnsafe(this,p,m.normalizeZ);let{k1neg:O,k1:R,k2neg:T,k2:w}=g.splitScalar(p),k=E,I=E,Y=this;for(;R>be||w>be;)R&J&&(k=k.add(Y)),w&J&&(I=I.add(Y)),Y=Y.double(),R>>=J,w>>=J;return O&&(k=k.negate()),T&&(I=I.negate()),I=new m(n.mul(I.px,g.beta),I.py,I.pz),k.add(I)}multiply(p){const{endo:g,n:y}=t;Fe("scalar",p,J,y);let E,O;if(g){const{k1neg:R,k1:T,k2neg:w,k2:k}=g.splitScalar(p);let{p:I,f:Y}=this.wNAF(T),{p:z,f:j}=this.wNAF(k);I=x.constTimeNegate(R,I),z=x.constTimeNegate(w,z),z=new m(n.mul(z.px,g.beta),z.py,z.pz),E=I.add(z),O=Y.add(j)}else{const{p:R,f:T}=this.wNAF(p);E=R,O=T}return m.normalizeZ([E,O])[0]}multiplyAndAddUnsafe(p,g,y){const E=m.BASE,O=(T,w)=>w===be||w===J||!T.equals(E)?T.multiplyUnsafe(w):T.multiply(w),R=O(this,g).add(O(p,y));return R.is0()?void 0:R}toAffine(p){return d(this,p)}isTorsionFree(){const{h:p,isTorsionFree:g}=t;if(p===J)return!0;if(g)return g(m,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:p,clearCofactor:g}=t;return p===J?this:g?g(m,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return rt("isCompressed",p),this.assertValidity(),a(m,this,p)}toHex(p=!0){return rt("isCompressed",p),Qt(this.toRawBytes(p))}}m.BASE=new m(t.Gx,t.Gy,n.ONE),m.ZERO=new m(n.ZERO,n.ONE,n.ZERO);const l=t.nBitLength,x=fs(m,t.endo?Math.ceil(l/2):l);return{CURVE:t,ProjectivePoint:m,normPrivateKeyToScalar:o,weierstrassEquation:s,isWithinCurveOrder:c}}function bs(e){const t=ta(e);return Ct(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function ws(e){const t=bs(e),{Fp:n,n:r}=t,a=n.BYTES+1,i=2*n.BYTES+1;function s(S){return re(S,r)}function c(S){return $t(S,r)}const{ProjectivePoint:o,normPrivateKeyToScalar:u,weierstrassEquation:d,isWithinCurveOrder:h}=gs({...t,toBytes(S,A,P){const B=A.toAffine(),N=n.toBytes(B.x),W=Yt;return rt("isCompressed",P),P?W(Uint8Array.from([A.hasEvenY()?2:3]),N):W(Uint8Array.from([4]),N,n.toBytes(B.y))},fromBytes(S){const A=S.length,P=S[0],B=S.subarray(1);if(A===a&&(P===2||P===3)){const N=Be(B);if(!Vr(N,J,n.ORDER))throw new Error("Point is not on curve");const W=d(N);let _;try{_=n.sqrt(W)}catch(se){const $=se instanceof Error?": "+se.message:"";throw new Error("Point is not on curve"+$)}const X=(_&J)===J;return(P&1)===1!==X&&(_=n.neg(_)),{x:N,y:_}}else if(A===i&&P===4){const N=n.fromBytes(B.subarray(0,n.BYTES)),W=n.fromBytes(B.subarray(n.BYTES,2*n.BYTES));return{x:N,y:W}}else{const N=a,W=i;throw new Error("invalid Point, expected length of "+N+", or uncompressed "+W+", got "+A)}}}),m=S=>Qt(gt(S,t.nByteLength));function l(S){const A=r>>J;return S>A}function x(S){return l(S)?s(-S):S}const f=(S,A,P)=>Be(S.slice(A,P));class p{constructor(A,P,B){Fe("r",A,J,r),Fe("s",P,J,r),this.r=A,this.s=P,B!=null&&(this.recovery=B),Object.freeze(this)}static fromCompact(A){const P=t.nByteLength;return A=oe("compactSignature",A,P*2),new p(f(A,0,P),f(A,P,2*P))}static fromDER(A){const{r:P,s:B}=ye.toSig(oe("DER",A));return new p(P,B)}assertValidity(){}addRecoveryBit(A){return new p(this.r,this.s,A)}recoverPublicKey(A){const{r:P,s:B,recovery:N}=this,W=T(oe("msgHash",A));if(N==null||![0,1,2,3].includes(N))throw new Error("recovery id invalid");const _=N===2||N===3?P+t.n:P;if(_>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const X=N&1?"03":"02",pe=o.fromHex(X+m(_)),se=c(_),$=s(-W*se),Ne=s(B*se),ve=o.BASE.multiplyAndAddUnsafe(pe,$,Ne);if(!ve)throw new Error("point at infinify");return ve.assertValidity(),ve}hasHighS(){return l(this.s)}normalizeS(){return this.hasHighS()?new p(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return nr(this.toDERHex())}toDERHex(){return ye.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return nr(this.toCompactHex())}toCompactHex(){return m(this.r)+m(this.s)}}const g={isValidPrivateKey(S){try{return u(S),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{const S=_r(t.n);return ds(t.randomBytes(S),t.n)},precompute(S=8,A=o.BASE){return A._setWindowSize(S),A.multiply(BigInt(3)),A}};function y(S,A=!0){return o.fromPrivateKey(S).toRawBytes(A)}function E(S){const A=Xt(S),P=typeof S=="string",B=(A||P)&&S.length;return A?B===a||B===i:P?B===2*a||B===2*i:S instanceof o}function O(S,A,P=!0){if(E(S))throw new Error("first arg must be private key");if(!E(A))throw new Error("second arg must be public key");return o.fromHex(A).multiply(u(S)).toRawBytes(P)}const R=t.bits2int||function(S){if(S.length>8192)throw new Error("input is too large");const A=Be(S),P=S.length*8-t.nBitLength;return P>0?A>>BigInt(P):A},T=t.bits2int_modN||function(S){return s(R(S))},w=It(t.nBitLength);function k(S){return Fe("num < 2^"+t.nBitLength,S,be,w),gt(S,t.nByteLength)}function I(S,A,P=Y){if(["recovered","canonical"].some(Ae=>Ae in P))throw new Error("sign() legacy options not supported");const{hash:B,randomBytes:N}=t;let{lowS:W,prehash:_,extraEntropy:X}=P;W==null&&(W=!0),S=oe("msgHash",S),ur(P),_&&(S=oe("prehashed msgHash",B(S)));const pe=T(S),se=u(A),$=[k(se),k(pe)];if(X!=null&&X!==!1){const Ae=X===!0?N(n.BYTES):X;$.push(oe("extraEntropy",Ae))}const Ne=Yt(...$),ve=pe;function jt(Ae){const Ue=R(Ae);if(!h(Ue))return;const Dt=c(Ue),Ze=o.BASE.multiply(Ue).toAffine(),Pe=s(Ze.x);if(Pe===be)return;const We=s(Dt*s(ve+Pe*se));if(We===be)return;let Je=(Ze.x===Pe?0:2)|Number(Ze.y&J),je=We;return W&&l(We)&&(je=x(We),Je^=1),new p(Pe,je,Je)}return{seed:Ne,k2sig:jt}}const Y={lowS:t.lowS,prehash:!1},z={lowS:t.lowS,prehash:!1};function j(S,A,P=Y){const{seed:B,k2sig:N}=I(S,A,P),W=t;return Gi(W.hash.outputLen,W.nByteLength,W.hmac)(B,N)}o.BASE._setWindowSize(8);function ee(S,A,P,B=z){var Je;const N=S;A=oe("msgHash",A),P=oe("publicKey",P);const{lowS:W,prehash:_,format:X}=B;if(ur(B),"strict"in B)throw new Error("options.strict was renamed to lowS");if(X!==void 0&&X!=="compact"&&X!=="der")throw new Error("format must be compact or der");const pe=typeof N=="string"||Xt(N),se=!pe&&!X&&typeof N=="object"&&N!==null&&typeof N.r=="bigint"&&typeof N.s=="bigint";if(!pe&&!se)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let $,Ne;try{if(se&&($=new p(N.r,N.s)),pe){try{X!=="compact"&&($=p.fromDER(N))}catch(je){if(!(je instanceof ye.Err))throw je}!$&&X!=="der"&&($=p.fromCompact(N))}Ne=o.fromHex(P)}catch{return!1}if(!$||W&&$.hasHighS())return!1;_&&(A=t.hash(A));const{r:ve,s:jt}=$,Ae=T(A),Ue=c(jt),Dt=s(Ae*Ue),Ze=s(ve*Ue),Pe=(Je=o.BASE.multiplyAndAddUnsafe(Ne,Dt,Ze))==null?void 0:Je.toAffine();return Pe?s(Pe.x)===ve:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:O,sign:j,verify:ee,ProjectivePoint:o,Signature:p,utils:g}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function vs(e){return{hash:e,hmac:(t,...n)=>Jr(e,t,ri(...n)),randomBytes:ni}}function xs(e,t){const n=r=>ws({...e,...vs(r)});return{...n(t),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const na=Qr(BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff")),Es=na.create(BigInt("-3")),Ss=BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),lr=xs({a:Es,b:Ss,Fp:na,n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),h:BigInt(1),lowS:!1},jr),ks="@base-org/account",As="2.5.0",ra={name:ks,version:As},Ps="https://keys.coinbase.com/connect",tn="https://rpc.wallet.coinbase.com",Bt=ra.name,qe=ra.version;function aa(e,t){let n;try{n=e()}catch{return}return{getItem:a=>{var i;const s=o=>o===null?null:JSON.parse(o,void 0),c=(i=n.getItem(a))!=null?i:null;return c instanceof Promise?c.then(s):s(c)},setItem:(a,i)=>n.setItem(a,JSON.stringify(i,void 0)),removeItem:a=>n.removeItem(a)}}const nn=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then(r){return nn(r)(n)},catch(r){return this}}}catch(n){return{then(r){return this},catch(r){return nn(r)(n)}}}},Os=(e,t)=>(n,r,a)=>{let i={storage:aa(()=>localStorage),partialize:f=>f,version:0,merge:(f,p)=>({...p,...f}),...t},s=!1;const c=new Set,o=new Set;let u=i.storage;if(!u)return e((...f)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),n(...f)},r,a);const d=()=>{const f=i.partialize({...r()});return u.setItem(i.name,{state:f,version:i.version})},h=a.setState;a.setState=(f,p)=>{h(f,p),d()};const m=e((...f)=>{n(...f),d()},r,a);a.getInitialState=()=>m;let l;const x=()=>{var f,p;if(!u)return;s=!1,c.forEach(y=>{var E;return y((E=r())!=null?E:m)});const g=((p=i.onRehydrateStorage)==null?void 0:p.call(i,(f=r())!=null?f:m))||void 0;return nn(u.getItem.bind(u))(i.name).then(y=>{if(y)if(typeof y.version=="number"&&y.version!==i.version){if(i.migrate){const E=i.migrate(y.state,y.version);return E instanceof Promise?E.then(O=>[!0,O]):[!0,E]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,y.state];return[!1,void 0]}).then(y=>{var E;const[O,R]=y;if(l=i.merge(R,(E=r())!=null?E:m),n(l,!0),O)return d()}).then(()=>{g==null||g(l,void 0),l=r(),s=!0,o.forEach(y=>y(l))}).catch(y=>{g==null||g(void 0,y)})};return a.persist={setOptions:f=>{i={...i,...f},f.storage&&(u=f.storage)},clearStorage:()=>{u==null||u.removeItem(i.name)},getOptions:()=>i,rehydrate:()=>x(),hasHydrated:()=>s,onHydrate:f=>(c.add(f),()=>{c.delete(f)}),onFinishHydration:f=>(o.add(f),()=>{o.delete(f)})},i.skipHydration||x(),l||m},Is=Os,pr=e=>{let t;const n=new Set,r=(u,d)=>{const h=typeof u=="function"?u(t):u;if(!Object.is(h,t)){const m=t;t=d??(typeof h!="object"||h===null)?h:Object.assign({},t,h),n.forEach(l=>l(t,m))}},a=()=>t,c={setState:r,getState:a,getInitialState:()=>o,subscribe:u=>(n.add(u),()=>n.delete(u))},o=t=e(r,a,c);return c},jn=e=>e?pr(e):pr,Cs=()=>({chains:[]}),Ts=()=>({keys:{}}),Bs=()=>({account:{}}),Rs=()=>({subAccount:void 0}),Ns=()=>({subAccountConfig:{}}),Us=()=>({spendPermissions:[]}),js=()=>({config:{version:qe}}),Z=jn(Is((...e)=>({...Cs(...e),...Ts(...e),...Bs(...e),...Rs(...e),...Us(...e),...js(...e),...Ns(...e)}),{name:"base-acc-sdk.store",storage:aa(()=>localStorage),partialize:e=>({chains:e.chains,keys:e.keys,account:e.account,subAccount:e.subAccount,spendPermissions:e.spendPermissions,config:e.config})})),Ds={get:()=>Z.getState().subAccountConfig,set:e=>{Z.setState(t=>({subAccountConfig:{...t.subAccountConfig,...e}}))},clear:()=>{Z.setState({subAccountConfig:{}})}},Ms={get:()=>Z.getState().subAccount,set:e=>{Z.setState(t=>({subAccount:t.subAccount?{...t.subAccount,...e}:{address:e.address,...e}}))},clear:()=>{Z.setState({subAccount:void 0})}},Dn={get:()=>Z.getState().spendPermissions,set:e=>{Z.setState({spendPermissions:e})},clear:()=>{Z.setState({spendPermissions:[]})}},Ls={get:()=>Z.getState().account,set:e=>{Z.setState(t=>({account:{...t.account,...e}}))},clear:()=>{Z.setState({account:{}})}},Fs={get:()=>Z.getState().chains,set:e=>{Z.setState({chains:e})},clear:()=>{Z.setState({chains:[]})}},Gs={get:e=>Z.getState().keys[e],set:(e,t)=>{Z.setState(n=>({keys:{...n.keys,[e]:t}}))},clear:()=>{Z.setState({keys:{}})}},ia={get:()=>Z.getState().config,set:e=>{Z.setState(t=>({config:{...t.config,...e}}))}},zs={subAccounts:Ms,subAccountsConfig:Ds,spendPermissions:Dn,account:Ls,chains:Fs,keys:Gs,config:ia},b={...Z,...zs},Hs='!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ClientAnalytics=t():e.ClientAnalytics=t()}(this,(function(){return(()=>{var e={792:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],n=0;n<e.length;n++)t.push(255&e.charCodeAt(n));return t},bytesToString:function(e){for(var t=[],n=0;n<e.length;n++)t.push(String.fromCharCode(e[n]));return t.join("")}}};e.exports=t},562:e=>{var t,n;t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n={rotl:function(e,t){return e<<t|e>>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&n.rotl(e,8)|4278255360&n.rotl(e,24);for(var t=0;t<e.length;t++)e[t]=n.endian(e[t]);return e},randomBytes:function(e){for(var t=[];e>0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],n=0,r=0;n<e.length;n++,r+=8)t[r>>>5]|=e[n]<<24-r%32;return t},wordsToBytes:function(e){for(var t=[],n=0;n<32*e.length;n+=8)t.push(e[n>>>5]>>>24-n%32&255);return t},bytesToHex:function(e){for(var t=[],n=0;n<e.length;n++)t.push((e[n]>>>4).toString(16)),t.push((15&e[n]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],n=0;n<e.length;n+=2)t.push(parseInt(e.substr(n,2),16));return t},bytesToBase64:function(e){for(var n=[],r=0;r<e.length;r+=3)for(var i=e[r]<<16|e[r+1]<<8|e[r+2],a=0;a<4;a++)8*r+6*a<=8*e.length?n.push(t.charAt(i>>>6*(3-a)&63)):n.push("=");return n.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\\/]/gi,"");for(var n=[],r=0,i=0;r<e.length;i=++r%4)0!=i&&n.push((t.indexOf(e.charAt(r-1))&Math.pow(2,-2*i+8)-1)<<2*i|t.indexOf(e.charAt(r))>>>6-2*i);return n}},e.exports=n},335:e=>{function t(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},762:(e,t,n)=>{var r,i,a,o,s;r=n(562),i=n(792).utf8,a=n(335),o=n(792).bin,(s=function(e,t){e.constructor==String?e=t&&"binary"===t.encoding?o.stringToBytes(e):i.stringToBytes(e):a(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var n=r.bytesToWords(e),c=8*e.length,u=1732584193,l=-271733879,d=-1732584194,p=271733878,m=0;m<n.length;m++)n[m]=16711935&(n[m]<<8|n[m]>>>24)|4278255360&(n[m]<<24|n[m]>>>8);n[c>>>5]|=128<<c%32,n[14+(c+64>>>9<<4)]=c;var f=s._ff,v=s._gg,g=s._hh,b=s._ii;for(m=0;m<n.length;m+=16){var h=u,w=l,y=d,T=p;u=f(u,l,d,p,n[m+0],7,-680876936),p=f(p,u,l,d,n[m+1],12,-389564586),d=f(d,p,u,l,n[m+2],17,606105819),l=f(l,d,p,u,n[m+3],22,-1044525330),u=f(u,l,d,p,n[m+4],7,-176418897),p=f(p,u,l,d,n[m+5],12,1200080426),d=f(d,p,u,l,n[m+6],17,-1473231341),l=f(l,d,p,u,n[m+7],22,-45705983),u=f(u,l,d,p,n[m+8],7,1770035416),p=f(p,u,l,d,n[m+9],12,-1958414417),d=f(d,p,u,l,n[m+10],17,-42063),l=f(l,d,p,u,n[m+11],22,-1990404162),u=f(u,l,d,p,n[m+12],7,1804603682),p=f(p,u,l,d,n[m+13],12,-40341101),d=f(d,p,u,l,n[m+14],17,-1502002290),u=v(u,l=f(l,d,p,u,n[m+15],22,1236535329),d,p,n[m+1],5,-165796510),p=v(p,u,l,d,n[m+6],9,-1069501632),d=v(d,p,u,l,n[m+11],14,643717713),l=v(l,d,p,u,n[m+0],20,-373897302),u=v(u,l,d,p,n[m+5],5,-701558691),p=v(p,u,l,d,n[m+10],9,38016083),d=v(d,p,u,l,n[m+15],14,-660478335),l=v(l,d,p,u,n[m+4],20,-405537848),u=v(u,l,d,p,n[m+9],5,568446438),p=v(p,u,l,d,n[m+14],9,-1019803690),d=v(d,p,u,l,n[m+3],14,-187363961),l=v(l,d,p,u,n[m+8],20,1163531501),u=v(u,l,d,p,n[m+13],5,-1444681467),p=v(p,u,l,d,n[m+2],9,-51403784),d=v(d,p,u,l,n[m+7],14,1735328473),u=g(u,l=v(l,d,p,u,n[m+12],20,-1926607734),d,p,n[m+5],4,-378558),p=g(p,u,l,d,n[m+8],11,-2022574463),d=g(d,p,u,l,n[m+11],16,1839030562),l=g(l,d,p,u,n[m+14],23,-35309556),u=g(u,l,d,p,n[m+1],4,-1530992060),p=g(p,u,l,d,n[m+4],11,1272893353),d=g(d,p,u,l,n[m+7],16,-155497632),l=g(l,d,p,u,n[m+10],23,-1094730640),u=g(u,l,d,p,n[m+13],4,681279174),p=g(p,u,l,d,n[m+0],11,-358537222),d=g(d,p,u,l,n[m+3],16,-722521979),l=g(l,d,p,u,n[m+6],23,76029189),u=g(u,l,d,p,n[m+9],4,-640364487),p=g(p,u,l,d,n[m+12],11,-421815835),d=g(d,p,u,l,n[m+15],16,530742520),u=b(u,l=g(l,d,p,u,n[m+2],23,-995338651),d,p,n[m+0],6,-198630844),p=b(p,u,l,d,n[m+7],10,1126891415),d=b(d,p,u,l,n[m+14],15,-1416354905),l=b(l,d,p,u,n[m+5],21,-57434055),u=b(u,l,d,p,n[m+12],6,1700485571),p=b(p,u,l,d,n[m+3],10,-1894986606),d=b(d,p,u,l,n[m+10],15,-1051523),l=b(l,d,p,u,n[m+1],21,-2054922799),u=b(u,l,d,p,n[m+8],6,1873313359),p=b(p,u,l,d,n[m+15],10,-30611744),d=b(d,p,u,l,n[m+6],15,-1560198380),l=b(l,d,p,u,n[m+13],21,1309151649),u=b(u,l,d,p,n[m+4],6,-145523070),p=b(p,u,l,d,n[m+11],10,-1120210379),d=b(d,p,u,l,n[m+2],15,718787259),l=b(l,d,p,u,n[m+9],21,-343485551),u=u+h>>>0,l=l+w>>>0,d=d+y>>>0,p=p+T>>>0}return r.endian([u,l,d,p])})._ff=function(e,t,n,r,i,a,o){var s=e+(t&n|~t&r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._gg=function(e,t,n,r,i,a,o){var s=e+(t&r|n&~r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._hh=function(e,t,n,r,i,a,o){var s=e+(t^n^r)+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._ii=function(e,t,n,r,i,a,o){var s=e+(n^(t|~r))+(i>>>0)+o;return(s<<a|s>>>32-a)+t},s._blocksize=16,s._digestsize=16,e.exports=function(e,t){if(null==e)throw new Error("Illegal argument "+e);var n=r.wordsToBytes(s(e,t));return t&&t.asBytes?n:t&&t.asString?o.bytesToString(n):r.bytesToHex(n)}},2:(e,t,n)=>{"use strict";n.r(t),n.d(t,{Perfume:()=>ze,incrementUjNavigation:()=>Le,markStep:()=>Re,markStepOnce:()=>qe});var r,i,a={isResourceTiming:!1,isElementTiming:!1,maxTime:3e4,reportOptions:{},enableNavigationTracking:!0},o=window,s=o.console,c=o.navigator,u=o.performance,l=function(){return c.deviceMemory},d=function(){return c.hardwareConcurrency},p="mark.",m=function(){return u&&!!u.getEntriesByType&&!!u.now&&!!u.mark},f="4g",v=!1,g={},b={value:0},h={value:{beacon:0,css:0,fetch:0,img:0,other:0,script:0,total:0,xmlhttprequest:0}},w={value:0},y={value:0},T={},k={isHidden:!1,didChange:!1},_=function(){k.isHidden=!1,document.hidden&&(k.isHidden=document.hidden,k.didChange=!0)},S=function(e,t){try{var n=new PerformanceObserver((function(e){t(e.getEntries())}));return n.observe({type:e,buffered:!0}),n}catch(e){s.warn("Perfume.js:",e)}return null},E=function(){return!!(d()&&d()<=4)||!!(l()&&l()<=4)},x=function(e,t){switch(e){case"slow-2g":case"2g":case"3g":return!0;default:return E()||t}},O=function(e){return parseFloat(e.toFixed(4))},j=function(e){return"number"!=typeof e?null:O(e/Math.pow(1024,2))},N=function(e,t,n,r,i){var s,u=function(){a.analyticsTracker&&(k.isHidden&&!["CLS","INP"].includes(e)||a.analyticsTracker({attribution:r,metricName:e,data:t,navigatorInformation:c?{deviceMemory:l()||0,hardwareConcurrency:d()||0,serviceWorkerStatus:"serviceWorker"in c?c.serviceWorker.controller?"controlled":"supported":"unsupported",isLowEndDevice:E(),isLowEndExperience:x(f,v)}:{},rating:n,navigationType:i}))};["CLS","INP"].includes(e)?u():(s=u,"requestIdleCallback"in o?o.requestIdleCallback(s,{timeout:3e3}):s())},I=function(e){e.forEach((function(e){if(!("self"!==e.name||e.startTime<b.value)){var t=e.duration-50;t>0&&(w.value+=t,y.value+=t)}}))};!function(e){e.instant="instant",e.quick="quick",e.moderate="moderate",e.slow="slow",e.unavoidable="unavoidable"}(r||(r={}));var P,M,B,C,D,A=((i={})[r.instant]={vitalsThresholds:[100,200],maxOutlierThreshold:1e4},i[r.quick]={vitalsThresholds:[200,500],maxOutlierThreshold:1e4},i[r.moderate]={vitalsThresholds:[500,1e3],maxOutlierThreshold:1e4},i[r.slow]={vitalsThresholds:[1e3,2e3],maxOutlierThreshold:1e4},i[r.unavoidable]={vitalsThresholds:[2e3,5e3],maxOutlierThreshold:2e4},i),L={RT:[100,200],TBT:[200,600],NTBT:[200,600]},U=function(e,t){return L[e]?t<=L[e][0]?"good":t<=L[e][1]?"needsImprovement":"poor":null},R=function(e,t,n){Object.keys(t).forEach((function(e){"number"==typeof t[e]&&(t[e]=O(t[e]))})),N(e,t,null,n||{})},q=function(e){var t=e.attribution,n=e.name,r=e.rating,i=e.value,o=e.navigationType;"FCP"===n&&(b.value=i),["FCP","LCP"].includes(n)&&!T[0]&&(T[0]=S("longtask",I)),"FID"===n&&setTimeout((function(){k.didChange||(q({attribution:t,name:"TBT",rating:U("TBT",w.value),value:w.value,navigationType:o}),R("dataConsumption",h.value))}),1e4);var s=O(i);s<=a.maxTime&&s>=0&&N(n,s,r,t,o)},F=function(){return window.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0]},z=function(e){if("loading"===document.readyState)return"loading";var t=F();if(t){if(e<t.domInteractive)return"loading";if(0===t.domContentLoadedEventStart||e<t.domContentLoadedEventStart)return"dom-interactive";if(0===t.domComplete||e<t.domComplete)return"dom-content-loaded"}return"complete"},K=function(e){var t=e.nodeName;return 1===e.nodeType?t.toLowerCase():t.toUpperCase().replace(/^#/,"")},$=function(e,t){var n="";try{for(;e&&9!==e.nodeType;){var r=e,i=r.id?"#"+r.id:K(r)+(r.className&&r.className.length?"."+r.className.replace(/\\s+/g,"."):"");if(n.length+i.length>(t||100)-1)return n||i;if(n=n?i+">"+n:i,r.id)break;e=r.parentNode}}catch(e){}return n},Q=-1,W=function(){return Q},H=function(e){addEventListener("pageshow",(function(t){t.persisted&&(Q=t.timeStamp,e(t))}),!0)},V=function(){var e=F();return e&&e.activationStart||0},J=function(e,t){var n=F(),r="navigate";return W()>=0?r="back-forward-cache":n&&(r=document.prerendering||V()>0?"prerender":document.wasDiscarded?"restore":n.type.replace(/_/g,"-")),{name:e,value:void 0===t?-1:t,rating:"good",delta:0,entries:[],id:"v3-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:r}},X=function(e,t,n){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){var r=new PerformanceObserver((function(e){Promise.resolve().then((function(){t(e.getEntries())}))}));return r.observe(Object.assign({type:e,buffered:!0},n||{})),r}}catch(e){}},G=function(e,t){var n=function n(r){"pagehide"!==r.type&&"hidden"!==document.visibilityState||(e(r),t&&(removeEventListener("visibilitychange",n,!0),removeEventListener("pagehide",n,!0)))};addEventListener("visibilitychange",n,!0),addEventListener("pagehide",n,!0)},Z=function(e,t,n,r){var i,a;return function(o){t.value>=0&&(o||r)&&((a=t.value-(i||0))||void 0===i)&&(i=t.value,t.delta=a,t.rating=function(e,t){return e>t[1]?"poor":e>t[0]?"needs-improvement":"good"}(t.value,n),e(t))}},Y=function(e){requestAnimationFrame((function(){return requestAnimationFrame((function(){return e()}))}))},ee=function(e){document.prerendering?addEventListener("prerenderingchange",(function(){return e()}),!0):e()},te=-1,ne=function(){return"hidden"!==document.visibilityState||document.prerendering?1/0:0},re=function(e){"hidden"===document.visibilityState&&te>-1&&(te="visibilitychange"===e.type?e.timeStamp:0,ae())},ie=function(){addEventListener("visibilitychange",re,!0),addEventListener("prerenderingchange",re,!0)},ae=function(){removeEventListener("visibilitychange",re,!0),removeEventListener("prerenderingchange",re,!0)},oe=function(){return te<0&&(te=ne(),ie(),H((function(){setTimeout((function(){te=ne(),ie()}),0)}))),{get firstHiddenTime(){return te}}},se=function(e,t){t=t||{},ee((function(){var n,r=[1800,3e3],i=oe(),a=J("FCP"),o=X("paint",(function(e){e.forEach((function(e){"first-contentful-paint"===e.name&&(o.disconnect(),e.startTime<i.firstHiddenTime&&(a.value=Math.max(e.startTime-V(),0),a.entries.push(e),n(!0)))}))}));o&&(n=Z(e,a,r,t.reportAllChanges),H((function(i){a=J("FCP"),n=Z(e,a,r,t.reportAllChanges),Y((function(){a.value=performance.now()-i.timeStamp,n(!0)}))})))}))},ce={passive:!0,capture:!0},ue=new Date,le=function(e,t){P||(P=t,M=e,B=new Date,me(removeEventListener),de())},de=function(){if(M>=0&&M<B-ue){var e={entryType:"first-input",name:P.type,target:P.target,cancelable:P.cancelable,startTime:P.timeStamp,processingStart:P.timeStamp+M};C.forEach((function(t){t(e)})),C=[]}},pe=function(e){if(e.cancelable){var t=(e.timeStamp>1e12?new Date:performance.now())-e.timeStamp;"pointerdown"==e.type?function(e,t){var n=function(){le(e,t),i()},r=function(){i()},i=function(){removeEventListener("pointerup",n,ce),removeEventListener("pointercancel",r,ce)};addEventListener("pointerup",n,ce),addEventListener("pointercancel",r,ce)}(t,e):le(t,e)}},me=function(e){["mousedown","keydown","touchstart","pointerdown"].forEach((function(t){return e(t,pe,ce)}))},fe=0,ve=1/0,ge=0,be=function(e){e.forEach((function(e){e.interactionId&&(ve=Math.min(ve,e.interactionId),ge=Math.max(ge,e.interactionId),fe=ge?(ge-ve)/7+1:0)}))},he=function(){return D?fe:performance.interactionCount||0},we=0,ye=function(){return he()-we},Te=[],ke={},_e=function(e){var t=Te[Te.length-1],n=ke[e.interactionId];if(n||Te.length<10||e.duration>t.latency){if(n)n.entries.push(e),n.latency=Math.max(n.latency,e.duration);else{var r={id:e.interactionId,latency:e.duration,entries:[e]};ke[r.id]=r,Te.push(r)}Te.sort((function(e,t){return t.latency-e.latency})),Te.splice(10).forEach((function(e){delete ke[e.id]}))}},Se={},Ee=function e(t){document.prerendering?ee((function(){return e(t)})):"complete"!==document.readyState?addEventListener("load",(function(){return e(t)}),!0):setTimeout(t,0)},xe=function(e,t){t=t||{};var n=[800,1800],r=J("TTFB"),i=Z(e,r,n,t.reportAllChanges);Ee((function(){var a=F();if(a){var o=a.responseStart;if(o<=0||o>performance.now())return;r.value=Math.max(o-V(),0),r.entries=[a],i(!0),H((function(){r=J("TTFB",0),(i=Z(e,r,n,t.reportAllChanges))(!0)}))}}))},Oe=function(e){e.forEach((function(e){e.identifier&&q({attribution:{identifier:e.identifier},name:"ET",rating:null,value:e.startTime})}))},je=function(e){e.forEach((function(e){if(a.isResourceTiming&&R("resourceTiming",e),e.decodedBodySize&&e.initiatorType){var t=e.decodedBodySize/1e3;h.value[e.initiatorType]+=t,h.value.total+=t}}))},Ne=function(){!function(e,t){xe((function(e){!function(e){if(e.entries.length){var t=e.entries[0],n=t.activationStart||0,r=Math.max(t.domainLookupStart-n,0),i=Math.max(t.connectStart-n,0),a=Math.max(t.requestStart-n,0);e.attribution={waitingTime:r,dnsTime:i-r,connectionTime:a-i,requestTime:e.value-a,navigationEntry:t}}else e.attribution={waitingTime:0,dnsTime:0,connectionTime:0,requestTime:0}}(e),function(e){e.value>0&&q(e)}(e)}),t)}(0,a.reportOptions.ttfb),function(e,t){!function(e,t){t=t||{},ee((function(){var e,n=[.1,.25],r=J("CLS"),i=-1,a=0,o=[],s=function(e){i>-1&&function(e){!function(e){if(e.entries.length){var t=e.entries.reduce((function(e,t){return e&&e.value>t.value?e:t}));if(t&&t.sources&&t.sources.length){var n=(r=t.sources).find((function(e){return e.node&&1===e.node.nodeType}))||r[0];if(n)return void(e.attribution={largestShiftTarget:$(n.node),largestShiftTime:t.startTime,largestShiftValue:t.value,largestShiftSource:n,largestShiftEntry:t,loadState:z(t.startTime)})}}var r;e.attribution={}}(e),function(e){q(e)}(e)}(e)},c=function(t){t.forEach((function(t){if(!t.hadRecentInput){var n=o[0],i=o[o.length-1];a&&t.startTime-i.startTime<1e3&&t.startTime-n.startTime<5e3?(a+=t.value,o.push(t)):(a=t.value,o=[t]),a>r.value&&(r.value=a,r.entries=o,e())}}))},u=X("layout-shift",c);u&&(e=Z(s,r,n,t.reportAllChanges),se((function(t){i=t.value,r.value<0&&(r.value=0,e())})),G((function(){c(u.takeRecords()),e(!0)})),H((function(){a=0,i=-1,r=J("CLS",0),e=Z(s,r,n,t.reportAllChanges),Y((function(){return e()}))})))}))}(0,t)}(0,a.reportOptions.cls),function(e,t){se((function(e){!function(e){if(e.entries.length){var t=F(),n=e.entries[e.entries.length-1];if(t){var r=t.activationStart||0,i=Math.max(0,t.responseStart-r);return void(e.attribution={timeToFirstByte:i,firstByteToFCP:e.value-i,loadState:z(e.entries[0].startTime),navigationEntry:t,fcpEntry:n})}}e.attribution={timeToFirstByte:0,firstByteToFCP:e.value,loadState:z(W())}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.fcp),function(e,t){!function(e,t){t=t||{},ee((function(){var n,r=[100,300],i=oe(),a=J("FID"),o=function(e){e.startTime<i.firstHiddenTime&&(a.value=e.processingStart-e.startTime,a.entries.push(e),n(!0))},s=function(e){e.forEach(o)},c=X("first-input",s);n=Z(e,a,r,t.reportAllChanges),c&&G((function(){s(c.takeRecords()),c.disconnect()}),!0),c&&H((function(){var i;a=J("FID"),n=Z(e,a,r,t.reportAllChanges),C=[],M=-1,P=null,me(addEventListener),i=o,C.push(i),de()}))}))}((function(e){!function(e){var t=e.entries[0];e.attribution={eventTarget:$(t.target),eventType:t.name,eventTime:t.startTime,eventEntry:t,loadState:z(t.startTime)}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.fid),function(e,t){!function(e,t){t=t||{},ee((function(){var n,r=[2500,4e3],i=oe(),a=J("LCP"),o=function(e){var t=e[e.length-1];if(t){var r=Math.max(t.startTime-V(),0);r<i.firstHiddenTime&&(a.value=r,a.entries=[t],n())}},s=X("largest-contentful-paint",o);if(s){n=Z(e,a,r,t.reportAllChanges);var c=function(){Se[a.id]||(o(s.takeRecords()),s.disconnect(),Se[a.id]=!0,n(!0))};["keydown","click"].forEach((function(e){addEventListener(e,c,{once:!0,capture:!0})})),G(c,!0),H((function(i){a=J("LCP"),n=Z(e,a,r,t.reportAllChanges),Y((function(){a.value=performance.now()-i.timeStamp,Se[a.id]=!0,n(!0)}))}))}}))}((function(e){!function(e){if(e.entries.length){var t=F();if(t){var n=t.activationStart||0,r=e.entries[e.entries.length-1],i=r.url&&performance.getEntriesByType("resource").filter((function(e){return e.name===r.url}))[0],a=Math.max(0,t.responseStart-n),o=Math.max(a,i?(i.requestStart||i.startTime)-n:0),s=Math.max(o,i?i.responseEnd-n:0),c=Math.max(s,r?r.startTime-n:0),u={element:$(r.element),timeToFirstByte:a,resourceLoadDelay:o-a,resourceLoadTime:s-o,elementRenderDelay:c-s,navigationEntry:t,lcpEntry:r};return r.url&&(u.url=r.url),i&&(u.lcpResourceEntry=i),void(e.attribution=u)}}e.attribution={timeToFirstByte:0,resourceLoadDelay:0,resourceLoadTime:0,elementRenderDelay:e.value}}(e),function(e){q(e)}(e)}),t)}(0,a.reportOptions.lcp),function(e,t){!function(e,t){t=t||{},ee((function(){var n=[200,500];"interactionCount"in performance||D||(D=X("event",be,{type:"event",buffered:!0,durationThreshold:0}));var r,i=J("INP"),a=function(e){e.forEach((function(e){e.interactionId&&_e(e),"first-input"===e.entryType&&!Te.some((function(t){return t.entries.some((function(t){return e.duration===t.duration&&e.startTime===t.startTime}))}))&&_e(e)}));var t,n=(t=Math.min(Te.length-1,Math.floor(ye()/50)),Te[t]);n&&n.latency!==i.value&&(i.value=n.latency,i.entries=n.entries,r())},o=X("event",a,{durationThreshold:t.durationThreshold||40});r=Z(e,i,n,t.reportAllChanges),o&&(o.observe({type:"first-input",buffered:!0}),G((function(){a(o.takeRecords()),i.value<0&&ye()>0&&(i.value=0,i.entries=[]),r(!0)})),H((function(){Te=[],we=he(),i=J("INP"),r=Z(e,i,n,t.reportAllChanges)})))}))}((function(t){!function(e){if(e.entries.length){var t=e.entries.sort((function(e,t){return t.duration-e.duration||t.processingEnd-t.processingStart-(e.processingEnd-e.processingStart)}))[0];e.attribution={eventTarget:$(t.target),eventType:t.name,eventTime:t.startTime,eventEntry:t,loadState:z(t.startTime)}}else e.attribution={}}(t),e(t)}),t)}((function(e){return q(e)}),a.reportOptions.inp),a.isResourceTiming&&S("resource",je),a.isElementTiming&&S("element",Oe)},Ie=function(e){var t="usageDetails"in e?e.usageDetails:{};R("storageEstimate",{quota:j(e.quota),usage:j(e.usage),caches:j(t.caches),indexedDB:j(t.indexedDB),serviceWorker:j(t.serviceWorkerRegistrations)})},Pe={finalMarkToStepsMap:{},startMarkToStepsMap:{},active:{},navigationSteps:{}},Me=function(e){delete Pe.active[e]},Be=function(){return Pe.navigationSteps},Ce=function(e){var t;return null!==(t=Be()[e])&&void 0!==t?t:{}},De=function(e,t,n){var r="step."+e,i=u.getEntriesByName(p+t).length>0;if(u.getEntriesByName(p+n).length>0&&a.steps){var o=A[a.steps[e].threshold],s=o.maxOutlierThreshold,c=o.vitalsThresholds;if(i){var l=u.measure(r,p+t,p+n),d=l.duration;if(d<=s){var m=function(e,t){return e<=t[0]?"good":e<=t[1]?"needsImprovement":"poor"}(d,c);d>=0&&(N("userJourneyStep",d,m,{stepName:e},void 0),u.measure("step.".concat(e,"_vitals_").concat(m),{start:l.startTime+l.duration,end:l.startTime+l.duration,detail:{type:"stepVital",duration:d}}))}}}},Ae=function(){var e=Be(),t=Pe.startMarkToStepsMap,n=Object.keys(e).length;if(0===n)return{};var r={},i=n-1,a=Ce(i);if(Object.keys(a).forEach((function(e){var n,i=null!==(n=t[e])&&void 0!==n?n:[];Object.keys(i).forEach((function(e){r[e]=!0}))})),n>1){var o=Ce(i-1);Object.keys(o).forEach((function(e){var n,i=null!==(n=t[e])&&void 0!==n?n:[];Object.keys(i).forEach((function(e){r[e]=!0}))}))}return r},Le=function(){var e,t=Object.keys(Pe.navigationSteps).length;Pe.navigationSteps[t]={};var n=Ae();null===(e=a.onMarkStep)||void 0===e||e.call(a,"",Object.keys(n))},Ue=function(e){var t,n,r,i,o,s,c;if(Pe.finalMarkToStepsMap[e]){!function(e){var t=Pe.navigationSteps,n=Pe.finalMarkToStepsMap,r=Object.keys(t).length;if(0!==r){var i=r-1,a=Ce(i);if(a&&n[e]){var o=n[e];o&&Object.keys(o).forEach((function(e){if(a[e]){var n=Ce(i)||{};n[e]=!1,t[i]=n}if(r>1){var o=i-1,s=Ce(o);s[e]&&(s[e]=!1,t[o]=s)}}))}}}(e);var u=Pe.finalMarkToStepsMap[e];Object.keys(u).forEach((function(t){var n=u[t];n.forEach(Me),Promise.all(n.map((function(n){return function(e,t,n,r){return new(n||(n=Promise))((function(e,t){function i(e){try{o(r.next(e))}catch(e){t(e)}}function a(e){try{o(r.throw(e))}catch(e){t(e)}}function o(t){var r;t.done?e(t.value):(r=t.value,r instanceof n?r:new n((function(e){e(r)}))).then(i,a)}o((r=r.apply(undefined,[])).next())}))}(0,0,void 0,(function(){return function(e,t){var n,r,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,r&&(i=2&a[0]?r.return:a[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;switch(r=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,r=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){o=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){o.label=a[1];break}if(6===a[0]&&o.label<i[1]){o.label=i[1],i=a;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(a);break}i[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],r=0}finally{n=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}}(this,(function(r){switch(r.label){case 0:return[4,De(n,t,e)];case 1:return r.sent(),[2]}}))}))}))).catch((function(){}))}))}else r=e,i=Pe.navigationSteps,o=Object.keys(i).length,(c=Ce(s=(o>0?o:1)-1)||[])[r]=!0,i[s]=c,function(e){var t,n=null!==(t=Pe.startMarkToStepsMap[e])&&void 0!==t?t:[];Object.keys(n).forEach((function(e){Pe.active[e]||(Pe.active[e]=!0)}))}(e);if(a.enableNavigationTracking){var l=Ae();null===(t=a.onMarkStep)||void 0===t||t.call(a,e,Object.keys(l))}else null===(n=a.onMarkStep)||void 0===n||n.call(a,e,Object.keys(Pe.active))},Re=function(e){u.mark(p+e),Ue(e)},qe=function(e){0===u.getEntriesByName(p+e).length&&(u.mark(p+e),Ue(e))},Fe=0,ze=function(){function e(e){if(void 0===e&&(e={}),this.v="9.0.0-rc.3",a.analyticsTracker=e.analyticsTracker,a.isResourceTiming=!!e.resourceTiming,a.isElementTiming=!!e.elementTiming,a.maxTime=e.maxMeasureTime||a.maxTime,a.reportOptions=e.reportOptions||a.reportOptions,a.steps=e.steps,a.onMarkStep=e.onMarkStep,a.enableNavigationTracking=e.enableNavigationTracking,m()){"PerformanceObserver"in o&&Ne(),void 0!==document.hidden&&document.addEventListener("visibilitychange",_);var t=function(){if(!m())return{};var e=u.getEntriesByType("navigation")[0];if(!e)return{};var t=e.responseStart,n=e.responseEnd;return{fetchTime:n-e.fetchStart,workerTime:e.workerStart>0?n-e.workerStart:0,totalTime:n-e.requestStart,downloadTime:n-t,timeToFirstByte:t-e.requestStart,headerSize:e.transferSize-e.encodedBodySize||0,dnsLookupTime:e.domainLookupEnd-e.domainLookupStart,redirectTime:e.redirectEnd-e.redirectStart}}();R("navigationTiming",t),t.redirectTime&&q({attribution:{},name:"RT",rating:U("RT",t.redirectTime),value:t.redirectTime}),R("networkInformation",function(){if("connection"in c){var e=c.connection;return"object"!=typeof e?{}:(f=e.effectiveType,v=!!e.saveData,{downlink:e.downlink,effectiveType:e.effectiveType,rtt:e.rtt,saveData:!!e.saveData})}return{}}()),c&&c.storage&&"function"==typeof c.storage.estimate&&c.storage.estimate().then(Ie),a.steps&&a.steps&&(Pe.startMarkToStepsMap={},Pe.finalMarkToStepsMap={},Pe.active={},Pe.navigationSteps={},Object.entries(a.steps).forEach((function(e){var t,n,r=e[0],i=e[1].marks,a=i[0],o=i[1],s=null!==(n=Pe.startMarkToStepsMap[a])&&void 0!==n?n:{};if(s[r]=!0,Pe.startMarkToStepsMap[a]=s,Pe.finalMarkToStepsMap[o]){var c=Pe.finalMarkToStepsMap[o][a]||[];c.push(r),Pe.finalMarkToStepsMap[o][a]=c}else Pe.finalMarkToStepsMap[o]=((t={})[a]=[r],t)})))}}return e.prototype.start=function(e){m()&&!g[e]&&(g[e]=!0,u.mark("mark_".concat(e,"_start")))},e.prototype.end=function(e,t,n){if(void 0===t&&(t={}),void 0===n&&(n=!0),m()&&g[e]){u.mark("mark_".concat(e,"_end")),delete g[e];var r=function(e){u.measure(e,"mark_".concat(e,"_start"),"mark_".concat(e,"_end"));var t=u.getEntriesByName(e).pop();return t&&"measure"===t.entryType?t.duration:-1}(e);n&&R(e,O(r),t)}},e.prototype.endPaint=function(e,t){var n=this;setTimeout((function(){n.end(e,t)}))},e.prototype.clear=function(e){delete g[e],u.clearMarks&&(u.clearMarks("mark_".concat(e,"_start")),u.clearMarks("mark_".concat(e,"_end")))},e.prototype.markNTBT=function(){var e=this;this.start("ntbt"),y.value=0,clearTimeout(Fe),Fe=setTimeout((function(){e.end("ntbt",{},!1),q({attribution:{},name:"NTBT",rating:U("NTBT",y.value),value:y.value}),y.value=0}),2e3)},e}()},426:(e,t)=>{"use strict";Symbol.for("react.element"),Symbol.for("react.portal"),Symbol.for("react.fragment"),Symbol.for("react.strict_mode"),Symbol.for("react.profiler"),Symbol.for("react.provider"),Symbol.for("react.context"),Symbol.for("react.forward_ref"),Symbol.for("react.suspense"),Symbol.for("react.memo"),Symbol.for("react.lazy"),Symbol.iterator;var n={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},r=Object.assign,i={};function a(e,t,r){this.props=e,this.context=t,this.refs=i,this.updater=r||n}function o(){}function s(e,t,r){this.props=e,this.context=t,this.refs=i,this.updater=r||n}a.prototype.isReactComponent={},a.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},a.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},o.prototype=a.prototype;var c=s.prototype=new o;c.constructor=s,r(c,a.prototype),c.isPureReactComponent=!0;Array.isArray,Object.prototype.hasOwnProperty;var u={current:null};t.useCallback=function(e,t){return u.current.useCallback(e,t)},t.useEffect=function(e,t){return u.current.useEffect(e,t)},t.useRef=function(e){return u.current.useRef(e)}},784:(e,t,n)=>{"use strict";e.exports=n(426)},353:function(e,t,n){var r;!function(i,a){"use strict";var o="function",s="undefined",c="object",u="string",l="major",d="model",p="name",m="type",f="vendor",v="version",g="architecture",b="console",h="mobile",w="tablet",y="smarttv",T="wearable",k="embedded",_="Amazon",S="Apple",E="ASUS",x="BlackBerry",O="Browser",j="Chrome",N="Firefox",I="Google",P="Huawei",M="LG",B="Microsoft",C="Motorola",D="Opera",A="Samsung",L="Sharp",U="Sony",R="Xiaomi",q="Zebra",F="Facebook",z="Chromium OS",K="Mac OS",$=function(e){for(var t={},n=0;n<e.length;n++)t[e[n].toUpperCase()]=e[n];return t},Q=function(e,t){return typeof e===u&&-1!==W(t).indexOf(W(e))},W=function(e){return e.toLowerCase()},H=function(e,t){if(typeof e===u)return e=e.replace(/^\\s\\s*/,""),typeof t===s?e:e.substring(0,350)},V=function(e,t){for(var n,r,i,s,u,l,d=0;d<t.length&&!u;){var p=t[d],m=t[d+1];for(n=r=0;n<p.length&&!u&&p[n];)if(u=p[n++].exec(e))for(i=0;i<m.length;i++)l=u[++r],typeof(s=m[i])===c&&s.length>0?2===s.length?typeof s[1]==o?this[s[0]]=s[1].call(this,l):this[s[0]]=s[1]:3===s.length?typeof s[1]!==o||s[1].exec&&s[1].test?this[s[0]]=l?l.replace(s[1],s[2]):a:this[s[0]]=l?s[1].call(this,l,s[2]):a:4===s.length&&(this[s[0]]=l?s[3].call(this,l.replace(s[1],s[2])):a):this[s]=l||a;d+=2}},J=function(e,t){for(var n in t)if(typeof t[n]===c&&t[n].length>0){for(var r=0;r<t[n].length;r++)if(Q(t[n][r],e))return"?"===n?a:n}else if(Q(t[n],e))return"?"===n?a:n;return e},X={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},G={browser:[[/\\b(?:crmo|crios)\\/([\\w\\.]+)/i],[v,[p,"Chrome"]],[/edg(?:e|ios|a)?\\/([\\w\\.]+)/i],[v,[p,"Edge"]],[/(opera mini)\\/([-\\w\\.]+)/i,/(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,/(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i],[p,v],[/opios[\\/ ]+([\\w\\.]+)/i],[v,[p,D+" Mini"]],[/\\bopr\\/([\\w\\.]+)/i],[v,[p,D]],[/(kindle)\\/([\\w\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,/(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,/(?:ms|\\()(ie) ([\\w\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,/(heytap|ovi)browser\\/([\\d\\.]+)/i,/(weibo)__([\\d\\.]+)/i],[p,v],[/(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i],[v,[p,"UC"+O]],[/microm.+\\bqbcore\\/([\\w\\.]+)/i,/\\bqbcore\\/([\\w\\.]+).+microm/i],[v,[p,"WeChat(Win) Desktop"]],[/micromessenger\\/([\\w\\.]+)/i],[v,[p,"WeChat"]],[/konqueror\\/([\\w\\.]+)/i],[v,[p,"Konqueror"]],[/trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i],[v,[p,"IE"]],[/ya(?:search)?browser\\/([\\w\\.]+)/i],[v,[p,"Yandex"]],[/(avast|avg)\\/([\\w\\.]+)/i],[[p,/(.+)/,"$1 Secure "+O],v],[/\\bfocus\\/([\\w\\.]+)/i],[v,[p,N+" Focus"]],[/\\bopt\\/([\\w\\.]+)/i],[v,[p,D+" Touch"]],[/coc_coc\\w+\\/([\\w\\.]+)/i],[v,[p,"Coc Coc"]],[/dolfin\\/([\\w\\.]+)/i],[v,[p,"Dolphin"]],[/coast\\/([\\w\\.]+)/i],[v,[p,D+" Coast"]],[/miuibrowser\\/([\\w\\.]+)/i],[v,[p,"MIUI "+O]],[/fxios\\/([-\\w\\.]+)/i],[v,[p,N]],[/\\bqihu|(qi?ho?o?|360)browser/i],[[p,"360 "+O]],[/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i],[[p,/(.+)/,"$1 "+O],v],[/(comodo_dragon)\\/([\\w\\.]+)/i],[[p,/_/g," "],v],[/(electron)\\/([\\w\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i],[p,v],[/(metasr)[\\/ ]?([\\w\\.]+)/i,/(lbbrowser)/i,/\\[(linkedin)app\\]/i],[p],[/((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i],[[p,F],v],[/(kakao(?:talk|story))[\\/ ]([\\w\\.]+)/i,/(naver)\\(.*?(\\d+\\.[\\w\\.]+).*\\)/i,/safari (line)\\/([\\w\\.]+)/i,/\\b(line)\\/([\\w\\.]+)\\/iab/i,/(chromium|instagram)[\\/ ]([-\\w\\.]+)/i],[p,v],[/\\bgsa\\/([\\w\\.]+) .*safari\\//i],[v,[p,"GSA"]],[/musical_ly(?:.+app_?version\\/|_)([\\w\\.]+)/i],[v,[p,"TikTok"]],[/headlesschrome(?:\\/([\\w\\.]+)| )/i],[v,[p,j+" Headless"]],[/ wv\\).+(chrome)\\/([\\w\\.]+)/i],[[p,j+" WebView"],v],[/droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i],[v,[p,"Android "+O]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i],[p,v],[/version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i],[v,[p,"Mobile Safari"]],[/version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i],[v,p],[/webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i],[p,[v,J,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\\/([\\w\\.]+)/i],[p,v],[/(navigator|netscape\\d?)\\/([-\\w\\.]+)/i],[[p,"Netscape"],v],[/mobile vr; rv:([\\w\\.]+)\\).+firefox/i],[v,[p,N+" Reality"]],[/ekiohf.+(flow)\\/([\\w\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,/(firefox)\\/([\\w\\.]+)/i,/(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,/(links) \\(([\\w\\.]+)/i,/panasonic;(viera)/i],[p,v],[/(cobalt)\\/([\\w\\.]+)/i],[p,[v,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i],[[g,"amd64"]],[/(ia32(?=;))/i],[[g,W]],[/((?:i[346]|x)86)[;\\)]/i],[[g,"ia32"]],[/\\b(aarch64|arm(v?8e?l?|_?64))\\b/i],[[g,"arm64"]],[/\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i],[[g,"armhf"]],[/windows (ce|mobile); ppc;/i],[[g,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i],[[g,/ower/,"",W]],[/(sun4\\w)[;\\)]/i],[[g,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i],[[g,W]]],device:[[/\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[d,[f,A],[m,w]],[/\\b((?:s[cgp]h|gt|sm)-\\w+|sc[g-]?[\\d]+a?|galaxy nexus)/i,/samsung[- ]([-\\w]+)/i,/sec-(sgh\\w+)/i],[d,[f,A],[m,h]],[/(?:\\/|\\()(ip(?:hone|od)[\\w, ]*)(?:\\/|;)/i],[d,[f,S],[m,h]],[/\\((ipad);[-\\w\\),; ]+apple/i,/applecoremedia\\/[\\w\\.]+ \\((ipad)/i,/\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i],[d,[f,S],[m,w]],[/(macintosh);/i],[d,[f,S]],[/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i],[d,[f,L],[m,h]],[/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i],[d,[f,P],[m,w]],[/(?:huawei|honor)([-\\w ]+)[;\\)]/i,/\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i],[d,[f,P],[m,h]],[/\\b(poco[\\w ]+)(?: bui|\\))/i,/\\b; (\\w+) build\\/hm\\1/i,/\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,/\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,/\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i],[[d,/_/g," "],[f,R],[m,h]],[/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i],[[d,/_/g," "],[f,R],[m,w]],[/; (\\w+) bui.+ oppo/i,/\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i],[d,[f,"OPPO"],[m,h]],[/vivo (\\w+)(?: bui|\\))/i,/\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i],[d,[f,"Vivo"],[m,h]],[/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i],[d,[f,"Realme"],[m,h]],[/\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,/\\bmot(?:orola)?[- ](\\w*)/i,/((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i],[d,[f,C],[m,h]],[/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i],[d,[f,C],[m,w]],[/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i],[d,[f,M],[m,w]],[/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,/\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,/\\blg-?([\\d\\w]+) bui/i],[d,[f,M],[m,h]],[/(ideatab[-\\w ]+)/i,/lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i],[d,[f,"Lenovo"],[m,w]],[/(?:maemo|nokia).*(n900|lumia \\d+)/i,/nokia[-_ ]?([-\\w\\.]*)/i],[[d,/_/g," "],[f,"Nokia"],[m,h]],[/(pixel c)\\b/i],[d,[f,I],[m,w]],[/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i],[d,[f,I],[m,h]],[/droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i],[d,[f,U],[m,h]],[/sony tablet [ps]/i,/\\b(?:sony)?sgp\\w+(?: bui|\\))/i],[[d,"Xperia Tablet"],[f,U],[m,w]],[/ (kb2005|in20[12]5|be20[12][59])\\b/i,/(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i],[d,[f,"OnePlus"],[m,h]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\\))/i,/(kf[a-z]+)( bui|\\)).+silk\\//i],[d,[f,_],[m,w]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i],[[d,/(.+)/g,"Fire Phone $1"],[f,_],[m,h]],[/(playbook);[-\\w\\),; ]+(rim)/i],[d,f,[m,w]],[/\\b((?:bb[a-f]|st[hv])100-\\d)/i,/\\(bb10; (\\w+)/i],[d,[f,x],[m,h]],[/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i],[d,[f,E],[m,w]],[/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i],[d,[f,E],[m,h]],[/(nexus 9)/i],[d,[f,"HTC"],[m,w]],[/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,/(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\\.))|sony(?!-bra))[-_ ]?([-\\w]*)/i],[f,[d,/_/g," "],[m,h]],[/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i],[d,[f,"Acer"],[m,w]],[/droid.+; (m[1-5] note) bui/i,/\\bmz-([-\\w]{2,})/i],[d,[f,"Meizu"],[m,h]],[/(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,/(hp) ([\\w ]+\\w)/i,/(asus)-?(\\w+)/i,/(microsoft); (lumia[\\w ]+)/i,/(lenovo)[-_ ]?([-\\w]+)/i,/(jolla)/i,/(oppo) ?([\\w ]+) bui/i],[f,d,[m,h]],[/(kobo)\\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\/([\\w\\.]+)/i,/(nook)[\\w ]+build\\/(\\w+)/i,/(dell) (strea[kpr\\d ]*[\\dko])/i,/(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,/(trinity)[- ]*(t\\d{3}) bui/i,/(gigaset)[- ]+(q\\w{1,9}) bui/i,/(vodafone) ([\\w ]+)(?:\\)| bui)/i],[f,d,[m,w]],[/(surface duo)/i],[d,[f,B],[m,w]],[/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i],[d,[f,"Fairphone"],[m,h]],[/(u304aa)/i],[d,[f,"AT&T"],[m,h]],[/\\bsie-(\\w*)/i],[d,[f,"Siemens"],[m,h]],[/\\b(rct\\w+) b/i],[d,[f,"RCA"],[m,w]],[/\\b(venue[\\d ]{2,7}) b/i],[d,[f,"Dell"],[m,w]],[/\\b(q(?:mv|ta)\\w+) b/i],[d,[f,"Verizon"],[m,w]],[/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i],[d,[f,"Barnes & Noble"],[m,w]],[/\\b(tm\\d{3}\\w+) b/i],[d,[f,"NuVision"],[m,w]],[/\\b(k88) b/i],[d,[f,"ZTE"],[m,w]],[/\\b(nx\\d{3}j) b/i],[d,[f,"ZTE"],[m,h]],[/\\b(gen\\d{3}) b.+49h/i],[d,[f,"Swiss"],[m,h]],[/\\b(zur\\d{3}) b/i],[d,[f,"Swiss"],[m,w]],[/\\b((zeki)?tb.*\\b) b/i],[d,[f,"Zeki"],[m,w]],[/\\b([yr]\\d{2}) b/i,/\\b(dragon[- ]+touch |dt)(\\w{5}) b/i],[[f,"Dragon Touch"],d,[m,w]],[/\\b(ns-?\\w{0,9}) b/i],[d,[f,"Insignia"],[m,w]],[/\\b((nxa|next)-?\\w{0,9}) b/i],[d,[f,"NextBook"],[m,w]],[/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[f,"Voice"],d,[m,h]],[/\\b(lvtel\\-)?(v1[12]) b/i],[[f,"LvTel"],d,[m,h]],[/\\b(ph-1) /i],[d,[f,"Essential"],[m,h]],[/\\b(v(100md|700na|7011|917g).*\\b) b/i],[d,[f,"Envizen"],[m,w]],[/\\b(trio[-\\w\\. ]+) b/i],[d,[f,"MachSpeed"],[m,w]],[/\\btu_(1491) b/i],[d,[f,"Rotor"],[m,w]],[/(shield[\\w ]+) b/i],[d,[f,"Nvidia"],[m,w]],[/(sprint) (\\w+)/i],[f,d,[m,h]],[/(kin\\.[onetw]{3})/i],[[d,/\\./g," "],[f,B],[m,h]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i],[d,[f,q],[m,w]],[/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i],[d,[f,q],[m,h]],[/smart-tv.+(samsung)/i],[f,[m,y]],[/hbbtv.+maple;(\\d+)/i],[[d,/^/,"SmartTV"],[f,A],[m,y]],[/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i],[[f,M],[m,y]],[/(apple) ?tv/i],[f,[d,S+" TV"],[m,y]],[/crkey/i],[[d,j+"cast"],[f,I],[m,y]],[/droid.+aft(\\w)( bui|\\))/i],[d,[f,_],[m,y]],[/\\(dtv[\\);].+(aquos)/i,/(aquos-tv[\\w ]+)\\)/i],[d,[f,L],[m,y]],[/(bravia[\\w ]+)( bui|\\))/i],[d,[f,U],[m,y]],[/(mitv-\\w{5}) bui/i],[d,[f,R],[m,y]],[/Hbbtv.*(technisat) (.*);/i],[f,d,[m,y]],[/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,/hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w\\+ ]*; *([\\w\\d][^;]*);([^;]*)/i],[[f,H],[d,H],[m,y]],[/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i],[[m,y]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[f,d,[m,b]],[/droid.+; (shield) bui/i],[d,[f,"Nvidia"],[m,b]],[/(playstation [345portablevi]+)/i],[d,[f,U],[m,b]],[/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i],[d,[f,B],[m,b]],[/((pebble))app/i],[f,d,[m,T]],[/(watch)(?: ?os[,\\/]|\\d,\\d\\/)[\\d\\.]+/i],[d,[f,S],[m,T]],[/droid.+; (glass) \\d/i],[d,[f,I],[m,T]],[/droid.+; (wt63?0{2,3})\\)/i],[d,[f,q],[m,T]],[/(quest( 2| pro)?)/i],[d,[f,F],[m,T]],[/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i],[f,[m,k]],[/(aeobc)\\b/i],[d,[f,_],[m,k]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i],[d,[m,h]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i],[d,[m,w]],[/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i],[[m,w]],[/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i],[[m,h]],[/(android[-\\w\\. ]{0,9});.+buil/i],[d,[f,"Generic"]]],engine:[[/windows.+ edge\\/([\\w\\.]+)/i],[v,[p,"EdgeHTML"]],[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i],[v,[p,"Blink"]],[/(presto)\\/([\\w\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,/ekioh(flow)\\/([\\w\\.]+)/i,/(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,/(icab)[\\/ ]([23]\\.[\\d\\.]+)/i,/\\b(libweb)/i],[p,v],[/rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i],[v,p]],os:[[/microsoft (windows) (vista|xp)/i],[p,v],[/(windows) nt 6\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,/(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i],[p,[v,J,X]],[/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i],[[p,"Windows"],[v,J,X]],[/ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,/ios;fbsv\\/([\\d\\.]+)/i,/cfnetwork\\/.+darwin/i],[[v,/_/g,"."],[p,"iOS"]],[/(mac os x) ?([\\w\\. ]*)/i,/(macintosh|mac_powerpc\\b)(?!.+haiku)/i],[[p,K],[v,/_/g,"."]],[/droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i],[v,p],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,/(blackberry)\\w*\\/([\\w\\.]*)/i,/(tizen|kaios)[\\/ ]([\\w\\.]+)/i,/\\((series40);/i],[p,v],[/\\(bb(10);/i],[v,[p,x]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i],[v,[p,"Symbian"]],[/mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i],[v,[p,N+" OS"]],[/web0s;.+rt(tv)/i,/\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i],[v,[p,"webOS"]],[/watch(?: ?os[,\\/]|\\d,\\d\\/)([\\d\\.]+)/i],[v,[p,"watchOS"]],[/crkey\\/([\\d\\.]+)/i],[v,[p,j+"cast"]],[/(cros) [\\w]+(?:\\)| ([\\w\\.]+)\\b)/i],[[p,z],v],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\\/(\\d+\\.[\\w\\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\);]+)/i,/\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,/(mint)[\\/\\(\\) ]?(\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,/(hurd|linux) ?([\\w\\.]*)/i,/(gnu) ?([\\w\\.]*)/i,/\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,/(haiku) (\\w+)/i],[p,v],[/(sunos) ?([\\w\\.\\d]*)/i],[[p,"Solaris"],v],[/((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,/(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,/\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\\w\\.]*)/i],[p,v]]},Z=function(e,t){if(typeof e===c&&(t=e,e=a),!(this instanceof Z))return new Z(e,t).getResult();var n=typeof i!==s&&i.navigator?i.navigator:a,r=e||(n&&n.userAgent?n.userAgent:""),b=n&&n.userAgentData?n.userAgentData:a,y=t?function(e,t){var n={};for(var r in e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return n}(G,t):G,T=n&&n.userAgent==r;return this.getBrowser=function(){var e,t={};return t[p]=a,t[v]=a,V.call(t,r,y.browser),t[l]=typeof(e=t[v])===u?e.replace(/[^\\d\\.]/g,"").split(".")[0]:a,T&&n&&n.brave&&typeof n.brave.isBrave==o&&(t[p]="Brave"),t},this.getCPU=function(){var e={};return e[g]=a,V.call(e,r,y.cpu),e},this.getDevice=function(){var e={};return e[f]=a,e[d]=a,e[m]=a,V.call(e,r,y.device),T&&!e[m]&&b&&b.mobile&&(e[m]=h),T&&"Macintosh"==e[d]&&n&&typeof n.standalone!==s&&n.maxTouchPoints&&n.maxTouchPoints>2&&(e[d]="iPad",e[m]=w),e},this.getEngine=function(){var e={};return e[p]=a,e[v]=a,V.call(e,r,y.engine),e},this.getOS=function(){var e={};return e[p]=a,e[v]=a,V.call(e,r,y.os),T&&!e[p]&&b&&"Unknown"!=b.platform&&(e[p]=b.platform.replace(/chrome os/i,z).replace(/macos/i,K)),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return r},this.setUA=function(e){return r=typeof e===u&&e.length>350?H(e,350):e,this},this.setUA(r),this};Z.VERSION="1.0.35",Z.BROWSER=$([p,v,l]),Z.CPU=$([g]),Z.DEVICE=$([d,f,m,b,h,y,w,T,k]),Z.ENGINE=Z.OS=$([p,v]),typeof t!==s?(e.exports&&(t=e.exports=Z),t.UAParser=Z):n.amdO?(r=function(){return Z}.call(t,n,t,e))===a||(e.exports=r):typeof i!==s&&(i.UAParser=Z);var Y=typeof i!==s&&(i.jQuery||i.Zepto);if(Y&&!Y.ua){var ee=new Z;Y.ua=ee.getResult(),Y.ua.get=function(){return ee.getUA()},Y.ua.set=function(e){ee.setUA(e);var t=ee.getResult();for(var n in t)Y.ua[n]=t[n]}}}("object"==typeof window?window:this)}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var a=t[r]={exports:{}};return e[r].call(a.exports,a,a.exports,n),a.exports}n.amdO={},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";n.r(r),n.d(r,{ActionType:()=>f,AmplitudePlatformName:()=>g,AnalyticsEventImportance:()=>l,AnalyticsQueries:()=>e,AuthStatus:()=>b,ComponentType:()=>m,IThresholdTier:()=>Jt,MetricType:()=>d,PlatformName:()=>v,SessionActions:()=>h,SessionAutomatedEvents:()=>w,SessionRank:()=>y,SubjectType:()=>p,UserTypeCommerce:()=>c,UserTypeInsto:()=>i,UserTypeRetail:()=>t,UserTypeRetailBusinessBanking:()=>s,UserTypeRetailEmployeeInternal:()=>a,UserTypeRetailEmployeePersonal:()=>o,UserTypeWallet:()=>u,automatedEvents:()=>xn,automatedMappingConfig:()=>In,clearMarkEntry:()=>Vn,clearPerformanceMarkEntries:()=>Xn,config:()=>A,createEventConfig:()=>On,createNewSpan:()=>Ln,createNewTrace:()=>Un,device:()=>W,endPerfMark:()=>Jn,exposeExperiment:()=>wn,flushQueue:()=>or,generateUUID:()=>V,getAnalyticsHeaders:()=>sr,getReferrerData:()=>le,getTracingHeaders:()=>An,getTracingId:()=>Dn,getUrlHostname:()=>pe,getUrlParams:()=>me,getUrlPathname:()=>fe,getUserContext:()=>ar,identify:()=>Tn,identifyFlow:()=>xe,identity:()=>H,identityFlow:()=>Se,incrementUjNavigation:()=>an,init:()=>yn,initNextJsTrackPageview:()=>_n,initTrackPageview:()=>kn,isEventKeyFormatValid:()=>we,isSessionEnded:()=>pt,location:()=>re,logEvent:()=>$t,logMetric:()=>Ht,logPageView:()=>on,logTrace:()=>Rn,markNTBT:()=>tn,markStep:()=>nn,markStepOnce:()=>rn,onVisibilityChange:()=>ln,optIn:()=>En,optOut:()=>Sn,perfMark:()=>Wn,persistentData:()=>oe,postMessage:()=>K,recordSessionDuration:()=>pn,removeFromIdentifyFlow:()=>Ee,savePersistentData:()=>st,sendScheduledEvents:()=>Bt,setBreadcrumbs:()=>ie,setConfig:()=>U,setLocation:()=>ae,setPagePath:()=>ve,setPageview:()=>Kt,setPersistentData:()=>se,setSessionStart:()=>dt,setTime:()=>Ue,startPerfMark:()=>Hn,timeStone:()=>Le,useEventLogger:()=>Yn,useLogEventOnMount:()=>tr,usePerformanceMarks:()=>rr});let e=function(e){return e.fbclid="fbclid",e.gclid="gclid",e.msclkid="msclkid",e.ptclid="ptclid",e.ttclid="ttclid",e.utm_source="utm_source",e.utm_medium="utm_medium",e.utm_campaign="utm_campaign",e.utm_term="utm_term",e.utm_content="utm_content",e}({});const t=0,i=1,a=2,o=3,s=4,c=5,u=6;let l=function(e){return e.low="low",e.high="high",e}({}),d=function(e){return e.count="count",e.rate="rate",e.gauge="gauge",e.distribution="distribution",e.histogram="histogram",e}({}),p=function(e){return e.commerce_merchant="commerce_merchant",e.device="device",e.edp_fingerprint_id="edp_fingerprint_id",e.nft_user="nft_user",e.user="user",e.wallet_user="wallet_user",e.uuid="user_uuid",e}({}),m=function(e){return e.unknown="unknown",e.banner="banner",e.button="button",e.card="card",e.chart="chart",e.content_script="content_script",e.dropdown="dropdown",e.link="link",e.page="page",e.modal="modal",e.table="table",e.search_bar="search_bar",e.service_worker="service_worker",e.text="text",e.text_input="text_input",e.tray="tray",e.checkbox="checkbox",e.icon="icon",e}({}),f=function(e){return e.unknown="unknown",e.blur="blur",e.click="click",e.change="change",e.dismiss="dismiss",e.focus="focus",e.hover="hover",e.select="select",e.measurement="measurement",e.move="move",e.process="process",e.render="render",e.scroll="scroll",e.view="view",e.search="search",e.keyPress="keyPress",e}({}),v=function(e){return e.unknown="unknown",e.web="web",e.android="android",e.ios="ios",e.mobile_web="mobile_web",e.tablet_web="tablet_web",e.server="server",e.windows="windows",e.macos="macos",e.extension="extension",e}({}),g=function(e){return e.web="Web",e.ios="iOS",e.android="Android",e}({}),b=function(e){return e[e.notLoggedIn=0]="notLoggedIn",e[e.loggedIn=1]="loggedIn",e}({}),h=function(e){return e.ac="ac",e.af="af",e.ah="ah",e.al="al",e.am="am",e.ar="ar",e.as="as",e}({}),w=function(e){return e.pv="pv",e}({}),y=function(e){return e.xs="xs",e.s="s",e.m="m",e.l="l",e.xl="xl",e.xxl="xxl",e}({});const T="https://analytics-service-dev.cbhq.net",k=3e5,_=5e3,S="analytics-db",E="experiment-exposure-db",x="Analytics SDK:",O=Object.values(e),j="pageview",N="session_duration",I={navigationTiming:{eventName:"perf_navigation_timing"},redirectTime:{eventName:"perf_redirect_time"},RT:{eventName:"perf_redirect_time"},TTFB:{eventName:"perf_time_to_first_byte"},networkInformation:{eventName:"perf_network_information"},storageEstimate:{eventName:"perf_storage_estimate"},FCP:{eventName:"perf_first_contentful_paint"},FID:{eventName:"perf_first_input_delay"},LCP:{eventName:"perf_largest_contentful_paint"},CLS:{eventName:"perf_cumulative_layout_shift"},TBT:{eventName:"perf_total_blocking_time"},NTBT:{eventName:"perf_navigation_total_blocking_time"},INP:{eventName:"perf_interact_to_next_paint"},ET:{eventName:"perf_element_timing"},userJourneyStep:{eventName:"perf_user_journey_step"}},P="1",M="web";function B(){return B=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},B.apply(this,arguments)}const C=/^(https?:\\/\\/)/;function D(e){return{eventsEndpoint:e+"/amp",metricsEndPoint:e+"/metrics",exposureEndpoint:e+"/track-exposures",tracesEndpoint:e+"/traces"}}const A=B({authCookie:"logged_in",amplitudeApiKey:"",batchEventsPeriod:_,batchEventsThreshold:30,batchMetricsPeriod:_,batchMetricsThreshold:30,batchTracesPeriod:_,batchTracesThreshold:30,headers:{},interactionManager:null,isAlwaysAuthed:!1,isProd:!1,isInternalApplication:!1,onError:(e,t)=>{console.error(x,e,t)},platform:v.unknown,projectName:"",ricTimeoutScheduleEvent:1e3,ricTimeoutSetDevice:500,showDebugLogging:!1,trackUserId:!1,version:null,apiEndpoint:T},D(T),{steps:{}}),L=[].reduce(((e,t)=>n=>e(t(n))),(e=>{if(!e.isProd)return e.isInternalApplication?(e.apiEndpoint="https://analytics-service-internal-dev.cbhq.net",B({},e,D(e.apiEndpoint))):e;const t=(e=>e.apiEndpoint?C.test(e.apiEndpoint)?e.apiEndpoint:`https://${e.apiEndpoint}`:e.isInternalApplication?"https://analytics-service-internal.cbhq.net":"https://as.coinbase.com")(e);return B({},e,{apiEndpoint:t},D(t))})),U=e=>{const{batchEventsThreshold:t,batchMetricsThreshold:n,batchTracesThreshold:r}=e,i=[t,n,r];for(const e of i)if((e||0)>30){console.warn("You are setting the threshhold for the batch limit to be greater than 30. This may cause request overload.");break}Object.assign(A,L(e))},R=[v.web,v.mobile_web,v.tablet_web];function q(){return"android"===A.platform}function F(){return"ios"===A.platform}function z(){return R.includes(A.platform)}function K(e){if(z()&&navigator&&"serviceWorker"in navigator&&navigator.serviceWorker.controller)try{navigator.serviceWorker.controller.postMessage(e)}catch(e){e instanceof Error&&A.onError(e)}}var $=n(353),Q=n.n($);const W={amplitudeOSName:null,amplitudeOSVersion:null,amplitudeDeviceModel:null,amplitudePlatform:null,browserName:null,browserMajor:null,osName:null,userAgent:null,width:null,height:null},H={countryCode:null,deviceId:null,device_os:null,isOptOut:!1,languageCode:null,locale:null,jwt:null,session_lcc_id:null,userAgent:null,userId:null},V=e=>e?(e^16*Math.random()>>e/4).toString(16):"10000000-1000-4000-8000-100000000000".replace(/[018]/g,V),J=()=>A.isAlwaysAuthed||!!H.userId,X=()=>{const e={};return H.countryCode&&(e.country_code=H.countryCode),e},G=()=>{const{platform:e}=A;if(e===v.web)switch(!0){case window.matchMedia("(max-width: 560px)").matches:return v.mobile_web;case window.matchMedia("(max-width: 1024px, min-width: 561px)").matches:return v.tablet_web}return e},Z=()=>{var e,t,n,r,i;z()?("requestIdleCallback"in window?window.requestIdleCallback(ne,{timeout:A.ricTimeoutSetDevice}):ne(),W.amplitudePlatform=g.web,W.userAgent=(null==(e=window)||null==(e=e.navigator)?void 0:e.userAgent)||null,ee({height:null!=(t=null==(n=window)?void 0:n.innerHeight)?t:null,width:null!=(r=null==(i=window)?void 0:i.innerWidth)?r:null})):F()?(W.amplitudePlatform=g.ios,W.userAgent=H.userAgent,W.userAgent&&ne()):q()&&(W.userAgent=H.userAgent,W.amplitudePlatform=g.android,W.userAgent&&ne())},Y=e=>{Object.assign(H,e),z()&&K({identity:{isAuthed:!!H.userId,locale:H.locale||null}})},ee=e=>{W.height=e.height,W.width=e.width},te=()=>{U({platform:G()}),z()&&K({config:{platform:A.platform}})},ne=()=>{var e;performance.mark&&performance.mark("ua_parser_start");const t=new(Q())(null!=(e=W.userAgent)?e:"").getResult();W.browserName=t.browser.name||null,W.browserMajor=t.browser.major||null,W.osName=t.os.name||null,W.amplitudeOSName=W.browserName,W.amplitudeOSVersion=W.browserMajor,W.amplitudeDeviceModel=W.osName,K({device:{browserName:W.browserName,osName:W.osName}}),performance.mark&&(performance.mark("ua_parser_end"),performance.measure("ua_parser","ua_parser_start","ua_parser_end"))},re={breadcrumbs:[],initialUAAData:{},pageKey:"",pageKeyRegex:{},pagePath:"",prevPageKey:"",prevPagePath:""};function ie(e){Object.assign(re,{breadcrumbs:e})}function ae(e){Object.assign(re,e)}const oe={eventId:0,sequenceNumber:0,sessionId:0,lastEventTime:0,sessionStart:0,sessionUUID:null,userId:null,ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0};function se(e){Object.assign(oe,e)}function ce(){var e,t;return null!=(e=null==(t=document)?void 0:t.referrer)?e:""}function ue(){return ue=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ue.apply(this,arguments)}const le=()=>{const e=ce();if(!e)return{};const t=new URL(e);return t.hostname===pe()?{}:{referrer:e,referring_domain:t.hostname}},de=()=>{const e=new URLSearchParams(me()),t={};return O.forEach((n=>{e.has(n)&&(t[n]=(e.get(n)||"").toLowerCase())})),t},pe=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.hostname)||""},me=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.search)||""},fe=()=>{var e;return(null==(e=window)||null==(e=e.location)?void 0:e.pathname)||""},ve=()=>{const e=A.overrideWindowLocation?re.pagePath:fe()+me();e&&e!==re.pagePath&&(e!==re.pagePath&&ge(),re.pagePath=e,re.pageKeyRegex&&Object.keys(re.pageKeyRegex).some((e=>{if(re.pageKeyRegex[e].test(re.pagePath))return re.pageKey=e,!0})))},ge=()=>{if(z()){const e=ce();if(!re.prevPagePath&&e){const t=new URL(e);if(t.hostname===pe())return void(re.prevPagePath=t.pathname)}}re.prevPagePath=re.pagePath,re.prevPageKey=re.pageKey},be=e=>{z()&&Object.assign(e,z()?(Object.keys(re.initialUAAData).length>0||(new URLSearchParams(me()),re.initialUAAData=ue({},(()=>{const e={};return O.forEach((t=>{oe[t]&&(e[t]=oe[t])})),e})(),de(),le())),re.initialUAAData):re.initialUAAData)},he=/^[a-zd]+(_[a-zd]+)*$/;function we(e){return he.test(e)}function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ye.apply(this,arguments)}const Te=["action","component_type","component_name","context","logging_id"],ke=["num_non_hardware_accounts","ujs"],_e="ujs_",Se={};function Ee(e){e.forEach((e=>{ke.includes(e)&&delete Se[e]}))}function xe(e){var t;const n=Object.entries(e).reduce(((e,t)=>{const[n,r]=t;return!Te.includes(n)&&ke.includes(n)?we(n)?ye({},e,{[n]:r}):(A.onError(new Error("IdentityFlow property names must have snake case format"),{[n]:r}),e):e}),{});null!=(t=n.ujs)&&t.length&&(n.ujs=n.ujs.map((e=>`${_e}${e}`))),Object.assign(Se,n)}function Oe(){return A.platform!==v.unknown||(A.onError(new Error("SDK platform not initialized")),!1)}const je={eventsQueue:[],eventsScheduled:!1,metricsQueue:[],metricsScheduled:!1,tracesQueue:[],tracesScheduled:!1};function Ne(e){Object.assign(je,e)}const Ie={ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0,sqs:0},Pe={ac:20,af:5,ah:1,al:1,am:0,ar:10,as:20},Me={pv:25},Be={xs:0,s:1,m:1,l:2,xl:2,xxl:2},Ce=e=>e<15?y.xs:e<60?y.s:e<240?y.m:e<960?y.l:e<3840?y.xl:y.xxl,De=e=>{Object.assign(Ie,e)};function Ae(){return(new Date).getTime()}const Le={timeStart:Ae(),timeOnPagePath:0,timeOnPageKey:0,prevTimeOnPagePath:0,prevTimeOnPageKey:0,sessionDuration:0,sessionEnd:0,sessionStart:0,prevSessionDuration:0};function Ue(e){Object.assign(Le,e)}const Re=(e,t)=>t.some((t=>e instanceof t));let qe,Fe;const ze=new WeakMap,Ke=new WeakMap,$e=new WeakMap,Qe=new WeakMap,We=new WeakMap;let He={get(e,t,n){if(e instanceof IDBTransaction){if("done"===t)return Ke.get(e);if("objectStoreNames"===t)return e.objectStoreNames||$e.get(e);if("store"===t)return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return Je(e[t])},set:(e,t,n)=>(e[t]=n,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function Ve(e){return"function"==typeof e?(t=e)!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Fe||(Fe=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(Xe(this),e),Je(ze.get(this))}:function(...e){return Je(t.apply(Xe(this),e))}:function(e,...n){const r=t.call(Xe(this),e,...n);return $e.set(r,e.sort?e.sort():[e]),Je(r)}:(e instanceof IDBTransaction&&function(e){if(Ke.has(e))return;const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",a),e.removeEventListener("abort",a)},i=()=>{t(),r()},a=()=>{n(e.error||new DOMException("AbortError","AbortError")),r()};e.addEventListener("complete",i),e.addEventListener("error",a),e.addEventListener("abort",a)}));Ke.set(e,t)}(e),Re(e,qe||(qe=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]))?new Proxy(e,He):e);var t}function Je(e){if(e instanceof IDBRequest)return function(e){const t=new Promise(((t,n)=>{const r=()=>{e.removeEventListener("success",i),e.removeEventListener("error",a)},i=()=>{t(Je(e.result)),r()},a=()=>{n(e.error),r()};e.addEventListener("success",i),e.addEventListener("error",a)}));return t.then((t=>{t instanceof IDBCursor&&ze.set(t,e)})).catch((()=>{})),We.set(t,e),t}(e);if(Qe.has(e))return Qe.get(e);const t=Ve(e);return t!==e&&(Qe.set(e,t),We.set(t,e)),t}const Xe=e=>We.get(e),Ge=["get","getKey","getAll","getAllKeys","count"],Ze=["put","add","delete","clear"],Ye=new Map;function et(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return;if(Ye.get(t))return Ye.get(t);const n=t.replace(/FromIndex$/,""),r=t!==n,i=Ze.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!i&&!Ge.includes(n))return;const a=async function(e,...t){const a=this.transaction(e,i?"readwrite":"readonly");let o=a.store;return r&&(o=o.index(t.shift())),(await Promise.all([o[n](...t),i&&a.done]))[0]};return Ye.set(t,a),a}var tt;tt=He,He={...tt,get:(e,t,n)=>et(e,t)||tt.get(e,t,n),has:(e,t)=>!!et(e,t)||tt.has(e,t)};const nt={isReady:!1,idbKeyval:null};function rt(e){Object.assign(nt,e)}const it={},at=async e=>{if(!nt.idbKeyval)return Promise.resolve(null);try{return await nt.idbKeyval.get(e)}catch(e){return A.onError(new Error("IndexedDB:Get:InternalError")),Promise.resolve(null)}},ot=async(e,t)=>{if(nt.idbKeyval)try{await nt.idbKeyval.set(e,t)}catch(e){A.onError(new Error("IndexedDB:Set:InternalError"))}},st=()=>{"server"!==A.platform&&(se({sessionStart:Le.sessionStart,ac:Ie.ac,af:Ie.af,ah:Ie.ah,al:Ie.al,am:Ie.am,ar:Ie.ar,as:Ie.as,pv:Ie.pv}),H.userId&&se({userId:H.userId}),ot(S,oe))},ct="rgb(5,177,105)",ut=e=>{const{metricName:t,data:n}=e,r=e.importance||l.low;if(!A.showDebugLogging||!console)return;const i=`%c ${x}`,a=`color:${ct};font-size:11px;`,o=`Importance: ${r}`;console.group(i,a,t,o),n.forEach((e=>{e.event_type?console.log(e.event_type,e):console.log(e)})),console.groupEnd()},lt=e=>{const{metricName:t,data:n}=e,r=e.importance||l.low;if(!A.showDebugLogging||!console)return;const i=`color:${ct};font-size:11px;`,a=`%c ${x}`,o=`Importance: ${r}`;console.log(a,i,t,n,o)},dt=()=>{const e=Ae();oe.sessionId&&oe.lastEventTime&&oe.sessionUUID&&!pt(e)||(oe.sessionId=e,oe.sessionUUID=V(),Ue({sessionStart:e}),lt({metricName:"Started new session:",data:{persistentData:oe,timeStone:Le}})),oe.lastEventTime=e},pt=e=>e-oe.lastEventTime>18e5;function mt(){return mt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mt.apply(this,arguments)}const ft=e=>{var t;(e=>{switch(e.action){case f.click:Ie.ac+=1;break;case f.focus:Ie.af+=1;break;case f.hover:Ie.ah+=1;break;case f.move:Ie.am+=1;break;case f.scroll:Ie.al+=1;break;case f.search:Ie.ar+=1;break;case f.select:Ie.as+=1}})(t=e),t.event_type!==j?t.event_type===N&&((e=>{if(!e.session_rank)return;const t=e.session_rank;Object.values(h).forEach((e=>{Ie.sqs+=Ie[e]*Pe[e]})),Object.values(w).forEach((e=>{Ie.sqs+=Ie[e]*Me[e]})),Ie.sqs*=Be[t]})(t),Object.assign(t,Ie),De({ac:0,af:0,ah:0,al:0,am:0,ar:0,as:0,pv:0,sqs:0})):Ie.pv+=1;const n=e.event_type;delete e.event_type;const r=e.deviceId?e.deviceId:null,i=e.timestamp;return delete e.timestamp,se({eventId:oe.eventId+1}),se({sequenceNumber:oe.sequenceNumber+1}),dt(),st(),{device_id:H.deviceId||r||null,user_id:H.userId,timestamp:i,event_id:oe.eventId,session_id:oe.sessionId||-1,event_type:n,version_name:A.version||null,platform:W.amplitudePlatform,os_name:W.amplitudeOSName,os_version:W.amplitudeOSVersion,device_model:W.amplitudeDeviceModel,language:H.languageCode,event_properties:mt({},e,{session_uuid:oe.sessionUUID,height:W.height,width:W.width}),user_properties:X(),uuid:V(),library:{name:"@cbhq/client-analytics",version:"10.6.0"},sequence_number:oe.sequenceNumber,user_agent:W.userAgent||H.userAgent}},vt=e=>e.map((e=>ft(e)));function gt(){return gt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gt.apply(this,arguments)}const bt=e=>e.map((e=>(e=>{const t=e.tags||{},n=gt({authed:J()?"true":"false",platform:A.platform},t,{project_name:A.projectName,version_name:A.version||null});return{metric_name:e.metricName,page_path:e.pagePath||null,value:e.value,tags:n,type:e.metricType}})(e))),ht=e=>0!==je.metricsQueue.length&&(je.metricsQueue.length>=A.batchMetricsThreshold||(je.metricsScheduled||(je.metricsScheduled=!0,setTimeout((()=>{je.metricsScheduled=!1,e(bt(je.metricsQueue)),je.metricsQueue=[]}),A.batchMetricsPeriod)),!1)),wt=e=>0!==je.tracesQueue.length&&(je.tracesQueue.length>=A.batchTracesThreshold||(je.tracesScheduled||(je.tracesScheduled=!0,setTimeout((()=>{je.tracesScheduled=!1,e(je.tracesQueue),je.tracesQueue=[]}),A.batchTracesPeriod)),!1)),yt=e=>{var t;z()&&null!=(t=window)&&t.requestIdleCallback?window.requestIdleCallback(e,{timeout:A.ricTimeoutScheduleEvent}):(q()||F())&&A.interactionManager?A.interactionManager.runAfterInteractions(e):e()};function Tt(){return Tt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Tt.apply(this,arguments)}const kt="application/x-www-form-urlencoded; charset=UTF-8",_t=e=>{const{data:t,importance:n,isJSON:r,onError:i,url:a}=e,o=r?"application/json":kt,s=n||l.low,c=r?JSON.stringify(t):new URLSearchParams(t).toString();function u(){const e=new XMLHttpRequest;e.open("POST",a,!0),Object.keys(A.headers||{}).forEach((t=>{e.setRequestHeader(t,A.headers[t])})),e.setRequestHeader("Content-Type",kt),H.jwt&&e.setRequestHeader("authorization",`Bearer ${H.jwt}`),e.send(c)}if(!z()||r||!("sendBeacon"in navigator)||s!==l.low||A.headers&&0!==Object.keys(A.headers).length)if(z()&&!r)u();else{const e=Tt({},A.headers,{"Content-Type":o});H.jwt&&(e.Authorization=`Bearer ${H.jwt}`),fetch(a,{method:"POST",mode:"no-cors",headers:e,body:c}).catch((e=>{i(e,{context:"AnalyticsSDKApiError"})}))}else{const e=new Blob([c],{type:kt});try{navigator.sendBeacon.bind(navigator)(a,e)||u()}catch(e){console.error(e),u()}}};var St=n(762),Et=n.n(St);const xt=(e,t,n)=>{const r=e||"";return Et()("2"+r+t+n)};function Ot(){return Ot=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ot.apply(this,arguments)}class jt extends Error{constructor(e){super(e),this.name="CircularJsonReference",this.message=e,"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error(e).stack}}class Nt extends jt{constructor(...e){super(...e),this.name="DomReferenceInAnalyticsEvent"}}function It(){return It=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},It.apply(this,arguments)}const Pt=(e,t=l.low)=>{var n;e&&je.eventsQueue.push(e),nt.isReady&&(!A.trackUserId||H.userId?(t===l.high||(n=Mt,0!==je.eventsQueue.length&&(je.eventsQueue.length>=A.batchEventsThreshold||(je.eventsScheduled||(je.eventsScheduled=!0,setTimeout((()=>{je.eventsScheduled=!1,n(vt(je.eventsQueue)),je.eventsQueue=[]}),A.batchEventsPeriod)),0))))&&Bt():je.eventsQueue.length>10&&(A.trackUserId=!1,A.onError(new Error("userId not set in Logged-in"))))},Mt=(e,t=l.low)=>{if(H.isOptOut||0===e.length)return;let n;try{n=JSON.stringify(e)}catch(t){const r=e.map((e=>e.event_type)).join(", "),[i,a]=(e=>{try{const n=[];for(const r of e){const e=Ot({},r);r.event_properties&&(e.event_properties=Ot({},e.event_properties,{currentTarget:null,target:null,relatedTarget:null,_dispatchInstances:null,_targetInst:null,view:(t=r.event_properties.view,["string","number","boolean"].includes(typeof t)?r.event_properties.view:null)})),n.push(e)}return[!0,JSON.stringify(n)]}catch(e){return[!1,""]}var t})(e);if(!i)return void A.onError(new jt(t instanceof Error?t.message:"unknown"),{listEventType:r});n=a,A.onError(new Nt("Found DOM element reference"),{listEventType:r,stringifiedEventData:n})}const r=Ae().toString(),i=It({},{e:n,v:"2",upload_time:r},{client:A.amplitudeApiKey,checksum:xt(A.amplitudeApiKey,n,r)});_t({url:A.eventsEndpoint,data:i,importance:t,onError:A.onError}),ut({metricName:"Batch Events",data:e,importance:t})},Bt=()=>{Mt(vt(je.eventsQueue)),Ne({eventsQueue:[]})};function Ct(){return Ct=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ct.apply(this,arguments)}const Dt=Object.values(f),At=Object.values(m),Lt=e=>Dt.includes(e)?e:f.unknown,Ut=e=>At.includes(e)?e:m.unknown,Rt=(e,t,n)=>{const r={auth:J()?b.loggedIn:b.notLoggedIn,action:Lt(e),component_type:Ut(t),logging_id:n,platform:A.platform,project_name:A.projectName};return"number"==typeof H.userTypeEnum&&(r.user_type_enum=H.userTypeEnum),r},qt=e=>{const t=Ae();if(!e)return A.onError(new Error("missing logData")),Ct({},Rt(f.unknown,m.unknown),{locale:H.locale,session_lcc_id:H.session_lcc_id,timestamp:t,time_start:Le.timeStart});const n=Ct({},e,Rt(e.action,e.componentType,e.loggingId),{locale:H.locale,session_lcc_id:H.session_lcc_id,timestamp:t,time_start:Le.timeStart});return delete n.componentType,delete n.loggingId,n},Ft={blacklistRegex:[],isEnabled:!1};function zt(){return{page_key:re.pageKey,page_path:re.pagePath,prev_page_key:re.prevPageKey,prev_page_path:re.prevPagePath}}function Kt(e){Object.assign(Ft,e)}function $t(e,t,n=l.low){if(H.isOptOut)return;if(!Oe())return;const r=qt(t);!function(e){Ft.isEnabled&&(ve(),Object.assign(e,zt()))}(r),be(r),function(e){Object.keys(Se).length>0&&Object.assign(e,Se)}(r),r.has_double_fired=!1,r.event_type=e,n===l.high?Pt(r,n):yt((()=>{Pt(r)}))}function Qt(e,t=!1){t?_t({url:A.metricsEndPoint,data:{metrics:e},isJSON:!0,onError:A.onError}):yt((()=>{_t({url:A.metricsEndPoint,data:{metrics:e},isJSON:!0,onError:A.onError})})),ut({metricName:"Batch Metrics",data:e})}function Wt(){return Wt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Wt.apply(this,arguments)}function Ht(e){if(!Oe())return;v.server!==A.platform&&!e.pagePath&&re.pagePath&&(e.pagePath=re.pagePath);const t=Object.keys(Se).length?Wt({},e.tags,Se):e.tags;t&&Object.assign(e,{tags:t}),je.metricsQueue.push(e),ht(Qt)&&(Qt(bt(je.metricsQueue)),je.metricsQueue=[])}function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Vt.apply(this,arguments)}let Jt=function(e){return e.instant="instant",e.quick="quick",e.moderate="moderate",e.slow="slow",e.unavoidable="unavoidable",e}({});function Xt(e){return e.toLowerCase()}let Gt={};const Zt=(e,t)=>{null!=A&&A.onMarkStep&&A.onMarkStep(e,t),xe({ujs:t})};let Yt;const en={Perfume:()=>{},markStep:e=>{},markStepOnce:e=>{},incrementUjNavigation:()=>{}},tn=()=>{z()&&Yt&&Yt.markNTBT&&Yt.markNTBT()},nn=e=>{z()&&Yt&&en.markStep&&en.markStep(e)},rn=e=>{z()&&Yt&&en.markStepOnce&&en.markStepOnce(e)},an=()=>{z()&&Yt&&en.incrementUjNavigation&&en.incrementUjNavigation()};function on(e={callMarkNTBT:!0}){"unknown"!==A.platform&&(Ft.blacklistRegex.some((e=>e.test(fe())))||($t(j,{action:f.render,componentType:m.page}),e.callMarkNTBT&&tn()))}let sn=!1,cn=!1;const un=e=>{sn=!e.persisted},ln=(e,t="hidden",n=!1)=>{cn||(addEventListener("pagehide",un),addEventListener("beforeunload",(()=>{})),cn=!0),addEventListener("visibilitychange",(({timeStamp:n})=>{document.visibilityState===t&&e({timeStamp:n,isUnloading:sn})}),{capture:!0,once:n})},dn=36e3;function pn(){const e=pt(Ae());if(e&&(O.forEach((e=>{oe[e]&&delete oe[e]})),st()),!oe.lastEventTime||!Le.sessionStart||!e)return;const t=Math.round((oe.lastEventTime-Le.sessionStart)/1e3);if(t<1||t>dn)return;const n=Ce(t);$t(N,{action:f.measurement,componentType:m.page,session_duration:t,session_end:oe.lastEventTime,session_start:Le.sessionStart,session_rank:n})}function mn(){return mn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mn.apply(this,arguments)}const fn=[],vn=[],gn=()=>{const e=fn.shift();e&&e()},bn=()=>{const e=vn.shift();e&&e()};let hn={};function wn(e){const t=function(e){return{test_name:e.testName,group_name:e.group,subject_id:e.subjectId,exposed_at:Ae(),subject_type:e.subjectType,platform:A.platform}}(e);hn[e.testName]=hn[e.testName]||0,hn[e.testName]+k>Ae()?lt({metricName:`Event: exposeExperiment ${e.testName} not sent`,data:t}):(hn[e.testName]=Ae(),ot(E,hn),lt({metricName:`Event: exposeExperiment ${e.testName} sent`,data:t}),_t({url:A.exposureEndpoint,data:[t],onError:(t,n)=>{hn[e.testName]=0,ot(E,hn),A.onError(t,n)},isJSON:!0,importance:l.high}))}const yn=e=>{var t,r,i;U(e),z()&&(H.languageCode=(null==(t=navigator)?void 0:t.languages[0])||(null==(r=navigator)?void 0:r.language)||""),te(),(()=>{var e;if(z()&&null!=(e=window)&&e.indexedDB){const e=function(e,t,{blocked:n,upgrade:r,blocking:i,terminated:a}={}){const o=indexedDB.open(e,t),s=Je(o);return r&&o.addEventListener("upgradeneeded",(e=>{r(Je(o.result),e.oldVersion,e.newVersion,Je(o.transaction),e)})),n&&o.addEventListener("blocked",(e=>n(e.oldVersion,e.newVersion,e))),s.then((e=>{a&&e.addEventListener("close",(()=>a())),i&&e.addEventListener("versionchange",(e=>i(e.oldVersion,e.newVersion,e)))})).catch((()=>{})),s}("keyval-store",1,{upgrade(e){e.createObjectStore("keyval")}});rt({idbKeyval:{get:async t=>(await e).get("keyval",t),set:async(t,n)=>(await e).put("keyval",n,t),delete:async t=>(await e).delete("keyval",t),keys:async()=>(await e).getAllKeys("keyval")}})}else rt({idbKeyval:{get:async e=>new Promise((t=>{t(it[e])})),set:async(e,t)=>new Promise((n=>{it[e]=t,n(e)})),delete:async e=>new Promise((()=>{delete it[e]})),keys:async()=>new Promise((e=>{e(Object.keys(it))}))}})})(),lt({metricName:"Initialized Analytics:",data:{deviceId:H.deviceId}}),fn.push((()=>{Pt()})),(async()=>{const e=await at(S);rt({isReady:!0}),gn(),e&&(bn(),se({eventId:e.eventId||oe.eventId,sequenceNumber:e.sequenceNumber||oe.sequenceNumber,sessionId:e.sessionId||oe.sessionId,lastEventTime:e.lastEventTime||oe.lastEventTime,sessionUUID:e.sessionUUID||oe.sessionUUID}),function(e){se(mn({},function(e){const t={};return O.forEach((n=>{e[n]&&(t[n]=e[n])})),t}(e),de()))}(e),Ue({sessionStart:e.sessionStart||oe.sessionStart}),De({ac:e.ac||Ie.ac,af:e.af||Ie.af,ah:e.ah||Ie.ah,al:e.al||Ie.al,am:e.am||Ie.am,ar:e.ar||Ie.ar,as:e.as||Ie.as,pv:e.pv||Ie.pv}),A.trackUserId&&Y({userId:e.userId||H.userId}),pn(),lt({metricName:"Initialized Analytics IndexedDB:",data:e}))})(),async function(){at(E).then((e=>{hn=null!=e?e:{}})).catch((e=>{e instanceof Error&&A.onError(e)}))}(),Z(),z()&&(ln((()=>{se({lastEventTime:Ae()}),st(),Bt()}),"hidden"),ln((()=>{pn()}),"visible")),z()&&(i=()=>{var e,t,n,r;te(),ee({width:null!=(e=null==(t=window)?void 0:t.innerWidth)?e:null,height:null!=(n=null==(r=window)?void 0:r.innerHeight)?n:null})},addEventListener("resize",(()=>{requestAnimationFrame((()=>{i()}))}))),(()=>{if(z())try{const e=n(2);en.markStep=e.markStep,en.markStepOnce=e.markStepOnce,en.incrementUjNavigation=e.incrementUjNavigation,Yt=new e.Perfume({analyticsTracker:e=>{const{data:t,attribution:n,metricName:r,navigatorInformation:i,rating:a}=e,o=I[r],s=(null==n?void 0:n.category)||null;if(!o&&!s)return;const c=(null==i?void 0:i.deviceMemory)||0,u=(null==i?void 0:i.hardwareConcurrency)||0,l=(null==i?void 0:i.isLowEndDevice)||!1,p=(null==i?void 0:i.isLowEndExperience)||!1,v=(null==i?void 0:i.serviceWorkerStatus)||"unsupported",g=Vt({deviceMemory:c,hardwareConcurrency:u,isLowEndDevice:l,isLowEndExperience:p,serviceWorkerStatus:v},Gt),b={is_low_end_device:l,is_low_end_experience:p,page_key:re.pageKey||"",save_data:t.saveData||!1,service_worker:v,is_perf_metric:!0};if("navigationTiming"===r)t&&"number"==typeof t.redirectTime&&Ht({metricName:I.redirectTime.eventName,metricType:d.histogram,tags:b,value:t.redirectTime||0});else if("TTFB"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,vitalsScore:a||null},g)),Ht({metricName:I.TTFB.eventName,metricType:d.histogram,tags:Vt({},b),value:t}),a&&Ht({metricName:`perf_web_vitals_ttfb_${a}`,metricType:d.count,tags:b,value:1});else if("networkInformation"===r)null!=t&&t.effectiveType&&(Gt=t,$t(o.eventName,{action:f.measurement,componentType:m.page,networkInformationDownlink:t.downlink,networkInformationEffectiveType:t.effectiveType,networkInformationRtt:t.rtt,networkInformationSaveData:t.saveData,navigatorDeviceMemory:c,navigatorHardwareConcurrency:u}));else if("storageEstimate"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page},t,g)),Ht({metricName:"perf_storage_estimate_caches",metricType:d.histogram,tags:b,value:t.caches}),Ht({metricName:"perf_storage_estimate_indexed_db",metricType:d.histogram,tags:b,value:t.indexedDB});else if("CLS"===r)$t(o.eventName,Vt({action:f.measurement,componentType:m.page,score:100*t||null,vitalsScore:a||null},g)),a&&Ht({metricName:`perf_web_vitals_cls_${a}`,metricType:d.count,tags:b,value:1});else if("FID"===r){const e=(null==n?void 0:n.performanceEntry)||null,r=parseInt((null==e?void 0:e.processingStart)||"");$t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,processingStart:null!=e&&e.processingStart?r:null,startTime:null!=e&&e.startTime?parseInt(e.startTime):null,vitalsScore:a||null},g)),a&&Ht({metricName:`perf_web_vitals_fidVitals_${a}`,metricType:d.count,tags:b,value:1})}else"userJourneyStep"===r?($t("perf_user_journey_step",Vt({action:f.measurement,componentType:m.page,duration:t||null,rating:null!=a?a:null,step_name:(null==n?void 0:n.stepName)||""},g)),Ht({metricName:`user_journey_step.${A.projectName}.${A.platform}.${(null==n?void 0:n.stepName)||""}_vitals_${a}`,metricType:d.count,tags:b,value:1}),Ht({metricName:`user_journey_step.${A.projectName}.${A.platform}.${(null==n?void 0:n.stepName)||""}`,metricType:d.distribution,tags:b,value:t||null})):I[r]&&t&&($t(o.eventName,Vt({action:f.measurement,componentType:m.page,duration:t||null,vitalsScore:a||null},g)),a&&(Ht({metricName:`perf_web_vitals_${Xt(r)}_${a}`,metricType:d.count,tags:b,value:1}),"LCP"===r&&Ht({metricName:`perf_web_vitals_${Xt(r)}`,metricType:d.distribution,tags:b,value:t})))},maxMeasureTime:3e4,steps:A.steps,onMarkStep:Zt})}catch(e){e instanceof Error&&A.onError(e)}})()},Tn=e=>{Y(e),e.userAgent&&Z(),lt({metricName:"Identify:",data:{countryCode:H.countryCode,deviceId:H.deviceId,userId:H.userId}})},kn=({blacklistRegex:e,pageKeyRegex:t,browserHistory:n})=>{Kt({blacklistRegex:e||[],isEnabled:!0}),ae({pageKeyRegex:t}),on({callMarkNTBT:!1}),n.listen((()=>{on()}))},_n=({blacklistRegex:e,pageKeyRegex:t,nextJsRouter:n})=>{Kt({blacklistRegex:e||[],isEnabled:!0}),ae({pageKeyRegex:t}),on({callMarkNTBT:!1}),n.events.on("routeChangeComplete",(()=>{on()}))},Sn=()=>{Y({isOptOut:!0}),ot(S,{})},En=()=>{Y({isOptOut:!1})},xn={Button:{label:"cb_button",uuid:"e921a074-40e6-4371-8700-134d5cd633e6",componentType:m.button}};function On(e,t,n){return{componentName:e,actions:t,data:n}}function jn(){return jn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jn.apply(this,arguments)}function Nn(e,t,n){const{componentName:r,data:i}=n;$t(e.label,jn({componentType:e.componentType,action:t,loggingId:e.uuid,component_name:r},i))}const In={actionMapping:{onPress:f.click,onHover:f.hover},handlers:{Button:{[f.click]:e=>Nn(xn.Button,f.click,e),[f.hover]:e=>Nn(xn.Button,f.hover,e)}}};function Pn(e,t=!1){t?_t({url:A.tracesEndpoint,data:{traces:e},isJSON:!0,onError:A.onError}):yt((()=>{_t({url:A.tracesEndpoint,data:{traces:e},isJSON:!0,onError:A.onError})})),ut({metricName:"Batch Traces",data:e})}function Mn(){return Mn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Mn.apply(this,arguments)}const Bn=1e6;function Cn(e){return e*Bn}function Dn(e=function(){var e;return null==(e=window)?void 0:e.crypto}()){const t=new Uint32Array(2);return null==e||e.getRandomValues(t),((BigInt(t[0])<<BigInt(32))+BigInt(t[1])).toString()}function An(e,t){return{"x-datadog-origin":"rum","x-datadog-parent-id":t,"x-datadog-sampling-priority":"1","x-datadog-trace-id":e}}function Ln(e){var t;const{name:n,traceId:r,spanId:i,start:a,duration:o,resource:s,meta:c}=e;return{duration:o?Cn(o):0,name:n,resource:s,service:A.projectName,span_id:null!=i?i:Dn(),start:a?Cn(a):0,trace_id:null!=r?r:Dn(),parent_id:P,type:M,meta:Mn({platform:A.platform},re.pageKey?{page_key:re.pageKey}:{},null!=(t=Se.ujs)&&t.length?{last_ujs:Se.ujs[Se.ujs.length-1]}:{},null!=c?c:{})}}function Un(e){return[Ln(e)]}function Rn(e,t){Oe()&&function(e){return e.length>0}(e)&&(t&&function(e,t){e.forEach((e=>function(e,t){const n=Mn({},e.meta,t.meta),r={start:t.start?Cn(t.start):e.start,duration:t.duration?Cn(t.duration):e.duration};Object.assign(e,t,Mn({meta:n},r))}(e,t)))}(e,t),je.tracesQueue.push(e),wt(Pn)&&(Pn(je.tracesQueue),je.tracesQueue=[]))}function qn(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,"string");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}function Fn(){return Fn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Fn.apply(this,arguments)}function zn(){return void 0!==typeof window&&"performance"in window&&"mark"in performance&&"getEntriesByName"in performance}function Kn(e,t){return`perf_${e}${null!=t&&t.label?`_${t.label}`:""}`}function $n(e,t,n){return`${Kn(e,n)}__${t}`}let Qn={};function Wn(e,t,n){if(!zn())return;const r=$n(e,t,n);if(performance.mark(r),"end"===t){const t=Kn(e,n);!function(e,t,n){try{performance.measure(e,t,n)}catch(e){A.onError(e)}}(t,$n(e,"start",n),r);const i=performance.getEntriesByName(t).pop();i&&Ht(Fn({metricName:e,metricType:d.distribution,value:i.duration},null!=n&&n.tags?{tags:n.tags}:{}))}}function Hn(e,t){if(!zn())return;const n=$n(e,"start",t);Qn[n]||(Wn(e,"start",t),Qn[n]=!0)}function Vn(e,t){const n=$n(e,"start",t),r=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(Qn,[n].map(qn));Qn=r}function Jn(e,t){if(!zn())return;const n=$n(e,"start",t);Qn[n]&&(Wn(e,"end",t),Vn(e,t))}function Xn(){zn()&&(performance.clearMarks(),Qn={})}var Gn=n(784);function Zn(){return Zn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Zn.apply(this,arguments)}function Yn(e,t,n=l.low){const r=(0,Gn.useRef)(t);return(0,Gn.useEffect)((()=>{r.current=t}),[t]),(0,Gn.useCallback)((t=>{$t(e,Zn({},r.current,t),n)}),[e,n])}function er(){return er=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},er.apply(this,arguments)}function tr(e,t,n=l.low){(0,Gn.useEffect)((()=>{const r=er({},t,{action:f.render});$t(e,r,n)}),[])}function nr(){return nr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nr.apply(this,arguments)}const rr=function(e,t){return{markStartPerf:(0,Gn.useCallback)((()=>Hn(e,t)),[e,t]),markEndPerf:(0,Gn.useCallback)((n=>Jn(e,nr({},t,n))),[e,t])}};function ir(){return ir=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ir.apply(this,arguments)}function ar(){return Object.entries(ir({},Se,zt(),{sessionUUID:oe.sessionUUID,userId:oe.userId})).reduce(((e,t)=>{return null!=(n=t[1])&&""!==n?ir({},e,{[t[0]]:t[1]}):e;var n}),{})}async function or(){return new Promise((e=>{Mt(vt(je.eventsQueue)),Qt(bt(je.metricsQueue),!0),Pn(je.tracesQueue,!0),Ne({eventsQueue:[],metricsQueue:[],tracesQueue:[]}),e()}))}function sr(){return{"X-CB-Device-ID":H.deviceId||"unknown","X-CB-Is-Logged-In":H.userId?"true":"false","X-CB-Pagekey":re.pageKey||"unknown","X-CB-UJS":(e=Se.ujs,void 0===e||0===e.length?"":e.join(",")),"X-CB-Platform":A.platform||"unknown","X-CB-Project-Name":A.projectName||"unknown","X-CB-Session-UUID":oe.sessionUUID||"unknown","X-CB-Version-Name":A.version?String(A.version):"unknown"};var e}})(),r})()}));',Ks=()=>new Promise((e,t)=>{if(typeof window>"u"){t(new Error("Telemetry is not supported in non-browser environments"));return}if(window.ClientAnalytics)return e();try{const n=document.createElement("script");n.textContent=Hs,n.type="text/javascript",document.head.appendChild(n),Vs(),document.head.removeChild(n),e()}catch{console.error("Failed to execute inlined telemetry script"),t()}}),Vs=()=>{if(typeof window<"u"){const e=b.config.get().deviceId??(crypto==null?void 0:crypto.randomUUID())??"";if(window.ClientAnalytics){const{init:t,identify:n,PlatformName:r}=window.ClientAnalytics;t({isProd:!0,amplitudeApiKey:"c66737ad47ec354ced777935b0af822e",platform:r.web,projectName:"base_account_sdk",showDebugLogging:!1,version:"1.0.0",apiEndpoint:"https://cca-lite.coinbase.com"}),n({deviceId:e}),b.config.set({deviceId:e})}}},qs="0xba5ed110efdba3d005bfc882d75358acbbb85842",ce=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"owner",type:"bytes"}],name:"AlreadyOwner",type:"error"},{inputs:[],name:"Initialized",type:"error"},{inputs:[{name:"owner",type:"bytes"}],name:"InvalidEthereumAddressOwner",type:"error"},{inputs:[{name:"key",type:"uint256"}],name:"InvalidNonceKey",type:"error"},{inputs:[{name:"owner",type:"bytes"}],name:"InvalidOwnerBytesLength",type:"error"},{inputs:[],name:"LastOwner",type:"error"},{inputs:[{name:"index",type:"uint256"}],name:"NoOwnerAtIndex",type:"error"},{inputs:[{name:"ownersRemaining",type:"uint256"}],name:"NotLastOwner",type:"error"},{inputs:[{name:"selector",type:"bytes4"}],name:"SelectorNotAllowed",type:"error"},{inputs:[],name:"Unauthorized",type:"error"},{inputs:[],name:"UnauthorizedCallContext",type:"error"},{inputs:[],name:"UpgradeFailed",type:"error"},{inputs:[{name:"index",type:"uint256"},{name:"expectedOwner",type:"bytes"},{name:"actualOwner",type:"bytes"}],name:"WrongOwnerAtIndex",type:"error"},{anonymous:!1,inputs:[{indexed:!0,name:"index",type:"uint256"},{indexed:!1,name:"owner",type:"bytes"}],name:"AddOwner",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"index",type:"uint256"},{indexed:!1,name:"owner",type:"bytes"}],name:"RemoveOwner",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"implementation",type:"address"}],name:"Upgraded",type:"event"},{stateMutability:"payable",type:"fallback"},{inputs:[],name:"REPLAYABLE_NONCE_KEY",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"addOwnerAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"x",type:"bytes32"},{name:"y",type:"bytes32"}],name:"addOwnerPublicKey",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"functionSelector",type:"bytes4"}],name:"canSkipChainIdValidation",outputs:[{name:"",type:"bool"}],stateMutability:"pure",type:"function"},{inputs:[],name:"domainSeparator",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"entryPoint",outputs:[{name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{name:"target",type:"address"},{name:"value",type:"uint256"},{name:"data",type:"bytes"}],name:"execute",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{name:"target",type:"address"},{name:"value",type:"uint256"},{name:"data",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"executeBatch",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"calls",type:"bytes[]"}],name:"executeWithoutChainIdValidation",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"}],name:"getUserOpHashWithoutChainId",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"implementation",outputs:[{name:"$",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{name:"owners",type:"bytes[]"}],name:"initialize",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"account",type:"address"}],name:"isOwnerAddress",outputs:[{name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"bytes"}],name:"isOwnerBytes",outputs:[{name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{name:"x",type:"bytes32"},{name:"y",type:"bytes32"}],name:"isOwnerPublicKey",outputs:[{name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],name:"isValidSignature",outputs:[{name:"result",type:"bytes4"}],stateMutability:"view",type:"function"},{inputs:[],name:"nextOwnerIndex",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"index",type:"uint256"}],name:"ownerAtIndex",outputs:[{name:"",type:"bytes"}],stateMutability:"view",type:"function"},{inputs:[],name:"ownerCount",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"proxiableUUID",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{name:"index",type:"uint256"},{name:"owner",type:"bytes"}],name:"removeLastOwner",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"index",type:"uint256"},{name:"owner",type:"bytes"}],name:"removeOwnerAtIndex",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"removedOwnersCount",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"hash",type:"bytes32"}],name:"replaySafeHash",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{name:"newImplementation",type:"address"},{name:"data",type:"bytes"}],name:"upgradeToAndCall",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"},{name:"userOpHash",type:"bytes32"},{name:"missingAccountFunds",type:"uint256"}],name:"validateUserOp",outputs:[{name:"validationData",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}],sa=[{inputs:[{name:"implementation_",type:"address"}],stateMutability:"payable",type:"constructor"},{inputs:[],name:"OwnerRequired",type:"error"},{inputs:[{name:"owners",type:"bytes[]"},{name:"nonce",type:"uint256"}],name:"createAccount",outputs:[{name:"account",type:"address"}],stateMutability:"payable",type:"function"},{inputs:[{name:"owners",type:"bytes[]"},{name:"nonce",type:"uint256"}],name:"getAddress",outputs:[{name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"implementation",outputs:[{name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"initCodeHash",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"}],V={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,unsupportedChain:4902}},rn={"-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."},4902:{standard:"EIP-3085",message:"Unrecognized chain ID."}},oa="Unspecified error message.",Zs="Unspecified server error.";function Mn(e,t=oa){if(e&&Number.isInteger(e)){const n=e.toString();if(an(rn,n))return rn[n].message;if(ca(e))return Zs}return t}function Ws(e){if(!Number.isInteger(e))return!1;const t=e.toString();return!!(rn[t]||ca(e))}function Js(e,{shouldIncludeStack:t=!1}={}){const n={};if(e&&typeof e=="object"&&!Array.isArray(e)&&an(e,"code")&&Ws(e.code)){const r=e;n.code=r.code,r.message&&typeof r.message=="string"?(n.message=r.message,an(r,"data")&&(n.data=r.data)):(n.message=Mn(n.code),n.data={originalError:fr(e)})}else n.code=V.rpc.internal,n.message=mr(e,"message")?e.message:oa,n.data={originalError:fr(e)};return t&&(n.stack=mr(e,"stack")?e.stack:void 0),n}function ca(e){return e>=-32099&&e<=-32e3}function fr(e){return e&&typeof e=="object"&&!Array.isArray(e)?Object.assign({},e):e}function an(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function mr(e,t){return typeof e=="object"&&e!==null&&t in e&&typeof e[t]=="string"}const v={rpc:{parse:e=>ne(V.rpc.parse,e),invalidRequest:e=>ne(V.rpc.invalidRequest,e),invalidParams:e=>ne(V.rpc.invalidParams,e),methodNotFound:e=>ne(V.rpc.methodNotFound,e),internal:e=>ne(V.rpc.internal,e),server:e=>{if(!e||typeof e!="object"||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 ne(t,e)},invalidInput:e=>ne(V.rpc.invalidInput,e),resourceNotFound:e=>ne(V.rpc.resourceNotFound,e),resourceUnavailable:e=>ne(V.rpc.resourceUnavailable,e),transactionRejected:e=>ne(V.rpc.transactionRejected,e),methodNotSupported:e=>ne(V.rpc.methodNotSupported,e),limitExceeded:e=>ne(V.rpc.limitExceeded,e)},provider:{userRejectedRequest:e=>De(V.provider.userRejectedRequest,e),unauthorized:e=>De(V.provider.unauthorized,e),unsupportedMethod:e=>De(V.provider.unsupportedMethod,e),disconnected:e=>De(V.provider.disconnected,e),chainDisconnected:e=>De(V.provider.chainDisconnected,e),unsupportedChain:e=>De(V.provider.unsupportedChain,e),custom:e=>{if(!e||typeof e!="object"||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||typeof n!="string")throw new Error('"message" must be a nonempty string');return new da(t,n,r)}}};function ne(e,t){const[n,r]=ua(t);return new Ln(e,n||Mn(e),r)}function De(e,t){const[n,r]=ua(t);return new da(e,n||Mn(e),r)}function ua(e){if(e){if(typeof e=="string")return[e];if(typeof e=="object"&&!Array.isArray(e)){const{message:t,data:n}=e;if(t&&typeof t!="string")throw new Error("Must specify string message.");return[t||void 0,n]}}return[]}class Ln extends Error{constructor(n,r,a){if(!Number.isInteger(n))throw new Error('"code" must be an integer.');if(!r||typeof r!="string")throw new Error('"message" must be a nonempty string.');super(r);D(this,"code");D(this,"data");this.code=n,a!==void 0&&(this.data=a)}}class da extends Ln{constructor(t,n,r){if(!Ys(t))throw new Error('"code" must be an integer such that: 1000 <= code <= 4999');super(t,n,r)}}function Ys(e){return Number.isInteger(e)&&e>=1e3&&e<=4999}function yr(e){return typeof e=="object"&&e!==null&&"code"in e&&"data"in e&&e.code===-32090&&typeof e.data=="object"&&e.data!==null&&"type"in e.data&&e.data.type==="INSUFFICIENT_FUNDS"}function la(e){return typeof e=="object"&&e!==null&&"details"in e}function Qs(e){try{const t=JSON.parse(e.details);return new Ln(t.code,t.message,t.data)}catch{return null}}function ie(e,t,n){if(e==null)throw t??v.rpc.invalidParams({message:"value must be present",data:e})}function xe(e,t){if(!Array.isArray(e))throw v.rpc.invalidParams({message:t??"value must be an array",data:e})}const Xs=`Base Account SDK requires the Cross-Origin-Opener-Policy header to not be set to 'same-origin'. This is to ensure that the SDK can communicate with the Base Account app.
|
|
2
2
|
|
|
3
3
|
Please see https://docs.base.org/smart-wallet/quickstart#cross-origin-opener-policy for more information.`,_s=()=>{let e;return{getCrossOriginOpenerPolicy:()=>e===void 0?"undefined":e,checkCrossOriginOpenerPolicy:async()=>{if(typeof window>"u"){e="non-browser-env";return}try{const t=`${window.location.origin}${window.location.pathname}`,n=await fetch(t,{method:"HEAD"});if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);e=n.headers.get("Cross-Origin-Opener-Policy")??"null",e==="same-origin"&&console.error(Xs)}catch(t){console.error("Error checking Cross-Origin-Opener-Policy:",t.message),e="error"}}}},{checkCrossOriginOpenerPolicy:$s,getCrossOriginOpenerPolicy:eo}=_s();function to(e){if(e){if(e.attribution&&e.attribution.auto!==void 0&&e.attribution.dataSuffix!==void 0)throw new Error("Attribution cannot contain both auto and dataSuffix properties");if(e.telemetry&&typeof e.telemetry!="boolean")throw new Error("Telemetry must be a boolean")}}function hr(e){if(typeof e!="function")throw new Error("toAccount is not a function")}var M;(function(e){e.unknown="unknown",e.banner="banner",e.button="button",e.card="card",e.chart="chart",e.content_script="content_script",e.dropdown="dropdown",e.link="link",e.page="page",e.modal="modal",e.table="table",e.search_bar="search_bar",e.service_worker="service_worker",e.text="text",e.text_input="text_input",e.tray="tray",e.checkbox="checkbox",e.icon="icon"})(M||(M={}));var L;(function(e){e.unknown="unknown",e.blur="blur",e.click="click",e.change="change",e.dismiss="dismiss",e.focus="focus",e.hover="hover",e.select="select",e.measurement="measurement",e.move="move",e.process="process",e.render="render",e.scroll="scroll",e.view="view",e.search="search",e.keyPress="keyPress",e.error="error"})(L||(L={}));var F;(function(e){e.low="low",e.high="high"})(F||(F={}));function G(e,t,n){var r,a;typeof window<"u"&&window.ClientAnalytics&&((a=window.ClientAnalytics)==null||a.logEvent(e,{...t,sdkVersion:qe,sdkName:Bt,appName:((r=b.config.get().metadata)==null?void 0:r.appName)??"",appOrigin:window.location.origin},n))}const no=()=>{G("communicator.popup_setup.started",{action:L.unknown,componentType:M.unknown},F.high)},ro=()=>{G("communicator.popup_setup.completed",{action:L.unknown,componentType:M.unknown},F.high)},ao=()=>{G("communicator.popup_unload.received",{action:L.unknown,componentType:M.unknown},F.high)},Fn=({dialogContext:e})=>{G(`dialog.${e}.shown`,{action:L.render,componentType:M.modal,dialogContext:e},F.high)},pa=({dialogContext:e})=>{G(`dialog.${e}.dismissed`,{action:L.dismiss,componentType:M.modal,dialogContext:e},F.high)},Re=({dialogContext:e,dialogAction:t})=>{G(`dialog.${e}.action_clicked`,{action:L.click,componentType:M.button,dialogContext:e,dialogAction:t},F.high)},io=`
|
|
4
4
|
@font-face {
|
|
@@ -9,8 +9,8 @@ Please see https://docs.base.org/smart-wallet/quickstart#cross-origin-opener-pol
|
|
|
9
9
|
font-style: normal;
|
|
10
10
|
font-display: swap;
|
|
11
11
|
}
|
|
12
|
-
`,gr="BaseSans-Regular";function so(){if(document.head.querySelector(`style[base-sdk-font="${gr}"]`))return;const t=document.createElement("style");t.setAttribute("base-sdk-font",gr),t.textContent=io,document.head.appendChild(t)}var oo=0;function K(e,t,n,r,a,i){t||(t={});var s,c,o=t;"ref"in t&&(s=t.ref,delete t.ref);var u={type:e,props:o,key:n,ref:s,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:--oo,__i:-1,__u:0,__source:a,__self:i};if(typeof e=="function"&&(s=e.defaultProps))for(c in s)o[c]===void 0&&(o[c]=s[c]);return Wn.vnode&&Wn.vnode(u),u}async function co(e){return uo(e)}function uo(e,t=4){return`${e.slice(0,2+t)}...${e.slice(-t)}`}const lo="#FFF",po="#0000FF",fo=({fill:e})=>K("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:K("path",{d:"M0 2.014C0 1.58105 0 1.36457 0.0815779 1.19805C0.159686 1.03861 0.288611 0.909686 0.448049 0.831578C0.61457 0.75 0.831047 0.75 1.264 0.75H14.736C15.169 0.75 15.3854 0.75 15.552 0.831578C15.7114 0.909686 15.8403 1.03861 15.9184 1.19805C16 1.36457 16 1.58105 16 2.014V15.486C16 15.919 16 16.1354 15.9184 16.302C15.8403 16.4614 15.7114 16.5903 15.552 16.6684C15.3854 16.75 15.169 16.75 14.736 16.75H1.264C0.831047 16.75 0.61457 16.75 0.448049 16.6684C0.288611 16.5903 0.159686 16.4614 0.0815779 16.302C0 16.1354 0 15.919 0 15.486V2.014Z",fill:e==="blue"?po:lo})}),mo='.-base-acc-sdk-css-reset{-webkit-font-smoothing:antialiased;pointer-events:auto !important}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2147483647}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-container *{user-select:none;box-sizing:border-box}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:20px}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-backdrop{align-items:flex-end;justify-content:stretch;padding:0}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog{position:relative;z-index:2147483648}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog{width:100%}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);width:380px;max-height:90vh;overflow:hidden;transform:scale(0.95);opacity:0;transition:all .2s ease-in-out}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance{touch-action:pan-y;user-select:none}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-hidden{transform:scale(0.9);opacity:0}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-hidden{transform:translateY(100%)}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance:not(.-base-acc-sdk-dialog-instance-hidden){transform:scale(1);opacity:1}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance:not(.-base-acc-sdk-dialog-instance-hidden){transform:translateY(0)}}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance{width:100%;max-width:100%;border-radius:20px 20px 0 0;box-shadow:0 -10px 25px rgba(0,0,0,.15);max-height:80vh;transform:translateY(0)}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-hidden{transform:translateY(100%);opacity:1}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance:not(.-base-acc-sdk-dialog-instance-hidden){transform:translateY(0);opacity:1}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 0 20px}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header{padding:16px 20px 12px 20px}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-icon-and-title{display:flex;align-items:center;gap:8px}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-icon-and-title-title{font-family:"BaseSans-Regular",sans-serif;font-size:14px;font-weight:400;color:#5b616e}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-cblogo{width:32px;height:32px}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;cursor:pointer;border-radius:6px;transition:background-color .2s}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close:hover{background-color:#f5f7f8}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close-icon{width:14px;height:14px}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close-icon{display:none}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content{padding:20px 20px 16px 20px;font-family:"BaseSans-Regular",sans-serif}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content{padding:8px 20px 12px 20px}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content-title{font-size:20px;font-weight:600;line-height:28px;color:#0a0b0d;margin-bottom:10px}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content-message{font-size:16px;font-weight:400;line-height:24px;color:#5b616e;margin-bottom:0}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-actions{display:flex;padding:16px 20px 20px 20px;flex-direction:column}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-actions{padding:16px 20px calc(20px + env(safe-area-inset-bottom)) 20px;gap:6px}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button{font-family:"BaseSans-Regular",sans-serif;font-size:16px;font-weight:500;line-height:24px;border:none;border-radius:12px;padding:16px 24px;cursor:pointer;transition:all .2s ease-in-out;width:100%;margin:4px 0}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button:disabled{opacity:.5;cursor:not-allowed}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-primary{background-color:#0a0b0d;color:#fff}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-primary:hover:not(:disabled){background-color:#1c1e20}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-primary:active:not(:disabled){background-color:#2a2d31}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-secondary{background-color:#eef0f3;color:#0a0b0d}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-secondary:hover:not(:disabled){background-color:#e1e4e8}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-secondary:active:not(:disabled){background-color:#d4d8dd}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-handle-bar{position:absolute;top:-16px;left:50%;transform:translateX(-50%);width:64px;height:4px;background-color:#d1d5db;border-radius:2px;opacity:0;animation:handleBarFadeIn .2s ease-in-out .2s forwards}@keyframes handleBarFadeIn{from{opacity:0}to{opacity:1}}',yo="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEzIDFMMSAxM20wLTEyTDEzIDEzIiBzdHJva2U9IiM5Q0EzQUYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+";function fa(){return window.innerWidth<=600&&window.innerHeight>window.innerWidth}const ho=()=>{const[e,t]=Te(!1);return qt(()=>{const n=()=>{t(fa())};return n(),window.addEventListener("resize",n),window.addEventListener("orientationchange",n),()=>{window.removeEventListener("resize",n),window.removeEventListener("orientationchange",n)}},[]),e?K("div",{class:"-base-acc-sdk-dialog-handle-bar"}):null};class go{constructor(){D(this,"items",new Map);D(this,"nextItemKey",0);D(this,"root",null)}attach(t){this.root=document.createElement("div"),this.root.className="-base-acc-sdk-dialog-root",t.appendChild(this.root),this.render()}presentItem(t){const n=this.nextItemKey++;this.items.set(n,t),this.render()}clear(){this.items.clear(),this.root&&Jn(null,this.root)}render(){this.root&&Jn(K("div",{children:K(bo,{children:Array.from(this.items.entries()).map(([t,n])=>Qa(wo,{...n,key:t,handleClose:()=>{var r;this.clear(),(r=n.onClose)==null||r.call(n)}}))})}),this.root)}}const bo=e=>{const[t,n]=Te(0),[r,a]=Te(!1),[i,s]=Te(0),c=d=>{if(!fa())return;const h=d.touches[0];s(h.clientY),a(!0)},o=d=>{if(!r)return;const m=d.touches[0].clientY-i;m>0&&(n(m),d.preventDefault())},u=()=>{if(r)if(a(!1),t>100){const d=document.querySelector(".-base-acc-sdk-dialog-instance-header-close");d&&d.click()}else n(0)};return K("div",{class:Zt("-base-acc-sdk-dialog-container"),children:[K("style",{children:mo}),K("div",{class:"-base-acc-sdk-dialog-backdrop",onTouchStart:c,onTouchMove:o,onTouchEnd:u,children:K("div",{class:"-base-acc-sdk-dialog",style:{transform:`translateY(${t}px)`,transition:r?"none":"transform 0.2s ease-out"},children:[K(ho,{}),e.children]})})]})},wo=({title:e,message:t,actionItems:n,handleClose:r})=>{const[a,i]=Te(!0),[s,c]=Te(!0),[o,u]=Te(null);qt(()=>{const m=window.setTimeout(()=>{i(!1)},1);return()=>{window.clearTimeout(m)}},[]),qt(()=>{(async()=>{var x;const l=(x=b.account.get().accounts)==null?void 0:x[0];if(l){const f=await co(l);u(f)}c(!1)})()},[]);const d=Xa(()=>o?`Signed in as ${o}`:"Base Account",[o]),h=!s;return K("div",{class:Zt("-base-acc-sdk-dialog-instance",a&&"-base-acc-sdk-dialog-instance-hidden"),children:[K("div",{class:"-base-acc-sdk-dialog-instance-header",children:[K("div",{class:"-base-acc-sdk-dialog-instance-header-icon-and-title",children:[K(fo,{fill:"blue"}),h&&K("div",{class:"-base-acc-sdk-dialog-instance-header-icon-and-title-title",children:d})]}),K("div",{class:"-base-acc-sdk-dialog-instance-header-close",onClick:r,children:K("img",{src:yo,class:"-base-acc-sdk-dialog-instance-header-close-icon"})})]}),K("div",{class:"-base-acc-sdk-dialog-instance-content",children:[K("div",{class:"-base-acc-sdk-dialog-instance-content-title",children:e}),K("div",{class:"-base-acc-sdk-dialog-instance-content-message",children:t})]}),n&&n.length>0&&K("div",{class:"-base-acc-sdk-dialog-instance-actions",children:n.map((m,l)=>K("button",{class:Zt("-base-acc-sdk-dialog-instance-button",m.variant==="primary"&&"-base-acc-sdk-dialog-instance-button-primary",m.variant==="secondary"&&"-base-acc-sdk-dialog-instance-button-secondary"),onClick:m.onClick,children:m.text},l))})]})};let ct=null;function Gn(){if(!ct){const e=document.createElement("div");e.className="-base-acc-sdk-css-reset",document.body.appendChild(e),ct=new go,ct.attach(e)}return so(),ct}const br=420,wr=700,vo="{app} wants to continue in Base Account",xo="This action requires your permission to open a new window.";function Eo(e){const t=(window.innerWidth-br)/2+window.screenX,n=(window.innerHeight-wr)/2+window.screenY;ko(e);function r(){const i=`wallet_${crypto.randomUUID()}`,s=window.open(e,i,`width=${br}, height=${wr}, left=${t}, top=${n}`);return s==null||s.focus(),s||null}const a=r();return a?Promise.resolve(a):Ao(r)}function So(e){e&&!e.closed&&e.close()}function ko(e){const t={sdkName:Bt,sdkVersion:qe,origin:window.location.origin,coop:eo()};for(const[n,r]of Object.entries(t))e.searchParams.has(n)||e.searchParams.append(n,r.toString())}function Ao(e){var r;const t=((r=b.config.get().metadata)==null?void 0:r.appName)??"App",n=Gn();return new Promise((a,i)=>{Fn({dialogContext:"popup_blocked"}),n.presentItem({title:vo.replace("{app}",t),message:xo,onClose:()=>{Re({dialogContext:"popup_blocked",dialogAction:"cancel"}),i(v.rpc.internal("Popup window was blocked"))},actionItems:[{text:"Try again",variant:"primary",onClick:()=>{Re({dialogContext:"popup_blocked",dialogAction:"confirm"});const s=e();s?a(s):i(v.rpc.internal("Popup window was blocked")),n.clear()}},{text:"Cancel",variant:"secondary",onClick:()=>{Re({dialogContext:"popup_blocked",dialogAction:"cancel"}),i(v.rpc.internal("Popup window was blocked")),n.clear()}}]})})}class Po{constructor({url:t=Ps,metadata:n,preference:r}){D(this,"metadata");D(this,"preference");D(this,"url");D(this,"popup",null);D(this,"listeners",new Map);D(this,"postMessage",async t=>{(await this.waitForPopupLoaded()).postMessage(t,this.url.origin)});D(this,"postRequestAndWaitForResponse",async t=>{const n=this.onMessage(({requestId:r})=>r===t.id);return this.postMessage(t),await n});D(this,"onMessage",async t=>new Promise((n,r)=>{const a=i=>{if(i.origin!==this.url.origin)return;const s=i.data;t(s)&&(n(s),window.removeEventListener("message",a),this.listeners.delete(a))};window.addEventListener("message",a),this.listeners.set(a,{reject:r})}));D(this,"disconnect",()=>{So(this.popup),this.popup=null,this.listeners.forEach(({reject:t},n)=>{t(v.provider.userRejectedRequest("Request rejected")),window.removeEventListener("message",n)}),this.listeners.clear()});D(this,"waitForPopupLoaded",async()=>this.popup&&!this.popup.closed?(this.popup.focus(),this.popup):(no(),this.popup=await Eo(this.url),this.onMessage(({event:t})=>t==="PopupUnload").then(()=>{this.disconnect(),ao()}).catch(()=>{}),this.onMessage(({event:t})=>t==="PopupLoaded").then(t=>{this.postMessage({requestId:t.id,data:{version:qe,sdkName:Bt,metadata:this.metadata,preference:this.preference,location:window.location.toString()}})}).then(()=>{if(!this.popup)throw v.rpc.internal();return ro(),this.popup})));this.url=new URL(t),this.metadata=n,this.preference=r}}function Oo(e){const t=Js(Co(e),{shouldIncludeStack:!0}),n=new URL("https://docs.cloud.coinbase.com/wallet-sdk/docs/errors");return n.searchParams.set("version",qe),n.searchParams.set("code",t.code.toString()),n.searchParams.set("message",t.message),{...t,docUrl:n.href}}function Io(e){return e.errorMessage!==void 0}function Co(e){if(typeof e=="string")return{message:e,code:V.rpc.internal};if(Io(e)){const t=e.errorMessage,n=e.errorCode??(t.match(/(denied|rejected)/i)?V.provider.userRejectedRequest:void 0);return{...e,message:t,code:n,data:{method:e.method}}}return e}class To extends _a{}const Bo=({method:e,correlationId:t})=>{G("provider.request.started",{action:L.unknown,componentType:M.unknown,method:e,signerType:"base-account",correlationId:t},F.high)},Ro=({method:e,correlationId:t,errorMessage:n})=>{G("provider.request.error",{action:L.error,componentType:M.unknown,method:e,signerType:"base-account",correlationId:t,errorMessage:n},F.high)},No=({method:e,correlationId:t})=>{G("provider.request.responded",{action:L.unknown,componentType:M.unknown,method:e,signerType:"base-account",correlationId:t},F.high)},Uo=({errorMessage:e})=>{G("provider.getInjectedProvider.error",{action:L.error,componentType:M.unknown,method:"getInjectedProvider",signerType:"base-account",errorMessage:e},F.high)},Ie=e=>"message"in e&&typeof e.message=="string"?e.message:"";function jo(){return e=>e}const bt=jo();function Ht(e){return Math.floor(e)}const Do=/^[0-9]*$/,ma=/^[a-f0-9]*$/;function Mo(e){return[...e].map(t=>t.toString(16).padStart(2,"0")).join("")}function Lo(e){return new Uint8Array(e.match(/.{1,2}/g).map(t=>Number.parseInt(t,16)))}function ya(e){return bt(`0x${BigInt(e).toString(16)}`)}function Fo(e){return e.startsWith("0x")||e.startsWith("0X")}function ha(e){return Fo(e)?e.slice(2):e}function Go(e){if(typeof e!="string")return!1;const t=ha(e).toLowerCase();return ma.test(t)}function sn(e,t=!1){if(typeof e=="string"){const n=ha(e).toLowerCase();if(ma.test(n))return bt(t?`0x${n}`:n)}throw v.rpc.invalidParams(`"${String(e)}" is not a hexadecimal string`)}function zo(e,t=!1){let n=sn(e,!1);return n.length%2===1&&(n=bt(`0${n}`)),t?bt(`0x${n}`):n}function Ho(e){if(typeof e=="number"&&Number.isInteger(e))return Ht(e);if(typeof e=="string"){if(Do.test(e))return Ht(Number(e));if(Go(e))return Ht(Number(BigInt(zo(e,!0))))}throw v.rpc.invalidParams(`Not an integer: ${String(e)}`)}const Ko=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.handshake.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Vo=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_signer.handshake.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},qo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.handshake.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Zo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.request.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Wo=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_signer.request.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},Jo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.request.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Yo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.request.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Qo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.request.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Xo=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_sub_account.request.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},_o=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.add_owner.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},$o=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.add_owner.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},ec=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_sub_account.add_owner.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},tc=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.insufficient_balance.error_handling.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},nc=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.insufficient_balance.error_handling.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},rc=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_sub_account.insufficient_balance.error_handling.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},ac=[{inputs:[{name:"preOpGas",type:"uint256"},{name:"paid",type:"uint256"},{name:"validAfter",type:"uint48"},{name:"validUntil",type:"uint48"},{name:"targetSuccess",type:"bool"},{name:"targetResult",type:"bytes"}],name:"ExecutionResult",type:"error"},{inputs:[{name:"opIndex",type:"uint256"},{name:"reason",type:"string"}],name:"FailedOp",type:"error"},{inputs:[{name:"sender",type:"address"}],name:"SenderAddressResult",type:"error"},{inputs:[{name:"aggregator",type:"address"}],name:"SignatureValidationFailed",type:"error"},{inputs:[{components:[{name:"preOpGas",type:"uint256"},{name:"prefund",type:"uint256"},{name:"sigFailed",type:"bool"},{name:"validAfter",type:"uint48"},{name:"validUntil",type:"uint48"},{name:"paymasterContext",type:"bytes"}],name:"returnInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"senderInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"factoryInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"paymasterInfo",type:"tuple"}],name:"ValidationResult",type:"error"},{inputs:[{components:[{name:"preOpGas",type:"uint256"},{name:"prefund",type:"uint256"},{name:"sigFailed",type:"bool"},{name:"validAfter",type:"uint48"},{name:"validUntil",type:"uint48"},{name:"paymasterContext",type:"bytes"}],name:"returnInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"senderInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"factoryInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"paymasterInfo",type:"tuple"},{components:[{name:"aggregator",type:"address"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"stakeInfo",type:"tuple"}],name:"aggregatorInfo",type:"tuple"}],name:"ValidationResultWithAggregation",type:"error"},{anonymous:!1,inputs:[{indexed:!0,name:"userOpHash",type:"bytes32"},{indexed:!0,name:"sender",type:"address"},{indexed:!1,name:"factory",type:"address"},{indexed:!1,name:"paymaster",type:"address"}],name:"AccountDeployed",type:"event"},{anonymous:!1,inputs:[],name:"BeforeExecution",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"totalDeposit",type:"uint256"}],name:"Deposited",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"aggregator",type:"address"}],name:"SignatureAggregatorChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"totalStaked",type:"uint256"},{indexed:!1,name:"unstakeDelaySec",type:"uint256"}],name:"StakeLocked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"withdrawTime",type:"uint256"}],name:"StakeUnlocked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"withdrawAddress",type:"address"},{indexed:!1,name:"amount",type:"uint256"}],name:"StakeWithdrawn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"userOpHash",type:"bytes32"},{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"paymaster",type:"address"},{indexed:!1,name:"nonce",type:"uint256"},{indexed:!1,name:"success",type:"bool"},{indexed:!1,name:"actualGasCost",type:"uint256"},{indexed:!1,name:"actualGasUsed",type:"uint256"}],name:"UserOperationEvent",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"userOpHash",type:"bytes32"},{indexed:!0,name:"sender",type:"address"},{indexed:!1,name:"nonce",type:"uint256"},{indexed:!1,name:"revertReason",type:"bytes"}],name:"UserOperationRevertReason",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"withdrawAddress",type:"address"},{indexed:!1,name:"amount",type:"uint256"}],name:"Withdrawn",type:"event"},{inputs:[],name:"SIG_VALIDATION_FAILED",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"initCode",type:"bytes"},{name:"sender",type:"address"},{name:"paymasterAndData",type:"bytes"}],name:"_validateSenderAndPaymaster",outputs:[],stateMutability:"view",type:"function"},{inputs:[{name:"unstakeDelaySec",type:"uint32"}],name:"addStake",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"account",type:"address"}],name:"balanceOf",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"address"}],name:"depositTo",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"",type:"address"}],name:"deposits",outputs:[{name:"deposit",type:"uint112"},{name:"staked",type:"bool"},{name:"stake",type:"uint112"},{name:"unstakeDelaySec",type:"uint32"},{name:"withdrawTime",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"address"}],name:"getDepositInfo",outputs:[{components:[{name:"deposit",type:"uint112"},{name:"staked",type:"bool"},{name:"stake",type:"uint112"},{name:"unstakeDelaySec",type:"uint32"},{name:"withdrawTime",type:"uint48"}],name:"info",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{name:"sender",type:"address"},{name:"key",type:"uint192"}],name:"getNonce",outputs:[{name:"nonce",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"initCode",type:"bytes"}],name:"getSenderAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"}],name:"getUserOpHash",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{components:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOps",type:"tuple[]"},{name:"aggregator",type:"address"},{name:"signature",type:"bytes"}],name:"opsPerAggregator",type:"tuple[]"},{name:"beneficiary",type:"address"}],name:"handleAggregatedOps",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"ops",type:"tuple[]"},{name:"beneficiary",type:"address"}],name:"handleOps",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"key",type:"uint192"}],name:"incrementNonce",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"callData",type:"bytes"},{components:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"paymaster",type:"address"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"}],name:"mUserOp",type:"tuple"},{name:"userOpHash",type:"bytes32"},{name:"prefund",type:"uint256"},{name:"contextOffset",type:"uint256"},{name:"preOpGas",type:"uint256"}],name:"opInfo",type:"tuple"},{name:"context",type:"bytes"}],name:"innerHandleOp",outputs:[{name:"actualGasCost",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"",type:"address"},{name:"",type:"uint192"}],name:"nonceSequenceNumber",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"op",type:"tuple"},{name:"target",type:"address"},{name:"targetCallData",type:"bytes"}],name:"simulateHandleOp",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"}],name:"simulateValidation",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unlockStake",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"withdrawAddress",type:"address"}],name:"withdrawStake",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"withdrawAddress",type:"address"},{name:"withdrawAmount",type:"uint256"}],name:"withdrawTo",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}];function ga(e){const{authorization:t,factory:n,factoryData:r}=e;if(n==="0x7702"||n==="0x7702000000000000000000000000000000000000"){if(!t)return"0x7702000000000000000000000000000000000000";const a=t.address;return Fe([a,r??"0x"])}return n?Fe([n,r??"0x"]):"0x"}function ba(e){const{callGasLimit:t,callData:n,maxPriorityFeePerGas:r,maxFeePerGas:a,paymaster:i,paymasterData:s,paymasterPostOpGasLimit:c,paymasterVerificationGasLimit:o,sender:u,signature:d="0x",verificationGasLimit:h}=e,m=Fe([ue(U(h||0n),{size:16}),ue(U(t||0n),{size:16})]),l=ga(e),x=Fe([ue(U(r||0n),{size:16}),ue(U(a||0n),{size:16})]),f=e.nonce??0n,p=i?Fe([i,ue(U(o||0n),{size:16}),ue(U(c||0n),{size:16}),s||"0x"]):"0x",g=e.preVerificationGas??0n;return{accountGasLimits:m,callData:n,initCode:l,gasFees:x,nonce:f,paymasterAndData:p,preVerificationGas:g,sender:u,signature:d}}const ic={PackedUserOperation:[{type:"address",name:"sender"},{type:"uint256",name:"nonce"},{type:"bytes",name:"initCode"},{type:"bytes",name:"callData"},{type:"bytes32",name:"accountGasLimits"},{type:"uint256",name:"preVerificationGas"},{type:"bytes32",name:"gasFees"},{type:"bytes",name:"paymasterAndData"}]};function sc(e){const{chainId:t,entryPointAddress:n,userOperation:r}=e,a=ba(r);return{types:ic,primaryType:"PackedUserOperation",domain:{name:"ERC4337",version:"1",chainId:t,verifyingContract:n},message:a}}function oc(e){const{chainId:t,entryPointAddress:n,entryPointVersion:r}=e,a=e.userOperation,{authorization:i,callData:s="0x",callGasLimit:c,maxFeePerGas:o,maxPriorityFeePerGas:u,nonce:d,paymasterAndData:h="0x",preVerificationGas:m,sender:l,verificationGasLimit:x}=a;if(r==="0.8")return Tt(sc({chainId:t,entryPointAddress:n,userOperation:a}));const f=(()=>{var p,g;if(r==="0.6"){const y=(p=a.initCode)==null?void 0:p.slice(0,42),E=(g=a.initCode)==null?void 0:g.slice(42),O=ga({authorization:i,factory:y,factoryData:E});return nt([{type:"address"},{type:"uint256"},{type:"bytes32"},{type:"bytes32"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"bytes32"}],[l,d,me(O),me(s),c,x,m,o,u,me(h)])}if(r==="0.7"){const y=ba(a);return nt([{type:"address"},{type:"uint256"},{type:"bytes32"},{type:"bytes32"},{type:"bytes32"},{type:"uint256"},{type:"bytes32"},{type:"bytes32"}],[y.sender,y.nonce,me(y.initCode),me(y.callData),y.accountGasLimits,y.preVerificationGas,y.gasFees,me(y.paymasterAndData)])}throw new Error(`entryPointVersion "${r}" not supported.`)})();return me(nt([{type:"bytes32"},{type:"address"},{type:"uint256"}],[me(f),n,BigInt(t)]))}async function cc(e){const{extend:t,nonceKeyManager:n=Ei({source:{get(){return Date.now()},set(){}}}),...r}=e;let a=!1;const i=await e.getAddress();return{...t,...r,address:i,async getFactoryArgs(){return"isDeployed"in this&&await this.isDeployed()?{factory:void 0,factoryData:void 0}:e.getFactoryArgs()},async getNonce(s){const c=(s==null?void 0:s.key)??BigInt(await n.consume({address:i,chainId:e.client.chain.id,client:e.client}));return e.getNonce?await e.getNonce({...s,key:c}):await Xt(e.client,{abi:Si(["function getNonce(address, uint192) pure returns (uint256)"]),address:e.entryPoint.address,functionName:"getNonce",args:[i,c]})},async isDeployed(){return a?!0:(a=!!await ge(e.client,Gr,"getCode")({address:i}),a)},...e.sign?{async sign(s){const[{factory:c,factoryData:o},u]=await Promise.all([this.getFactoryArgs(),e.sign(s)]);return c&&o?Mt({address:c,data:o,signature:u}):u}}:{},async signMessage(s){const[{factory:c,factoryData:o},u]=await Promise.all([this.getFactoryArgs(),e.signMessage(s)]);return c&&o&&c!=="0x7702"?Mt({address:c,data:o,signature:u}):u},async signTypedData(s){const[{factory:c,factoryData:o},u]=await Promise.all([this.getFactoryArgs(),e.signTypedData(s)]);return c&&o&&c!=="0x7702"?Mt({address:c,data:o,signature:u}):u},type:"smart"}}class on extends C{constructor({cause:t}){super("Smart Account is not deployed.",{cause:t,metaMessages:["This could arise when:","- No `factory`/`factoryData` or `initCode` properties are provided for Smart Account deployment.","- An incorrect `sender` address is provided."],name:"AccountNotDeployedError"})}}Object.defineProperty(on,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa20/});class ze extends C{constructor({cause:t,data:n,message:r}={}){var i;const a=(i=r==null?void 0:r.replace("execution reverted: ",""))==null?void 0:i.replace("execution reverted","");super(`Execution reverted ${a?`with reason: ${a}`:"for an unknown reason"}.`,{cause:t,name:"ExecutionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=n}}Object.defineProperty(ze,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32521});Object.defineProperty(ze,"message",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class cn extends C{constructor({cause:t}){super("Failed to send funds to beneficiary.",{cause:t,name:"FailedToSendToBeneficiaryError"})}}Object.defineProperty(cn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa91/});class un extends C{constructor({cause:t}){super("Gas value overflowed.",{cause:t,metaMessages:["This could arise when:","- one of the gas values exceeded 2**120 (uint120)"].filter(Boolean),name:"GasValuesOverflowError"})}}Object.defineProperty(un,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa94/});class dn extends C{constructor({cause:t}){super("The `handleOps` function was called by the Bundler with a gas limit too low.",{cause:t,name:"HandleOpsOutOfGasError"})}}Object.defineProperty(dn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa95/});class ln extends C{constructor({cause:t,factory:n,factoryData:r,initCode:a}){super("Failed to simulate deployment for Smart Account.",{cause:t,metaMessages:["This could arise when:","- Invalid `factory`/`factoryData` or `initCode` properties are present","- Smart Account deployment execution ran out of gas (low `verificationGasLimit` value)",`- Smart Account deployment execution reverted with an error
|
|
12
|
+
`,gr="BaseSans-Regular";function so(){if(document.head.querySelector(`style[base-sdk-font="${gr}"]`))return;const t=document.createElement("style");t.setAttribute("base-sdk-font",gr),t.textContent=io,document.head.appendChild(t)}var oo=0;function K(e,t,n,r,a,i){t||(t={});var s,c,o=t;"ref"in t&&(s=t.ref,delete t.ref);var u={type:e,props:o,key:n,ref:s,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:--oo,__i:-1,__u:0,__source:a,__self:i};if(typeof e=="function"&&(s=e.defaultProps))for(c in s)o[c]===void 0&&(o[c]=s[c]);return Wn.vnode&&Wn.vnode(u),u}async function co(e){return uo(e)}function uo(e,t=4){return`${e.slice(0,2+t)}...${e.slice(-t)}`}const lo="#FFF",po="#0000FF",fo=({fill:e})=>K("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:K("path",{d:"M0 2.014C0 1.58105 0 1.36457 0.0815779 1.19805C0.159686 1.03861 0.288611 0.909686 0.448049 0.831578C0.61457 0.75 0.831047 0.75 1.264 0.75H14.736C15.169 0.75 15.3854 0.75 15.552 0.831578C15.7114 0.909686 15.8403 1.03861 15.9184 1.19805C16 1.36457 16 1.58105 16 2.014V15.486C16 15.919 16 16.1354 15.9184 16.302C15.8403 16.4614 15.7114 16.5903 15.552 16.6684C15.3854 16.75 15.169 16.75 14.736 16.75H1.264C0.831047 16.75 0.61457 16.75 0.448049 16.6684C0.288611 16.5903 0.159686 16.4614 0.0815779 16.302C0 16.1354 0 15.919 0 15.486V2.014Z",fill:e==="blue"?po:lo})}),mo='.-base-acc-sdk-css-reset{-webkit-font-smoothing:antialiased;pointer-events:auto !important}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2147483647}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-container *{user-select:none;box-sizing:border-box}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:20px}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-backdrop{align-items:flex-end;justify-content:stretch;padding:0}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog{position:relative;z-index:2147483648}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog{width:100%}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);width:380px;max-height:90vh;overflow:hidden;transform:scale(0.95);opacity:0;transition:all .2s ease-in-out}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance{touch-action:pan-y;user-select:none}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-hidden{transform:scale(0.9);opacity:0}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-hidden{transform:translateY(100%)}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance:not(.-base-acc-sdk-dialog-instance-hidden){transform:scale(1);opacity:1}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance:not(.-base-acc-sdk-dialog-instance-hidden){transform:translateY(0)}}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance{width:100%;max-width:100%;border-radius:20px 20px 0 0;box-shadow:0 -10px 25px rgba(0,0,0,.15);max-height:80vh;transform:translateY(0)}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-hidden{transform:translateY(100%);opacity:1}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance:not(.-base-acc-sdk-dialog-instance-hidden){transform:translateY(0);opacity:1}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 0 20px}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header{padding:16px 20px 12px 20px}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-icon-and-title{display:flex;align-items:center;gap:8px}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-icon-and-title-title{font-family:"BaseSans-Regular",sans-serif;font-size:14px;font-weight:400;color:#5b616e}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-cblogo{width:32px;height:32px}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;cursor:pointer;border-radius:6px;transition:background-color .2s}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close:hover{background-color:#f5f7f8}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close-icon{width:14px;height:14px}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-header-close-icon{display:none}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content{padding:20px 20px 16px 20px;font-family:"BaseSans-Regular",sans-serif}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content{padding:8px 20px 12px 20px}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content-title{font-size:20px;font-weight:600;line-height:28px;color:#0a0b0d;margin-bottom:10px}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-content-message{font-size:16px;font-weight:400;line-height:24px;color:#5b616e;margin-bottom:0}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-actions{display:flex;padding:16px 20px 20px 20px;flex-direction:column}@media(max-width: 600px)and (orientation: portrait){.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-actions{padding:16px 20px calc(20px + env(safe-area-inset-bottom)) 20px;gap:6px}}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button{font-family:"BaseSans-Regular",sans-serif;font-size:16px;font-weight:500;line-height:24px;border:none;border-radius:12px;padding:16px 24px;cursor:pointer;transition:all .2s ease-in-out;width:100%;margin:4px 0}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button:disabled{opacity:.5;cursor:not-allowed}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-primary{background-color:#0a0b0d;color:#fff}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-primary:hover:not(:disabled){background-color:#1c1e20}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-primary:active:not(:disabled){background-color:#2a2d31}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-secondary{background-color:#eef0f3;color:#0a0b0d}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-secondary:hover:not(:disabled){background-color:#e1e4e8}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-instance-button-secondary:active:not(:disabled){background-color:#d4d8dd}.-base-acc-sdk-css-reset .-base-acc-sdk-dialog-handle-bar{position:absolute;top:-16px;left:50%;transform:translateX(-50%);width:64px;height:4px;background-color:#d1d5db;border-radius:2px;opacity:0;animation:handleBarFadeIn .2s ease-in-out .2s forwards}@keyframes handleBarFadeIn{from{opacity:0}to{opacity:1}}',yo="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEzIDFMMSAxM20wLTEyTDEzIDEzIiBzdHJva2U9IiM5Q0EzQUYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+";function fa(){return window.innerWidth<=600&&window.innerHeight>window.innerWidth}const ho=()=>{const[e,t]=Te(!1);return qt(()=>{const n=()=>{t(fa())};return n(),window.addEventListener("resize",n),window.addEventListener("orientationchange",n),()=>{window.removeEventListener("resize",n),window.removeEventListener("orientationchange",n)}},[]),e?K("div",{class:"-base-acc-sdk-dialog-handle-bar"}):null};class go{constructor(){D(this,"items",new Map);D(this,"nextItemKey",0);D(this,"root",null)}attach(t){this.root=document.createElement("div"),this.root.className="-base-acc-sdk-dialog-root",t.appendChild(this.root),this.render()}presentItem(t){const n=this.nextItemKey++;this.items.set(n,t),this.render()}clear(){this.items.clear(),this.root&&Jn(null,this.root)}render(){this.root&&Jn(K("div",{children:K(bo,{children:Array.from(this.items.entries()).map(([t,n])=>Qa(wo,{...n,key:t,handleClose:()=>{var r;this.clear(),(r=n.onClose)==null||r.call(n)}}))})}),this.root)}}const bo=e=>{const[t,n]=Te(0),[r,a]=Te(!1),[i,s]=Te(0),c=d=>{if(!fa())return;const h=d.touches[0];s(h.clientY),a(!0)},o=d=>{if(!r)return;const m=d.touches[0].clientY-i;m>0&&(n(m),d.preventDefault())},u=()=>{if(r)if(a(!1),t>100){const d=document.querySelector(".-base-acc-sdk-dialog-instance-header-close");d&&d.click()}else n(0)};return K("div",{class:Zt("-base-acc-sdk-dialog-container"),children:[K("style",{children:mo}),K("div",{class:"-base-acc-sdk-dialog-backdrop",onTouchStart:c,onTouchMove:o,onTouchEnd:u,children:K("div",{class:"-base-acc-sdk-dialog",style:{transform:`translateY(${t}px)`,transition:r?"none":"transform 0.2s ease-out"},children:[K(ho,{}),e.children]})})]})},wo=({title:e,message:t,actionItems:n,handleClose:r})=>{const[a,i]=Te(!0),[s,c]=Te(!0),[o,u]=Te(null);qt(()=>{const m=window.setTimeout(()=>{i(!1)},1);return()=>{window.clearTimeout(m)}},[]),qt(()=>{(async()=>{var x;const l=(x=b.account.get().accounts)==null?void 0:x[0];if(l){const f=await co(l);u(f)}c(!1)})()},[]);const d=Xa(()=>o?`Signed in as ${o}`:"Base Account",[o]),h=!s;return K("div",{class:Zt("-base-acc-sdk-dialog-instance",a&&"-base-acc-sdk-dialog-instance-hidden"),children:[K("div",{class:"-base-acc-sdk-dialog-instance-header",children:[K("div",{class:"-base-acc-sdk-dialog-instance-header-icon-and-title",children:[K(fo,{fill:"blue"}),h&&K("div",{class:"-base-acc-sdk-dialog-instance-header-icon-and-title-title",children:d})]}),K("div",{class:"-base-acc-sdk-dialog-instance-header-close",onClick:r,children:K("img",{src:yo,class:"-base-acc-sdk-dialog-instance-header-close-icon"})})]}),K("div",{class:"-base-acc-sdk-dialog-instance-content",children:[K("div",{class:"-base-acc-sdk-dialog-instance-content-title",children:e}),K("div",{class:"-base-acc-sdk-dialog-instance-content-message",children:t})]}),n&&n.length>0&&K("div",{class:"-base-acc-sdk-dialog-instance-actions",children:n.map((m,l)=>K("button",{class:Zt("-base-acc-sdk-dialog-instance-button",m.variant==="primary"&&"-base-acc-sdk-dialog-instance-button-primary",m.variant==="secondary"&&"-base-acc-sdk-dialog-instance-button-secondary"),onClick:m.onClick,children:m.text},l))})]})};let ct=null;function Gn(){if(!ct){const e=document.createElement("div");e.className="-base-acc-sdk-css-reset",document.body.appendChild(e),ct=new go,ct.attach(e)}return so(),ct}const br=420,wr=700,vo="{app} wants to continue in Base Account",xo="This action requires your permission to open a new window.";function Eo(e){const t=(window.innerWidth-br)/2+window.screenX,n=(window.innerHeight-wr)/2+window.screenY;ko(e);function r(){const i=`wallet_${crypto.randomUUID()}`,s=window.open(e,i,`width=${br}, height=${wr}, left=${t}, top=${n}`);return s==null||s.focus(),s||null}const a=r();return a?Promise.resolve(a):Ao(r)}function So(e){e&&!e.closed&&e.close()}function ko(e){const t={sdkName:Bt,sdkVersion:qe,origin:window.location.origin,coop:eo()};for(const[n,r]of Object.entries(t))e.searchParams.has(n)||e.searchParams.append(n,r.toString())}function Ao(e){var r;const t=((r=b.config.get().metadata)==null?void 0:r.appName)??"App",n=Gn();return new Promise((a,i)=>{Fn({dialogContext:"popup_blocked"}),n.presentItem({title:vo.replace("{app}",t),message:xo,onClose:()=>{Re({dialogContext:"popup_blocked",dialogAction:"cancel"}),i(v.rpc.internal("Popup window was blocked"))},actionItems:[{text:"Try again",variant:"primary",onClick:()=>{Re({dialogContext:"popup_blocked",dialogAction:"confirm"});const s=e();s?a(s):i(v.rpc.internal("Popup window was blocked")),n.clear()}},{text:"Cancel",variant:"secondary",onClick:()=>{Re({dialogContext:"popup_blocked",dialogAction:"cancel"}),i(v.rpc.internal("Popup window was blocked")),n.clear()}}]})})}class Po{constructor({url:t=Ps,metadata:n,preference:r}){D(this,"metadata");D(this,"preference");D(this,"url");D(this,"popup",null);D(this,"listeners",new Map);D(this,"postMessage",async t=>{(await this.waitForPopupLoaded()).postMessage(t,this.url.origin)});D(this,"postRequestAndWaitForResponse",async t=>{const n=this.onMessage(({requestId:r})=>r===t.id);return this.postMessage(t),await n});D(this,"onMessage",async t=>new Promise((n,r)=>{const a=i=>{if(i.origin!==this.url.origin)return;const s=i.data;t(s)&&(n(s),window.removeEventListener("message",a),this.listeners.delete(a))};window.addEventListener("message",a),this.listeners.set(a,{reject:r})}));D(this,"disconnect",()=>{So(this.popup),this.popup=null,this.listeners.forEach(({reject:t},n)=>{t(v.provider.userRejectedRequest("Request rejected")),window.removeEventListener("message",n)}),this.listeners.clear()});D(this,"waitForPopupLoaded",async()=>this.popup&&!this.popup.closed?(this.popup.focus(),this.popup):(no(),this.popup=await Eo(this.url),this.onMessage(({event:t})=>t==="PopupUnload").then(()=>{this.disconnect(),ao()}).catch(()=>{}),this.onMessage(({event:t})=>t==="PopupLoaded").then(t=>{this.postMessage({requestId:t.id,data:{version:qe,sdkName:Bt,metadata:this.metadata,preference:this.preference,location:window.location.toString()}})}).then(()=>{if(!this.popup)throw v.rpc.internal();return ro(),this.popup})));this.url=new URL(t),this.metadata=n,this.preference=r}}function Oo(e){const t=Js(Co(e),{shouldIncludeStack:!0}),n=new URL("https://docs.cloud.coinbase.com/wallet-sdk/docs/errors");return n.searchParams.set("version",qe),n.searchParams.set("code",t.code.toString()),n.searchParams.set("message",t.message),{...t,docUrl:n.href}}function Io(e){return e.errorMessage!==void 0}function Co(e){if(typeof e=="string")return{message:e,code:V.rpc.internal};if(Io(e)){const t=e.errorMessage,n=e.errorCode??(t.match(/(denied|rejected)/i)?V.provider.userRejectedRequest:void 0);return{...e,message:t,code:n,data:{method:e.method}}}return e}class To extends ai{}const Bo=({method:e,correlationId:t})=>{G("provider.request.started",{action:L.unknown,componentType:M.unknown,method:e,signerType:"base-account",correlationId:t},F.high)},Ro=({method:e,correlationId:t,errorMessage:n})=>{G("provider.request.error",{action:L.error,componentType:M.unknown,method:e,signerType:"base-account",correlationId:t,errorMessage:n},F.high)},No=({method:e,correlationId:t})=>{G("provider.request.responded",{action:L.unknown,componentType:M.unknown,method:e,signerType:"base-account",correlationId:t},F.high)},Uo=({errorMessage:e})=>{G("provider.getInjectedProvider.error",{action:L.error,componentType:M.unknown,method:"getInjectedProvider",signerType:"base-account",errorMessage:e},F.high)},Ie=e=>"message"in e&&typeof e.message=="string"?e.message:"";function jo(){return e=>e}const bt=jo();function Ht(e){return Math.floor(e)}const Do=/^[0-9]*$/,ma=/^[a-f0-9]*$/;function Mo(e){return[...e].map(t=>t.toString(16).padStart(2,"0")).join("")}function Lo(e){return new Uint8Array(e.match(/.{1,2}/g).map(t=>Number.parseInt(t,16)))}function ya(e){return bt(`0x${BigInt(e).toString(16)}`)}function Fo(e){return e.startsWith("0x")||e.startsWith("0X")}function ha(e){return Fo(e)?e.slice(2):e}function Go(e){if(typeof e!="string")return!1;const t=ha(e).toLowerCase();return ma.test(t)}function sn(e,t=!1){if(typeof e=="string"){const n=ha(e).toLowerCase();if(ma.test(n))return bt(t?`0x${n}`:n)}throw v.rpc.invalidParams(`"${String(e)}" is not a hexadecimal string`)}function zo(e,t=!1){let n=sn(e,!1);return n.length%2===1&&(n=bt(`0${n}`)),t?bt(`0x${n}`):n}function Ho(e){if(typeof e=="number"&&Number.isInteger(e))return Ht(e);if(typeof e=="string"){if(Do.test(e))return Ht(Number(e));if(Go(e))return Ht(Number(BigInt(zo(e,!0))))}throw v.rpc.invalidParams(`Not an integer: ${String(e)}`)}const Ko=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.handshake.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Vo=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_signer.handshake.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},qo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.handshake.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Zo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.request.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Wo=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_signer.request.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},Jo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_signer.request.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Yo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.request.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Qo=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.request.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},Xo=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_sub_account.request.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},_o=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.add_owner.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},$o=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.add_owner.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},ec=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_sub_account.add_owner.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},tc=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.insufficient_balance.error_handling.started",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},nc=({method:e,correlationId:t})=>{const n=b.subAccountsConfig.get();G("scw_sub_account.insufficient_balance.error_handling.completed",{action:L.unknown,componentType:M.unknown,method:e,correlationId:t,subAccountCreation:n==null?void 0:n.creation,subAccountDefaultAccount:n==null?void 0:n.defaultAccount,subAccountFunding:n==null?void 0:n.funding},F.high)},rc=({method:e,correlationId:t,errorMessage:n})=>{const r=b.subAccountsConfig.get();G("scw_sub_account.insufficient_balance.error_handling.error",{action:L.error,componentType:M.unknown,method:e,correlationId:t,errorMessage:n,subAccountCreation:r==null?void 0:r.creation,subAccountDefaultAccount:r==null?void 0:r.defaultAccount,subAccountFunding:r==null?void 0:r.funding},F.high)},ac=[{inputs:[{name:"preOpGas",type:"uint256"},{name:"paid",type:"uint256"},{name:"validAfter",type:"uint48"},{name:"validUntil",type:"uint48"},{name:"targetSuccess",type:"bool"},{name:"targetResult",type:"bytes"}],name:"ExecutionResult",type:"error"},{inputs:[{name:"opIndex",type:"uint256"},{name:"reason",type:"string"}],name:"FailedOp",type:"error"},{inputs:[{name:"sender",type:"address"}],name:"SenderAddressResult",type:"error"},{inputs:[{name:"aggregator",type:"address"}],name:"SignatureValidationFailed",type:"error"},{inputs:[{components:[{name:"preOpGas",type:"uint256"},{name:"prefund",type:"uint256"},{name:"sigFailed",type:"bool"},{name:"validAfter",type:"uint48"},{name:"validUntil",type:"uint48"},{name:"paymasterContext",type:"bytes"}],name:"returnInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"senderInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"factoryInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"paymasterInfo",type:"tuple"}],name:"ValidationResult",type:"error"},{inputs:[{components:[{name:"preOpGas",type:"uint256"},{name:"prefund",type:"uint256"},{name:"sigFailed",type:"bool"},{name:"validAfter",type:"uint48"},{name:"validUntil",type:"uint48"},{name:"paymasterContext",type:"bytes"}],name:"returnInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"senderInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"factoryInfo",type:"tuple"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"paymasterInfo",type:"tuple"},{components:[{name:"aggregator",type:"address"},{components:[{name:"stake",type:"uint256"},{name:"unstakeDelaySec",type:"uint256"}],name:"stakeInfo",type:"tuple"}],name:"aggregatorInfo",type:"tuple"}],name:"ValidationResultWithAggregation",type:"error"},{anonymous:!1,inputs:[{indexed:!0,name:"userOpHash",type:"bytes32"},{indexed:!0,name:"sender",type:"address"},{indexed:!1,name:"factory",type:"address"},{indexed:!1,name:"paymaster",type:"address"}],name:"AccountDeployed",type:"event"},{anonymous:!1,inputs:[],name:"BeforeExecution",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"totalDeposit",type:"uint256"}],name:"Deposited",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"aggregator",type:"address"}],name:"SignatureAggregatorChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"totalStaked",type:"uint256"},{indexed:!1,name:"unstakeDelaySec",type:"uint256"}],name:"StakeLocked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"withdrawTime",type:"uint256"}],name:"StakeUnlocked",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"withdrawAddress",type:"address"},{indexed:!1,name:"amount",type:"uint256"}],name:"StakeWithdrawn",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"userOpHash",type:"bytes32"},{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"paymaster",type:"address"},{indexed:!1,name:"nonce",type:"uint256"},{indexed:!1,name:"success",type:"bool"},{indexed:!1,name:"actualGasCost",type:"uint256"},{indexed:!1,name:"actualGasUsed",type:"uint256"}],name:"UserOperationEvent",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"userOpHash",type:"bytes32"},{indexed:!0,name:"sender",type:"address"},{indexed:!1,name:"nonce",type:"uint256"},{indexed:!1,name:"revertReason",type:"bytes"}],name:"UserOperationRevertReason",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"account",type:"address"},{indexed:!1,name:"withdrawAddress",type:"address"},{indexed:!1,name:"amount",type:"uint256"}],name:"Withdrawn",type:"event"},{inputs:[],name:"SIG_VALIDATION_FAILED",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"initCode",type:"bytes"},{name:"sender",type:"address"},{name:"paymasterAndData",type:"bytes"}],name:"_validateSenderAndPaymaster",outputs:[],stateMutability:"view",type:"function"},{inputs:[{name:"unstakeDelaySec",type:"uint32"}],name:"addStake",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"account",type:"address"}],name:"balanceOf",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"address"}],name:"depositTo",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{name:"",type:"address"}],name:"deposits",outputs:[{name:"deposit",type:"uint112"},{name:"staked",type:"bool"},{name:"stake",type:"uint112"},{name:"unstakeDelaySec",type:"uint32"},{name:"withdrawTime",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"address"}],name:"getDepositInfo",outputs:[{components:[{name:"deposit",type:"uint112"},{name:"staked",type:"bool"},{name:"stake",type:"uint112"},{name:"unstakeDelaySec",type:"uint32"},{name:"withdrawTime",type:"uint48"}],name:"info",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{name:"sender",type:"address"},{name:"key",type:"uint192"}],name:"getNonce",outputs:[{name:"nonce",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"initCode",type:"bytes"}],name:"getSenderAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"}],name:"getUserOpHash",outputs:[{name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{components:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOps",type:"tuple[]"},{name:"aggregator",type:"address"},{name:"signature",type:"bytes"}],name:"opsPerAggregator",type:"tuple[]"},{name:"beneficiary",type:"address"}],name:"handleAggregatedOps",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"ops",type:"tuple[]"},{name:"beneficiary",type:"address"}],name:"handleOps",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"key",type:"uint192"}],name:"incrementNonce",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"callData",type:"bytes"},{components:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"paymaster",type:"address"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"}],name:"mUserOp",type:"tuple"},{name:"userOpHash",type:"bytes32"},{name:"prefund",type:"uint256"},{name:"contextOffset",type:"uint256"},{name:"preOpGas",type:"uint256"}],name:"opInfo",type:"tuple"},{name:"context",type:"bytes"}],name:"innerHandleOp",outputs:[{name:"actualGasCost",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"",type:"address"},{name:"",type:"uint192"}],name:"nonceSequenceNumber",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"op",type:"tuple"},{name:"target",type:"address"},{name:"targetCallData",type:"bytes"}],name:"simulateHandleOp",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{name:"sender",type:"address"},{name:"nonce",type:"uint256"},{name:"initCode",type:"bytes"},{name:"callData",type:"bytes"},{name:"callGasLimit",type:"uint256"},{name:"verificationGasLimit",type:"uint256"},{name:"preVerificationGas",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymasterAndData",type:"bytes"},{name:"signature",type:"bytes"}],name:"userOp",type:"tuple"}],name:"simulateValidation",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unlockStake",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"withdrawAddress",type:"address"}],name:"withdrawStake",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"withdrawAddress",type:"address"},{name:"withdrawAmount",type:"uint256"}],name:"withdrawTo",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}];function ga(e){const{authorization:t,factory:n,factoryData:r}=e;if(n==="0x7702"||n==="0x7702000000000000000000000000000000000000"){if(!t)return"0x7702000000000000000000000000000000000000";const a=t.address;return Le([a,r??"0x"])}return n?Le([n,r??"0x"]):"0x"}function ba(e){const{callGasLimit:t,callData:n,maxPriorityFeePerGas:r,maxFeePerGas:a,paymaster:i,paymasterData:s,paymasterPostOpGasLimit:c,paymasterVerificationGasLimit:o,sender:u,signature:d="0x",verificationGasLimit:h}=e,m=Le([ue(U(h||0n),{size:16}),ue(U(t||0n),{size:16})]),l=ga(e),x=Le([ue(U(r||0n),{size:16}),ue(U(a||0n),{size:16})]),f=e.nonce??0n,p=i?Le([i,ue(U(o||0n),{size:16}),ue(U(c||0n),{size:16}),s||"0x"]):"0x",g=e.preVerificationGas??0n;return{accountGasLimits:m,callData:n,initCode:l,gasFees:x,nonce:f,paymasterAndData:p,preVerificationGas:g,sender:u,signature:d}}const ic={PackedUserOperation:[{type:"address",name:"sender"},{type:"uint256",name:"nonce"},{type:"bytes",name:"initCode"},{type:"bytes",name:"callData"},{type:"bytes32",name:"accountGasLimits"},{type:"uint256",name:"preVerificationGas"},{type:"bytes32",name:"gasFees"},{type:"bytes",name:"paymasterAndData"}]};function sc(e){const{chainId:t,entryPointAddress:n,userOperation:r}=e,a=ba(r);return{types:ic,primaryType:"PackedUserOperation",domain:{name:"ERC4337",version:"1",chainId:t,verifyingContract:n},message:a}}function oc(e){const{chainId:t,entryPointAddress:n,entryPointVersion:r}=e,a=e.userOperation,{authorization:i,callData:s="0x",callGasLimit:c,maxFeePerGas:o,maxPriorityFeePerGas:u,nonce:d,paymasterAndData:h="0x",preVerificationGas:m,sender:l,verificationGasLimit:x}=a;if(r==="0.8")return Tt(sc({chainId:t,entryPointAddress:n,userOperation:a}));const f=(()=>{var p,g;if(r==="0.6"){const y=(p=a.initCode)==null?void 0:p.slice(0,42),E=(g=a.initCode)==null?void 0:g.slice(42),O=ga({authorization:i,factory:y,factoryData:E});return nt([{type:"address"},{type:"uint256"},{type:"bytes32"},{type:"bytes32"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"bytes32"}],[l,d,me(O),me(s),c,x,m,o,u,me(h)])}if(r==="0.7"){const y=ba(a);return nt([{type:"address"},{type:"uint256"},{type:"bytes32"},{type:"bytes32"},{type:"bytes32"},{type:"uint256"},{type:"bytes32"},{type:"bytes32"}],[y.sender,y.nonce,me(y.initCode),me(y.callData),y.accountGasLimits,y.preVerificationGas,y.gasFees,me(y.paymasterAndData)])}throw new Error(`entryPointVersion "${r}" not supported.`)})();return me(nt([{type:"bytes32"},{type:"address"},{type:"uint256"}],[me(f),n,BigInt(t)]))}async function cc(e){const{extend:t,nonceKeyManager:n=vi({source:{get(){return Date.now()},set(){}}}),...r}=e;let a=!1;const i=await e.getAddress();return{...t,...r,address:i,async getFactoryArgs(){return"isDeployed"in this&&await this.isDeployed()?{factory:void 0,factoryData:void 0}:e.getFactoryArgs()},async getNonce(s){const c=(s==null?void 0:s.key)??BigInt(await n.consume({address:i,chainId:e.client.chain.id,client:e.client}));return e.getNonce?await e.getNonce({...s,key:c}):await Jt(e.client,{abi:xi(["function getNonce(address, uint192) pure returns (uint256)"]),address:e.entryPoint.address,functionName:"getNonce",args:[i,c]})},async isDeployed(){return a?!0:(a=!!await ge(e.client,Mr,"getCode")({address:i}),a)},...e.sign?{async sign(s){const[{factory:c,factoryData:o},u]=await Promise.all([this.getFactoryArgs(),e.sign(s)]);return c&&o?Mt({address:c,data:o,signature:u}):u}}:{},async signMessage(s){const[{factory:c,factoryData:o},u]=await Promise.all([this.getFactoryArgs(),e.signMessage(s)]);return c&&o&&c!=="0x7702"?Mt({address:c,data:o,signature:u}):u},async signTypedData(s){const[{factory:c,factoryData:o},u]=await Promise.all([this.getFactoryArgs(),e.signTypedData(s)]);return c&&o&&c!=="0x7702"?Mt({address:c,data:o,signature:u}):u},type:"smart"}}class on extends C{constructor({cause:t}){super("Smart Account is not deployed.",{cause:t,metaMessages:["This could arise when:","- No `factory`/`factoryData` or `initCode` properties are provided for Smart Account deployment.","- An incorrect `sender` address is provided."],name:"AccountNotDeployedError"})}}Object.defineProperty(on,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa20/});class ze extends C{constructor({cause:t,data:n,message:r}={}){var i;const a=(i=r==null?void 0:r.replace("execution reverted: ",""))==null?void 0:i.replace("execution reverted","");super(`Execution reverted ${a?`with reason: ${a}`:"for an unknown reason"}.`,{cause:t,name:"ExecutionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=n}}Object.defineProperty(ze,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32521});Object.defineProperty(ze,"message",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class cn extends C{constructor({cause:t}){super("Failed to send funds to beneficiary.",{cause:t,name:"FailedToSendToBeneficiaryError"})}}Object.defineProperty(cn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa91/});class un extends C{constructor({cause:t}){super("Gas value overflowed.",{cause:t,metaMessages:["This could arise when:","- one of the gas values exceeded 2**120 (uint120)"].filter(Boolean),name:"GasValuesOverflowError"})}}Object.defineProperty(un,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa94/});class dn extends C{constructor({cause:t}){super("The `handleOps` function was called by the Bundler with a gas limit too low.",{cause:t,name:"HandleOpsOutOfGasError"})}}Object.defineProperty(dn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa95/});class ln extends C{constructor({cause:t,factory:n,factoryData:r,initCode:a}){super("Failed to simulate deployment for Smart Account.",{cause:t,metaMessages:["This could arise when:","- Invalid `factory`/`factoryData` or `initCode` properties are present","- Smart Account deployment execution ran out of gas (low `verificationGasLimit` value)",`- Smart Account deployment execution reverted with an error
|
|
13
13
|
`,n&&`factory: ${n}`,r&&`factoryData: ${r}`,a&&`initCode: ${a}`].filter(Boolean),name:"InitCodeFailedError"})}}Object.defineProperty(ln,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa13/});class pn extends C{constructor({cause:t,factory:n,factoryData:r,initCode:a}){super("Smart Account initialization implementation did not create an account.",{cause:t,metaMessages:["This could arise when:","- `factory`/`factoryData` or `initCode` properties are invalid",`- Smart Account initialization implementation is incorrect
|
|
14
14
|
`,n&&`factory: ${n}`,r&&`factoryData: ${r}`,a&&`initCode: ${a}`].filter(Boolean),name:"InitCodeMustCreateSenderError"})}}Object.defineProperty(pn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa15/});class fn extends C{constructor({cause:t,factory:n,factoryData:r,initCode:a,sender:i}){super("Smart Account initialization implementation does not return the expected sender.",{cause:t,metaMessages:["This could arise when:",`Smart Account initialization implementation does not return a sender address
|
|
15
|
-
`,n&&`factory: ${n}`,r&&`factoryData: ${r}`,a&&`initCode: ${a}`,i&&`sender: ${i}`].filter(Boolean),name:"InitCodeMustReturnSenderError"})}}Object.defineProperty(fn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa14/});class mn extends C{constructor({cause:t}){super("Smart Account does not have sufficient funds to execute the User Operation.",{cause:t,metaMessages:["This could arise when:","- the Smart Account does not have sufficient funds to cover the required prefund, or","- a Paymaster was not provided"].filter(Boolean),name:"InsufficientPrefundError"})}}Object.defineProperty(mn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa21/});class yn extends C{constructor({cause:t}){super("Bundler attempted to call an invalid function on the EntryPoint.",{cause:t,name:"InternalCallOnlyError"})}}Object.defineProperty(yn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa92/});class hn extends C{constructor({cause:t}){super("Bundler used an invalid aggregator for handling aggregated User Operations.",{cause:t,name:"InvalidAggregatorError"})}}Object.defineProperty(hn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa96/});class gn extends C{constructor({cause:t,nonce:n}){super("Invalid Smart Account nonce used for User Operation.",{cause:t,metaMessages:[n&&`nonce: ${n}`].filter(Boolean),name:"InvalidAccountNonceError"})}}Object.defineProperty(gn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa25/});class bn extends C{constructor({cause:t}){super("Bundler has not set a beneficiary address.",{cause:t,name:"InvalidBeneficiaryError"})}}Object.defineProperty(bn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa90/});class wt extends C{constructor({cause:t}){super("Invalid fields set on User Operation.",{cause:t,name:"InvalidFieldsError"})}}Object.defineProperty(wt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class wn extends C{constructor({cause:t,paymasterAndData:n}){super("Paymaster properties provided are invalid.",{cause:t,metaMessages:["This could arise when:","- the `paymasterAndData` property is of an incorrect length\n",n&&`paymasterAndData: ${n}`].filter(Boolean),name:"InvalidPaymasterAndDataError"})}}Object.defineProperty(wn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa93/});class Ce extends C{constructor({cause:t}){super("Paymaster deposit for the User Operation is too low.",{cause:t,metaMessages:["This could arise when:","- the Paymaster has deposited less than the expected amount via the `deposit` function"].filter(Boolean),name:"PaymasterDepositTooLowError"})}}Object.defineProperty(Ce,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32508});Object.defineProperty(Ce,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa31/});class vn extends C{constructor({cause:t}){super("The `validatePaymasterUserOp` function on the Paymaster reverted.",{cause:t,name:"PaymasterFunctionRevertedError"})}}Object.defineProperty(vn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa33/});class xn extends C{constructor({cause:t}){super("The Paymaster contract has not been deployed.",{cause:t,name:"PaymasterNotDeployedError"})}}Object.defineProperty(xn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa30/});class vt extends C{constructor({cause:t}){super("UserOperation rejected because paymaster (or signature aggregator) is throttled/banned.",{cause:t,name:"PaymasterRateLimitError"})}}Object.defineProperty(vt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32504});class xt extends C{constructor({cause:t}){super("UserOperation rejected because paymaster (or signature aggregator) is throttled/banned.",{cause:t,name:"PaymasterStakeTooLowError"})}}Object.defineProperty(xt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32505});class En extends C{constructor({cause:t}){super("Paymaster `postOp` function reverted.",{cause:t,name:"PaymasterPostOpFunctionRevertedError"})}}Object.defineProperty(En,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa50/});class Sn extends C{constructor({cause:t,factory:n,factoryData:r,initCode:a}){super("Smart Account has already been deployed.",{cause:t,metaMessages:["Remove the following properties and try again:",n&&"`factory`",r&&"`factoryData`",a&&"`initCode`"].filter(Boolean),name:"SenderAlreadyConstructedError"})}}Object.defineProperty(Sn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa10/});class Et extends C{constructor({cause:t}){super("UserOperation rejected because account signature check failed (or paymaster signature, if the paymaster uses its data as signature).",{cause:t,name:"SignatureCheckFailedError"})}}Object.defineProperty(Et,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32507});class kn extends C{constructor({cause:t}){super("The `validateUserOp` function on the Smart Account reverted.",{cause:t,name:"SmartAccountFunctionRevertedError"})}}Object.defineProperty(kn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa23/});class St extends C{constructor({cause:t}){super("UserOperation rejected because account specified unsupported signature aggregator.",{cause:t,name:"UnsupportedSignatureAggregatorError"})}}Object.defineProperty(St,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32506});class An extends C{constructor({cause:t}){super("User Operation expired.",{cause:t,metaMessages:["This could arise when:","- the `validAfter` or `validUntil` values returned from `validateUserOp` on the Smart Account are not satisfied"].filter(Boolean),name:"UserOperationExpiredError"})}}Object.defineProperty(An,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa22/});class Pn extends C{constructor({cause:t}){super("Paymaster for User Operation expired.",{cause:t,metaMessages:["This could arise when:","- the `validAfter` or `validUntil` values returned from `validatePaymasterUserOp` on the Paymaster are not satisfied"].filter(Boolean),name:"UserOperationPaymasterExpiredError"})}}Object.defineProperty(Pn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa32/});class On extends C{constructor({cause:t}){super("Signature provided for the User Operation is invalid.",{cause:t,metaMessages:["This could arise when:","- the `signature` for the User Operation is incorrectly computed, and unable to be verified by the Smart Account"].filter(Boolean),name:"UserOperationSignatureError"})}}Object.defineProperty(On,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa24/});class In extends C{constructor({cause:t}){super("Signature provided for the User Operation is invalid.",{cause:t,metaMessages:["This could arise when:","- the `signature` for the User Operation is incorrectly computed, and unable to be verified by the Paymaster"].filter(Boolean),name:"UserOperationPaymasterSignatureError"})}}Object.defineProperty(In,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa34/});class kt extends C{constructor({cause:t}){super("User Operation rejected by EntryPoint's `simulateValidation` during account creation or validation.",{cause:t,name:"UserOperationRejectedByEntryPointError"})}}Object.defineProperty(kt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32500});class At extends C{constructor({cause:t}){super("User Operation rejected by Paymaster's `validatePaymasterUserOp`.",{cause:t,name:"UserOperationRejectedByPaymasterError"})}}Object.defineProperty(At,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32501});class Pt extends C{constructor({cause:t}){super("User Operation rejected with op code validation error.",{cause:t,name:"UserOperationRejectedByOpCodeError"})}}Object.defineProperty(Pt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32502});class Ot extends C{constructor({cause:t}){super("UserOperation out of time-range: either wallet or paymaster returned a time-range, and it is already expired (or will expire soon).",{cause:t,name:"UserOperationOutOfTimeRangeError"})}}Object.defineProperty(Ot,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32503});class uc extends C{constructor({cause:t}){super(`An error occurred while executing user operation: ${t==null?void 0:t.shortMessage}`,{cause:t,name:"UnknownBundlerError"})}}class Cn extends C{constructor({cause:t}){super("User Operation verification gas limit exceeded.",{cause:t,metaMessages:["This could arise when:","- the gas used for verification exceeded the `verificationGasLimit`"].filter(Boolean),name:"VerificationGasLimitExceededError"})}}Object.defineProperty(Cn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa40/});class Tn extends C{constructor({cause:t}){super("User Operation verification gas limit is too low.",{cause:t,metaMessages:["This could arise when:","- the `verificationGasLimit` is too low to verify the User Operation"].filter(Boolean),name:"VerificationGasLimitTooLowError"})}}Object.defineProperty(Tn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa41/});class dc extends C{constructor(t,{callData:n,callGasLimit:r,docsPath:a,factory:i,factoryData:s,initCode:c,maxFeePerGas:o,maxPriorityFeePerGas:u,nonce:d,paymaster:h,paymasterAndData:m,paymasterData:l,paymasterPostOpGasLimit:x,paymasterVerificationGasLimit:f,preVerificationGas:p,sender:g,signature:y,verificationGasLimit:E}){const O=ki({callData:n,callGasLimit:r,factory:i,factoryData:s,initCode:c,maxFeePerGas:typeof o<"u"&&`${rr(o)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${rr(u)} gwei`,nonce:d,paymaster:h,paymasterAndData:m,paymasterData:l,paymasterPostOpGasLimit:x,paymasterVerificationGasLimit:f,preVerificationGas:p,sender:g,signature:y,verificationGasLimit:E});super(t.shortMessage,{cause:t,docsPath:a,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Request Arguments:",O].filter(Boolean),name:"UserOperationExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class lc extends C{constructor({hash:t}){super(`User Operation receipt with hash "${t}" could not be found. The User Operation may not have been processed yet.`,{name:"UserOperationReceiptNotFoundError"})}}class pc extends C{constructor({hash:t}){super(`User Operation with hash "${t}" could not be found.`,{name:"UserOperationNotFoundError"})}}class vr extends C{constructor({hash:t}){super(`Timed out while waiting for User Operation with hash "${t}" to be confirmed.`,{name:"WaitForUserOperationReceiptTimeoutError"})}}const fc=[ze,wt,Ce,vt,xt,Et,St,Ot,kt,At,Pt];function mc(e,t){const n=(e.details||"").toLowerCase();if(on.message.test(n))return new on({cause:e});if(cn.message.test(n))return new cn({cause:e});if(un.message.test(n))return new un({cause:e});if(dn.message.test(n))return new dn({cause:e});if(ln.message.test(n))return new ln({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode});if(pn.message.test(n))return new pn({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode});if(fn.message.test(n))return new fn({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode,sender:t.sender});if(mn.message.test(n))return new mn({cause:e});if(yn.message.test(n))return new yn({cause:e});if(gn.message.test(n))return new gn({cause:e,nonce:t.nonce});if(hn.message.test(n))return new hn({cause:e});if(bn.message.test(n))return new bn({cause:e});if(wn.message.test(n))return new wn({cause:e});if(Ce.message.test(n))return new Ce({cause:e});if(vn.message.test(n))return new vn({cause:e});if(xn.message.test(n))return new xn({cause:e});if(En.message.test(n))return new En({cause:e});if(kn.message.test(n))return new kn({cause:e});if(Sn.message.test(n))return new Sn({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode});if(An.message.test(n))return new An({cause:e});if(Pn.message.test(n))return new Pn({cause:e});if(In.message.test(n))return new In({cause:e});if(On.message.test(n))return new On({cause:e});if(Cn.message.test(n))return new Cn({cause:e});if(Tn.message.test(n))return new Tn({cause:e});const r=e.walk(a=>fc.some(i=>i.code===a.code));if(r){if(r.code===ze.code)return new ze({cause:e,data:r.data,message:r.details});if(r.code===wt.code)return new wt({cause:e});if(r.code===Ce.code)return new Ce({cause:e});if(r.code===vt.code)return new vt({cause:e});if(r.code===xt.code)return new xt({cause:e});if(r.code===Et.code)return new Et({cause:e});if(r.code===St.code)return new St({cause:e});if(r.code===Ot.code)return new Ot({cause:e});if(r.code===kt.code)return new kt({cause:e});if(r.code===At.code)return new At({cause:e});if(r.code===Pt.code)return new Pt({cause:e})}return new uc({cause:e})}function wa(e,{calls:t,docsPath:n,...r}){const a=(()=>{const i=mc(e,r);if(t&&i instanceof ze){const s=yc(i),c=t==null?void 0:t.filter(o=>o.abi);if(s&&c.length>0)return hc({calls:c,revertData:s})}return i})();return new dc(a,{docsPath:n,...r})}function yc(e){let t;return e.walk(n=>{var a,i,s,c;const r=n;if(typeof r.data=="string"||typeof((a=r.data)==null?void 0:a.revertData)=="string"||!(r instanceof C)&&typeof r.message=="string"){const o=(c=(s=((i=r.data)==null?void 0:i.revertData)||r.data||r.message).match)==null?void 0:c.call(s,/(0x[A-Za-z0-9]*)/);if(o)return t=o[1],!0}return!1}),t}function hc(e){const{calls:t,revertData:n}=e,{abi:r,functionName:a,args:i,to:s}=(()=>{const o=t==null?void 0:t.filter(d=>!!d.abi);if(o.length===1)return o[0];const u=o.filter(d=>{try{return!!pi({abi:d.abi,data:n})}catch{return!1}});return u.length===1?u[0]:{abi:[],functionName:o.reduce((d,h)=>`${d?`${d} | `:""}${h.functionName}`,""),args:void 0,to:void 0}})(),c=n==="0x"?new Ai({functionName:a}):new Pi({abi:r,data:n,functionName:a});return new Oi(c,{abi:r,args:i,contractAddress:s,functionName:a})}function gc(e){const t={};return e.callGasLimit&&(t.callGasLimit=BigInt(e.callGasLimit)),e.preVerificationGas&&(t.preVerificationGas=BigInt(e.preVerificationGas)),e.verificationGasLimit&&(t.verificationGasLimit=BigInt(e.verificationGasLimit)),e.paymasterPostOpGasLimit&&(t.paymasterPostOpGasLimit=BigInt(e.paymasterPostOpGasLimit)),e.paymasterVerificationGasLimit&&(t.paymasterVerificationGasLimit=BigInt(e.paymasterVerificationGasLimit)),t}function Rt(e){const t={};return typeof e.callData<"u"&&(t.callData=e.callData),typeof e.callGasLimit<"u"&&(t.callGasLimit=U(e.callGasLimit)),typeof e.factory<"u"&&(t.factory=e.factory),typeof e.factoryData<"u"&&(t.factoryData=e.factoryData),typeof e.initCode<"u"&&(t.initCode=e.initCode),typeof e.maxFeePerGas<"u"&&(t.maxFeePerGas=U(e.maxFeePerGas)),typeof e.maxPriorityFeePerGas<"u"&&(t.maxPriorityFeePerGas=U(e.maxPriorityFeePerGas)),typeof e.nonce<"u"&&(t.nonce=U(e.nonce)),typeof e.paymaster<"u"&&(t.paymaster=e.paymaster),typeof e.paymasterAndData<"u"&&(t.paymasterAndData=e.paymasterAndData||"0x"),typeof e.paymasterData<"u"&&(t.paymasterData=e.paymasterData),typeof e.paymasterPostOpGasLimit<"u"&&(t.paymasterPostOpGasLimit=U(e.paymasterPostOpGasLimit)),typeof e.paymasterVerificationGasLimit<"u"&&(t.paymasterVerificationGasLimit=U(e.paymasterVerificationGasLimit)),typeof e.preVerificationGas<"u"&&(t.preVerificationGas=U(e.preVerificationGas)),typeof e.sender<"u"&&(t.sender=e.sender),typeof e.signature<"u"&&(t.signature=e.signature),typeof e.verificationGasLimit<"u"&&(t.verificationGasLimit=U(e.verificationGasLimit)),typeof e.authorization<"u"&&(t.eip7702Auth=bc(e.authorization)),t}function bc(e){return{address:e.address,chainId:U(e.chainId),nonce:U(e.nonce),r:e.r?U(BigInt(e.r),{size:32}):ue("0x",{size:32}),s:e.s?U(BigInt(e.s),{size:32}):ue("0x",{size:32}),yParity:e.yParity?U(e.yParity,{size:1}):ue("0x",{size:32})}}async function wc(e,t){const{chainId:n,entryPointAddress:r,context:a,...i}=t,s=Rt(i),{paymasterPostOpGasLimit:c,paymasterVerificationGasLimit:o,...u}=await e.request({method:"pm_getPaymasterData",params:[{...s,callGasLimit:s.callGasLimit??"0x0",verificationGasLimit:s.verificationGasLimit??"0x0",preVerificationGas:s.preVerificationGas??"0x0"},r,U(n),a]});return{...u,...c&&{paymasterPostOpGasLimit:de(c)},...o&&{paymasterVerificationGasLimit:de(o)}}}async function vc(e,t){const{chainId:n,entryPointAddress:r,context:a,...i}=t,s=Rt(i),{paymasterPostOpGasLimit:c,paymasterVerificationGasLimit:o,...u}=await e.request({method:"pm_getPaymasterStubData",params:[{...s,callGasLimit:s.callGasLimit??"0x0",verificationGasLimit:s.verificationGasLimit??"0x0",preVerificationGas:s.preVerificationGas??"0x0"},r,U(n),a]});return{...u,...c&&{paymasterPostOpGasLimit:de(c)},...o&&{paymasterVerificationGasLimit:de(o)}}}const xc=["factory","fees","gas","paymaster","nonce","signature","authorization"];async function zn(e,t){var T;const n=t,{account:r=e.account,parameters:a=xc,stateOverride:i}=n;if(!r)throw new Nn;const s=Un(r),c=e,o=n.paymaster??(c==null?void 0:c.paymaster),u=typeof o=="string"?o:void 0,{getPaymasterStubData:d,getPaymasterData:h}=(()=>{if(o===!0)return{getPaymasterStubData:w=>ge(c,vc,"getPaymasterStubData")(w),getPaymasterData:w=>ge(c,wc,"getPaymasterData")(w)};if(typeof o=="object"){const{getPaymasterStubData:w,getPaymasterData:k}=o;return{getPaymasterStubData:k&&w?w:k,getPaymasterData:k&&w?k:void 0}}return{getPaymasterStubData:void 0,getPaymasterData:void 0}})(),m=n.paymasterContext?n.paymasterContext:c==null?void 0:c.paymasterContext;let l={...n,paymaster:u,sender:s.address};const[x,f,p,g,y]=await Promise.all([(async()=>n.calls?s.encodeCalls(n.calls.map(w=>{const k=w;return k.abi?{data:Se(k),to:k.to,value:k.value}:k})):n.callData)(),(async()=>{if(!a.includes("factory"))return;if(n.initCode)return{initCode:n.initCode};if(n.factory&&n.factoryData)return{factory:n.factory,factoryData:n.factoryData};const{factory:w,factoryData:k}=await s.getFactoryArgs();return s.entryPoint.version==="0.6"?{initCode:w&&k?Fe([w,k]):void 0}:{factory:w,factoryData:k}})(),(async()=>{var w;if(a.includes("fees")){if(typeof n.maxFeePerGas=="bigint"&&typeof n.maxPriorityFeePerGas=="bigint")return l;if((w=c==null?void 0:c.userOperation)!=null&&w.estimateFeesPerGas){const k=await c.userOperation.estimateFeesPerGas({account:s,bundlerClient:c,userOperation:l});return{...l,...k}}try{const k=c.client??e,I=await ge(k,Ii,"estimateFeesPerGas")({chain:k.chain,type:"eip1559"});return{maxFeePerGas:typeof n.maxFeePerGas=="bigint"?n.maxFeePerGas:BigInt(2n*I.maxFeePerGas),maxPriorityFeePerGas:typeof n.maxPriorityFeePerGas=="bigint"?n.maxPriorityFeePerGas:BigInt(2n*I.maxPriorityFeePerGas)}}catch{return}}})(),(async()=>{if(a.includes("nonce"))return typeof n.nonce=="bigint"?n.nonce:s.getNonce()})(),(async()=>{if(a.includes("authorization")){if(typeof n.authorization=="object")return n.authorization;if(s.authorization&&!await s.isDeployed())return{...await Ci(s.client,s.authorization),r:"0xfffffffffffffffffffffffffffffff000000000000000000000000000000000",s:"0x7aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",yParity:1}}})()]);typeof x<"u"&&(l.callData=x),typeof f<"u"&&(l={...l,...f}),typeof p<"u"&&(l={...l,...p}),typeof g<"u"&&(l.nonce=g),typeof y<"u"&&(l.authorization=y),a.includes("signature")&&(typeof n.signature<"u"?l.signature=n.signature:l.signature=await s.getStubSignature(l)),s.entryPoint.version==="0.6"&&!l.initCode&&(l.initCode="0x");let E;async function O(){return E||(e.chain?e.chain.id:(E=await ge(e,zr,"getChainId")({}),E))}let R=!1;if(a.includes("paymaster")&&d&&!u&&!n.paymasterAndData){const{isFinal:w=!1,sponsor:k,...I}=await d({chainId:await O(),entryPointAddress:s.entryPoint.address,context:m,...l});R=w,l={...l,...I}}if(s.entryPoint.version==="0.6"&&!l.paymasterAndData&&(l.paymasterAndData="0x"),a.includes("gas")){if((T=s.userOperation)!=null&&T.estimateGas){const w=await s.userOperation.estimateGas(l);l={...l,...w}}if(typeof l.callGasLimit>"u"||typeof l.preVerificationGas>"u"||typeof l.verificationGasLimit>"u"||l.paymaster&&typeof l.paymasterPostOpGasLimit>"u"||l.paymaster&&typeof l.paymasterVerificationGasLimit>"u"){const w=await ge(c,va,"estimateUserOperationGas")({account:s,callGasLimit:0n,preVerificationGas:0n,verificationGasLimit:0n,stateOverride:i,...l.paymaster?{paymasterPostOpGasLimit:0n,paymasterVerificationGasLimit:0n}:{},...l});l={...l,callGasLimit:l.callGasLimit??w.callGasLimit,preVerificationGas:l.preVerificationGas??w.preVerificationGas,verificationGasLimit:l.verificationGasLimit??w.verificationGasLimit,paymasterPostOpGasLimit:l.paymasterPostOpGasLimit??w.paymasterPostOpGasLimit,paymasterVerificationGasLimit:l.paymasterVerificationGasLimit??w.paymasterVerificationGasLimit}}}if(a.includes("paymaster")&&h&&!u&&!n.paymasterAndData&&!R){const w=await h({chainId:await O(),entryPointAddress:s.entryPoint.address,context:m,...l});l={...l,...w}}return delete l.calls,delete l.parameters,delete l.paymasterContext,typeof l.paymaster!="string"&&delete l.paymaster,l}async function va(e,t){var o;const{account:n=e.account,entryPointAddress:r,stateOverride:a}=t;if(!n&&!t.sender)throw new Nn;const i=n?Un(n):void 0,s=Ti(a),c=i?await ge(e,zn,"prepareUserOperation")({...t,parameters:["authorization","factory","nonce","paymaster","signature"]}):t;try{const u=[Rt(c),r??((o=i==null?void 0:i.entryPoint)==null?void 0:o.address)],d=await e.request({method:"eth_estimateUserOperationGas",params:s?[...u,s]:[...u]});return gc(d)}catch(u){const d=t.calls;throw wa(u,{...c,...d?{calls:d}:{}})}}function Ec(e){return e.request({method:"eth_supportedEntryPoints"})}function Sc(e){const t={...e};return e.callGasLimit&&(t.callGasLimit=BigInt(e.callGasLimit)),e.maxFeePerGas&&(t.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(t.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.nonce&&(t.nonce=BigInt(e.nonce)),e.paymasterPostOpGasLimit&&(t.paymasterPostOpGasLimit=BigInt(e.paymasterPostOpGasLimit)),e.paymasterVerificationGasLimit&&(t.paymasterVerificationGasLimit=BigInt(e.paymasterVerificationGasLimit)),e.preVerificationGas&&(t.preVerificationGas=BigInt(e.preVerificationGas)),e.verificationGasLimit&&(t.verificationGasLimit=BigInt(e.verificationGasLimit)),t}async function kc(e,{hash:t}){const n=await e.request({method:"eth_getUserOperationByHash",params:[t]},{dedupe:!0});if(!n)throw new pc({hash:t});const{blockHash:r,blockNumber:a,entryPoint:i,transactionHash:s,userOperation:c}=n;return{blockHash:r,blockNumber:BigInt(a),entryPoint:i,transactionHash:s,userOperation:Sc(c)}}function Ac(e){const t={...e};return e.actualGasCost&&(t.actualGasCost=BigInt(e.actualGasCost)),e.actualGasUsed&&(t.actualGasUsed=BigInt(e.actualGasUsed)),e.logs&&(t.logs=e.logs.map(n=>fi(n))),e.receipt&&(t.receipt=mi(t.receipt)),t}async function xa(e,{hash:t}){const n=await e.request({method:"eth_getUserOperationReceipt",params:[t]},{dedupe:!0});if(!n)throw new lc({hash:t});return Ac(n)}async function Pc(e,t){var o,u;const{account:n=e.account,entryPointAddress:r}=t;if(!n&&!t.sender)throw new Nn;const a=n?Un(n):void 0,i=a?await ge(e,zn,"prepareUserOperation")(t):t,s=t.signature||await((o=a==null?void 0:a.signUserOperation)==null?void 0:o.call(a,i)),c=Rt({...i,signature:s});try{return await e.request({method:"eth_sendUserOperation",params:[c,r??((u=a==null?void 0:a.entryPoint)==null?void 0:u.address)]},{retryCount:0})}catch(d){const h=t.calls;throw wa(d,{...i,...h?{calls:h}:{},signature:s})}}function Oc(e,t){const{hash:n,pollingInterval:r=e.pollingInterval,retryCount:a,timeout:i=12e4}=t;let s=0;const c=yi(["waitForUserOperationReceipt",e.uid,n]);return new Promise((o,u)=>{const d=Bi(c,{resolve:o,reject:u},h=>{const m=f=>{x(),f(),d()},l=i?setTimeout(()=>m(()=>h.reject(new vr({hash:n}))),i):void 0,x=Ri(async()=>{a&&s>=a&&(clearTimeout(l),m(()=>h.reject(new vr({hash:n}))));try{const f=await ge(e,xa,"getUserOperationReceipt")({hash:n});m(()=>h.resolve(f))}catch(f){const p=f;p.name!=="UserOperationReceiptNotFoundError"&&m(()=>h.reject(p))}finally{clearTimeout(l)}s++},{emitOnBegin:!0,interval:r});return x})})}function Ic(e){return{estimateUserOperationGas:t=>va(e,t),getChainId:()=>zr(e),getSupportedEntryPoints:()=>Ec(e),getUserOperation:t=>kc(e,t),getUserOperationReceipt:t=>xa(e,t),prepareUserOperation:t=>zn(e,t),sendUserOperation:t=>Pc(e,t),waitForUserOperationReceipt:t=>Oc(e,t)}}function Cc(e){const{client:t,key:n="bundler",name:r="Bundler Client",paymaster:a,paymasterContext:i,transport:s,userOperation:c}=e;return Object.assign(Ni({...e,chain:e.chain??(t==null?void 0:t.chain),key:n,name:r,transport:s,type:"bundlerClient"}),{client:t,paymaster:a,paymasterContext:i,userOperation:c}).extend(Ic)}const Tc="0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",Ea=jn(()=>({})),Bc=[qr,Yi,Ji,es,Xi,Qi,ts,_i],Rc=[Zr,hi,$i],Nc=[...Bc,...Rc].reduce((e,t)=>(e.set(t.id,t),e),new Map);function Hn(e){return Nc.get(e)}function Sa(e){var n,r,a;const t=Hn(e);if((a=(r=(n=t==null?void 0:t.rpcUrls)==null?void 0:n.default)==null?void 0:r.http)!=null&&a[0])return t.rpcUrls.default.http[0]}function Uc(e,t,n){var o,u;const r=n==null?void 0:n.viemChain,a=n==null?void 0:n.nativeCurrency,i=(a==null?void 0:a.name)??(r==null?void 0:r.name)??"",s=(a==null?void 0:a.symbol)??((o=r==null?void 0:r.nativeCurrency)==null?void 0:o.symbol)??"",c=(a==null?void 0:a.decimal)??((u=r==null?void 0:r.nativeCurrency)==null?void 0:u.decimals)??18;return te({id:e,name:i,nativeCurrency:{name:i,symbol:s,decimals:c},rpcUrls:{default:{http:[t]}}})}function xr(e){e.forEach(t=>{let n=t.rpcUrl;if(n||(n=Sa(t.id)),!n)return;const r=Hn(t.id),a=ka({chainId:t.id,rpcUrl:n,nativeCurrency:t.nativeCurrency,viemChain:r});Aa(t.id,a)})}function ka(e){const{chainId:t,rpcUrl:n,nativeCurrency:r,viemChain:a}=e,i=Uc(t,n,{viemChain:a,nativeCurrency:r}),s=Ui({chain:i,transport:ar(n)}),c=Cc({client:s,transport:ar(n)});return{client:s,bundlerClient:c}}function jc(e){const t=Sa(e),n=Hn(e);if(t)return ka({chainId:e,rpcUrl:t,viemChain:n})}function Aa(e,t){Ea.setState(n=>({...n,[e]:{client:t.client,bundlerClient:t.bundlerClient}}))}function Pa(e){var r;const t=(r=Ea.getState()[e])==null?void 0:r.client;if(t)return t;const n=jc(e);if(n)return Aa(e,n),n.client}const ut=jn(()=>({correlationIds:new Map})),he={get:e=>ut.getState().correlationIds.get(e),set:(e,t)=>{ut.setState(n=>{const r=new Map(n.correlationIds);return r.set(e,t),{correlationIds:r}})},delete:e=>{ut.setState(t=>{const n=new Map(t.correlationIds);return n.delete(e),{correlationIds:n}})},clear:()=>{ut.setState({correlationIds:new Map})}};function dt(e){if(typeof e!="object"||e===null)throw v.rpc.internal("sub account info is not an object");if(!("address"in e))throw v.rpc.internal("sub account is invalid");if("address"in e&&typeof e.address=="string"&&!Ge(e.address))throw v.rpc.internal("sub account address is invalid");if("factory"in e&&typeof e.factory=="string"&&!Ge(e.factory))throw v.rpc.internal("sub account factory address is invalid");if("factoryData"in e&&typeof e.factoryData=="string"&&!Me(e.factoryData))throw v.rpc.internal("sub account factory data is invalid")}async function Dc(){return crypto.subtle.generateKey({name:"ECDH",namedCurve:"P-256"},!0,["deriveKey"])}async function Mc(e,t){return crypto.subtle.deriveKey({name:"ECDH",public:t},e,{name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}async function Lc(e,t){const n=crypto.getRandomValues(new Uint8Array(12)),r=await crypto.subtle.encrypt({name:"AES-GCM",iv:n},e,new TextEncoder().encode(t));return{iv:n,cipherText:r}}async function Fc(e,{iv:t,cipherText:n}){const r=await crypto.subtle.decrypt({name:"AES-GCM",iv:t},e,n);return new TextDecoder().decode(r)}function Oa(e){switch(e){case"public":return"spki";case"private":return"pkcs8"}}async function Ia(e,t){const n=Oa(e),r=await crypto.subtle.exportKey(n,t);return Mo(new Uint8Array(r))}async function Ca(e,t){const n=Oa(e),r=Lo(t).buffer;return await crypto.subtle.importKey(n,new Uint8Array(r),{name:"ECDH",namedCurve:"P-256"},!0,e==="private"?["deriveKey"]:[])}async function Gc(e,t){const n=JSON.stringify(e,(r,a)=>{if(!(a instanceof Error))return a;const i=a;return{...i.code?{code:i.code}:{},message:i.message}});return Lc(t,n)}async function zc(e,t){return JSON.parse(await Fc(t,e))}async function et(e,t){const n={...e,jsonrpc:"2.0",id:crypto.randomUUID()},r=await fetch(t,{method:"POST",body:JSON.stringify(n),mode:"cors",headers:{"Content-Type":"application/json","X-Cbw-Sdk-Version":qe,"X-Cbw-Sdk-Platform":Bt}}),{result:a,error:i}=await r.json();if(i)throw i;return a}function Hc(e){if(!e||typeof e!="object"||Array.isArray(e))throw v.rpc.invalidParams({message:"Expected a single, non-array, object argument.",data:e});const{method:t,params:n}=e;if(typeof t!="string"||t.length===0)throw v.rpc.invalidParams({message:"'args.method' must be a non-empty string.",data:e});if(n!==void 0&&!Array.isArray(n)&&(typeof n!="object"||n===null))throw v.rpc.invalidParams({message:"'args.params' must be an object or array if provided.",data:e});switch(t){case"eth_sign":case"eth_signTypedData_v2":case"eth_subscribe":case"eth_unsubscribe":throw v.provider.unsupportedMethod()}}const Kc="0.1.1";function Vc(){return Kc}class H extends Error{constructor(t,n={}){const r=(()=>{var o;if(n.cause instanceof H){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return(o=n.cause)!=null&&o.message?n.cause.message:n.details})(),a=n.cause instanceof H&&n.cause.docsPath||n.docsPath,s=`https://oxlib.sh${a??""}`,c=[t||"An error occurred.",...n.metaMessages?["",...n.metaMessages]:[],...r||a?["",r?`Details: ${r}`:void 0,a?`See: ${s}`:void 0]:[]].filter(o=>typeof o=="string").join(`
|
|
16
|
-
`);super(c,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${Vc()}`}),this.cause=n.cause,this.details=r,this.docs=s,this.docsPath=a,this.shortMessage=t}walk(t){return Ta(this,t)}}function Ta(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?Ta(e.cause,t):t?null:e}const qc="#__bigint";function Nt(e,t,n){return JSON.stringify(e,(r,a)=>typeof a=="bigint"?a.toString()+qc:a,n)}function Zc(e,t){if(Ke(e)>t)throw new cu({givenSize:Ke(e),maxSize:t})}function Wc(e,t){if(typeof t=="number"&&t>0&&t>Ke(e)-1)throw new Fa({offset:t,position:"start",size:Ke(e)})}function Jc(e,t,n){if(typeof t=="number"&&typeof n=="number"&&Ke(e)!==n-t)throw new Fa({offset:n,position:"end",size:Ke(e)})}const fe={zero:48,nine:57,A:65,F:70,a:97,f:102};function Er(e){if(e>=fe.zero&&e<=fe.nine)return e-fe.zero;if(e>=fe.A&&e<=fe.F)return e-(fe.A-10);if(e>=fe.a&&e<=fe.f)return e-(fe.a-10)}function Kn(e,t){if(ke(e)>t)throw new au({givenSize:ke(e),maxSize:t})}function Yc(e,t){if(typeof t=="number"&&t>0&&t>ke(e)-1)throw new ja({offset:t,position:"start",size:ke(e)})}function Qc(e,t,n){if(typeof t=="number"&&typeof n=="number"&&ke(e)!==n-t)throw new ja({offset:n,position:"end",size:ke(e)})}function Ba(e,t={}){const{dir:n,size:r=32}=t;if(r===0)return e;const a=e.replace("0x","");if(a.length>r*2)throw new iu({size:Math.ceil(a.length/2),targetSize:r,type:"Hex"});return`0x${a[n==="right"?"padEnd":"padStart"](r*2,"0")}`}const Xc=new TextEncoder,_c=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function $c(e,t={}){const{strict:n=!1}=t;if(!e)throw new Sr(e);if(typeof e!="string")throw new Sr(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e))throw new kr(e);if(!e.startsWith("0x"))throw new kr(e)}function Ut(...e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function Ra(e){return e instanceof Uint8Array?He(e):Array.isArray(e)?He(new Uint8Array(e)):e}function He(e,t={}){let n="";for(let a=0;a<e.length;a++)n+=_c[e[a]];const r=`0x${n}`;return typeof t.size=="number"?(Kn(r,t.size),Ua(r,t.size)):r}function Ee(e,t={}){const{signed:n,size:r}=t,a=BigInt(e);let i;r?n?i=(1n<<BigInt(r)*8n-1n)-1n:i=2n**(BigInt(r)*8n)-1n:typeof e=="number"&&(i=BigInt(Number.MAX_SAFE_INTEGER));const s=typeof i=="bigint"&&n?-i-1n:0;if(i&&a>i||a<s){const u=typeof e=="bigint"?"n":"";throw new ru({max:i?`${i}${u}`:void 0,min:`${s}${u}`,signed:n,size:r,value:`${e}${u}`})}const o=`0x${(n&&a<0?(1n<<BigInt(r*8))+BigInt(a):a).toString(16)}`;return r?eu(o,r):o}function Na(e,t={}){return He(Xc.encode(e),t)}function eu(e,t){return Ba(e,{dir:"left",size:t})}function Ua(e,t){return Ba(e,{dir:"right",size:t})}function ae(e,t,n,r={}){const{strict:a}=r;Yc(e,t);const i=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return a&&Qc(i,t,n),i}function ke(e){return Math.ceil((e.length-2)/2)}function tu(e,t={}){const{signed:n}=t;t.size&&Kn(e,t.size);const r=BigInt(e);if(!n)return r;const a=(e.length-2)/2,i=(1n<<BigInt(a)*8n)-1n,s=i>>1n;return r<=s?r:r-i-1n}function nu(e,t={}){const{strict:n=!1}=t;try{return $c(e,{strict:n}),!0}catch{return!1}}class ru extends H{constructor({max:t,min:n,signed:r,size:a,value:i}){super(`Number \`${i}\` is not in safe${a?` ${a*8}-bit`:""}${r?" signed":" unsigned"} integer range ${t?`(\`${n}\` to \`${t}\`)`:`(above \`${n}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class Sr extends H{constructor(t){super(`Value \`${typeof t=="object"?Nt(t):t}\` of type \`${typeof t}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class kr extends H{constructor(t){super(`Value \`${t}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}let au=class extends H{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}},ja=class extends H{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}};class iu extends H{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function su(e){if(!(e instanceof Uint8Array)){if(!e)throw new lt(e);if(typeof e!="object")throw new lt(e);if(!("BYTES_PER_ELEMENT"in e))throw new lt(e);if(e.BYTES_PER_ELEMENT!==1||e.constructor.name!=="Uint8Array")throw new lt(e)}}function Da(e){return e instanceof Uint8Array?e:typeof e=="string"?La(e):Ma(e)}function Ma(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function La(e,t={}){const{size:n}=t;let r=e;n&&(Kn(e,n),r=Ua(e,n));let a=r.slice(2);a.length%2&&(a=`0${a}`);const i=a.length/2,s=new Uint8Array(i);for(let c=0,o=0;c<i;c++){const u=Er(a.charCodeAt(o++)),d=Er(a.charCodeAt(o++));if(u===void 0||d===void 0)throw new H(`Invalid byte sequence ("${a[o-2]}${a[o-1]}" in "${a}").`);s[c]=u*16+d}return s}function Ke(e){return e.length}function Ar(e,t,n,r={}){const{strict:a}=r;Wc(e,t);const i=e.slice(t,n);return a&&Jc(i,t,n),i}function Pr(e,t={}){const{size:n}=t;typeof n<"u"&&Zc(e,n);const r=He(e,t);return tu(r,t)}function ou(e){try{return su(e),!0}catch{return!1}}class lt extends H{constructor(t){super(`Value \`${typeof t=="object"?Nt(t):t}\` of type \`${typeof t}\` is an invalid Bytes value.`,{metaMessages:["Bytes values must be of type `Bytes`."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesTypeError"})}}class cu extends H{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}}class Fa extends H{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SliceOffsetOutOfBoundsError"})}}function Ga(e,t={}){const{as:n=typeof e=="string"?"Hex":"Bytes"}=t,r=Lr(Da(e));return n==="Bytes"?r:He(r)}function za(e,t={}){const{compressed:n}=t,{prefix:r,x:a,y:i}=e;if(n===!1||typeof a=="bigint"&&typeof i=="bigint"){if(r!==4)throw new Or({prefix:r,cause:new fu});return}if(n===!0||typeof a=="bigint"&&typeof i>"u"){if(r!==3&&r!==2)throw new Or({prefix:r,cause:new pu});return}throw new lu({publicKey:e})}function uu(e){const t=(()=>{if(nu(e))return Ha(e);if(ou(e))return du(e);const{prefix:n,x:r,y:a}=e;return typeof r=="bigint"&&typeof a=="bigint"?{prefix:n??4,x:r,y:a}:{prefix:n,x:r}})();return za(t),t}function du(e){return Ha(He(e))}function Ha(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new mu({publicKey:e});if(e.length===130){const r=BigInt(ae(e,0,32)),a=BigInt(ae(e,32,64));return{prefix:4,x:r,y:a}}if(e.length===132){const r=Number(ae(e,0,1)),a=BigInt(ae(e,1,33)),i=BigInt(ae(e,33,65));return{prefix:r,x:a,y:i}}const t=Number(ae(e,0,1)),n=BigInt(ae(e,1,33));return{prefix:t,x:n}}function Vn(e,t={}){za(e);const{prefix:n,x:r,y:a}=e,{includePrefix:i=!0}=t;return Ut(i?Ee(n,{size:1}):"0x",Ee(r,{size:32}),typeof a=="bigint"?Ee(a,{size:32}):"0x")}class lu extends H{constructor({publicKey:t}){super(`Value \`${Nt(t)}\` is not a valid public key.`,{metaMessages:["Public key must contain:","- an `x` and `prefix` value (compressed)","- an `x`, `y`, and `prefix` value (uncompressed)"]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidError"})}}class Or extends H{constructor({prefix:t,cause:n}){super(`Prefix "${t}" is invalid.`,{cause:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class pu extends H{constructor(){super("Prefix must be 2 or 3 for compressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidCompressedPrefixError"})}}class fu extends H{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}let mu=class extends H{constructor({publicKey:t}){super(`Value \`${t}\` is an invalid public key size.`,{metaMessages:["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).",`Received ${ke(Ra(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}};const Ir=2n**256n-1n;function yu(e,t={}){const{recovered:n}=t;if(typeof e.r>"u")throw new Kt({signature:e});if(typeof e.s>"u")throw new Kt({signature:e});if(n&&typeof e.yParity>"u")throw new Kt({signature:e});if(e.r<0n||e.r>Ir)throw new vu({value:e.r});if(e.s<0n||e.s>Ir)throw new xu({value:e.s});if(typeof e.yParity=="number"&&e.yParity!==0&&e.yParity!==1)throw new qn({value:e.yParity})}function Ka(e){if(e.length!==130&&e.length!==132)throw new wu({signature:e});const t=BigInt(ae(e,0,32)),n=BigInt(ae(e,32,64)),r=(()=>{const a=+`0x${e.slice(130)}`;if(!Number.isNaN(a))try{return gu(a)}catch{throw new qn({value:a})}})();return typeof r>"u"?{r:t,s:n}:{r:t,s:n,yParity:r}}function hu(e){yu(e);const t=e.r,n=e.s;return Ut(Ee(t,{size:32}),Ee(n,{size:32}),typeof e.yParity=="number"?Ee(bu(e.yParity),{size:1}):"0x")}function gu(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return e%2===0?1:0;throw new Eu({value:e})}function bu(e){if(e===0)return 27;if(e===1)return 28;throw new qn({value:e})}class wu extends H{constructor({signature:t}){super(`Value \`${t}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${ke(Ra(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class Kt extends H{constructor({signature:t}){super(`Signature \`${Nt(t)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class vu extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class xu extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class qn extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class Eu extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}const Su=new TextDecoder,pt=Object.fromEntries(Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/").map((e,t)=>[t,e.charCodeAt(0)]));({...Object.fromEntries(Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/").map((e,t)=>[e.charCodeAt(0),t]))});function ku(e,t={}){const{pad:n=!0,url:r=!1}=t,a=new Uint8Array(Math.ceil(e.length/3)*4);for(let o=0,u=0;u<e.length;o+=4,u+=3){const d=(e[u]<<16)+(e[u+1]<<8)+(e[u+2]|0);a[o]=pt[d>>18],a[o+1]=pt[d>>12&63],a[o+2]=pt[d>>6&63],a[o+3]=pt[d&63]}const i=e.length%3,s=Math.floor(e.length/3)*4+(i&&i+1);let c=Su.decode(new Uint8Array(a.buffer,0,s));return n&&i===1&&(c+="=="),n&&i===2&&(c+="="),r&&(c=c.replaceAll("+","-").replaceAll("/","_")),c}function Au(e,t={}){return ku(La(e),t)}Uint8Array.from([105,171,180,181,160,222,75,198,42,42,32,31,141,37,186,233]);function Pu(e={}){const{flag:t=5,rpId:n=window.location.hostname,signCount:r=0}=e,a=Ga(Na(n)),i=Ee(t,{size:1}),s=Ee(r,{size:4});return Ut(a,i,s)}function Ou(e){const{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:a=window.location.origin}=e;return JSON.stringify({type:"webauthn.get",challenge:Au(t,{url:!0,pad:!1}),origin:a,crossOrigin:n,...r})}function Iu(e){const{challenge:t,crossOrigin:n,extraClientData:r,flag:a,origin:i,rpId:s,signCount:c,userVerification:o="required"}=e,u=Pu({flag:a,rpId:s,signCount:c}),d=Ou({challenge:t,crossOrigin:n,extraClientData:r,origin:i}),h=Ga(Na(d)),m=d.indexOf('"challenge"'),l=d.indexOf('"type"'),x={authenticatorData:u,clientDataJSON:d,challengeIndex:m,typeIndex:l,userVerificationRequired:o==="required"},f=Ut(u,h);return{metadata:x,payload:f}}async function Cu(e={}){const{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:"ECDSA",namedCurve:"P-256"},t,["sign","verify"]),r=await globalThis.crypto.subtle.exportKey("raw",n.publicKey),a=uu(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:a}}async function Tu(e){const{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:"ECDSA",hash:"SHA-256"},n,Da(t)),a=Ma(new Uint8Array(r)),i=Pr(Ar(a,0,32));let s=Pr(Ar(a,32,64));return s>lr.CURVE.n/2n&&(s=lr.CURVE.n-s),{r:i,s}}function Bu(e,t){const n=typeof indexedDB<"u"?Mi(e,t):void 0;return{getItem:async r=>{const a=await Gi(r,n);return a||null},removeItem:async r=>Fi(r,n),setItem:async(r,a)=>Li(r,a,n)}}const Ru="base-acc-sdk",Nu="keys",Zn="activeId",Ve=Bu(Ru,Nu);async function Uu(){const e=await Cu({extractable:!1}),t=ae(Vn(e.publicKey),1);return await Ve.setItem(t,e),await Ve.setItem(Zn,t),e}async function ju(){const e=await Ve.getItem(Zn);if(!e)return null;const t=await Ve.getItem(e);return t||null}async function Du(){const e=await ju();if(!e){const t=await Uu(),n=ae(Vn(t.publicKey),1);return await Ve.setItem(n,t),await Ve.setItem(Zn,n),t}return e}async function Mu(){const e=await Du(),t=ae(Vn(e.publicKey),1),n=async r=>{const{payload:a,metadata:i}=Iu({challenge:r,origin:"https://keys.coinbase.com",userVerification:"preferred"}),s=await Tu({payload:a,privateKey:e.privateKey});return{signature:hu(s),raw:{},webauthn:i}};return{id:t,publicKey:t,async sign({hash:r}){return n(r)},async signMessage({message:r}){return n(Hr(r))},async signTypedData(r){return n(Tt(r))},type:"webAuthn"}}async function Bn(){return{account:await Mu()}}const Cr={storageKey:"ownPrivateKey",keyType:"private"},Tr={storageKey:"ownPublicKey",keyType:"public"},Br={storageKey:"peerPublicKey",keyType:"public"};class Lu{constructor(){D(this,"ownPrivateKey",null);D(this,"ownPublicKey",null);D(this,"peerPublicKey",null);D(this,"sharedSecret",null)}async getOwnPublicKey(){return await this.loadKeysIfNeeded(),this.ownPublicKey}async getSharedSecret(){return await this.loadKeysIfNeeded(),this.sharedSecret}async setPeerPublicKey(t){this.sharedSecret=null,this.peerPublicKey=t,await this.storeKey(Br,t),await this.loadKeysIfNeeded()}async clear(){this.ownPrivateKey=null,this.ownPublicKey=null,this.peerPublicKey=null,this.sharedSecret=null,b.keys.clear()}async generateKeyPair(){const t=await Dc();this.ownPrivateKey=t.privateKey,this.ownPublicKey=t.publicKey,await this.storeKey(Cr,t.privateKey),await this.storeKey(Tr,t.publicKey)}async loadKeysIfNeeded(){if(this.ownPrivateKey===null&&(this.ownPrivateKey=await this.loadKey(Cr)),this.ownPublicKey===null&&(this.ownPublicKey=await this.loadKey(Tr)),(this.ownPrivateKey===null||this.ownPublicKey===null)&&await this.generateKeyPair(),this.peerPublicKey===null&&(this.peerPublicKey=await this.loadKey(Br)),this.sharedSecret===null){if(this.ownPrivateKey===null||this.peerPublicKey===null)return;this.sharedSecret=await Mc(this.ownPrivateKey,this.peerPublicKey)}}async loadKey(t){const n=b.keys.get(t.storageKey);return n?Ca(t.keyType,n):null}async storeKey(t,n){const r=await Ia(t.keyType,n);b.keys.set(t.storageKey,r)}}function tt(e,t){if(!(typeof e!="object"||e===null))return t.split(/[.[\]]+/).filter(Boolean).reduce((n,r)=>{if(typeof n=="object"&&n!==null)return n[r]},e)}function Rr(e){var t;if(!Array.isArray(e.params))return null;switch(e.method){case"personal_sign":return e.params[1];case"eth_signTypedData_v4":return e.params[0];case"eth_signTransaction":case"eth_sendTransaction":case"wallet_sendCalls":return(t=e.params[0])==null?void 0:t.from;default:return null}}function Fu(e,t){if(!Array.isArray(e.params))throw v.rpc.invalidParams();const n=[...e.params];switch(e.method){case"eth_signTransaction":case"eth_sendTransaction":case"wallet_sendCalls":n[0].from=t;break;case"eth_signTypedData_v4":n[0]=t;break;case"personal_sign":n[1]=t;break}return{...e,params:n}}function Nr(e){var t;if(!e||!Array.isArray(e)||!((t=e[0])!=null&&t.chainId)||typeof e[0].chainId!="string"&&typeof e[0].chainId!="number")throw v.rpc.invalidParams()}function Gu(e){if(!e||!Array.isArray(e)||e.length!==1&&e.length!==2||typeof e[0]!="string"||!Ge(e[0]))throw v.rpc.invalidParams();if(e.length===2){if(!Array.isArray(e[1]))throw v.rpc.invalidParams();for(const t of e[1])if(typeof t!="string"||!t.startsWith("0x"))throw v.rpc.invalidParams()}}function at(e,t){const n={...e};if(t&&e.method.startsWith("wallet_")){let r=tt(n,"params.0.capabilities");if(typeof r>"u"&&(r={}),typeof r!="object")throw v.rpc.invalidParams();r={...t,...r},n.params&&Array.isArray(n.params)&&(n.params[0]={...n.params[0],capabilities:r})}return n}async function Rn(){const e=b.subAccountsConfig.get()??{},t={};if(e.creation==="on-connect"){const{account:n}=e.toOwnerAccount?await e.toOwnerAccount():await Bn();if(!n)throw v.provider.unauthorized("No owner account found");t.addSubAccount={account:{type:"create",keys:[{type:n.address?"address":"webauthn-p256",publicKey:n.address||n.publicKey}]}}}b.subAccountsConfig.set({...e,capabilities:t})}function zu(e){if(!(e.method==="coinbase_fetchPermissions"&&e.params===void 0)){if(e.method==="coinbase_fetchPermissions"&&Array.isArray(e.params)&&e.params.length===1&&typeof e.params[0]=="object"){if(typeof e.params[0].account!="string"||!e.params[0].chainId.startsWith("0x"))throw v.rpc.invalidParams("FetchPermissions - Invalid params: params[0].account must be a hex string");if(typeof e.params[0].chainId!="string"||!e.params[0].chainId.startsWith("0x"))throw v.rpc.invalidParams("FetchPermissions - Invalid params: params[0].chainId must be a hex string");if(typeof e.params[0].spender!="string"||!e.params[0].spender.startsWith("0x"))throw v.rpc.invalidParams("FetchPermissions - Invalid params: params[0].spender must be a hex string");return}throw v.rpc.invalidParams()}}function Hu(e){var a,i,s;if(e.params!==void 0)return e;const t=(a=b.getState().account.accounts)==null?void 0:a[0],n=(i=b.getState().account.chain)==null?void 0:i.id,r=(s=b.getState().subAccount)==null?void 0:s.address;if(!t||!r||!n)throw v.rpc.invalidParams("FetchPermissions - one or more of account, sub account, or chain id is missing, connect to sub account via wallet_connect first");return{method:"coinbase_fetchPermissions",params:[{account:t,chainId:U(n),spender:r}]}}async function Va({client:e,id:t}){var r;const n=await Kr(e,{id:t});if(n.status==="success")return(r=n.receipts)==null?void 0:r[0].transactionHash;throw v.rpc.internal("failed to send transaction")}function qa({calls:e,from:t,chainId:n,capabilities:r}){const a=ia.get().paymasterUrls;let i={method:"wallet_sendCalls",params:[{version:"1.0",calls:e,chainId:U(n),from:t,atomicRequired:!0,capabilities:r}]};return a!=null&&a[n]&&(i=at(i,{paymasterService:{url:a==null?void 0:a[n]}})),i}async function Ku(){const e=Gn();return await new Promise((n,r)=>{Fn({dialogContext:"sub_account_insufficient_balance"}),e.presentItem({title:"Insufficient spend permission",message:"Your spend permission's remaining balance cannot cover this transaction. Please use your primary account to complete this transaction.",onClose:()=>{pa({dialogContext:"sub_account_insufficient_balance"}),e.clear(),r(new Error("User cancelled funding"))},actionItems:[{text:"Use primary account",variant:"primary",onClick:()=>{Re({dialogContext:"sub_account_insufficient_balance",dialogAction:"continue_in_popup"}),e.clear(),n("continue_popup")}},{text:"Cancel",variant:"secondary",onClick:()=>{Re({dialogContext:"sub_account_insufficient_balance",dialogAction:"cancel"}),e.clear(),r(new Error("User cancelled funding"))}}]})})}function Vu(e){return typeof e=="object"&&e!==null&&Array.isArray(e)&&e.length>0&&typeof e[0]=="object"&&e[0]!==null&&"calls"in e[0]}function qu(e){return Array.isArray(e)&&e.length===1&&typeof e[0]=="object"&&e[0]!==null&&"to"in e[0]}function Zu(e){return gi(me(we(e)),0,16)}function Wu({attribution:e,dappOrigin:t}){if(e){if("auto"in e&&e.auto&&t)return Zu(t);if("dataSuffix"in e)return e.dataSuffix}}function ft(e,t){const n=e.filter(r=>r!==t);return[t,...n]}function mt(e,t){return[...e.filter(r=>r!==t),t]}function Ju(e){return e.replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}function yt(e){const t=btoa(String.fromCharCode(...new Uint8Array(e)));return Ju(t)}function Yu({webauthn:e,signature:t,id:n}){const r=Ka(t);return{id:n,rawId:yt($n(n)),response:{authenticatorData:yt(Qt(e.authenticatorData)),clientDataJSON:yt($n(e.clientDataJSON)),signature:yt(Qu(r.r,r.s))},type:JSON.parse(e.clientDataJSON).type}}function Qu(e,t){const n=Qt(er(U(e))),r=Qt(er(U(t))),a=n.length,i=r.length,s=a+i+4,c=new Uint8Array(s+2);return c[0]=48,c[1]=s,c[2]=2,c[3]=a,c.set(n,4),c[a+4]=2,c[a+5]=i,c.set(r,a+6),c}async function Xu(e){const{owner:t,ownerIndex:n,address:r,client:a,factoryData:i}=e,s={abi:ac,address:Tc,version:"0.6"},c={abi:sa,address:qs};return cc({client:a,entryPoint:s,extend:{abi:ce,factory:c},async decodeCalls(o){const u=Vr({abi:ce,data:o});if(u.functionName==="execute")return[{to:u.args[0],value:u.args[1],data:u.args[2]}];if(u.functionName==="executeBatch")return u.args[0].map(d=>({to:d.target,value:d.value,data:d.data}));throw new C(`unable to decode calls for "${u.functionName}"`)},async encodeCalls(o){return o.length===1?Se({abi:ce,functionName:"execute",args:[o[0].to,o[0].value??BigInt(0),o[0].data??"0x"]}):Se({abi:ce,functionName:"executeBatch",args:[o.map(u=>({data:u.data??"0x",target:u.to,value:u.value??BigInt(0)}))]})},async getAddress(){return r},async getFactoryArgs(){return i?{factory:c.address,factoryData:i}:{factory:c.address,factoryData:i}},async getStubSignature(){return t.type==="webAuthn"?"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000001949fc7c88032b9fcb5f6efc7a7b8c63668eae9871b765e23123bb473ff57aa831a7c0d9276168ebcc29f2875a0239cffdf2a9cd1c2007c5c77c071db9264df1d000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008a7b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a2273496a396e6164474850596759334b7156384f7a4a666c726275504b474f716d59576f4d57516869467773222c226f726967696e223a2268747470733a2f2f7369676e2e636f696e626173652e636f6d222c2263726f73734f726967696e223a66616c73657d00000000000000000000000000000000000000000000":$e({ownerIndex:n,signature:"0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c"})},async sign(o){const u=await this.getAddress(),d=Vt({address:u,chainId:a.chain.id,hash:o.hash}),h=await ht({hash:d,owner:t});return $e({ownerIndex:n,signature:h})},async signMessage(o){const{message:u}=o,d=await this.getAddress(),h=Vt({address:d,chainId:a.chain.id,hash:Hr(u)}),m=await ht({hash:h,owner:t});return $e({ownerIndex:n,signature:m})},async signTypedData(o){const{domain:u,types:d,primaryType:h,message:m}=o,l=await this.getAddress(),x=Vt({address:l,chainId:a.chain.id,hash:Tt({domain:u,message:m,primaryType:h,types:d})}),f=await ht({hash:x,owner:t});return $e({ownerIndex:n,signature:f})},async signUserOperation(o){const{chainId:u=a.chain.id,...d}=o,h=await this.getAddress(),m=oc({chainId:u,entryPointAddress:s.address,entryPointVersion:s.version,userOperation:{...d,sender:h}}),l=await ht({hash:m,owner:t});return $e({ownerIndex:n,signature:l})},userOperation:{async estimateGas(o){if(t.type==="webAuthn")return{verificationGasLimit:BigInt(Math.max(Number(o.verificationGasLimit??BigInt(0)),8e5))}}}})}async function ht({hash:e,owner:t}){if(t.type==="webAuthn"){const{signature:n,webauthn:r}=await t.sign({hash:e});return _u({signature:n,webauthn:r})}if(t.sign)return t.sign({hash:e});throw new C("`owner` does not support raw sign.")}function Vt({address:e,chainId:t,hash:n}){return Tt({domain:{chainId:t,name:"Coinbase Smart Wallet",verifyingContract:e,version:"1"},types:{CoinbaseSmartWalletMessage:[{name:"hash",type:"bytes32"}]},primaryType:"CoinbaseSmartWalletMessage",message:{hash:n}})}function _u({webauthn:e,signature:t}){const{r:n,s:r}=Ka(t);return nt([{components:[{name:"authenticatorData",type:"bytes"},{name:"clientDataJSON",type:"bytes"},{name:"challengeIndex",type:"uint256"},{name:"typeIndex",type:"uint256"},{name:"r",type:"uint256"},{name:"s",type:"uint256"}],type:"tuple"}],[{authenticatorData:e.authenticatorData,clientDataJSON:bi(e.clientDataJSON),challengeIndex:BigInt(e.challengeIndex),typeIndex:BigInt(e.typeIndex),r:n,s:r}])}function $e(e){const{ownerIndex:t=0}=e,n=(()=>{if(wi(e.signature)!==65)return e.signature;const r=ji(e.signature);return Di(["bytes32","bytes32","uint8"],[r.r,r.s,r.yParity===0?27:28])})();return nt([{components:[{name:"ownerIndex",type:"uint8"},{name:"signatureData",type:"bytes"}],type:"tuple"}],[{ownerIndex:t,signatureData:n}])}async function $u({address:e,client:t,factory:n,factoryData:r,owner:a,ownerIndex:i,parentAddress:s,attribution:c}){var m;const o={address:e,factory:n,factoryData:r},u=(m=t.chain)==null?void 0:m.id;if(!u)throw v.rpc.internal("chainId not found");const d=await Xu({owner:a,ownerIndex:i??1,address:e,client:t,factoryData:r}),h=async l=>{var x;try{switch(l.method){case"wallet_addSubAccount":return o;case"eth_accounts":return[o.address];case"eth_coinbase":return o.address;case"net_version":return u.toString();case"eth_chainId":return U(u);case"eth_sendTransaction":{xe(l.params);const f=l.params[0];ie(f.to,v.rpc.invalidParams("to is required"));const p={to:f.to,data:sn(f.data??"0x",!0),value:sn(f.value??"0x",!0),from:f.from??o.address},g=qa({calls:[p],chainId:u,from:p.from}),y=await h(g);return Va({client:t,id:y})}case"wallet_sendCalls":{xe(l.params);const f=tt(l.params[0],"chainId");if(!f)throw v.rpc.invalidParams("chainId is required");if(!Me(f))throw v.rpc.invalidParams("chainId must be a hex encoded integer");if(!l.params[0])throw v.rpc.invalidParams("params are required");if(!("calls"in l.params[0]))throw v.rpc.invalidParams("calls are required");let p={method:"wallet_prepareCalls",params:[{version:"1.0",calls:l.params[0].calls,chainId:f,from:o.address,capabilities:"capabilities"in l.params[0]?l.params[0].capabilities:{}}]};s&&(p=at(p,{funding:[{type:"spendPermission",data:{autoApply:!0,sources:[s],preference:"PREFER_DIRECT_BALANCE"}}]}));let g=await h(p);const y=await((x=a.sign)==null?void 0:x.call(a,{hash:tr(g.signatureRequest.hash)}));let E;if(!y)throw v.rpc.internal("signature not found");return Me(y)?E={type:"secp256k1",data:{address:a.address,signature:y}}:E={type:"webauthn",data:{signature:JSON.stringify(Yu({id:a.id??"1",...y})),publicKey:a.publicKey}},(await h({method:"wallet_sendPreparedCalls",params:[{version:"1.0",type:g.type,data:g.userOp,chainId:g.chainId,signature:E}]}))[0]}case"wallet_sendPreparedCalls":{xe(l.params);const f=tt(l.params[0],"chainId");if(!f)throw v.rpc.invalidParams("chainId is required");if(!Me(f))throw v.rpc.invalidParams("chainId must be a hex encoded integer");return await t.request({method:"wallet_sendPreparedCalls",params:l.params})}case"wallet_prepareCalls":{xe(l.params);const f=tt(l.params[0],"chainId");if(!f)throw v.rpc.invalidParams("chainId is required");if(!Me(f))throw v.rpc.invalidParams("chainId must be a hex encoded integer");if(!l.params[0])throw v.rpc.invalidParams("params are required");if(!tt(l.params[0],"calls"))throw v.rpc.invalidParams("calls are required");const p=l.params[0];return c&&p.capabilities&&!("attribution"in p.capabilities)&&(p.capabilities.attribution=c),await t.request({method:"wallet_prepareCalls",params:[{...l.params[0],chainId:f}]})}case"personal_sign":{if(xe(l.params),!Me(l.params[0]))throw v.rpc.invalidParams("message must be a hex encoded string");const f=tr(l.params[0]);return d.signMessage({message:f})}case"eth_signTypedData_v4":{xe(l.params);const f=typeof l.params[1]=="string"?JSON.parse(l.params[1]):l.params[1];return d.signTypedData(f)}case"eth_signTypedData_v1":case"eth_signTypedData_v3":case"wallet_addEthereumChain":case"wallet_switchEthereumChain":default:throw v.rpc.methodNotSupported()}}catch(f){if(la(f)){const p=Qs(f);if(p)throw p}throw f}};return{request:h}}async function Za({address:e,client:t,publicKey:n,factory:r,factoryData:a}){if(!await Gr(t,{address:e})&&r&&a){const c=Vr({abi:sa,data:a});if(c.functionName!=="createAccount")throw v.rpc.internal("unknown factory function");const[o]=c.args;return o.findIndex(u=>u.toLowerCase()===Ur(n).toLowerCase())}const s=await Xt(t,{address:e,abi:ce,functionName:"ownerCount"});for(let c=Number(s)-1;c>=0;c--){const o=await Xt(t,{address:e,abi:ce,functionName:"ownerAtIndex",args:[BigInt(c)]}),u=Ur(n);if(o.toLowerCase()===u.toLowerCase())return c}return-1}function Ur(e){return Ge(e)?ue(e):e}async function ed(){var n;const e=((n=b.config.get().metadata)==null?void 0:n.appName)??"App",t=Gn();return new Promise(r=>{Fn({dialogContext:"sub_account_add_owner"}),t.presentItem({title:`Re-authorize ${e}`,message:`${e} has lost access to your account. Please sign at the next step to re-authorize ${e}`,onClose:()=>{pa({dialogContext:"sub_account_add_owner"}),r("cancel")},actionItems:[{text:"Continue",variant:"primary",onClick:()=>{Re({dialogContext:"sub_account_add_owner",dialogAction:"confirm"}),t.clear(),r("authenticate")}},{text:"Not now",variant:"secondary",onClick:()=>{Re({dialogContext:"sub_account_add_owner",dialogAction:"cancel"}),t.clear(),r("cancel")}}]})})}async function td({ownerAccount:e,globalAccountRequest:t,chainId:n}){var l,x;const r=b.account.get(),a=b.subAccounts.get(),i=(l=r.accounts)==null?void 0:l.find(f=>f.toLowerCase()!==(a==null?void 0:a.address.toLowerCase()));ie(i,v.provider.unauthorized("no global account")),ie((x=r.chain)==null?void 0:x.id,v.provider.unauthorized("no chain id")),ie(a==null?void 0:a.address,v.provider.unauthorized("no sub account"));const s=[];if(e.type==="local"&&e.address&&s.push({to:a.address,data:Se({abi:ce,functionName:"addOwnerAddress",args:[e.address]}),value:we(0)}),e.publicKey){const[f,p]=Fr([{type:"bytes32"},{type:"bytes32"}],e.publicKey);s.push({to:a.address,data:Se({abi:ce,functionName:"addOwnerPublicKey",args:[f,p]}),value:we(0)})}const c={method:"wallet_sendCalls",params:[{version:"1",calls:s,chainId:U(n),from:i}]};if(await ed()==="cancel")throw v.provider.unauthorized("user cancelled");const u=await t(c),d=Pa(r.chain.id);if(ie(d,v.rpc.internal(`client not found for chainId ${r.chain.id}`)),(await Kr(d,{id:u})).status!=="success")throw v.rpc.internal("add owner call failed");const m=await Za({address:a.address,publicKey:e.type==="local"&&e.address?e.address:e.publicKey,client:d});if(m===-1)throw v.rpc.internal("failed to find owner index");return m}async function Wa({request:e,globalAccountAddress:t,subAccountAddress:n,client:r,globalAccountRequest:a,chainId:i,prependCalls:s}){var l;let c;if(e.method==="wallet_sendCalls"&&Vu(e.params))c=e.params[0];else if(e.method==="eth_sendTransaction"&&qu(e.params))c=qa({calls:[e.params[0]],chainId:i,from:e.params[0].from}).params[0];else throw new Error(`Could not get original call from ${e.method} request`);const o=Se({abi:ce,functionName:"executeBatch",args:[c.calls.map(x=>({target:x.to,value:de(x.value??"0x0"),data:x.data??"0x"}))]}),u=[...s??[],{data:o,to:n,value:"0x0"}],d=at({method:"wallet_sendCalls",params:[{...c,calls:u,from:t,version:"2.0.0",atomicRequired:!0}]},{spendPermissions:{request:{spender:n}}}),h=await a(d);let m=h.id;return(l=h.capabilities)!=null&&l.spendPermissions&&Dn.set(h.capabilities.spendPermissions.permissions),e.method==="eth_sendTransaction"?Va({client:r,id:m}):h}async function nd({globalAccountAddress:e,subAccountAddress:t,client:n,request:r,globalAccountRequest:a}){var c;const i=(c=n.chain)==null?void 0:c.id;ie(i,v.rpc.internal("invalid chainId"));try{await Ku()}catch{throw v.provider.userRejectedRequest({message:"User cancelled funding"})}return await Wa({request:r,globalAccountAddress:e,subAccountAddress:t,client:n,globalAccountRequest:a,chainId:i})}class rd{constructor(t){D(this,"communicator");D(this,"keyManager");D(this,"callback");D(this,"accounts");D(this,"chain");var a;this.communicator=t.communicator,this.callback=t.callback,this.keyManager=new Lu;const{account:n,chains:r}=b.getState();this.accounts=n.accounts??[],this.chain=n.chain??{id:((a=t.metadata.appChainIds)==null?void 0:a[0])??1},r&&xr(r)}get isConnected(){return this.accounts.length>0}async handshake(t){var r,a;const n=he.get(t);Ko({method:t.method,correlationId:n});try{await((a=(r=this.communicator).waitForPopupLoaded)==null?void 0:a.call(r));const i=await this.createRequestMessage({handshake:{method:t.method,params:t.params??[]}},n),s=await this.communicator.postRequestAndWaitForResponse(i);if("failure"in s.content)throw s.content.failure;const c=await Ca("public",s.sender);await this.keyManager.setPeerPublicKey(c);const o=await this.decryptResponseMessage(s);this.handleResponse(t,o),qo({method:t.method,correlationId:n})}catch(i){throw Vo({method:t.method,correlationId:n,errorMessage:Ie(i)}),i}}async request(t){const n=he.get(t);Zo({method:t.method,correlationId:n});try{const r=await this._request(t);return Jo({method:t.method,correlationId:n}),r}catch(r){throw Wo({method:t.method,correlationId:n,errorMessage:Ie(r)}),r}}async _request(t){var n,r,a,i,s,c,o;if(this.accounts.length===0)switch(t.method){case"wallet_switchEthereumChain":{Nr(t.params),this.chain.id=Number(t.params[0].chainId);return}case"wallet_connect":{await((r=(n=this.communicator).waitForPopupLoaded)==null?void 0:r.call(n)),await Rn();const u=b.subAccountsConfig.get(),d=at(t,(u==null?void 0:u.capabilities)??{});return this.sendRequestToPopup(d)}case"experimental_requestInfo":case"wallet_sendCalls":case"wallet_sign":return this.sendRequestToPopup(t);default:throw v.provider.unauthorized()}if(this.shouldRequestUseSubAccountSigner(t)){const u=he.get(t);Yo({method:t.method,correlationId:u});try{const d=await this.sendRequestToSubAccountSigner(t);return Qo({method:t.method,correlationId:u}),d}catch(d){throw Xo({method:t.method,correlationId:u,errorMessage:Ie(d)}),d}}if(t.method.startsWith("experimental_"))return this.sendRequestToPopup(t);switch(t.method){case"eth_requestAccounts":case"eth_accounts":{const u=b.subAccounts.get(),d=b.subAccountsConfig.get();return u!=null&&u.address&&(this.accounts=(d==null?void 0:d.defaultAccount)==="sub"?ft(this.accounts,u.address):mt(this.accounts,u.address)),(a=this.callback)==null||a.call(this,"connect",{chainId:U(this.chain.id)}),this.accounts}case"eth_coinbase":return this.accounts[0];case"net_version":return this.chain.id;case"eth_chainId":return U(this.chain.id);case"wallet_getCapabilities":return this.handleGetCapabilitiesRequest(t);case"wallet_switchEthereumChain":return this.handleSwitchChainRequest(t);case"eth_ecRecover":case"personal_sign":case"wallet_sign":case"personal_ecRecover":case"eth_signTransaction":case"eth_sendTransaction":case"eth_signTypedData_v1":case"eth_signTypedData_v3":case"eth_signTypedData_v4":case"eth_signTypedData":case"wallet_addEthereumChain":case"wallet_watchAsset":case"wallet_sendCalls":case"wallet_showCallsStatus":case"wallet_grantPermissions":return this.sendRequestToPopup(t);case"wallet_connect":{await((s=(i=this.communicator).waitForPopupLoaded)==null?void 0:s.call(i)),await Rn();const u=b.subAccountsConfig.get(),d=at(t,(u==null?void 0:u.capabilities)??{}),h=await this.sendRequestToPopup(d);return(c=this.callback)==null||c.call(this,"connect",{chainId:U(this.chain.id)}),h}case"wallet_getSubAccounts":{const u=b.subAccounts.get();if(u!=null&&u.address)return{subAccounts:[u]};if(!this.chain.rpcUrl)throw v.rpc.internal("No RPC URL set for chain");const d=await et(t,this.chain.rpcUrl);if(xe(d.subAccounts,"subAccounts"),d.subAccounts.length>0){dt(d.subAccounts[0]);const h=d.subAccounts[0];b.subAccounts.set({address:h.address,factory:h.factory,factoryData:h.factoryData})}return d}case"wallet_addSubAccount":return this.addSubAccount(t);case"coinbase_fetchPermissions":{zu(t);const u=Hu(t),d=await et(u,tn),h=st((o=u.params)==null?void 0:o[0].chainId);return b.spendPermissions.set(d.permissions.map(m=>({...m,chainId:h}))),d}case"coinbase_fetchPermission":{const d=await et(t,tn);return d.permission&&d.permission.chainId&&b.spendPermissions.set([d.permission]),d}default:if(!this.chain.rpcUrl)throw v.rpc.internal("No RPC URL set for chain");return et(t,this.chain.rpcUrl)}}async sendRequestToPopup(t){var a,i;await((i=(a=this.communicator).waitForPopupLoaded)==null?void 0:i.call(a));const n=await this.sendEncryptedRequest(t),r=await this.decryptResponseMessage(n);return this.handleResponse(t,r)}async handleResponse(t,n){var a,i,s,c,o;const r=n.result;if("error"in r)throw r.error;switch(t.method){case"eth_requestAccounts":{const u=r.value;this.accounts=u,b.account.set({accounts:u,chain:this.chain}),(a=this.callback)==null||a.call(this,"accountsChanged",u);break}case"wallet_connect":{const u=r.value,d=u.accounts.map(p=>p.address);this.accounts=d,b.account.set({accounts:d});const h=u.accounts.at(0),m=h==null?void 0:h.capabilities;if(m!=null&&m.subAccounts){const p=m==null?void 0:m.subAccounts;xe(p,"subAccounts"),dt(p[0]),b.subAccounts.set({address:p[0].address,factory:p[0].factory,factoryData:p[0].factoryData})}const l=b.subAccounts.get(),x=b.subAccountsConfig.get();l!=null&&l.address&&(this.accounts=(x==null?void 0:x.defaultAccount)==="sub"?ft(this.accounts,l.address):mt(this.accounts,l.address));const f=(s=(i=u==null?void 0:u.accounts)==null?void 0:i[0].capabilities)==null?void 0:s.spendPermissions;f&&"permissions"in f&&b.spendPermissions.set(f==null?void 0:f.permissions),(c=this.callback)==null||c.call(this,"accountsChanged",this.accounts);break}case"wallet_addSubAccount":{dt(r.value);const u=r.value;b.subAccounts.set(u);const d=b.subAccountsConfig.get();this.accounts=(d==null?void 0:d.defaultAccount)==="sub"?ft(this.accounts,u.address):mt(this.accounts,u.address),(o=this.callback)==null||o.call(this,"accountsChanged",this.accounts);break}}return r.value}async cleanup(){var n;const t=b.config.get().metadata;await this.keyManager.clear(),b.account.clear(),b.subAccounts.clear(),b.spendPermissions.clear(),b.chains.clear(),this.accounts=[],this.chain={id:((n=t==null?void 0:t.appChainIds)==null?void 0:n[0])??1}}async handleSwitchChainRequest(t){Nr(t.params);const n=Ho(t.params[0].chainId);if(this.updateChain(n))return null;const a=await this.sendRequestToPopup(t);return a===null&&this.updateChain(n),a}async handleGetCapabilitiesRequest(t){Gu(t.params);const n=t.params[0],r=t.params[1];if(!this.accounts.some(c=>nr(c,n)))throw v.provider.unauthorized("no active account found when getting capabilities");const a=b.getState().account.capabilities;if(!a)return{};if(!r||r.length===0)return a;const i=new Set(r.map(c=>st(c)));return Object.fromEntries(Object.entries(a).filter(([c])=>{try{const o=st(c);return i.has(o)}catch{return!1}}))}async sendEncryptedRequest(t){const n=await this.keyManager.getSharedSecret();if(!n)throw v.provider.unauthorized("No shared secret found when encrypting request");const r=await Gc({action:t,chainId:this.chain.id},n),a=he.get(t),i=await this.createRequestMessage({encrypted:r},a);return this.communicator.postRequestAndWaitForResponse(i)}async createRequestMessage(t,n){const r=await Ia("public",await this.keyManager.getOwnPublicKey());return{id:crypto.randomUUID(),correlationId:n,sender:r,content:t,timestamp:new Date}}async decryptResponseMessage(t){var c,o,u;const n=t.content;if("failure"in n)throw n.failure;const r=await this.keyManager.getSharedSecret();if(!r)throw v.provider.unauthorized("Invalid session: no shared secret found when decrypting response");const a=await zc(n.encrypted,r),i=(c=a.data)==null?void 0:c.chains;if(i){const d=(o=a.data)==null?void 0:o.nativeCurrencies,h=Object.entries(i).map(([m,l])=>{const x=d==null?void 0:d[Number(m)];return{id:Number(m),rpcUrl:l,...x?{nativeCurrency:x}:{}}});b.chains.set(h),this.updateChain(this.chain.id,h),xr(h)}const s=(u=a.data)==null?void 0:u.capabilities;return s&&b.account.set({capabilities:s}),a}updateChain(t,n){var s;const r=b.getState(),a=n??r.chains,i=a==null?void 0:a.find(c=>c.id===t);return i?(i!==this.chain&&(this.chain=i,b.account.set({chain:i}),(s=this.callback)==null||s.call(this,"chainChanged",ya(i.id))),!0):!1}async addSubAccount(t){var c,o,u,d,h;const r=b.getState().subAccount,a=b.subAccountsConfig.get(),i=Array.isArray(t.params)&&t.params.length>0&&((o=(c=t.params[0])==null?void 0:c.account)!=null&&o.address)?t.params[0].account.address:void 0;if(r!=null&&r.address&&(!i||nr(i,r.address)))return this.accounts=(a==null?void 0:a.defaultAccount)==="sub"?ft(this.accounts,r.address):mt(this.accounts,r.address),(u=this.callback)==null||u.call(this,"accountsChanged",this.accounts),r;if(await((h=(d=this.communicator).waitForPopupLoaded)==null?void 0:h.call(d)),Array.isArray(t.params)&&t.params.length>0&&t.params[0].account&&t.params[0].account.type==="create"){let m;if(t.params[0].account.keys&&t.params[0].account.keys.length>0)m=t.params[0].account.keys;else{const l=b.subAccountsConfig.get()??{},{account:x}=l.toOwnerAccount?await l.toOwnerAccount():await Bn();if(!x)throw v.provider.unauthorized("could not get subaccount owner account when adding sub account");m=[{type:x.address?"address":"webauthn-p256",publicKey:x.address||x.publicKey}]}t.params[0].account.keys=m}const s=await this.sendRequestToPopup(t);return dt(s),s}shouldRequestUseSubAccountSigner(t){const n=Rr(t),r=b.subAccounts.get();return n?n.toLowerCase()===(r==null?void 0:r.address.toLowerCase()):!1}async sendRequestToSubAccountSigner(t){var f,p,g;const n=b.subAccounts.get(),r=b.subAccountsConfig.get(),a=b.config.get();ie(n==null?void 0:n.address,v.provider.unauthorized("no active sub account when sending request to sub account signer"));const i=r!=null&&r.toOwnerAccount?await r.toOwnerAccount():await Bn();ie(i==null?void 0:i.account,v.provider.unauthorized("no active sub account owner when sending request to sub account signer")),Rr(t)===void 0&&(t=Fu(t,n.address));const c=this.accounts.find(y=>y.toLowerCase()!==n.address.toLowerCase());ie(c,v.provider.unauthorized("no global account found when sending request to sub account signer"));const o=Wu({attribution:(f=a.preference)==null?void 0:f.attribution,dappOrigin:window.location.origin}),u=t.method==="wallet_sendCalls"&&((g=(p=t.params)==null?void 0:p[0])==null?void 0:g.chainId),d=u?st(u):this.chain.id,h=Pa(d);if(ie(h,v.rpc.internal(`client not found for chainId ${d} when sending request to sub account signer`)),["eth_sendTransaction","wallet_sendCalls"].includes(t.method)){const y=b.subAccountsConfig.get();if((y==null?void 0:y.funding)==="spend-permissions"&&Dn.get().length===0)return await Wa({request:t,globalAccountAddress:c,subAccountAddress:n.address,client:h,globalAccountRequest:this.sendRequestToPopup.bind(this),chainId:d})}const m=i.account.type==="local"?i.account.address:i.account.publicKey;let l=await Za({address:n.address,factory:n.factory,factoryData:n.factoryData,publicKey:m,client:h});if(l===-1){const y=he.get(t);_o({method:t.method,correlationId:y});try{l=await td({ownerAccount:i.account,globalAccountRequest:this.sendRequestToPopup.bind(this),chainId:d}),$o({method:t.method,correlationId:y})}catch(E){return ec({method:t.method,correlationId:y,errorMessage:Ie(E)}),v.provider.unauthorized("failed to add sub account owner when sending request to sub account signer")}}const{request:x}=await $u({address:n.address,owner:i.account,client:h,factory:n.factory,factoryData:n.factoryData,parentAddress:c,attribution:o?{suffix:o}:void 0,ownerIndex:l});try{return await x(t)}catch(y){const E=b.subAccountsConfig.get();if((E==null?void 0:E.funding)==="manual")throw y;let O;if(la(y))O=JSON.parse(y.details);else if(yr(y))O=y;else throw y;if(!(yr(O)&&O.data)||!O.data)throw y;const R=he.get(t);tc({method:t.method,correlationId:R});try{const T=await nd({errorData:O.data,globalAccountAddress:c,subAccountAddress:n.address,client:h,request:t,globalAccountRequest:this.request.bind(this)});return nc({method:t.method,correlationId:R}),T}catch(T){throw console.error(T),rc({method:t.method,correlationId:R,errorMessage:Ie(T)}),y}}}}class ad extends To{constructor({metadata:n,preference:{walletUrl:r,...a}}){super();D(this,"communicator");D(this,"signer");D(this,"isBaseAccount",!0);this.communicator=new Po({url:r,metadata:n,preference:a}),this.signer=new rd({metadata:n,communicator:this.communicator,callback:this.emit.bind(this)})}async request(n){const r=crypto.randomUUID();he.set(n,r),Bo({method:n.method,correlationId:r});try{const a=await this._request(n);return No({method:n.method,correlationId:r}),a}catch(a){throw Ro({method:n.method,correlationId:r,errorMessage:Ie(a)}),a}finally{he.delete(n)}}async _request(n){var r;try{if(Hc(n),!this.signer.isConnected)switch(n.method){case"eth_requestAccounts":{await this.signer.handshake({method:"handshake"}),await Rn(),await this.signer.request({method:"wallet_connect",params:[{version:"1",capabilities:{...((r=b.subAccountsConfig.get())==null?void 0:r.capabilities)??{}}}]});break}case"wallet_connect":return await this.signer.handshake({method:"handshake"}),await this.signer.request(n);case"wallet_switchEthereumChain":return await this.signer.request(n);case"wallet_sendCalls":case"wallet_sign":try{return await this.signer.handshake({method:"handshake"}),await this.signer.request(n)}finally{await this.signer.cleanup()}case"wallet_getCallsStatus":return await et(n,tn);case"eth_accounts":return[];case"net_version":return 1;case"eth_chainId":return ya(1);default:throw v.provider.unauthorized("Must call 'eth_requestAccounts' before other methods")}return await this.signer.request(n)}catch(a){const{code:i}=a;return i===V.provider.unauthorized&&await this.disconnect(),Promise.reject(Oo(a))}}async disconnect(){await this.signer.cleanup(),he.clear(),this.emit("disconnect",v.provider.disconnected("User initiated disconnection"))}}const id="isCoinbaseBrowser";function sd(){var e;try{const t=((e=window.top)==null?void 0:e.ethereum)??window.ethereum;return t!=null&&t[id]?t:null}catch(t){return Uo({errorMessage:Ie(t)}),null}}function xd(e){var a,i,s,c,o;const t={metadata:{appName:e.appName||"App",appLogoUrl:e.appLogoUrl||"",appChainIds:e.appChainIds||[]},preference:e.preference??{},paymasterUrls:e.paymasterUrls};(a=e.subAccounts)!=null&&a.toOwnerAccount&&hr(e.subAccounts.toOwnerAccount),b.subAccountsConfig.set({toOwnerAccount:(i=e.subAccounts)==null?void 0:i.toOwnerAccount,creation:((s=e.subAccounts)==null?void 0:s.creation)??"manual",defaultAccount:((c=e.subAccounts)==null?void 0:c.defaultAccount)??"universal",funding:((o=e.subAccounts)==null?void 0:o.funding)??"spend-permissions"}),b.config.set(t),b.persist.rehydrate(),$s(),to(t.preference),t.preference.telemetry!==!1&&Ks();let n=null;const r={getProvider:()=>(n||(n=sd()??new ad(t)),n),subAccount:{async create(u){var d;return await((d=r.getProvider())==null?void 0:d.request({method:"wallet_addSubAccount",params:[{version:"1",account:u}]}))},async get(){var m,l;const u=b.subAccounts.get();if(u!=null&&u.address)return u;const h=(l=(await((m=r.getProvider())==null?void 0:m.request({method:"wallet_connect",params:[{version:"1",capabilities:{}}]}))).accounts[0].capabilities)==null?void 0:l.subAccounts;return Array.isArray(h)?h[0]:null},addOwner:async({address:u,publicKey:d,chainId:h})=>{var f,p;const m=b.subAccounts.get(),l=b.account.get();ie(l,new Error("account does not exist")),ie(m==null?void 0:m.address,new Error("subaccount does not exist"));const x=[];if(d){const[g,y]=Fr([{type:"bytes32"},{type:"bytes32"}],d);x.push({to:m.address,data:Se({abi:ce,functionName:"addOwnerPublicKey",args:[g,y]}),value:we(0)})}return u&&x.push({to:m.address,data:Se({abi:ce,functionName:"addOwnerAddress",args:[u]}),value:we(0)}),await((p=r.getProvider())==null?void 0:p.request({method:"wallet_sendCalls",params:[{calls:x,chainId:we(h),from:(f=l.accounts)==null?void 0:f[0],version:"1"}]}))},setToOwnerAccount(u){hr(u),b.subAccountsConfig.set({toOwnerAccount:u})}}};return r}export{qe as VERSION,xd as createBaseAccountSDK,Bn as getCryptoKeyAccount};
|
|
15
|
+
`,n&&`factory: ${n}`,r&&`factoryData: ${r}`,a&&`initCode: ${a}`,i&&`sender: ${i}`].filter(Boolean),name:"InitCodeMustReturnSenderError"})}}Object.defineProperty(fn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa14/});class mn extends C{constructor({cause:t}){super("Smart Account does not have sufficient funds to execute the User Operation.",{cause:t,metaMessages:["This could arise when:","- the Smart Account does not have sufficient funds to cover the required prefund, or","- a Paymaster was not provided"].filter(Boolean),name:"InsufficientPrefundError"})}}Object.defineProperty(mn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa21/});class yn extends C{constructor({cause:t}){super("Bundler attempted to call an invalid function on the EntryPoint.",{cause:t,name:"InternalCallOnlyError"})}}Object.defineProperty(yn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa92/});class hn extends C{constructor({cause:t}){super("Bundler used an invalid aggregator for handling aggregated User Operations.",{cause:t,name:"InvalidAggregatorError"})}}Object.defineProperty(hn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa96/});class gn extends C{constructor({cause:t,nonce:n}){super("Invalid Smart Account nonce used for User Operation.",{cause:t,metaMessages:[n&&`nonce: ${n}`].filter(Boolean),name:"InvalidAccountNonceError"})}}Object.defineProperty(gn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa25/});class bn extends C{constructor({cause:t}){super("Bundler has not set a beneficiary address.",{cause:t,name:"InvalidBeneficiaryError"})}}Object.defineProperty(bn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa90/});class wt extends C{constructor({cause:t}){super("Invalid fields set on User Operation.",{cause:t,name:"InvalidFieldsError"})}}Object.defineProperty(wt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class wn extends C{constructor({cause:t,paymasterAndData:n}){super("Paymaster properties provided are invalid.",{cause:t,metaMessages:["This could arise when:","- the `paymasterAndData` property is of an incorrect length\n",n&&`paymasterAndData: ${n}`].filter(Boolean),name:"InvalidPaymasterAndDataError"})}}Object.defineProperty(wn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa93/});class Ce extends C{constructor({cause:t}){super("Paymaster deposit for the User Operation is too low.",{cause:t,metaMessages:["This could arise when:","- the Paymaster has deposited less than the expected amount via the `deposit` function"].filter(Boolean),name:"PaymasterDepositTooLowError"})}}Object.defineProperty(Ce,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32508});Object.defineProperty(Ce,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa31/});class vn extends C{constructor({cause:t}){super("The `validatePaymasterUserOp` function on the Paymaster reverted.",{cause:t,name:"PaymasterFunctionRevertedError"})}}Object.defineProperty(vn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa33/});class xn extends C{constructor({cause:t}){super("The Paymaster contract has not been deployed.",{cause:t,name:"PaymasterNotDeployedError"})}}Object.defineProperty(xn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa30/});class vt extends C{constructor({cause:t}){super("UserOperation rejected because paymaster (or signature aggregator) is throttled/banned.",{cause:t,name:"PaymasterRateLimitError"})}}Object.defineProperty(vt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32504});class xt extends C{constructor({cause:t}){super("UserOperation rejected because paymaster (or signature aggregator) is throttled/banned.",{cause:t,name:"PaymasterStakeTooLowError"})}}Object.defineProperty(xt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32505});class En extends C{constructor({cause:t}){super("Paymaster `postOp` function reverted.",{cause:t,name:"PaymasterPostOpFunctionRevertedError"})}}Object.defineProperty(En,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa50/});class Sn extends C{constructor({cause:t,factory:n,factoryData:r,initCode:a}){super("Smart Account has already been deployed.",{cause:t,metaMessages:["Remove the following properties and try again:",n&&"`factory`",r&&"`factoryData`",a&&"`initCode`"].filter(Boolean),name:"SenderAlreadyConstructedError"})}}Object.defineProperty(Sn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa10/});class Et extends C{constructor({cause:t}){super("UserOperation rejected because account signature check failed (or paymaster signature, if the paymaster uses its data as signature).",{cause:t,name:"SignatureCheckFailedError"})}}Object.defineProperty(Et,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32507});class kn extends C{constructor({cause:t}){super("The `validateUserOp` function on the Smart Account reverted.",{cause:t,name:"SmartAccountFunctionRevertedError"})}}Object.defineProperty(kn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa23/});class St extends C{constructor({cause:t}){super("UserOperation rejected because account specified unsupported signature aggregator.",{cause:t,name:"UnsupportedSignatureAggregatorError"})}}Object.defineProperty(St,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32506});class An extends C{constructor({cause:t}){super("User Operation expired.",{cause:t,metaMessages:["This could arise when:","- the `validAfter` or `validUntil` values returned from `validateUserOp` on the Smart Account are not satisfied"].filter(Boolean),name:"UserOperationExpiredError"})}}Object.defineProperty(An,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa22/});class Pn extends C{constructor({cause:t}){super("Paymaster for User Operation expired.",{cause:t,metaMessages:["This could arise when:","- the `validAfter` or `validUntil` values returned from `validatePaymasterUserOp` on the Paymaster are not satisfied"].filter(Boolean),name:"UserOperationPaymasterExpiredError"})}}Object.defineProperty(Pn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa32/});class On extends C{constructor({cause:t}){super("Signature provided for the User Operation is invalid.",{cause:t,metaMessages:["This could arise when:","- the `signature` for the User Operation is incorrectly computed, and unable to be verified by the Smart Account"].filter(Boolean),name:"UserOperationSignatureError"})}}Object.defineProperty(On,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa24/});class In extends C{constructor({cause:t}){super("Signature provided for the User Operation is invalid.",{cause:t,metaMessages:["This could arise when:","- the `signature` for the User Operation is incorrectly computed, and unable to be verified by the Paymaster"].filter(Boolean),name:"UserOperationPaymasterSignatureError"})}}Object.defineProperty(In,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa34/});class kt extends C{constructor({cause:t}){super("User Operation rejected by EntryPoint's `simulateValidation` during account creation or validation.",{cause:t,name:"UserOperationRejectedByEntryPointError"})}}Object.defineProperty(kt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32500});class At extends C{constructor({cause:t}){super("User Operation rejected by Paymaster's `validatePaymasterUserOp`.",{cause:t,name:"UserOperationRejectedByPaymasterError"})}}Object.defineProperty(At,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32501});class Pt extends C{constructor({cause:t}){super("User Operation rejected with op code validation error.",{cause:t,name:"UserOperationRejectedByOpCodeError"})}}Object.defineProperty(Pt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32502});class Ot extends C{constructor({cause:t}){super("UserOperation out of time-range: either wallet or paymaster returned a time-range, and it is already expired (or will expire soon).",{cause:t,name:"UserOperationOutOfTimeRangeError"})}}Object.defineProperty(Ot,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32503});class uc extends C{constructor({cause:t}){super(`An error occurred while executing user operation: ${t==null?void 0:t.shortMessage}`,{cause:t,name:"UnknownBundlerError"})}}class Cn extends C{constructor({cause:t}){super("User Operation verification gas limit exceeded.",{cause:t,metaMessages:["This could arise when:","- the gas used for verification exceeded the `verificationGasLimit`"].filter(Boolean),name:"VerificationGasLimitExceededError"})}}Object.defineProperty(Cn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa40/});class Tn extends C{constructor({cause:t}){super("User Operation verification gas limit is too low.",{cause:t,metaMessages:["This could arise when:","- the `verificationGasLimit` is too low to verify the User Operation"].filter(Boolean),name:"VerificationGasLimitTooLowError"})}}Object.defineProperty(Tn,"message",{enumerable:!0,configurable:!0,writable:!0,value:/aa41/});class dc extends C{constructor(t,{callData:n,callGasLimit:r,docsPath:a,factory:i,factoryData:s,initCode:c,maxFeePerGas:o,maxPriorityFeePerGas:u,nonce:d,paymaster:h,paymasterAndData:m,paymasterData:l,paymasterPostOpGasLimit:x,paymasterVerificationGasLimit:f,preVerificationGas:p,sender:g,signature:y,verificationGasLimit:E}){const O=Ei({callData:n,callGasLimit:r,factory:i,factoryData:s,initCode:c,maxFeePerGas:typeof o<"u"&&`${er(o)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${er(u)} gwei`,nonce:d,paymaster:h,paymasterAndData:m,paymasterData:l,paymasterPostOpGasLimit:x,paymasterVerificationGasLimit:f,preVerificationGas:p,sender:g,signature:y,verificationGasLimit:E});super(t.shortMessage,{cause:t,docsPath:a,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Request Arguments:",O].filter(Boolean),name:"UserOperationExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class lc extends C{constructor({hash:t}){super(`User Operation receipt with hash "${t}" could not be found. The User Operation may not have been processed yet.`,{name:"UserOperationReceiptNotFoundError"})}}class pc extends C{constructor({hash:t}){super(`User Operation with hash "${t}" could not be found.`,{name:"UserOperationNotFoundError"})}}class vr extends C{constructor({hash:t}){super(`Timed out while waiting for User Operation with hash "${t}" to be confirmed.`,{name:"WaitForUserOperationReceiptTimeoutError"})}}const fc=[ze,wt,Ce,vt,xt,Et,St,Ot,kt,At,Pt];function mc(e,t){const n=(e.details||"").toLowerCase();if(on.message.test(n))return new on({cause:e});if(cn.message.test(n))return new cn({cause:e});if(un.message.test(n))return new un({cause:e});if(dn.message.test(n))return new dn({cause:e});if(ln.message.test(n))return new ln({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode});if(pn.message.test(n))return new pn({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode});if(fn.message.test(n))return new fn({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode,sender:t.sender});if(mn.message.test(n))return new mn({cause:e});if(yn.message.test(n))return new yn({cause:e});if(gn.message.test(n))return new gn({cause:e,nonce:t.nonce});if(hn.message.test(n))return new hn({cause:e});if(bn.message.test(n))return new bn({cause:e});if(wn.message.test(n))return new wn({cause:e});if(Ce.message.test(n))return new Ce({cause:e});if(vn.message.test(n))return new vn({cause:e});if(xn.message.test(n))return new xn({cause:e});if(En.message.test(n))return new En({cause:e});if(kn.message.test(n))return new kn({cause:e});if(Sn.message.test(n))return new Sn({cause:e,factory:t.factory,factoryData:t.factoryData,initCode:t.initCode});if(An.message.test(n))return new An({cause:e});if(Pn.message.test(n))return new Pn({cause:e});if(In.message.test(n))return new In({cause:e});if(On.message.test(n))return new On({cause:e});if(Cn.message.test(n))return new Cn({cause:e});if(Tn.message.test(n))return new Tn({cause:e});const r=e.walk(a=>fc.some(i=>i.code===a.code));if(r){if(r.code===ze.code)return new ze({cause:e,data:r.data,message:r.details});if(r.code===wt.code)return new wt({cause:e});if(r.code===Ce.code)return new Ce({cause:e});if(r.code===vt.code)return new vt({cause:e});if(r.code===xt.code)return new xt({cause:e});if(r.code===Et.code)return new Et({cause:e});if(r.code===St.code)return new St({cause:e});if(r.code===Ot.code)return new Ot({cause:e});if(r.code===kt.code)return new kt({cause:e});if(r.code===At.code)return new At({cause:e});if(r.code===Pt.code)return new Pt({cause:e})}return new uc({cause:e})}function wa(e,{calls:t,docsPath:n,...r}){const a=(()=>{const i=mc(e,r);if(t&&i instanceof ze){const s=yc(i),c=t==null?void 0:t.filter(o=>o.abi);if(s&&c.length>0)return hc({calls:c,revertData:s})}return i})();return new dc(a,{docsPath:n,...r})}function yc(e){let t;return e.walk(n=>{var a,i,s,c;const r=n;if(typeof r.data=="string"||typeof((a=r.data)==null?void 0:a.revertData)=="string"||!(r instanceof C)&&typeof r.message=="string"){const o=(c=(s=((i=r.data)==null?void 0:i.revertData)||r.data||r.message).match)==null?void 0:c.call(s,/(0x[A-Za-z0-9]*)/);if(o)return t=o[1],!0}return!1}),t}function hc(e){const{calls:t,revertData:n}=e,{abi:r,functionName:a,args:i,to:s}=(()=>{const o=t==null?void 0:t.filter(d=>!!d.abi);if(o.length===1)return o[0];const u=o.filter(d=>{try{return!!li({abi:d.abi,data:n})}catch{return!1}});return u.length===1?u[0]:{abi:[],functionName:o.reduce((d,h)=>`${d?`${d} | `:""}${h.functionName}`,""),args:void 0,to:void 0}})(),c=n==="0x"?new Si({functionName:a}):new ki({abi:r,data:n,functionName:a});return new Ai(c,{abi:r,args:i,contractAddress:s,functionName:a})}function gc(e){const t={};return e.callGasLimit&&(t.callGasLimit=BigInt(e.callGasLimit)),e.preVerificationGas&&(t.preVerificationGas=BigInt(e.preVerificationGas)),e.verificationGasLimit&&(t.verificationGasLimit=BigInt(e.verificationGasLimit)),e.paymasterPostOpGasLimit&&(t.paymasterPostOpGasLimit=BigInt(e.paymasterPostOpGasLimit)),e.paymasterVerificationGasLimit&&(t.paymasterVerificationGasLimit=BigInt(e.paymasterVerificationGasLimit)),t}function Rt(e){const t={};return typeof e.callData<"u"&&(t.callData=e.callData),typeof e.callGasLimit<"u"&&(t.callGasLimit=U(e.callGasLimit)),typeof e.factory<"u"&&(t.factory=e.factory),typeof e.factoryData<"u"&&(t.factoryData=e.factoryData),typeof e.initCode<"u"&&(t.initCode=e.initCode),typeof e.maxFeePerGas<"u"&&(t.maxFeePerGas=U(e.maxFeePerGas)),typeof e.maxPriorityFeePerGas<"u"&&(t.maxPriorityFeePerGas=U(e.maxPriorityFeePerGas)),typeof e.nonce<"u"&&(t.nonce=U(e.nonce)),typeof e.paymaster<"u"&&(t.paymaster=e.paymaster),typeof e.paymasterAndData<"u"&&(t.paymasterAndData=e.paymasterAndData||"0x"),typeof e.paymasterData<"u"&&(t.paymasterData=e.paymasterData),typeof e.paymasterPostOpGasLimit<"u"&&(t.paymasterPostOpGasLimit=U(e.paymasterPostOpGasLimit)),typeof e.paymasterVerificationGasLimit<"u"&&(t.paymasterVerificationGasLimit=U(e.paymasterVerificationGasLimit)),typeof e.preVerificationGas<"u"&&(t.preVerificationGas=U(e.preVerificationGas)),typeof e.sender<"u"&&(t.sender=e.sender),typeof e.signature<"u"&&(t.signature=e.signature),typeof e.verificationGasLimit<"u"&&(t.verificationGasLimit=U(e.verificationGasLimit)),typeof e.authorization<"u"&&(t.eip7702Auth=bc(e.authorization)),t}function bc(e){return{address:e.address,chainId:U(e.chainId),nonce:U(e.nonce),r:e.r?U(BigInt(e.r),{size:32}):ue("0x",{size:32}),s:e.s?U(BigInt(e.s),{size:32}):ue("0x",{size:32}),yParity:e.yParity?U(e.yParity,{size:1}):ue("0x",{size:32})}}async function wc(e,t){const{chainId:n,entryPointAddress:r,context:a,...i}=t,s=Rt(i),{paymasterPostOpGasLimit:c,paymasterVerificationGasLimit:o,...u}=await e.request({method:"pm_getPaymasterData",params:[{...s,callGasLimit:s.callGasLimit??"0x0",verificationGasLimit:s.verificationGasLimit??"0x0",preVerificationGas:s.preVerificationGas??"0x0"},r,U(n),a]});return{...u,...c&&{paymasterPostOpGasLimit:de(c)},...o&&{paymasterVerificationGasLimit:de(o)}}}async function vc(e,t){const{chainId:n,entryPointAddress:r,context:a,...i}=t,s=Rt(i),{paymasterPostOpGasLimit:c,paymasterVerificationGasLimit:o,...u}=await e.request({method:"pm_getPaymasterStubData",params:[{...s,callGasLimit:s.callGasLimit??"0x0",verificationGasLimit:s.verificationGasLimit??"0x0",preVerificationGas:s.preVerificationGas??"0x0"},r,U(n),a]});return{...u,...c&&{paymasterPostOpGasLimit:de(c)},...o&&{paymasterVerificationGasLimit:de(o)}}}const xc=["factory","fees","gas","paymaster","nonce","signature","authorization"];async function zn(e,t){var T;const n=t,{account:r=e.account,parameters:a=xc,stateOverride:i}=n;if(!r)throw new Nn;const s=Un(r),c=e,o=n.paymaster??(c==null?void 0:c.paymaster),u=typeof o=="string"?o:void 0,{getPaymasterStubData:d,getPaymasterData:h}=(()=>{if(o===!0)return{getPaymasterStubData:w=>ge(c,vc,"getPaymasterStubData")(w),getPaymasterData:w=>ge(c,wc,"getPaymasterData")(w)};if(typeof o=="object"){const{getPaymasterStubData:w,getPaymasterData:k}=o;return{getPaymasterStubData:k&&w?w:k,getPaymasterData:k&&w?k:void 0}}return{getPaymasterStubData:void 0,getPaymasterData:void 0}})(),m=n.paymasterContext?n.paymasterContext:c==null?void 0:c.paymasterContext;let l={...n,paymaster:u,sender:s.address};const[x,f,p,g,y]=await Promise.all([(async()=>n.calls?s.encodeCalls(n.calls.map(w=>{const k=w;return k.abi?{data:Se(k),to:k.to,value:k.value}:k})):n.callData)(),(async()=>{if(!a.includes("factory"))return;if(n.initCode)return{initCode:n.initCode};if(n.factory&&n.factoryData)return{factory:n.factory,factoryData:n.factoryData};const{factory:w,factoryData:k}=await s.getFactoryArgs();return s.entryPoint.version==="0.6"?{initCode:w&&k?Le([w,k]):void 0}:{factory:w,factoryData:k}})(),(async()=>{var w;if(a.includes("fees")){if(typeof n.maxFeePerGas=="bigint"&&typeof n.maxPriorityFeePerGas=="bigint")return l;if((w=c==null?void 0:c.userOperation)!=null&&w.estimateFeesPerGas){const k=await c.userOperation.estimateFeesPerGas({account:s,bundlerClient:c,userOperation:l});return{...l,...k}}try{const k=c.client??e,I=await ge(k,Pi,"estimateFeesPerGas")({chain:k.chain,type:"eip1559"});return{maxFeePerGas:typeof n.maxFeePerGas=="bigint"?n.maxFeePerGas:BigInt(2n*I.maxFeePerGas),maxPriorityFeePerGas:typeof n.maxPriorityFeePerGas=="bigint"?n.maxPriorityFeePerGas:BigInt(2n*I.maxPriorityFeePerGas)}}catch{return}}})(),(async()=>{if(a.includes("nonce"))return typeof n.nonce=="bigint"?n.nonce:s.getNonce()})(),(async()=>{if(a.includes("authorization")){if(typeof n.authorization=="object")return n.authorization;if(s.authorization&&!await s.isDeployed())return{...await Oi(s.client,s.authorization),r:"0xfffffffffffffffffffffffffffffff000000000000000000000000000000000",s:"0x7aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",yParity:1}}})()]);typeof x<"u"&&(l.callData=x),typeof f<"u"&&(l={...l,...f}),typeof p<"u"&&(l={...l,...p}),typeof g<"u"&&(l.nonce=g),typeof y<"u"&&(l.authorization=y),a.includes("signature")&&(typeof n.signature<"u"?l.signature=n.signature:l.signature=await s.getStubSignature(l)),s.entryPoint.version==="0.6"&&!l.initCode&&(l.initCode="0x");let E;async function O(){return E||(e.chain?e.chain.id:(E=await ge(e,Lr,"getChainId")({}),E))}let R=!1;if(a.includes("paymaster")&&d&&!u&&!n.paymasterAndData){const{isFinal:w=!1,sponsor:k,...I}=await d({chainId:await O(),entryPointAddress:s.entryPoint.address,context:m,...l});R=w,l={...l,...I}}if(s.entryPoint.version==="0.6"&&!l.paymasterAndData&&(l.paymasterAndData="0x"),a.includes("gas")){if((T=s.userOperation)!=null&&T.estimateGas){const w=await s.userOperation.estimateGas(l);l={...l,...w}}if(typeof l.callGasLimit>"u"||typeof l.preVerificationGas>"u"||typeof l.verificationGasLimit>"u"||l.paymaster&&typeof l.paymasterPostOpGasLimit>"u"||l.paymaster&&typeof l.paymasterVerificationGasLimit>"u"){const w=await ge(c,va,"estimateUserOperationGas")({account:s,callGasLimit:0n,preVerificationGas:0n,verificationGasLimit:0n,stateOverride:i,...l.paymaster?{paymasterPostOpGasLimit:0n,paymasterVerificationGasLimit:0n}:{},...l});l={...l,callGasLimit:l.callGasLimit??w.callGasLimit,preVerificationGas:l.preVerificationGas??w.preVerificationGas,verificationGasLimit:l.verificationGasLimit??w.verificationGasLimit,paymasterPostOpGasLimit:l.paymasterPostOpGasLimit??w.paymasterPostOpGasLimit,paymasterVerificationGasLimit:l.paymasterVerificationGasLimit??w.paymasterVerificationGasLimit}}}if(a.includes("paymaster")&&h&&!u&&!n.paymasterAndData&&!R){const w=await h({chainId:await O(),entryPointAddress:s.entryPoint.address,context:m,...l});l={...l,...w}}return delete l.calls,delete l.parameters,delete l.paymasterContext,typeof l.paymaster!="string"&&delete l.paymaster,l}async function va(e,t){var o;const{account:n=e.account,entryPointAddress:r,stateOverride:a}=t;if(!n&&!t.sender)throw new Nn;const i=n?Un(n):void 0,s=Ii(a),c=i?await ge(e,zn,"prepareUserOperation")({...t,parameters:["authorization","factory","nonce","paymaster","signature"]}):t;try{const u=[Rt(c),r??((o=i==null?void 0:i.entryPoint)==null?void 0:o.address)],d=await e.request({method:"eth_estimateUserOperationGas",params:s?[...u,s]:[...u]});return gc(d)}catch(u){const d=t.calls;throw wa(u,{...c,...d?{calls:d}:{}})}}function Ec(e){return e.request({method:"eth_supportedEntryPoints"})}function Sc(e){const t={...e};return e.callGasLimit&&(t.callGasLimit=BigInt(e.callGasLimit)),e.maxFeePerGas&&(t.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(t.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.nonce&&(t.nonce=BigInt(e.nonce)),e.paymasterPostOpGasLimit&&(t.paymasterPostOpGasLimit=BigInt(e.paymasterPostOpGasLimit)),e.paymasterVerificationGasLimit&&(t.paymasterVerificationGasLimit=BigInt(e.paymasterVerificationGasLimit)),e.preVerificationGas&&(t.preVerificationGas=BigInt(e.preVerificationGas)),e.verificationGasLimit&&(t.verificationGasLimit=BigInt(e.verificationGasLimit)),t}async function kc(e,{hash:t}){const n=await e.request({method:"eth_getUserOperationByHash",params:[t]},{dedupe:!0});if(!n)throw new pc({hash:t});const{blockHash:r,blockNumber:a,entryPoint:i,transactionHash:s,userOperation:c}=n;return{blockHash:r,blockNumber:BigInt(a),entryPoint:i,transactionHash:s,userOperation:Sc(c)}}function Ac(e){const t={...e};return e.actualGasCost&&(t.actualGasCost=BigInt(e.actualGasCost)),e.actualGasUsed&&(t.actualGasUsed=BigInt(e.actualGasUsed)),e.logs&&(t.logs=e.logs.map(n=>hi(n))),e.receipt&&(t.receipt=gi(t.receipt)),t}async function xa(e,{hash:t}){const n=await e.request({method:"eth_getUserOperationReceipt",params:[t]},{dedupe:!0});if(!n)throw new lc({hash:t});return Ac(n)}async function Pc(e,t){var o,u;const{account:n=e.account,entryPointAddress:r}=t;if(!n&&!t.sender)throw new Nn;const a=n?Un(n):void 0,i=a?await ge(e,zn,"prepareUserOperation")(t):t,s=t.signature||await((o=a==null?void 0:a.signUserOperation)==null?void 0:o.call(a,i)),c=Rt({...i,signature:s});try{return await e.request({method:"eth_sendUserOperation",params:[c,r??((u=a==null?void 0:a.entryPoint)==null?void 0:u.address)]},{retryCount:0})}catch(d){const h=t.calls;throw wa(d,{...i,...h?{calls:h}:{},signature:s})}}function Oc(e,t){const{hash:n,pollingInterval:r=e.pollingInterval,retryCount:a,timeout:i=12e4}=t;let s=0;const c=pi(["waitForUserOperationReceipt",e.uid,n]);return new Promise((o,u)=>{const d=Ci(c,{resolve:o,reject:u},h=>{const m=f=>{x(),f(),d()},l=i?setTimeout(()=>m(()=>h.reject(new vr({hash:n}))),i):void 0,x=Ti(async()=>{a&&s>=a&&(clearTimeout(l),m(()=>h.reject(new vr({hash:n}))));try{const f=await ge(e,xa,"getUserOperationReceipt")({hash:n});m(()=>h.resolve(f))}catch(f){const p=f;p.name!=="UserOperationReceiptNotFoundError"&&m(()=>h.reject(p))}finally{clearTimeout(l)}s++},{emitOnBegin:!0,interval:r});return x})})}function Ic(e){return{estimateUserOperationGas:t=>va(e,t),getChainId:()=>Lr(e),getSupportedEntryPoints:()=>Ec(e),getUserOperation:t=>kc(e,t),getUserOperationReceipt:t=>xa(e,t),prepareUserOperation:t=>zn(e,t),sendUserOperation:t=>Pc(e,t),waitForUserOperationReceipt:t=>Oc(e,t)}}function Cc(e){const{client:t,key:n="bundler",name:r="Bundler Client",paymaster:a,paymasterContext:i,transport:s,userOperation:c}=e;return Object.assign(Bi({...e,chain:e.chain??(t==null?void 0:t.chain),key:n,name:r,transport:s,type:"bundlerClient"}),{client:t,paymaster:a,paymasterContext:i,userOperation:c}).extend(Ic)}const Tc="0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789",Ea=jn(()=>({})),Bc=[qr,Yi,Ji,es,Xi,Qi,ts,_i],Rc=[Zr,fi,$i],Nc=[...Bc,...Rc].reduce((e,t)=>(e.set(t.id,t),e),new Map);function Hn(e){return Nc.get(e)}function Sa(e){var n,r,a;const t=Hn(e);if((a=(r=(n=t==null?void 0:t.rpcUrls)==null?void 0:n.default)==null?void 0:r.http)!=null&&a[0])return t.rpcUrls.default.http[0]}function Uc(e,t,n){var o,u;const r=n==null?void 0:n.viemChain,a=n==null?void 0:n.nativeCurrency,i=(a==null?void 0:a.name)??(r==null?void 0:r.name)??"",s=(a==null?void 0:a.symbol)??((o=r==null?void 0:r.nativeCurrency)==null?void 0:o.symbol)??"",c=(a==null?void 0:a.decimal)??((u=r==null?void 0:r.nativeCurrency)==null?void 0:u.decimals)??18;return te({id:e,name:i,nativeCurrency:{name:i,symbol:s,decimals:c},rpcUrls:{default:{http:[t]}}})}function xr(e){e.forEach(t=>{let n=t.rpcUrl;if(n||(n=Sa(t.id)),!n)return;const r=Hn(t.id),a=ka({chainId:t.id,rpcUrl:n,nativeCurrency:t.nativeCurrency,viemChain:r});Aa(t.id,a)})}function ka(e){const{chainId:t,rpcUrl:n,nativeCurrency:r,viemChain:a}=e,i=Uc(t,n,{viemChain:a,nativeCurrency:r}),s=Ri({chain:i,transport:tr(n)}),c=Cc({client:s,transport:tr(n)});return{client:s,bundlerClient:c}}function jc(e){const t=Sa(e),n=Hn(e);if(t)return ka({chainId:e,rpcUrl:t,viemChain:n})}function Aa(e,t){Ea.setState(n=>({...n,[e]:{client:t.client,bundlerClient:t.bundlerClient}}))}function Pa(e){var r;const t=(r=Ea.getState()[e])==null?void 0:r.client;if(t)return t;const n=jc(e);if(n)return Aa(e,n),n.client}const ut=jn(()=>({correlationIds:new Map})),he={get:e=>ut.getState().correlationIds.get(e),set:(e,t)=>{ut.setState(n=>{const r=new Map(n.correlationIds);return r.set(e,t),{correlationIds:r}})},delete:e=>{ut.setState(t=>{const n=new Map(t.correlationIds);return n.delete(e),{correlationIds:n}})},clear:()=>{ut.setState({correlationIds:new Map})}};function dt(e){if(typeof e!="object"||e===null)throw v.rpc.internal("sub account info is not an object");if(!("address"in e))throw v.rpc.internal("sub account is invalid");if("address"in e&&typeof e.address=="string"&&!Ge(e.address))throw v.rpc.internal("sub account address is invalid");if("factory"in e&&typeof e.factory=="string"&&!Ge(e.factory))throw v.rpc.internal("sub account factory address is invalid");if("factoryData"in e&&typeof e.factoryData=="string"&&!Me(e.factoryData))throw v.rpc.internal("sub account factory data is invalid")}async function Dc(){return crypto.subtle.generateKey({name:"ECDH",namedCurve:"P-256"},!0,["deriveKey"])}async function Mc(e,t){return crypto.subtle.deriveKey({name:"ECDH",public:t},e,{name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}async function Lc(e,t){const n=crypto.getRandomValues(new Uint8Array(12)),r=await crypto.subtle.encrypt({name:"AES-GCM",iv:n},e,new TextEncoder().encode(t));return{iv:n,cipherText:r}}async function Fc(e,{iv:t,cipherText:n}){const r=await crypto.subtle.decrypt({name:"AES-GCM",iv:t},e,n);return new TextDecoder().decode(r)}function Oa(e){switch(e){case"public":return"spki";case"private":return"pkcs8"}}async function Ia(e,t){const n=Oa(e),r=await crypto.subtle.exportKey(n,t);return Mo(new Uint8Array(r))}async function Ca(e,t){const n=Oa(e),r=Lo(t).buffer;return await crypto.subtle.importKey(n,new Uint8Array(r),{name:"ECDH",namedCurve:"P-256"},!0,e==="private"?["deriveKey"]:[])}async function Gc(e,t){const n=JSON.stringify(e,(r,a)=>{if(!(a instanceof Error))return a;const i=a;return{...i.code?{code:i.code}:{},message:i.message}});return Lc(t,n)}async function zc(e,t){return JSON.parse(await Fc(t,e))}async function et(e,t){const n={...e,jsonrpc:"2.0",id:crypto.randomUUID()},r=await fetch(t,{method:"POST",body:JSON.stringify(n),mode:"cors",headers:{"Content-Type":"application/json","X-Cbw-Sdk-Version":qe,"X-Cbw-Sdk-Platform":Bt}}),{result:a,error:i}=await r.json();if(i)throw i;return a}function Hc(e){if(!e||typeof e!="object"||Array.isArray(e))throw v.rpc.invalidParams({message:"Expected a single, non-array, object argument.",data:e});const{method:t,params:n}=e;if(typeof t!="string"||t.length===0)throw v.rpc.invalidParams({message:"'args.method' must be a non-empty string.",data:e});if(n!==void 0&&!Array.isArray(n)&&(typeof n!="object"||n===null))throw v.rpc.invalidParams({message:"'args.params' must be an object or array if provided.",data:e});switch(t){case"eth_sign":case"eth_signTypedData_v2":case"eth_subscribe":case"eth_unsubscribe":throw v.provider.unsupportedMethod()}}const Kc="0.1.1";function Vc(){return Kc}class H extends Error{constructor(t,n={}){const r=(()=>{var o;if(n.cause instanceof H){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return(o=n.cause)!=null&&o.message?n.cause.message:n.details})(),a=n.cause instanceof H&&n.cause.docsPath||n.docsPath,s=`https://oxlib.sh${a??""}`,c=[t||"An error occurred.",...n.metaMessages?["",...n.metaMessages]:[],...r||a?["",r?`Details: ${r}`:void 0,a?`See: ${s}`:void 0]:[]].filter(o=>typeof o=="string").join(`
|
|
16
|
+
`);super(c,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${Vc()}`}),this.cause=n.cause,this.details=r,this.docs=s,this.docsPath=a,this.shortMessage=t}walk(t){return Ta(this,t)}}function Ta(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?Ta(e.cause,t):t?null:e}const qc="#__bigint";function Nt(e,t,n){return JSON.stringify(e,(r,a)=>typeof a=="bigint"?a.toString()+qc:a,n)}function Zc(e,t){if(Ke(e)>t)throw new cu({givenSize:Ke(e),maxSize:t})}function Wc(e,t){if(typeof t=="number"&&t>0&&t>Ke(e)-1)throw new Fa({offset:t,position:"start",size:Ke(e)})}function Jc(e,t,n){if(typeof t=="number"&&typeof n=="number"&&Ke(e)!==n-t)throw new Fa({offset:n,position:"end",size:Ke(e)})}const fe={zero:48,nine:57,A:65,F:70,a:97,f:102};function Er(e){if(e>=fe.zero&&e<=fe.nine)return e-fe.zero;if(e>=fe.A&&e<=fe.F)return e-(fe.A-10);if(e>=fe.a&&e<=fe.f)return e-(fe.a-10)}function Kn(e,t){if(ke(e)>t)throw new au({givenSize:ke(e),maxSize:t})}function Yc(e,t){if(typeof t=="number"&&t>0&&t>ke(e)-1)throw new ja({offset:t,position:"start",size:ke(e)})}function Qc(e,t,n){if(typeof t=="number"&&typeof n=="number"&&ke(e)!==n-t)throw new ja({offset:n,position:"end",size:ke(e)})}function Ba(e,t={}){const{dir:n,size:r=32}=t;if(r===0)return e;const a=e.replace("0x","");if(a.length>r*2)throw new iu({size:Math.ceil(a.length/2),targetSize:r,type:"Hex"});return`0x${a[n==="right"?"padEnd":"padStart"](r*2,"0")}`}const Xc=new TextEncoder,_c=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function $c(e,t={}){const{strict:n=!1}=t;if(!e)throw new Sr(e);if(typeof e!="string")throw new Sr(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e))throw new kr(e);if(!e.startsWith("0x"))throw new kr(e)}function Ut(...e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function Ra(e){return e instanceof Uint8Array?He(e):Array.isArray(e)?He(new Uint8Array(e)):e}function He(e,t={}){let n="";for(let a=0;a<e.length;a++)n+=_c[e[a]];const r=`0x${n}`;return typeof t.size=="number"?(Kn(r,t.size),Ua(r,t.size)):r}function Ee(e,t={}){const{signed:n,size:r}=t,a=BigInt(e);let i;r?n?i=(1n<<BigInt(r)*8n-1n)-1n:i=2n**(BigInt(r)*8n)-1n:typeof e=="number"&&(i=BigInt(Number.MAX_SAFE_INTEGER));const s=typeof i=="bigint"&&n?-i-1n:0;if(i&&a>i||a<s){const u=typeof e=="bigint"?"n":"";throw new ru({max:i?`${i}${u}`:void 0,min:`${s}${u}`,signed:n,size:r,value:`${e}${u}`})}const o=`0x${(n&&a<0?(1n<<BigInt(r*8))+BigInt(a):a).toString(16)}`;return r?eu(o,r):o}function Na(e,t={}){return He(Xc.encode(e),t)}function eu(e,t){return Ba(e,{dir:"left",size:t})}function Ua(e,t){return Ba(e,{dir:"right",size:t})}function ae(e,t,n,r={}){const{strict:a}=r;Yc(e,t);const i=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return a&&Qc(i,t,n),i}function ke(e){return Math.ceil((e.length-2)/2)}function tu(e,t={}){const{signed:n}=t;t.size&&Kn(e,t.size);const r=BigInt(e);if(!n)return r;const a=(e.length-2)/2,i=(1n<<BigInt(a)*8n)-1n,s=i>>1n;return r<=s?r:r-i-1n}function nu(e,t={}){const{strict:n=!1}=t;try{return $c(e,{strict:n}),!0}catch{return!1}}class ru extends H{constructor({max:t,min:n,signed:r,size:a,value:i}){super(`Number \`${i}\` is not in safe${a?` ${a*8}-bit`:""}${r?" signed":" unsigned"} integer range ${t?`(\`${n}\` to \`${t}\`)`:`(above \`${n}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class Sr extends H{constructor(t){super(`Value \`${typeof t=="object"?Nt(t):t}\` of type \`${typeof t}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class kr extends H{constructor(t){super(`Value \`${t}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}let au=class extends H{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}},ja=class extends H{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}};class iu extends H{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function su(e){if(!(e instanceof Uint8Array)){if(!e)throw new lt(e);if(typeof e!="object")throw new lt(e);if(!("BYTES_PER_ELEMENT"in e))throw new lt(e);if(e.BYTES_PER_ELEMENT!==1||e.constructor.name!=="Uint8Array")throw new lt(e)}}function Da(e){return e instanceof Uint8Array?e:typeof e=="string"?La(e):Ma(e)}function Ma(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function La(e,t={}){const{size:n}=t;let r=e;n&&(Kn(e,n),r=Ua(e,n));let a=r.slice(2);a.length%2&&(a=`0${a}`);const i=a.length/2,s=new Uint8Array(i);for(let c=0,o=0;c<i;c++){const u=Er(a.charCodeAt(o++)),d=Er(a.charCodeAt(o++));if(u===void 0||d===void 0)throw new H(`Invalid byte sequence ("${a[o-2]}${a[o-1]}" in "${a}").`);s[c]=u*16+d}return s}function Ke(e){return e.length}function Ar(e,t,n,r={}){const{strict:a}=r;Wc(e,t);const i=e.slice(t,n);return a&&Jc(i,t,n),i}function Pr(e,t={}){const{size:n}=t;typeof n<"u"&&Zc(e,n);const r=He(e,t);return tu(r,t)}function ou(e){try{return su(e),!0}catch{return!1}}class lt extends H{constructor(t){super(`Value \`${typeof t=="object"?Nt(t):t}\` of type \`${typeof t}\` is an invalid Bytes value.`,{metaMessages:["Bytes values must be of type `Bytes`."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesTypeError"})}}class cu extends H{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}}class Fa extends H{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SliceOffsetOutOfBoundsError"})}}function Ga(e,t={}){const{as:n=typeof e=="string"?"Hex":"Bytes"}=t,r=jr(Da(e));return n==="Bytes"?r:He(r)}function za(e,t={}){const{compressed:n}=t,{prefix:r,x:a,y:i}=e;if(n===!1||typeof a=="bigint"&&typeof i=="bigint"){if(r!==4)throw new Or({prefix:r,cause:new fu});return}if(n===!0||typeof a=="bigint"&&typeof i>"u"){if(r!==3&&r!==2)throw new Or({prefix:r,cause:new pu});return}throw new lu({publicKey:e})}function uu(e){const t=(()=>{if(nu(e))return Ha(e);if(ou(e))return du(e);const{prefix:n,x:r,y:a}=e;return typeof r=="bigint"&&typeof a=="bigint"?{prefix:n??4,x:r,y:a}:{prefix:n,x:r}})();return za(t),t}function du(e){return Ha(He(e))}function Ha(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new mu({publicKey:e});if(e.length===130){const r=BigInt(ae(e,0,32)),a=BigInt(ae(e,32,64));return{prefix:4,x:r,y:a}}if(e.length===132){const r=Number(ae(e,0,1)),a=BigInt(ae(e,1,33)),i=BigInt(ae(e,33,65));return{prefix:r,x:a,y:i}}const t=Number(ae(e,0,1)),n=BigInt(ae(e,1,33));return{prefix:t,x:n}}function Vn(e,t={}){za(e);const{prefix:n,x:r,y:a}=e,{includePrefix:i=!0}=t;return Ut(i?Ee(n,{size:1}):"0x",Ee(r,{size:32}),typeof a=="bigint"?Ee(a,{size:32}):"0x")}class lu extends H{constructor({publicKey:t}){super(`Value \`${Nt(t)}\` is not a valid public key.`,{metaMessages:["Public key must contain:","- an `x` and `prefix` value (compressed)","- an `x`, `y`, and `prefix` value (uncompressed)"]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidError"})}}class Or extends H{constructor({prefix:t,cause:n}){super(`Prefix "${t}" is invalid.`,{cause:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class pu extends H{constructor(){super("Prefix must be 2 or 3 for compressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidCompressedPrefixError"})}}class fu extends H{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}let mu=class extends H{constructor({publicKey:t}){super(`Value \`${t}\` is an invalid public key size.`,{metaMessages:["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).",`Received ${ke(Ra(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}};const Ir=2n**256n-1n;function yu(e,t={}){const{recovered:n}=t;if(typeof e.r>"u")throw new Kt({signature:e});if(typeof e.s>"u")throw new Kt({signature:e});if(n&&typeof e.yParity>"u")throw new Kt({signature:e});if(e.r<0n||e.r>Ir)throw new vu({value:e.r});if(e.s<0n||e.s>Ir)throw new xu({value:e.s});if(typeof e.yParity=="number"&&e.yParity!==0&&e.yParity!==1)throw new qn({value:e.yParity})}function Ka(e){if(e.length!==130&&e.length!==132)throw new wu({signature:e});const t=BigInt(ae(e,0,32)),n=BigInt(ae(e,32,64)),r=(()=>{const a=+`0x${e.slice(130)}`;if(!Number.isNaN(a))try{return gu(a)}catch{throw new qn({value:a})}})();return typeof r>"u"?{r:t,s:n}:{r:t,s:n,yParity:r}}function hu(e){yu(e);const t=e.r,n=e.s;return Ut(Ee(t,{size:32}),Ee(n,{size:32}),typeof e.yParity=="number"?Ee(bu(e.yParity),{size:1}):"0x")}function gu(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return e%2===0?1:0;throw new Eu({value:e})}function bu(e){if(e===0)return 27;if(e===1)return 28;throw new qn({value:e})}class wu extends H{constructor({signature:t}){super(`Value \`${t}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${ke(Ra(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class Kt extends H{constructor({signature:t}){super(`Signature \`${Nt(t)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class vu extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class xu extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class qn extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class Eu extends H{constructor({value:t}){super(`Value \`${t}\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}const Su=new TextDecoder,pt=Object.fromEntries(Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/").map((e,t)=>[t,e.charCodeAt(0)]));({...Object.fromEntries(Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/").map((e,t)=>[e.charCodeAt(0),t]))});function ku(e,t={}){const{pad:n=!0,url:r=!1}=t,a=new Uint8Array(Math.ceil(e.length/3)*4);for(let o=0,u=0;u<e.length;o+=4,u+=3){const d=(e[u]<<16)+(e[u+1]<<8)+(e[u+2]|0);a[o]=pt[d>>18],a[o+1]=pt[d>>12&63],a[o+2]=pt[d>>6&63],a[o+3]=pt[d&63]}const i=e.length%3,s=Math.floor(e.length/3)*4+(i&&i+1);let c=Su.decode(new Uint8Array(a.buffer,0,s));return n&&i===1&&(c+="=="),n&&i===2&&(c+="="),r&&(c=c.replaceAll("+","-").replaceAll("/","_")),c}function Au(e,t={}){return ku(La(e),t)}Uint8Array.from([105,171,180,181,160,222,75,198,42,42,32,31,141,37,186,233]);function Pu(e={}){const{flag:t=5,rpId:n=window.location.hostname,signCount:r=0}=e,a=Ga(Na(n)),i=Ee(t,{size:1}),s=Ee(r,{size:4});return Ut(a,i,s)}function Ou(e){const{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:a=window.location.origin}=e;return JSON.stringify({type:"webauthn.get",challenge:Au(t,{url:!0,pad:!1}),origin:a,crossOrigin:n,...r})}function Iu(e){const{challenge:t,crossOrigin:n,extraClientData:r,flag:a,origin:i,rpId:s,signCount:c,userVerification:o="required"}=e,u=Pu({flag:a,rpId:s,signCount:c}),d=Ou({challenge:t,crossOrigin:n,extraClientData:r,origin:i}),h=Ga(Na(d)),m=d.indexOf('"challenge"'),l=d.indexOf('"type"'),x={authenticatorData:u,clientDataJSON:d,challengeIndex:m,typeIndex:l,userVerificationRequired:o==="required"},f=Ut(u,h);return{metadata:x,payload:f}}async function Cu(e={}){const{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:"ECDSA",namedCurve:"P-256"},t,["sign","verify"]),r=await globalThis.crypto.subtle.exportKey("raw",n.publicKey),a=uu(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:a}}async function Tu(e){const{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:"ECDSA",hash:"SHA-256"},n,Da(t)),a=Ma(new Uint8Array(r)),i=Pr(Ar(a,0,32));let s=Pr(Ar(a,32,64));return s>lr.CURVE.n/2n&&(s=lr.CURVE.n-s),{r:i,s}}function Bu(e,t){const n=typeof indexedDB<"u"?ji(e,t):void 0;return{getItem:async r=>{const a=await Li(r,n);return a||null},removeItem:async r=>Mi(r,n),setItem:async(r,a)=>Di(r,a,n)}}const Ru="base-acc-sdk",Nu="keys",Zn="activeId",Ve=Bu(Ru,Nu);async function Uu(){const e=await Cu({extractable:!1}),t=ae(Vn(e.publicKey),1);return await Ve.setItem(t,e),await Ve.setItem(Zn,t),e}async function ju(){const e=await Ve.getItem(Zn);if(!e)return null;const t=await Ve.getItem(e);return t||null}async function Du(){const e=await ju();if(!e){const t=await Uu(),n=ae(Vn(t.publicKey),1);return await Ve.setItem(n,t),await Ve.setItem(Zn,n),t}return e}async function Mu(){const e=await Du(),t=ae(Vn(e.publicKey),1),n=async r=>{const{payload:a,metadata:i}=Iu({challenge:r,origin:"https://keys.coinbase.com",userVerification:"preferred"}),s=await Tu({payload:a,privateKey:e.privateKey});return{signature:hu(s),raw:{},webauthn:i}};return{id:t,publicKey:t,async sign({hash:r}){return n(r)},async signMessage({message:r}){return n(Fr(r))},async signTypedData(r){return n(Tt(r))},type:"webAuthn"}}async function Bn(){return{account:await Mu()}}const Cr={storageKey:"ownPrivateKey",keyType:"private"},Tr={storageKey:"ownPublicKey",keyType:"public"},Br={storageKey:"peerPublicKey",keyType:"public"};class Lu{constructor(){D(this,"ownPrivateKey",null);D(this,"ownPublicKey",null);D(this,"peerPublicKey",null);D(this,"sharedSecret",null)}async getOwnPublicKey(){return await this.loadKeysIfNeeded(),this.ownPublicKey}async getSharedSecret(){return await this.loadKeysIfNeeded(),this.sharedSecret}async setPeerPublicKey(t){this.sharedSecret=null,this.peerPublicKey=t,await this.storeKey(Br,t),await this.loadKeysIfNeeded()}async clear(){this.ownPrivateKey=null,this.ownPublicKey=null,this.peerPublicKey=null,this.sharedSecret=null,b.keys.clear()}async generateKeyPair(){const t=await Dc();this.ownPrivateKey=t.privateKey,this.ownPublicKey=t.publicKey,await this.storeKey(Cr,t.privateKey),await this.storeKey(Tr,t.publicKey)}async loadKeysIfNeeded(){if(this.ownPrivateKey===null&&(this.ownPrivateKey=await this.loadKey(Cr)),this.ownPublicKey===null&&(this.ownPublicKey=await this.loadKey(Tr)),(this.ownPrivateKey===null||this.ownPublicKey===null)&&await this.generateKeyPair(),this.peerPublicKey===null&&(this.peerPublicKey=await this.loadKey(Br)),this.sharedSecret===null){if(this.ownPrivateKey===null||this.peerPublicKey===null)return;this.sharedSecret=await Mc(this.ownPrivateKey,this.peerPublicKey)}}async loadKey(t){const n=b.keys.get(t.storageKey);return n?Ca(t.keyType,n):null}async storeKey(t,n){const r=await Ia(t.keyType,n);b.keys.set(t.storageKey,r)}}function tt(e,t){if(!(typeof e!="object"||e===null))return t.split(/[.[\]]+/).filter(Boolean).reduce((n,r)=>{if(typeof n=="object"&&n!==null)return n[r]},e)}function Rr(e){var t;if(!Array.isArray(e.params))return null;switch(e.method){case"personal_sign":return e.params[1];case"eth_signTypedData_v4":return e.params[0];case"eth_signTransaction":case"eth_sendTransaction":case"wallet_sendCalls":return(t=e.params[0])==null?void 0:t.from;default:return null}}function Fu(e,t){if(!Array.isArray(e.params))throw v.rpc.invalidParams();const n=[...e.params];switch(e.method){case"eth_signTransaction":case"eth_sendTransaction":case"wallet_sendCalls":n[0].from=t;break;case"eth_signTypedData_v4":n[0]=t;break;case"personal_sign":n[1]=t;break}return{...e,params:n}}function Nr(e){var t;if(!e||!Array.isArray(e)||!((t=e[0])!=null&&t.chainId)||typeof e[0].chainId!="string"&&typeof e[0].chainId!="number")throw v.rpc.invalidParams()}function Gu(e){if(!e||!Array.isArray(e)||e.length!==1&&e.length!==2||typeof e[0]!="string"||!Ge(e[0]))throw v.rpc.invalidParams();if(e.length===2){if(!Array.isArray(e[1]))throw v.rpc.invalidParams();for(const t of e[1])if(typeof t!="string"||!t.startsWith("0x"))throw v.rpc.invalidParams()}}function at(e,t){const n={...e};if(t&&e.method.startsWith("wallet_")){let r=tt(n,"params.0.capabilities");if(typeof r>"u"&&(r={}),typeof r!="object")throw v.rpc.invalidParams();r={...t,...r},n.params&&Array.isArray(n.params)&&(n.params[0]={...n.params[0],capabilities:r})}return n}async function Rn(){const e=b.subAccountsConfig.get()??{},t={};if(e.creation==="on-connect"){const{account:n}=e.toOwnerAccount?await e.toOwnerAccount():await Bn();if(!n)throw v.provider.unauthorized("No owner account found");t.addSubAccount={account:{type:"create",keys:[{type:n.address?"address":"webauthn-p256",publicKey:n.address||n.publicKey}]}}}b.subAccountsConfig.set({...e,capabilities:t})}function zu(e){if(!(e.method==="coinbase_fetchPermissions"&&e.params===void 0)){if(e.method==="coinbase_fetchPermissions"&&Array.isArray(e.params)&&e.params.length===1&&typeof e.params[0]=="object"){if(typeof e.params[0].account!="string"||!e.params[0].chainId.startsWith("0x"))throw v.rpc.invalidParams("FetchPermissions - Invalid params: params[0].account must be a hex string");if(typeof e.params[0].chainId!="string"||!e.params[0].chainId.startsWith("0x"))throw v.rpc.invalidParams("FetchPermissions - Invalid params: params[0].chainId must be a hex string");if(typeof e.params[0].spender!="string"||!e.params[0].spender.startsWith("0x"))throw v.rpc.invalidParams("FetchPermissions - Invalid params: params[0].spender must be a hex string");return}throw v.rpc.invalidParams()}}function Hu(e){var a,i,s;if(e.params!==void 0)return e;const t=(a=b.getState().account.accounts)==null?void 0:a[0],n=(i=b.getState().account.chain)==null?void 0:i.id,r=(s=b.getState().subAccount)==null?void 0:s.address;if(!t||!r||!n)throw v.rpc.invalidParams("FetchPermissions - one or more of account, sub account, or chain id is missing, connect to sub account via wallet_connect first");return{method:"coinbase_fetchPermissions",params:[{account:t,chainId:U(n),spender:r}]}}async function Va({client:e,id:t}){var r;const n=await Gr(e,{id:t});if(n.status==="success")return(r=n.receipts)==null?void 0:r[0].transactionHash;throw v.rpc.internal("failed to send transaction")}function qa({calls:e,from:t,chainId:n,capabilities:r}){const a=ia.get().paymasterUrls;let i={method:"wallet_sendCalls",params:[{version:"1.0",calls:e,chainId:U(n),from:t,atomicRequired:!0,capabilities:r}]};return a!=null&&a[n]&&(i=at(i,{paymasterService:{url:a==null?void 0:a[n]}})),i}async function Ku(){const e=Gn();return await new Promise((n,r)=>{Fn({dialogContext:"sub_account_insufficient_balance"}),e.presentItem({title:"Insufficient spend permission",message:"Your spend permission's remaining balance cannot cover this transaction. Please use your primary account to complete this transaction.",onClose:()=>{pa({dialogContext:"sub_account_insufficient_balance"}),e.clear(),r(new Error("User cancelled funding"))},actionItems:[{text:"Use primary account",variant:"primary",onClick:()=>{Re({dialogContext:"sub_account_insufficient_balance",dialogAction:"continue_in_popup"}),e.clear(),n("continue_popup")}},{text:"Cancel",variant:"secondary",onClick:()=>{Re({dialogContext:"sub_account_insufficient_balance",dialogAction:"cancel"}),e.clear(),r(new Error("User cancelled funding"))}}]})})}function Vu(e){return typeof e=="object"&&e!==null&&Array.isArray(e)&&e.length>0&&typeof e[0]=="object"&&e[0]!==null&&"calls"in e[0]}function qu(e){return Array.isArray(e)&&e.length===1&&typeof e[0]=="object"&&e[0]!==null&&"to"in e[0]}function Zu(e){return mi(me(we(e)),0,16)}function Wu({attribution:e,dappOrigin:t}){if(e){if("auto"in e&&e.auto&&t)return Zu(t);if("dataSuffix"in e)return e.dataSuffix}}function ft(e,t){const n=e.filter(r=>r!==t);return[t,...n]}function mt(e,t){return[...e.filter(r=>r!==t),t]}function Ju(e){return e.replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}function yt(e){const t=btoa(String.fromCharCode(...new Uint8Array(e)));return Ju(t)}function Yu({webauthn:e,signature:t,id:n}){const r=Ka(t);return{id:n,rawId:yt(Qn(n)),response:{authenticatorData:yt(Wt(e.authenticatorData)),clientDataJSON:yt(Qn(e.clientDataJSON)),signature:yt(Qu(r.r,r.s))},type:JSON.parse(e.clientDataJSON).type}}function Qu(e,t){const n=Wt(Xn(U(e))),r=Wt(Xn(U(t))),a=n.length,i=r.length,s=a+i+4,c=new Uint8Array(s+2);return c[0]=48,c[1]=s,c[2]=2,c[3]=a,c.set(n,4),c[a+4]=2,c[a+5]=i,c.set(r,a+6),c}async function Xu(e){const{owner:t,ownerIndex:n,address:r,client:a,factoryData:i}=e,s={abi:ac,address:Tc,version:"0.6"},c={abi:sa,address:qs};return cc({client:a,entryPoint:s,extend:{abi:ce,factory:c},async decodeCalls(o){const u=zr({abi:ce,data:o});if(u.functionName==="execute")return[{to:u.args[0],value:u.args[1],data:u.args[2]}];if(u.functionName==="executeBatch")return u.args[0].map(d=>({to:d.target,value:d.value,data:d.data}));throw new C(`unable to decode calls for "${u.functionName}"`)},async encodeCalls(o){return o.length===1?Se({abi:ce,functionName:"execute",args:[o[0].to,o[0].value??BigInt(0),o[0].data??"0x"]}):Se({abi:ce,functionName:"executeBatch",args:[o.map(u=>({data:u.data??"0x",target:u.to,value:u.value??BigInt(0)}))]})},async getAddress(){return r},async getFactoryArgs(){return i?{factory:c.address,factoryData:i}:{factory:c.address,factoryData:i}},async getStubSignature(){return t.type==="webAuthn"?"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000001949fc7c88032b9fcb5f6efc7a7b8c63668eae9871b765e23123bb473ff57aa831a7c0d9276168ebcc29f2875a0239cffdf2a9cd1c2007c5c77c071db9264df1d000000000000000000000000000000000000000000000000000000000000002549960de5880e8c687434170f6476605b8fe4aeb9a28632c7995cf3ba831d97630500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008a7b2274797065223a22776562617574686e2e676574222c226368616c6c656e6765223a2273496a396e6164474850596759334b7156384f7a4a666c726275504b474f716d59576f4d57516869467773222c226f726967696e223a2268747470733a2f2f7369676e2e636f696e626173652e636f6d222c2263726f73734f726967696e223a66616c73657d00000000000000000000000000000000000000000000":$e({ownerIndex:n,signature:"0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c"})},async sign(o){const u=await this.getAddress(),d=Vt({address:u,chainId:a.chain.id,hash:o.hash}),h=await ht({hash:d,owner:t});return $e({ownerIndex:n,signature:h})},async signMessage(o){const{message:u}=o,d=await this.getAddress(),h=Vt({address:d,chainId:a.chain.id,hash:Fr(u)}),m=await ht({hash:h,owner:t});return $e({ownerIndex:n,signature:m})},async signTypedData(o){const{domain:u,types:d,primaryType:h,message:m}=o,l=await this.getAddress(),x=Vt({address:l,chainId:a.chain.id,hash:Tt({domain:u,message:m,primaryType:h,types:d})}),f=await ht({hash:x,owner:t});return $e({ownerIndex:n,signature:f})},async signUserOperation(o){const{chainId:u=a.chain.id,...d}=o,h=await this.getAddress(),m=oc({chainId:u,entryPointAddress:s.address,entryPointVersion:s.version,userOperation:{...d,sender:h}}),l=await ht({hash:m,owner:t});return $e({ownerIndex:n,signature:l})},userOperation:{async estimateGas(o){if(t.type==="webAuthn")return{verificationGasLimit:BigInt(Math.max(Number(o.verificationGasLimit??BigInt(0)),8e5))}}}})}async function ht({hash:e,owner:t}){if(t.type==="webAuthn"){const{signature:n,webauthn:r}=await t.sign({hash:e});return _u({signature:n,webauthn:r})}if(t.sign)return t.sign({hash:e});throw new C("`owner` does not support raw sign.")}function Vt({address:e,chainId:t,hash:n}){return Tt({domain:{chainId:t,name:"Coinbase Smart Wallet",verifyingContract:e,version:"1"},types:{CoinbaseSmartWalletMessage:[{name:"hash",type:"bytes32"}]},primaryType:"CoinbaseSmartWalletMessage",message:{hash:n}})}function _u({webauthn:e,signature:t}){const{r:n,s:r}=Ka(t);return nt([{components:[{name:"authenticatorData",type:"bytes"},{name:"clientDataJSON",type:"bytes"},{name:"challengeIndex",type:"uint256"},{name:"typeIndex",type:"uint256"},{name:"r",type:"uint256"},{name:"s",type:"uint256"}],type:"tuple"}],[{authenticatorData:e.authenticatorData,clientDataJSON:ii(e.clientDataJSON),challengeIndex:BigInt(e.challengeIndex),typeIndex:BigInt(e.typeIndex),r:n,s:r}])}function $e(e){const{ownerIndex:t=0}=e,n=(()=>{if(si(e.signature)!==65)return e.signature;const r=Ni(e.signature);return Ui(["bytes32","bytes32","uint8"],[r.r,r.s,r.yParity===0?27:28])})();return nt([{components:[{name:"ownerIndex",type:"uint8"},{name:"signatureData",type:"bytes"}],type:"tuple"}],[{ownerIndex:t,signatureData:n}])}async function $u({address:e,client:t,factory:n,factoryData:r,owner:a,ownerIndex:i,parentAddress:s,attribution:c}){var m;const o={address:e,factory:n,factoryData:r},u=(m=t.chain)==null?void 0:m.id;if(!u)throw v.rpc.internal("chainId not found");const d=await Xu({owner:a,ownerIndex:i??1,address:e,client:t,factoryData:r}),h=async l=>{var x;try{switch(l.method){case"wallet_addSubAccount":return o;case"eth_accounts":return[o.address];case"eth_coinbase":return o.address;case"net_version":return u.toString();case"eth_chainId":return U(u);case"eth_sendTransaction":{xe(l.params);const f=l.params[0];ie(f.to,v.rpc.invalidParams("to is required"));const p={to:f.to,data:sn(f.data??"0x",!0),value:sn(f.value??"0x",!0),from:f.from??o.address},g=qa({calls:[p],chainId:u,from:p.from}),y=await h(g);return Va({client:t,id:y})}case"wallet_sendCalls":{xe(l.params);const f=tt(l.params[0],"chainId");if(!f)throw v.rpc.invalidParams("chainId is required");if(!Me(f))throw v.rpc.invalidParams("chainId must be a hex encoded integer");if(!l.params[0])throw v.rpc.invalidParams("params are required");if(!("calls"in l.params[0]))throw v.rpc.invalidParams("calls are required");let p={method:"wallet_prepareCalls",params:[{version:"1.0",calls:l.params[0].calls,chainId:f,from:o.address,capabilities:"capabilities"in l.params[0]?l.params[0].capabilities:{}}]};s&&(p=at(p,{funding:[{type:"spendPermission",data:{autoApply:!0,sources:[s],preference:"PREFER_DIRECT_BALANCE"}}]}));let g=await h(p);const y=await((x=a.sign)==null?void 0:x.call(a,{hash:_n(g.signatureRequest.hash)}));let E;if(!y)throw v.rpc.internal("signature not found");return Me(y)?E={type:"secp256k1",data:{address:a.address,signature:y}}:E={type:"webauthn",data:{signature:JSON.stringify(Yu({id:a.id??"1",...y})),publicKey:a.publicKey}},(await h({method:"wallet_sendPreparedCalls",params:[{version:"1.0",type:g.type,data:g.userOp,chainId:g.chainId,signature:E}]}))[0]}case"wallet_sendPreparedCalls":{xe(l.params);const f=tt(l.params[0],"chainId");if(!f)throw v.rpc.invalidParams("chainId is required");if(!Me(f))throw v.rpc.invalidParams("chainId must be a hex encoded integer");return await t.request({method:"wallet_sendPreparedCalls",params:l.params})}case"wallet_prepareCalls":{xe(l.params);const f=tt(l.params[0],"chainId");if(!f)throw v.rpc.invalidParams("chainId is required");if(!Me(f))throw v.rpc.invalidParams("chainId must be a hex encoded integer");if(!l.params[0])throw v.rpc.invalidParams("params are required");if(!tt(l.params[0],"calls"))throw v.rpc.invalidParams("calls are required");const p=l.params[0];return c&&p.capabilities&&!("attribution"in p.capabilities)&&(p.capabilities.attribution=c),await t.request({method:"wallet_prepareCalls",params:[{...l.params[0],chainId:f}]})}case"personal_sign":{if(xe(l.params),!Me(l.params[0]))throw v.rpc.invalidParams("message must be a hex encoded string");const f=_n(l.params[0]);return d.signMessage({message:f})}case"eth_signTypedData_v4":{xe(l.params);const f=typeof l.params[1]=="string"?JSON.parse(l.params[1]):l.params[1];return d.signTypedData(f)}case"eth_signTypedData_v1":case"eth_signTypedData_v3":case"wallet_addEthereumChain":case"wallet_switchEthereumChain":default:throw v.rpc.methodNotSupported()}}catch(f){if(la(f)){const p=Qs(f);if(p)throw p}throw f}};return{request:h}}async function Za({address:e,client:t,publicKey:n,factory:r,factoryData:a}){if(!await Mr(t,{address:e})&&r&&a){const c=zr({abi:sa,data:a});if(c.functionName!=="createAccount")throw v.rpc.internal("unknown factory function");const[o]=c.args;return o.findIndex(u=>u.toLowerCase()===Ur(n).toLowerCase())}const s=await Jt(t,{address:e,abi:ce,functionName:"ownerCount"});for(let c=Number(s)-1;c>=0;c--){const o=await Jt(t,{address:e,abi:ce,functionName:"ownerAtIndex",args:[BigInt(c)]}),u=Ur(n);if(o.toLowerCase()===u.toLowerCase())return c}return-1}function Ur(e){return Ge(e)?ue(e):e}async function ed(){var n;const e=((n=b.config.get().metadata)==null?void 0:n.appName)??"App",t=Gn();return new Promise(r=>{Fn({dialogContext:"sub_account_add_owner"}),t.presentItem({title:`Re-authorize ${e}`,message:`${e} has lost access to your account. Please sign at the next step to re-authorize ${e}`,onClose:()=>{pa({dialogContext:"sub_account_add_owner"}),r("cancel")},actionItems:[{text:"Continue",variant:"primary",onClick:()=>{Re({dialogContext:"sub_account_add_owner",dialogAction:"confirm"}),t.clear(),r("authenticate")}},{text:"Not now",variant:"secondary",onClick:()=>{Re({dialogContext:"sub_account_add_owner",dialogAction:"cancel"}),t.clear(),r("cancel")}}]})})}async function td({ownerAccount:e,globalAccountRequest:t,chainId:n}){var l,x;const r=b.account.get(),a=b.subAccounts.get(),i=(l=r.accounts)==null?void 0:l.find(f=>f.toLowerCase()!==(a==null?void 0:a.address.toLowerCase()));ie(i,v.provider.unauthorized("no global account")),ie((x=r.chain)==null?void 0:x.id,v.provider.unauthorized("no chain id")),ie(a==null?void 0:a.address,v.provider.unauthorized("no sub account"));const s=[];if(e.type==="local"&&e.address&&s.push({to:a.address,data:Se({abi:ce,functionName:"addOwnerAddress",args:[e.address]}),value:we(0)}),e.publicKey){const[f,p]=Dr([{type:"bytes32"},{type:"bytes32"}],e.publicKey);s.push({to:a.address,data:Se({abi:ce,functionName:"addOwnerPublicKey",args:[f,p]}),value:we(0)})}const c={method:"wallet_sendCalls",params:[{version:"1",calls:s,chainId:U(n),from:i}]};if(await ed()==="cancel")throw v.provider.unauthorized("user cancelled");const u=await t(c),d=Pa(r.chain.id);if(ie(d,v.rpc.internal(`client not found for chainId ${r.chain.id}`)),(await Gr(d,{id:u})).status!=="success")throw v.rpc.internal("add owner call failed");const m=await Za({address:a.address,publicKey:e.type==="local"&&e.address?e.address:e.publicKey,client:d});if(m===-1)throw v.rpc.internal("failed to find owner index");return m}async function Wa({request:e,globalAccountAddress:t,subAccountAddress:n,client:r,globalAccountRequest:a,chainId:i,prependCalls:s}){var l;let c;if(e.method==="wallet_sendCalls"&&Vu(e.params))c=e.params[0];else if(e.method==="eth_sendTransaction"&&qu(e.params))c=qa({calls:[e.params[0]],chainId:i,from:e.params[0].from}).params[0];else throw new Error(`Could not get original call from ${e.method} request`);const o=Se({abi:ce,functionName:"executeBatch",args:[c.calls.map(x=>({target:x.to,value:de(x.value??"0x0"),data:x.data??"0x"}))]}),u=[...s??[],{data:o,to:n,value:"0x0"}],d=at({method:"wallet_sendCalls",params:[{...c,calls:u,from:t,version:"2.0.0",atomicRequired:!0}]},{spendPermissions:{request:{spender:n}}}),h=await a(d);let m=h.id;return(l=h.capabilities)!=null&&l.spendPermissions&&Dn.set(h.capabilities.spendPermissions.permissions),e.method==="eth_sendTransaction"?Va({client:r,id:m}):h}async function nd({globalAccountAddress:e,subAccountAddress:t,client:n,request:r,globalAccountRequest:a}){var c;const i=(c=n.chain)==null?void 0:c.id;ie(i,v.rpc.internal("invalid chainId"));try{await Ku()}catch{throw v.provider.userRejectedRequest({message:"User cancelled funding"})}return await Wa({request:r,globalAccountAddress:e,subAccountAddress:t,client:n,globalAccountRequest:a,chainId:i})}class rd{constructor(t){D(this,"communicator");D(this,"keyManager");D(this,"callback");D(this,"accounts");D(this,"chain");var a;this.communicator=t.communicator,this.callback=t.callback,this.keyManager=new Lu;const{account:n,chains:r}=b.getState();this.accounts=n.accounts??[],this.chain=n.chain??{id:((a=t.metadata.appChainIds)==null?void 0:a[0])??1},r&&xr(r)}get isConnected(){return this.accounts.length>0}async handshake(t){var r,a;const n=he.get(t);Ko({method:t.method,correlationId:n});try{await((a=(r=this.communicator).waitForPopupLoaded)==null?void 0:a.call(r));const i=await this.createRequestMessage({handshake:{method:t.method,params:t.params??[]}},n),s=await this.communicator.postRequestAndWaitForResponse(i);if("failure"in s.content)throw s.content.failure;const c=await Ca("public",s.sender);await this.keyManager.setPeerPublicKey(c);const o=await this.decryptResponseMessage(s);this.handleResponse(t,o),qo({method:t.method,correlationId:n})}catch(i){throw Vo({method:t.method,correlationId:n,errorMessage:Ie(i)}),i}}async request(t){const n=he.get(t);Zo({method:t.method,correlationId:n});try{const r=await this._request(t);return Jo({method:t.method,correlationId:n}),r}catch(r){throw Wo({method:t.method,correlationId:n,errorMessage:Ie(r)}),r}}async _request(t){var n,r,a,i,s,c,o;if(this.accounts.length===0)switch(t.method){case"wallet_switchEthereumChain":{Nr(t.params),this.chain.id=Number(t.params[0].chainId);return}case"wallet_connect":{await((r=(n=this.communicator).waitForPopupLoaded)==null?void 0:r.call(n)),await Rn();const u=b.subAccountsConfig.get(),d=at(t,(u==null?void 0:u.capabilities)??{});return this.sendRequestToPopup(d)}case"experimental_requestInfo":case"wallet_sendCalls":case"wallet_sign":return this.sendRequestToPopup(t);default:throw v.provider.unauthorized()}if(this.shouldRequestUseSubAccountSigner(t)){const u=he.get(t);Yo({method:t.method,correlationId:u});try{const d=await this.sendRequestToSubAccountSigner(t);return Qo({method:t.method,correlationId:u}),d}catch(d){throw Xo({method:t.method,correlationId:u,errorMessage:Ie(d)}),d}}if(t.method.startsWith("experimental_"))return this.sendRequestToPopup(t);switch(t.method){case"eth_requestAccounts":case"eth_accounts":{const u=b.subAccounts.get(),d=b.subAccountsConfig.get();return u!=null&&u.address&&(this.accounts=(d==null?void 0:d.defaultAccount)==="sub"?ft(this.accounts,u.address):mt(this.accounts,u.address)),(a=this.callback)==null||a.call(this,"connect",{chainId:U(this.chain.id)}),this.accounts}case"eth_coinbase":return this.accounts[0];case"net_version":return this.chain.id;case"eth_chainId":return U(this.chain.id);case"wallet_getCapabilities":return this.handleGetCapabilitiesRequest(t);case"wallet_switchEthereumChain":return this.handleSwitchChainRequest(t);case"eth_ecRecover":case"personal_sign":case"wallet_sign":case"personal_ecRecover":case"eth_signTransaction":case"eth_sendTransaction":case"eth_signTypedData_v1":case"eth_signTypedData_v3":case"eth_signTypedData_v4":case"eth_signTypedData":case"wallet_addEthereumChain":case"wallet_watchAsset":case"wallet_sendCalls":case"wallet_showCallsStatus":case"wallet_grantPermissions":return this.sendRequestToPopup(t);case"wallet_connect":{await((s=(i=this.communicator).waitForPopupLoaded)==null?void 0:s.call(i)),await Rn();const u=b.subAccountsConfig.get(),d=at(t,(u==null?void 0:u.capabilities)??{}),h=await this.sendRequestToPopup(d);return(c=this.callback)==null||c.call(this,"connect",{chainId:U(this.chain.id)}),h}case"wallet_getSubAccounts":{const u=b.subAccounts.get();if(u!=null&&u.address)return{subAccounts:[u]};if(!this.chain.rpcUrl)throw v.rpc.internal("No RPC URL set for chain");const d=await et(t,this.chain.rpcUrl);if(xe(d.subAccounts,"subAccounts"),d.subAccounts.length>0){dt(d.subAccounts[0]);const h=d.subAccounts[0];b.subAccounts.set({address:h.address,factory:h.factory,factoryData:h.factoryData})}return d}case"wallet_addSubAccount":return this.addSubAccount(t);case"coinbase_fetchPermissions":{zu(t);const u=Hu(t),d=await et(u,tn),h=it((o=u.params)==null?void 0:o[0].chainId);return b.spendPermissions.set(d.permissions.map(m=>({...m,chainId:h}))),d}case"coinbase_fetchPermission":{const d=await et(t,tn);return d.permission&&d.permission.chainId&&b.spendPermissions.set([d.permission]),d}default:if(!this.chain.rpcUrl)throw v.rpc.internal("No RPC URL set for chain");return et(t,this.chain.rpcUrl)}}async sendRequestToPopup(t){var a,i;await((i=(a=this.communicator).waitForPopupLoaded)==null?void 0:i.call(a));const n=await this.sendEncryptedRequest(t),r=await this.decryptResponseMessage(n);return this.handleResponse(t,r)}async handleResponse(t,n){var a,i,s,c,o;const r=n.result;if("error"in r)throw r.error;switch(t.method){case"eth_requestAccounts":{const u=r.value;this.accounts=u,b.account.set({accounts:u,chain:this.chain}),(a=this.callback)==null||a.call(this,"accountsChanged",u);break}case"wallet_connect":{const u=r.value,d=u.accounts.map(p=>p.address);this.accounts=d,b.account.set({accounts:d});const h=u.accounts.at(0),m=h==null?void 0:h.capabilities;if(m!=null&&m.subAccounts){const p=m==null?void 0:m.subAccounts;xe(p,"subAccounts"),dt(p[0]),b.subAccounts.set({address:p[0].address,factory:p[0].factory,factoryData:p[0].factoryData})}const l=b.subAccounts.get(),x=b.subAccountsConfig.get();l!=null&&l.address&&(this.accounts=(x==null?void 0:x.defaultAccount)==="sub"?ft(this.accounts,l.address):mt(this.accounts,l.address));const f=(s=(i=u==null?void 0:u.accounts)==null?void 0:i[0].capabilities)==null?void 0:s.spendPermissions;f&&"permissions"in f&&b.spendPermissions.set(f==null?void 0:f.permissions),(c=this.callback)==null||c.call(this,"accountsChanged",this.accounts);break}case"wallet_addSubAccount":{dt(r.value);const u=r.value;b.subAccounts.set(u);const d=b.subAccountsConfig.get();this.accounts=(d==null?void 0:d.defaultAccount)==="sub"?ft(this.accounts,u.address):mt(this.accounts,u.address),(o=this.callback)==null||o.call(this,"accountsChanged",this.accounts);break}}return r.value}async cleanup(){var n;const t=b.config.get().metadata;await this.keyManager.clear(),b.account.clear(),b.subAccounts.clear(),b.spendPermissions.clear(),b.chains.clear(),this.accounts=[],this.chain={id:((n=t==null?void 0:t.appChainIds)==null?void 0:n[0])??1}}async handleSwitchChainRequest(t){Nr(t.params);const n=Ho(t.params[0].chainId);if(this.updateChain(n))return null;const a=await this.sendRequestToPopup(t);return a===null&&this.updateChain(n),a}async handleGetCapabilitiesRequest(t){Gu(t.params);const n=t.params[0],r=t.params[1];if(!this.accounts.some(c=>ar(c,n)))throw v.provider.unauthorized("no active account found when getting capabilities");const a=b.getState().account.capabilities;if(!a)return{};if(!r||r.length===0)return a;const i=new Set(r.map(c=>it(c)));return Object.fromEntries(Object.entries(a).filter(([c])=>{try{const o=it(c);return i.has(o)}catch{return!1}}))}async sendEncryptedRequest(t){const n=await this.keyManager.getSharedSecret();if(!n)throw v.provider.unauthorized("No shared secret found when encrypting request");const r=await Gc({action:t,chainId:this.chain.id},n),a=he.get(t),i=await this.createRequestMessage({encrypted:r},a);return this.communicator.postRequestAndWaitForResponse(i)}async createRequestMessage(t,n){const r=await Ia("public",await this.keyManager.getOwnPublicKey());return{id:crypto.randomUUID(),correlationId:n,sender:r,content:t,timestamp:new Date}}async decryptResponseMessage(t){var c,o,u;const n=t.content;if("failure"in n)throw n.failure;const r=await this.keyManager.getSharedSecret();if(!r)throw v.provider.unauthorized("Invalid session: no shared secret found when decrypting response");const a=await zc(n.encrypted,r),i=(c=a.data)==null?void 0:c.chains;if(i){const d=(o=a.data)==null?void 0:o.nativeCurrencies,h=Object.entries(i).map(([m,l])=>{const x=d==null?void 0:d[Number(m)];return{id:Number(m),rpcUrl:l,...x?{nativeCurrency:x}:{}}});b.chains.set(h),this.updateChain(this.chain.id,h),xr(h)}const s=(u=a.data)==null?void 0:u.capabilities;return s&&b.account.set({capabilities:s}),a}updateChain(t,n){var s;const r=b.getState(),a=n??r.chains,i=a==null?void 0:a.find(c=>c.id===t);return i?(i!==this.chain&&(this.chain=i,b.account.set({chain:i}),(s=this.callback)==null||s.call(this,"chainChanged",ya(i.id))),!0):!1}async addSubAccount(t){var c,o,u,d,h;const r=b.getState().subAccount,a=b.subAccountsConfig.get(),i=Array.isArray(t.params)&&t.params.length>0&&((o=(c=t.params[0])==null?void 0:c.account)!=null&&o.address)?t.params[0].account.address:void 0;if(r!=null&&r.address&&(!i||ar(i,r.address)))return this.accounts=(a==null?void 0:a.defaultAccount)==="sub"?ft(this.accounts,r.address):mt(this.accounts,r.address),(u=this.callback)==null||u.call(this,"accountsChanged",this.accounts),r;if(await((h=(d=this.communicator).waitForPopupLoaded)==null?void 0:h.call(d)),Array.isArray(t.params)&&t.params.length>0&&t.params[0].account&&t.params[0].account.type==="create"){let m;if(t.params[0].account.keys&&t.params[0].account.keys.length>0)m=t.params[0].account.keys;else{const l=b.subAccountsConfig.get()??{},{account:x}=l.toOwnerAccount?await l.toOwnerAccount():await Bn();if(!x)throw v.provider.unauthorized("could not get subaccount owner account when adding sub account");m=[{type:x.address?"address":"webauthn-p256",publicKey:x.address||x.publicKey}]}t.params[0].account.keys=m}const s=await this.sendRequestToPopup(t);return dt(s),s}shouldRequestUseSubAccountSigner(t){const n=Rr(t),r=b.subAccounts.get();return n?n.toLowerCase()===(r==null?void 0:r.address.toLowerCase()):!1}async sendRequestToSubAccountSigner(t){var f,p,g;const n=b.subAccounts.get(),r=b.subAccountsConfig.get(),a=b.config.get();ie(n==null?void 0:n.address,v.provider.unauthorized("no active sub account when sending request to sub account signer"));const i=r!=null&&r.toOwnerAccount?await r.toOwnerAccount():await Bn();ie(i==null?void 0:i.account,v.provider.unauthorized("no active sub account owner when sending request to sub account signer")),Rr(t)===void 0&&(t=Fu(t,n.address));const c=this.accounts.find(y=>y.toLowerCase()!==n.address.toLowerCase());ie(c,v.provider.unauthorized("no global account found when sending request to sub account signer"));const o=Wu({attribution:(f=a.preference)==null?void 0:f.attribution,dappOrigin:window.location.origin}),u=t.method==="wallet_sendCalls"&&((g=(p=t.params)==null?void 0:p[0])==null?void 0:g.chainId),d=u?it(u):this.chain.id,h=Pa(d);if(ie(h,v.rpc.internal(`client not found for chainId ${d} when sending request to sub account signer`)),["eth_sendTransaction","wallet_sendCalls"].includes(t.method)){const y=b.subAccountsConfig.get();if((y==null?void 0:y.funding)==="spend-permissions"&&Dn.get().length===0)return await Wa({request:t,globalAccountAddress:c,subAccountAddress:n.address,client:h,globalAccountRequest:this.sendRequestToPopup.bind(this),chainId:d})}const m=i.account.type==="local"?i.account.address:i.account.publicKey;let l=await Za({address:n.address,factory:n.factory,factoryData:n.factoryData,publicKey:m,client:h});if(l===-1){const y=he.get(t);_o({method:t.method,correlationId:y});try{l=await td({ownerAccount:i.account,globalAccountRequest:this.sendRequestToPopup.bind(this),chainId:d}),$o({method:t.method,correlationId:y})}catch(E){return ec({method:t.method,correlationId:y,errorMessage:Ie(E)}),v.provider.unauthorized("failed to add sub account owner when sending request to sub account signer")}}const{request:x}=await $u({address:n.address,owner:i.account,client:h,factory:n.factory,factoryData:n.factoryData,parentAddress:c,attribution:o?{suffix:o}:void 0,ownerIndex:l});try{return await x(t)}catch(y){const E=b.subAccountsConfig.get();if((E==null?void 0:E.funding)==="manual")throw y;let O;if(la(y))O=JSON.parse(y.details);else if(yr(y))O=y;else throw y;if(!(yr(O)&&O.data)||!O.data)throw y;const R=he.get(t);tc({method:t.method,correlationId:R});try{const T=await nd({errorData:O.data,globalAccountAddress:c,subAccountAddress:n.address,client:h,request:t,globalAccountRequest:this.request.bind(this)});return nc({method:t.method,correlationId:R}),T}catch(T){throw console.error(T),rc({method:t.method,correlationId:R,errorMessage:Ie(T)}),y}}}}class ad extends To{constructor({metadata:n,preference:{walletUrl:r,...a}}){super();D(this,"communicator");D(this,"signer");D(this,"isBaseAccount",!0);this.communicator=new Po({url:r,metadata:n,preference:a}),this.signer=new rd({metadata:n,communicator:this.communicator,callback:this.emit.bind(this)})}async request(n){const r=crypto.randomUUID();he.set(n,r),Bo({method:n.method,correlationId:r});try{const a=await this._request(n);return No({method:n.method,correlationId:r}),a}catch(a){throw Ro({method:n.method,correlationId:r,errorMessage:Ie(a)}),a}finally{he.delete(n)}}async _request(n){var r;try{if(Hc(n),!this.signer.isConnected)switch(n.method){case"eth_requestAccounts":{await this.signer.handshake({method:"handshake"}),await Rn(),await this.signer.request({method:"wallet_connect",params:[{version:"1",capabilities:{...((r=b.subAccountsConfig.get())==null?void 0:r.capabilities)??{}}}]});break}case"wallet_connect":return await this.signer.handshake({method:"handshake"}),await this.signer.request(n);case"wallet_switchEthereumChain":return await this.signer.request(n);case"wallet_sendCalls":case"wallet_sign":try{return await this.signer.handshake({method:"handshake"}),await this.signer.request(n)}finally{await this.signer.cleanup()}case"wallet_getCallsStatus":return await et(n,tn);case"eth_accounts":return[];case"net_version":return 1;case"eth_chainId":return ya(1);default:throw v.provider.unauthorized("Must call 'eth_requestAccounts' before other methods")}return await this.signer.request(n)}catch(a){const{code:i}=a;return i===V.provider.unauthorized&&await this.disconnect(),Promise.reject(Oo(a))}}async disconnect(){await this.signer.cleanup(),he.clear(),this.emit("disconnect",v.provider.disconnected("User initiated disconnection"))}}const id="isCoinbaseBrowser";function sd(){var e;try{const t=((e=window.top)==null?void 0:e.ethereum)??window.ethereum;return t!=null&&t[id]?t:null}catch(t){return Uo({errorMessage:Ie(t)}),null}}function zd(e){var a,i,s,c,o;const t={metadata:{appName:e.appName||"App",appLogoUrl:e.appLogoUrl||"",appChainIds:e.appChainIds||[]},preference:e.preference??{},paymasterUrls:e.paymasterUrls};(a=e.subAccounts)!=null&&a.toOwnerAccount&&hr(e.subAccounts.toOwnerAccount),b.subAccountsConfig.set({toOwnerAccount:(i=e.subAccounts)==null?void 0:i.toOwnerAccount,creation:((s=e.subAccounts)==null?void 0:s.creation)??"manual",defaultAccount:((c=e.subAccounts)==null?void 0:c.defaultAccount)??"universal",funding:((o=e.subAccounts)==null?void 0:o.funding)??"spend-permissions"}),b.config.set(t),b.persist.rehydrate(),$s(),to(t.preference),t.preference.telemetry!==!1&&Ks();let n=null;const r={getProvider:()=>(n||(n=sd()??new ad(t)),n),subAccount:{async create(u){var d;return await((d=r.getProvider())==null?void 0:d.request({method:"wallet_addSubAccount",params:[{version:"1",account:u}]}))},async get(){var m,l;const u=b.subAccounts.get();if(u!=null&&u.address)return u;const h=(l=(await((m=r.getProvider())==null?void 0:m.request({method:"wallet_connect",params:[{version:"1",capabilities:{}}]}))).accounts[0].capabilities)==null?void 0:l.subAccounts;return Array.isArray(h)?h[0]:null},addOwner:async({address:u,publicKey:d,chainId:h})=>{var f,p;const m=b.subAccounts.get(),l=b.account.get();ie(l,new Error("account does not exist")),ie(m==null?void 0:m.address,new Error("subaccount does not exist"));const x=[];if(d){const[g,y]=Dr([{type:"bytes32"},{type:"bytes32"}],d);x.push({to:m.address,data:Se({abi:ce,functionName:"addOwnerPublicKey",args:[g,y]}),value:we(0)})}return u&&x.push({to:m.address,data:Se({abi:ce,functionName:"addOwnerAddress",args:[u]}),value:we(0)}),await((p=r.getProvider())==null?void 0:p.request({method:"wallet_sendCalls",params:[{calls:x,chainId:we(h),from:(f=l.accounts)==null?void 0:f[0],version:"1"}]}))},setToOwnerAccount(u){hr(u),b.subAccountsConfig.set({toOwnerAccount:u})}}};return r}export{qe as VERSION,zd as createBaseAccountSDK,Bn as getCryptoKeyAccount};
|