react-web3-storage 2.0.0 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ReownAuthentication-BTdnSW4c.mjs → ReownAuthentication-7iIT4jS4.mjs} +1 -1
- package/dist/{ReownAuthentication-Bi7oHuGf.js → ReownAuthentication-BEGlJitZ.js} +1 -1
- package/dist/{SwapController-CVrVI6fw.mjs → SwapController-CmWZu4cY.mjs} +1 -1
- package/dist/{SwapController-PZ_cUWEW.js → SwapController-DNucRoq5.js} +1 -1
- package/dist/{ccip-ClSy32fL.mjs → ccip-BCIUIeQM.mjs} +2 -2
- package/dist/{ccip-TDUuVnsR.js → ccip-Cy73HTCR.js} +1 -1
- package/dist/{data-capture-nJm8flD0.mjs → data-capture-CaxHvefN.mjs} +3 -3
- package/dist/{data-capture-plL1YmV9.js → data-capture-DbbP8JDT.js} +1 -1
- package/dist/{email-BIEjMkdp.mjs → email-B3WQnC0b.mjs} +2 -2
- package/dist/{email-Bb8TiksZ.js → email-CYJMBkHW.js} +1 -1
- package/dist/{embedded-wallet-BwfuLzcy.mjs → embedded-wallet-Dlo0wBgH.mjs} +1 -1
- package/dist/{embedded-wallet-Do1h12oF.js → embedded-wallet-t_Jd_LFV.js} +1 -1
- package/dist/{features-WgJ1ccjE.mjs → features-5qKGISK9.mjs} +1 -1
- package/dist/{features-3qQZVoJ9.js → features-B1ezv71b.js} +1 -1
- package/dist/{index-CWqapSt6.mjs → index-2WfSPp5U.mjs} +1 -1
- package/dist/{index-BDYtVois.mjs → index-BBH4oh8q.mjs} +2 -2
- package/dist/{index-1uaRGfNG.js → index-BCZXGGtc.js} +1 -1
- package/dist/{index-DuGTguVW.mjs → index-BR1aMNYm.mjs} +1 -1
- package/dist/{index-BTAZoMiJ.js → index-BhaYgUya.js} +4 -4
- package/dist/{index-mid89FTV.mjs → index-CAtS1mbf.mjs} +1 -1
- package/dist/{index-BKdw_1qM.mjs → index-CFLg0HEy.mjs} +7 -7
- package/dist/{index-CEc0pV8L.js → index-CZuajWCC.js} +1 -1
- package/dist/{index-DWz-QLrM.js → index-D1agTf42.js} +1 -1
- package/dist/{index-DMRaSYeI.mjs → index-D3R3_EiN.mjs} +1 -1
- package/dist/{index-Cx78ifGT.mjs → index-D8W2bJl5.mjs} +1 -1
- package/dist/{index-GJ5DCZOU.js → index-DAGaFidW.js} +1 -1
- package/dist/{index-ROIgf72J.mjs → index-DWRWjePT.mjs} +3 -3
- package/dist/{index-C4JlHMgz.js → index-Dk48RrmB.js} +1 -1
- package/dist/{index-BokidQQq.js → index-MeOSUHRy.js} +1 -1
- package/dist/{index-NFI34NW-.js → index-R_8iHUbU.js} +1 -1
- package/dist/{index-ByBvGUl7.mjs → index-SXXuh_Wo.mjs} +2 -2
- package/dist/{index-BF0RE6hb.js → index-VrnBQez9.js} +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +1 -1
- package/dist/{onramp-B6w59Uog.js → onramp-BMMneL8g.js} +1 -1
- package/dist/{onramp-C_QGimJZ.mjs → onramp-qJaw31Jf.mjs} +1 -1
- package/dist/{parseSignature-USiYfXGb.js → parseSignature-jZAFls5F.js} +2 -2
- package/dist/{parseSignature-BopOK20t.mjs → parseSignature-zKnspnY-.mjs} +2 -2
- package/dist/{pay-with-exchange-CBeg2Hon.mjs → pay-with-exchange-CTRrPVEx.mjs} +2 -2
- package/dist/{pay-with-exchange-CU_wbxzI.js → pay-with-exchange-CgjKtyDu.js} +1 -1
- package/dist/{receive-DzQ1FR7M.mjs → receive-D9mYL7F2.mjs} +1 -1
- package/dist/{receive-DI_BR-Kp.js → receive-eP1MrUw6.js} +1 -1
- package/dist/{send-DiU2PdFv.mjs → send-DmCwhyow.mjs} +4 -4
- package/dist/{send-B3h0xUoI.js → send-tFHrHPh4.js} +1 -1
- package/dist/{socials-Cu_B8mCk.js → socials-BXz_VcPl.js} +1 -1
- package/dist/{socials-iVCbnmhq.mjs → socials-BbYHDCTQ.mjs} +1 -1
- package/dist/{swaps-C9PoDZOv.js → swaps-C9W-NxLv.js} +1 -1
- package/dist/{swaps-DSWXYO4B.mjs → swaps-D06KGkWD.mjs} +3 -3
- package/dist/{transactions-vROLnPws.mjs → transactions-B-bDj0J7.mjs} +1 -1
- package/dist/{transactions-Clw8oIVh.js → transactions-CHNmwPaw.js} +1 -1
- package/dist/{w3m-modal-E2ouyDlT.mjs → w3m-modal-B82zwpqg.mjs} +3 -3
- package/dist/{w3m-modal-DagyNV6w.js → w3m-modal-CaxvJDN5.js} +1 -1
- package/package.json +1 -1
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
`),{cause:e,name:"TipAboveFeeCapError"})}}Object.defineProperty(QT,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});class Mj extends Fe{constructor({cause:e}){super(`An error occurred while executing: ${e==null?void 0:e.shortMessage}`,{cause:e,name:"UnknownNodeError"})}}function Fj(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const i=BigInt(32),s=BigInt(4294967295),o=Number(n>>i&s),a=Number(n&s),c=r?4:0,l=r?0:4;t.setUint32(e+c,o,r),t.setUint32(e+l,a,r)}function Wj(t,e,n){return t&e^~t&n}function jj(t,e,n){return t&e^t&n^e&n}class XT extends X4{constructor(e,n,r,i){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=i,this.buffer=new Uint8Array(e),this.view=ux(this.buffer)}update(e){Zp(this),e=H2(e),bc(e);const{view:n,buffer:r,blockLen:i}=this,s=e.length;for(let o=0;o<s;){const a=Math.min(i-this.pos,s-o);if(a===i){const c=ux(e);for(;i<=s-o;o+=i)this.process(c,o);continue}r.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Zp(this),xT(e,this),this.finished=!0;const{buffer:n,view:r,blockLen:i,isLE:s}=this;let{pos:o}=this;n[o++]=128,Yl(this.buffer.subarray(o)),this.padOffset>i-o&&(this.process(r,0),o=0);for(let d=o;d<i;d++)n[d]=0;Fj(r,i-8,BigInt(this.length*8),s),this.process(r,0);const a=ux(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=c/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d<l;d++)a.setUint32(4*d,u[d],s)}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:r,length:i,finished:s,destroyed:o,pos:a}=this;return e.destroyed=o,e.finished=s,e.length=i,e.pos=a,i%n&&e.buffer.set(r),e}clone(){return this._cloneInto()}}const Uc=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),hr=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),fr=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),Hj=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Lc=new Uint32Array(64);let zj=class extends XT{constructor(e=32){super(64,e,8,!1),this.A=Uc[0]|0,this.B=Uc[1]|0,this.C=Uc[2]|0,this.D=Uc[3]|0,this.E=Uc[4]|0,this.F=Uc[5]|0,this.G=Uc[6]|0,this.H=Uc[7]|0}get(){const{A:e,B:n,C:r,D:i,E:s,F:o,G:a,H:c}=this;return[e,n,r,i,s,o,a,c]}set(e,n,r,i,s,o,a,c){this.A=e|0,this.B=n|0,this.C=r|0,this.D=i|0,this.E=s|0,this.F=o|0,this.G=a|0,this.H=c|0}process(e,n){for(let d=0;d<16;d++,n+=4)Lc[d]=e.getUint32(n,!1);for(let d=16;d<64;d++){const h=Lc[d-15],f=Lc[d-2],g=_o(h,7)^_o(h,18)^h>>>3,p=_o(f,17)^_o(f,19)^f>>>10;Lc[d]=p+Lc[d-7]+g+Lc[d-16]|0}let{A:r,B:i,C:s,D:o,E:a,F:c,G:l,H:u}=this;for(let d=0;d<64;d++){const h=_o(a,6)^_o(a,11)^_o(a,25),f=u+h+Wj(a,c,l)+Hj[d]+Lc[d]|0,p=(_o(r,2)^_o(r,13)^_o(r,22))+jj(r,i,s)|0;u=l,l=c,c=a,a=o+f|0,o=s,s=i,i=r,r=f+p|0}r=r+this.A|0,i=i+this.B|0,s=s+this.C|0,o=o+this.D|0,a=a+this.E|0,c=c+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(r,i,s,o,a,c,l,u)}roundClean(){Yl(Lc)}destroy(){this.set(0,0,0,0,0,0,0,0),Yl(this.buffer)}};const eN=wT(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),Vj=eN[0],qj=eN[1],Mc=new Uint32Array(80),Fc=new Uint32Array(80);let tN=class extends XT{constructor(e=64){super(128,e,16,!1),this.Ah=fr[0]|0,this.Al=fr[1]|0,this.Bh=fr[2]|0,this.Bl=fr[3]|0,this.Ch=fr[4]|0,this.Cl=fr[5]|0,this.Dh=fr[6]|0,this.Dl=fr[7]|0,this.Eh=fr[8]|0,this.El=fr[9]|0,this.Fh=fr[10]|0,this.Fl=fr[11]|0,this.Gh=fr[12]|0,this.Gl=fr[13]|0,this.Hh=fr[14]|0,this.Hl=fr[15]|0}get(){const{Ah:e,Al:n,Bh:r,Bl:i,Ch:s,Cl:o,Dh:a,Dl:c,Eh:l,El:u,Fh:d,Fl:h,Gh:f,Gl:g,Hh:p,Hl:m}=this;return[e,n,r,i,s,o,a,c,l,u,d,h,f,g,p,m]}set(e,n,r,i,s,o,a,c,l,u,d,h,f,g,p,m){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=i|0,this.Ch=s|0,this.Cl=o|0,this.Dh=a|0,this.Dl=c|0,this.Eh=l|0,this.El=u|0,this.Fh=d|0,this.Fl=h|0,this.Gh=f|0,this.Gl=g|0,this.Hh=p|0,this.Hl=m|0}process(e,n){for(let x=0;x<16;x++,n+=4)Mc[x]=e.getUint32(n),Fc[x]=e.getUint32(n+=4);for(let x=16;x<80;x++){const A=Mc[x-15]|0,I=Fc[x-15]|0,P=jh(A,I,1)^jh(A,I,8)^TA(A,I,7),B=Hh(A,I,1)^Hh(A,I,8)^NA(A,I,7),F=Mc[x-2]|0,L=Fc[x-2]|0,j=jh(F,L,19)^Fw(F,L,61)^TA(F,L,6),z=Hh(F,L,19)^Ww(F,L,61)^NA(F,L,6),W=ej(B,z,Fc[x-7],Fc[x-16]),D=tj(W,P,j,Mc[x-7],Mc[x-16]);Mc[x]=D|0,Fc[x]=W|0}let{Ah:r,Al:i,Bh:s,Bl:o,Ch:a,Cl:c,Dh:l,Dl:u,Eh:d,El:h,Fh:f,Fl:g,Gh:p,Gl:m,Hh:b,Hl:C}=this;for(let x=0;x<80;x++){const A=jh(d,h,14)^jh(d,h,18)^Fw(d,h,41),I=Hh(d,h,14)^Hh(d,h,18)^Ww(d,h,41),P=d&f^~d&p,B=h&g^~h&m,F=nj(C,I,B,qj[x],Fc[x]),L=rj(F,b,A,P,Vj[x],Mc[x]),j=F|0,z=jh(r,i,28)^Fw(r,i,34)^Fw(r,i,39),W=Hh(r,i,28)^Ww(r,i,34)^Ww(r,i,39),D=r&s^r&a^s&a,U=i&o^i&c^o&c;b=p|0,C=m|0,p=f|0,m=g|0,f=d|0,g=h|0,{h:d,l:h}=va(l|0,u|0,L|0,j|0),l=a|0,u=c|0,a=s|0,c=o|0,s=r|0,o=i|0;const w=QW(j,W,U);r=XW(w,L,z,D),i=w|0}({h:r,l:i}=va(this.Ah|0,this.Al|0,r|0,i|0)),{h:s,l:o}=va(this.Bh|0,this.Bl|0,s|0,o|0),{h:a,l:c}=va(this.Ch|0,this.Cl|0,a|0,c|0),{h:l,l:u}=va(this.Dh|0,this.Dl|0,l|0,u|0),{h:d,l:h}=va(this.Eh|0,this.El|0,d|0,h|0),{h:f,l:g}=va(this.Fh|0,this.Fl|0,f|0,g|0),{h:p,l:m}=va(this.Gh|0,this.Gl|0,p|0,m|0),{h:b,l:C}=va(this.Hh|0,this.Hl|0,b|0,C|0),this.set(r,i,s,o,a,c,l,u,d,h,f,g,p,m,b,C)}roundClean(){Yl(Mc,Fc)}destroy(){Yl(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};class Gj extends tN{constructor(){super(48),this.Ah=hr[0]|0,this.Al=hr[1]|0,this.Bh=hr[2]|0,this.Bl=hr[3]|0,this.Ch=hr[4]|0,this.Cl=hr[5]|0,this.Dh=hr[6]|0,this.Dl=hr[7]|0,this.Eh=hr[8]|0,this.El=hr[9]|0,this.Fh=hr[10]|0,this.Fl=hr[11]|0,this.Gh=hr[12]|0,this.Gl=hr[13]|0,this.Hh=hr[14]|0,this.Hl=hr[15]|0}}const nN=z2(()=>new zj),Kj=z2(()=>new tN),Zj=z2(()=>new Gj),Yj=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"}],Jj=[{name:"query",type:"function",stateMutability:"view",inputs:[{type:"tuple[]",name:"queries",components:[{type:"address",name:"sender"},{type:"string[]",name:"urls"},{type:"bytes",name:"data"}]}],outputs:[{type:"bool[]",name:"failures"},{type:"bytes[]",name:"responses"}]},{name:"HttpError",type:"error",inputs:[{type:"uint16",name:"status"},{type:"string",name:"message"}]}],rN=[{inputs:[{name:"dns",type:"bytes"}],name:"DNSDecodingFailed",type:"error"},{inputs:[{name:"ens",type:"string"}],name:"DNSEncodingFailed",type:"error"},{inputs:[],name:"EmptyAddress",type:"error"},{inputs:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"HttpError",type:"error"},{inputs:[],name:"InvalidBatchGatewayResponse",type:"error"},{inputs:[{name:"errorData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{name:"name",type:"bytes"},{name:"resolver",type:"address"}],name:"ResolverNotContract",type:"error"},{inputs:[{name:"name",type:"bytes"}],name:"ResolverNotFound",type:"error"},{inputs:[{name:"primary",type:"string"},{name:"primaryAddress",type:"bytes"}],name:"ReverseAddressMismatch",type:"error"},{inputs:[{internalType:"bytes4",name:"selector",type:"bytes4"}],name:"UnsupportedResolverProfile",type:"error"}],Qj=[...rN,{name:"resolveWithGateways",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],Xj=[...rN,{name:"reverseWithGateways",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"uint256",name:"coinType"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolver"},{type:"address",name:"reverseResolver"}]}],eH=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],tH=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],nH=[{name:"isValidSignature",type:"function",stateMutability:"view",inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],outputs:[{name:"",type:"bytes4"}]}],rH=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}],Vg=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}];function iN(){let t=()=>{},e=()=>{};return{promise:new Promise((r,i)=>{t=r,e=i}),resolve:t,reject:e}}const fx=new Map;function sN({fn:t,id:e,shouldSplitBatch:n,wait:r=0,sort:i}){const s=async()=>{const u=c();o();const d=u.map(({args:h})=>h);d.length!==0&&t(d).then(h=>{i&&Array.isArray(h)&&h.sort(i);for(let f=0;f<u.length;f++){const{resolve:g}=u[f];g==null||g([h[f],h])}}).catch(h=>{for(let f=0;f<u.length;f++){const{reject:g}=u[f];g==null||g(h)}})},o=()=>fx.delete(e),a=()=>c().map(({args:u})=>u),c=()=>fx.get(e)||[],l=u=>fx.set(e,[...c(),u]);return{flush:o,async schedule(u){const{promise:d,resolve:h,reject:f}=iN();return(n==null?void 0:n([...a(),u]))&&s(),c().length>0?(l({args:u,resolve:h,reject:f}),d):(l({args:u,resolve:h,reject:f}),setTimeout(s,r),d)}}}async function uC(t){return new Promise(e=>setTimeout(e,t))}function oN(t,{delay:e=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,s)=>{const o=async({count:a=0}={})=>{const c=async({error:l})=>{const u=typeof e=="function"?e({count:a,error:l}):e;u&&await uC(u),o({count:a+1})};try{const l=await t();i(l)}catch(l){if(a<n&&await r({count:a,error:l}))return c({error:l});s(l)}};o()})}const bv=256;let jw=bv,Hw;function aN(t=11){if(!Hw||jw+t>bv*2){Hw="",jw=0;for(let e=0;e<bv;e++)Hw+=(256+Math.random()*256|0).toString(16).substring(1)}return Hw.substring(jw,jw+++t)}const zw=new q2(8192);function iH(t,{enabled:e=!0,id:n}){if(!e||!n)return t();if(zw.get(n))return zw.get(n);const r=t().finally(()=>zw.delete(n));return zw.set(n,r),r}function sH(t,e={}){return async(n,r={})=>{var d;const{dedupe:i=!1,methods:s,retryDelay:o=150,retryCount:a=3,uid:c}={...e,...r},{method:l}=n;if((d=s==null?void 0:s.exclude)!=null&&d.includes(l))throw new $l(new Error("method not supported"),{method:l});if(s!=null&&s.include&&!s.include.includes(l))throw new $l(new Error("method not supported"),{method:l});const u=i?Gp(`${c}.${hc(n)}`):void 0;return iH(()=>oN(async()=>{try{return await t(n)}catch(h){const f=h;switch(f.code){case Yp.code:throw new Yp(f);case Jp.code:throw new Jp(f);case Qp.code:throw new Qp(f,{method:n.method});case Xp.code:throw new Xp(f);case Wd.code:throw new Wd(f);case e0.code:throw new e0(f);case t0.code:throw new t0(f);case n0.code:throw new n0(f);case jd.code:throw new jd(f);case $l.code:throw new $l(f,{method:n.method});case Hd.code:throw new Hd(f);case r0.code:throw new r0(f);case Ll.code:throw new Ll(f);case i0.code:throw new i0(f);case s0.code:throw new s0(f);case o0.code:throw new o0(f);case a0.code:throw new a0(f);case c0.code:throw new c0(f);case l0.code:throw new l0(f);case u0.code:throw new u0(f);case d0.code:throw new d0(f);case h0.code:throw new h0(f);case f0.code:throw new f0(f);case p0.code:throw new p0(f);case g0.code:throw new g0(f);case 5e3:throw new Ll(f);default:throw h instanceof Fe?h:new jT(f)}}},{delay:({count:h,error:f})=>{var g;if(f&&f instanceof Of){const p=(g=f==null?void 0:f.headers)==null?void 0:g.get("Retry-After");if(p!=null&&p.match(/\d/))return Number.parseInt(p,10)*1e3}return~~(1<<h)*o},retryCount:a,shouldRetry:({error:h})=>oH(h)}),{enabled:i,id:u})}}function oH(t){return"code"in t&&typeof t.code=="number"?t.code===-1||t.code===Hd.code||t.code===Wd.code:t instanceof Of&&t.status?t.status===403||t.status===408||t.status===413||t.status===429||t.status===500||t.status===502||t.status===503||t.status===504:!0}function cN(t,{errorInstance:e=new Error("timed out"),timeout:n,signal:r}){return new Promise((i,s)=>{(async()=>{let o;try{const a=new AbortController;n>0&&(o=setTimeout(()=>{r&&a.abort()},n)),i(await t({signal:(a==null?void 0:a.signal)||null}))}catch(a){(a==null?void 0:a.name)==="AbortError"&&s(e),s(a)}finally{clearTimeout(o)}})()})}function aH(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const DA=aH();function cH(t,e={}){const{url:n,headers:r}=lH(t);return{async request(i){var g;const{body:s,fetchFn:o=e.fetchFn??fetch,onRequest:a=e.onRequest,onResponse:c=e.onResponse,timeout:l=e.timeout??1e4}=i,u={...e.fetchOptions??{},...i.fetchOptions??{}},{headers:d,method:h,signal:f}=u;try{const p=await cN(async({signal:b})=>{const C={...u,body:Array.isArray(s)?hc(s.map(P=>({jsonrpc:"2.0",id:P.id??DA.take(),...P}))):hc({jsonrpc:"2.0",id:s.id??DA.take(),...s}),headers:{...r,"Content-Type":"application/json",...d},method:h||"POST",signal:f||(l>0?b:null)},x=new Request(n,C),A=await(a==null?void 0:a(x,C))??{...C,url:n};return await o(A.url??n,A)},{errorInstance:new yv({body:s,url:n}),timeout:l,signal:!0});c&&await c(p);let m;if((g=p.headers.get("Content-Type"))!=null&&g.startsWith("application/json"))m=await p.json();else{m=await p.text();try{m=JSON.parse(m||"{}")}catch(b){if(p.ok)throw b;m={error:m}}}if(!p.ok)throw new Of({body:s,details:hc(m.error)||p.statusText,headers:p.headers,status:p.status,url:n});return m}catch(p){throw p instanceof Of||p instanceof yv?p:new Of({body:s,cause:p,url:n})}}}}function lH(t){try{const e=new URL(t),n=(()=>{if(e.username){const r=`${decodeURIComponent(e.username)}:${decodeURIComponent(e.password)}`;return e.username="",e.password="",{url:e.toString(),headers:{Authorization:`Basic ${btoa(r)}`}}}})();return{url:e.toString(),...n}}catch{return{url:t}}}const lN=`Ethereum Signed Message:
|
|
27
27
|
`;function uN(t){const e=typeof t=="string"?Gp(t):typeof t.raw=="string"?t.raw:W2(t.raw),n=Gp(`${lN}${Nr(e)}`);return xc([n,e])}function dN(t,e){return lo(uN(t),e)}class hN extends Fe{constructor({domain:e}){super(`Invalid domain "${hc(e)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class fN extends Fe{constructor({primaryType:e,types:n}){super(`Invalid primary type \`${e}\` must be one of \`${JSON.stringify(Object.keys(n))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class pN extends Fe{constructor({type:e}){super(`Struct type "${e}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function gN(t){const{domain:e,message:n,primaryType:r,types:i}=t,s=(o,a)=>{for(const c of o){const{name:l,type:u}=c,d=a[l],h=u.match(sC);if(h&&(typeof d=="number"||typeof d=="bigint")){const[p,m,b]=h;$c(d,{signed:m==="int",size:Number.parseInt(b,10)/8})}if(u==="address"&&typeof d=="string"&&!Fd(d))throw new V2({address:d});const f=u.match(BT);if(f){const[p,m]=f;if(m&&Nr(d)!==Number.parseInt(m,10))throw new aT({expectedSize:Number.parseInt(m,10),givenSize:Nr(d)})}const g=i[u];g&&(uH(u),s(g,d))}};if(i.EIP712Domain&&e){if(typeof e!="object")throw new hN({domain:e});s(i.EIP712Domain,e)}if(r!=="EIP712Domain")if(i[r])s(i[r],n);else throw new fN({primaryType:r,types:i})}function mN({domain:t}){return[typeof(t==null?void 0:t.name)=="string"&&{name:"name",type:"string"},(t==null?void 0:t.version)&&{name:"version",type:"string"},(typeof(t==null?void 0:t.chainId)=="number"||typeof(t==null?void 0:t.chainId)=="bigint")&&{name:"chainId",type:"uint256"},(t==null?void 0:t.verifyingContract)&&{name:"verifyingContract",type:"address"},(t==null?void 0:t.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function uH(t){if(t==="address"||t==="bool"||t==="string"||t.startsWith("bytes")||t.startsWith("uint")||t.startsWith("int"))throw new pN({type:t})}function wN(t){const{domain:e={},message:n,primaryType:r}=t,i={EIP712Domain:mN({domain:e}),...t.types};gN({domain:e,message:n,primaryType:r,types:i});const s=["0x1901"];return e&&s.push(yN({domain:e,types:i})),r!=="EIP712Domain"&&s.push(dC({data:n,primaryType:r,types:i})),lo(xc(s))}function yN({domain:t,types:e}){return dC({data:t,primaryType:"EIP712Domain",types:e})}function dC({data:t,primaryType:e,types:n}){const r=bN({data:t,primaryType:e,types:n});return lo(r)}function bN({data:t,primaryType:e,types:n}){const r=[{type:"bytes32"}],i=[dH({primaryType:e,types:n})];for(const s of n[e]){const[o,a]=EN({types:n,name:s.name,type:s.type,value:t[s.name]});r.push(o),i.push(a)}return G2(r,i)}function dH({primaryType:t,types:e}){const n=qp(hH({primaryType:t,types:e}));return lo(n)}function hH({primaryType:t,types:e}){let n="";const r=xN({primaryType:t,types:e});r.delete(t);const i=[t,...Array.from(r).sort()];for(const s of i)n+=`${s}(${e[s].map(({name:o,type:a})=>`${a} ${o}`).join(",")})`;return n}function xN({primaryType:t,types:e},n=new Set){const r=t.match(/^\w*/u),i=r==null?void 0:r[0];if(n.has(i)||e[i]===void 0)return n;n.add(i);for(const s of e[i])xN({primaryType:s.type,types:e},n);return n}function EN({types:t,name:e,type:n,value:r}){if(t[n]!==void 0)return[{type:"bytes32"},lo(bN({data:r,primaryType:n,types:t}))];if(n==="bytes")return[{type:"bytes32"},lo(r)];if(n==="string")return[{type:"bytes32"},lo(qp(r))];if(n.lastIndexOf("]")===n.length-1){const i=n.slice(0,n.lastIndexOf("[")),s=r.map(o=>EN({name:e,type:i,types:t,value:o}));return[{type:"bytes32"},lo(G2(s.map(([o])=>o),s.map(([,o])=>o)))]}return[{type:n},r]}let vN=class extends X4{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,bT(e);const r=H2(n);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const i=this.blockLen,s=new Uint8Array(i);s.set(r.length>i?e.create().update(r).digest():r);for(let o=0;o<s.length;o++)s[o]^=54;this.iHash.update(s),this.oHash=e.create();for(let o=0;o<s.length;o++)s[o]^=106;this.oHash.update(s),Yl(s)}update(e){return Zp(this),this.iHash.update(e),this}digestInto(e){Zp(this),bc(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:i,destroyed:s,blockLen:o,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=s,e.blockLen=o,e.outputLen=a,e.oHash=n._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}};const hC=(t,e,n)=>new vN(t,e).update(n).digest();hC.create=(t,e)=>new vN(t,e);function fC({key:t,methods:e,name:n,request:r,retryCount:i=3,retryDelay:s=150,timeout:o,type:a},c){const l=aN();return{config:{key:t,methods:e,name:n,request:r,retryCount:i,retryDelay:s,timeout:o,type:a},request:sH(r,{methods:e,retryCount:i,retryDelay:s,uid:l}),value:c}}function xv(t,e={}){const{key:n="fallback",name:r="Fallback",rank:i=!1,shouldThrow:s=CN,retryCount:o,retryDelay:a}=e;return({chain:c,pollingInterval:l=4e3,timeout:u,...d})=>{let h=t,f=()=>{};const g=fC({key:n,name:r,async request({method:p,params:m}){let b;const C=async(x=0)=>{const A=h[x]({...d,chain:c,retryCount:0,timeout:u});try{const I=await A.request({method:p,params:m});return f({method:p,params:m,response:I,transport:A,status:"success"}),I}catch(I){if(f({error:I,method:p,params:m,transport:A,status:"error"}),s(I)||x===h.length-1||(b??(b=h.slice(x+1).some(P=>{const{include:B,exclude:F}=P({chain:c}).config.methods||{};return B?B.includes(p):F?!F.includes(p):!0})),!b))throw I;return C(x+1)}};return C()},retryCount:o,retryDelay:a,type:"fallback"},{onResponse:p=>f=p,transports:h.map(p=>p({chain:c,retryCount:0}))});if(i){const p=typeof i=="object"?i:{};fH({chain:c,interval:p.interval??l,onTransports:m=>h=m,ping:p.ping,sampleCount:p.sampleCount,timeout:p.timeout,transports:h,weights:p.weights})}return g}}function CN(t){return!!("code"in t&&typeof t.code=="number"&&(t.code===jd.code||t.code===Ll.code||Y2.nodeMessage.test(t.message)||t.code===5e3))}function fH({chain:t,interval:e=4e3,onTransports:n,ping:r,sampleCount:i=10,timeout:s=1e3,transports:o,weights:a={}}){const{stability:c=.7,latency:l=.3}=a,u=[],d=async()=>{const h=await Promise.all(o.map(async p=>{const m=p({chain:t,retryCount:0,timeout:s}),b=Date.now();let C,x;try{await(r?r({transport:m}):m.request({method:"net_listening"})),x=1}catch{x=0}finally{C=Date.now()}return{latency:C-b,success:x}}));u.push(h),u.length>i&&u.shift();const f=Math.max(...u.map(p=>Math.max(...p.map(({latency:m})=>m)))),g=o.map((p,m)=>{const b=u.map(P=>P[m].latency),x=1-b.reduce((P,B)=>P+B,0)/b.length/f,A=u.map(P=>P[m].success),I=A.reduce((P,B)=>P+B,0)/A.length;return I===0?[0,m]:[l*x+c*I,m]}).sort((p,m)=>m[0]-p[0]);n(g.map(([,p])=>o[p])),await uC(e),d()};d()}class AN extends Fe{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}function qg(t,e={}){const{batch:n,fetchFn:r,fetchOptions:i,key:s="http",methods:o,name:a="HTTP JSON-RPC",onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=e;return({chain:h,retryCount:f,timeout:g})=>{const{batchSize:p=1e3,wait:m=0}=typeof n=="object"?n:{},b=e.retryCount??f,C=g??e.timeout??1e4,x=t||(h==null?void 0:h.rpcUrls.default.http[0]);if(!x)throw new AN;const A=cH(x,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:C});return fC({key:s,methods:o,name:a,async request({method:I,params:P}){const B={method:I,params:P},{schedule:F}=sN({id:x,wait:m,shouldSplitBatch(W){return W.length>p},fn:W=>A.request({body:W}),sort:(W,D)=>W.id-D.id}),L=async W=>n?F(W):[await A.request({body:W})],[{error:j,result:z}]=await L(B);if(d)return{error:j,result:z};if(j)throw new lC({body:B,error:j,url:x});return z},retryCount:b,retryDelay:u,timeout:C,type:"http"},{fetchOptions:i,url:x})}}async function xg(...t){const e=await fetch(...t);if(!e.ok)throw new Error(`HTTP status code: ${e.status}`,{cause:e});return e}class G0{constructor({baseUrl:e,clientId:n}){this.baseUrl=e,this.clientId=n}async get({headers:e,signal:n,cache:r,...i}){const s=this.createUrl(i);return(await xg(s,{method:"GET",headers:e,signal:n,cache:r})).json()}async getBlob({headers:e,signal:n,...r}){const i=this.createUrl(r);return(await xg(i,{method:"GET",headers:e,signal:n})).blob()}async post({body:e,headers:n,signal:r,...i}){const s=this.createUrl(i);return(await xg(s,{method:"POST",headers:n,body:e?JSON.stringify(e):void 0,signal:r})).json()}async put({body:e,headers:n,signal:r,...i}){const s=this.createUrl(i);return(await xg(s,{method:"PUT",headers:n,body:e?JSON.stringify(e):void 0,signal:r})).json()}async delete({body:e,headers:n,signal:r,...i}){const s=this.createUrl(i);return(await xg(s,{method:"DELETE",headers:n,body:e?JSON.stringify(e):void 0,signal:r})).json()}createUrl({path:e,params:n}){const r=new URL(e,this.baseUrl);return n&&Object.entries(n).forEach(([i,s])=>{s&&r.searchParams.append(i,s)}),this.clientId&&r.searchParams.append("clientId",this.clientId),r}sendBeacon({body:e,...n}){const r=this.createUrl(n);return navigator.sendBeacon(r.toString(),e?JSON.stringify(e):void 0)}}const Ev={getFeatureValue(t,e){const n=e==null?void 0:e[t];return n===void 0?We.DEFAULT_FEATURES[t]:n},filterSocialsByPlatform(t){if(!t||!t.length)return t;let e=t;return ee.isTelegram()&&(ee.isIos()&&(e=e.filter(n=>n!=="google")),ee.isMac()&&(e=e.filter(n=>n!=="x")),ee.isAndroid()&&(e=e.filter(n=>!["facebook","x"].includes(n)))),ee.isMobile()&&(e=e.filter(n=>n!=="facebook")),e},isSocialsEnabled(){var t,e,n,r;return Array.isArray((t=V.state.features)==null?void 0:t.socials)&&((e=V.state.features)==null?void 0:e.socials.length)>0||Array.isArray((n=V.state.remoteFeatures)==null?void 0:n.socials)&&((r=V.state.remoteFeatures)==null?void 0:r.socials.length)>0},isEmailEnabled(){var t,e;return!!((t=V.state.features)!=null&&t.email||(e=V.state.remoteFeatures)!=null&&e.email)}},Le=Lt({features:We.DEFAULT_FEATURES,projectId:"",sdkType:"appkit",sdkVersion:"html-wagmi-undefined",defaultAccountTypes:We.DEFAULT_ACCOUNT_TYPES,enableNetworkSwitch:!0,experimental_preferUniversalLinks:!1,remoteFeatures:{},enableMobileFullScreen:!1,coinbasePreference:"all"}),V={state:Le,subscribeKey(t,e){return xn(Le,t,e)},setOptions(t){Object.assign(Le,t)},setRemoteFeatures(t){var n,r;if(!t)return;const e={...Le.remoteFeatures,...t};Le.remoteFeatures=e,(n=Le.remoteFeatures)!=null&&n.socials&&(Le.remoteFeatures.socials=Ev.filterSocialsByPlatform(Le.remoteFeatures.socials)),(r=Le.features)!=null&&r.pay&&(Le.remoteFeatures.email=!1,Le.remoteFeatures.socials=!1)},setFeatures(t){var n;if(!t)return;Le.features||(Le.features=We.DEFAULT_FEATURES);const e={...Le.features,...t};Le.features=e,(n=Le.features)!=null&&n.pay&&Le.remoteFeatures&&(Le.remoteFeatures.email=!1,Le.remoteFeatures.socials=!1)},setProjectId(t){Le.projectId=t},setCustomRpcUrls(t){Le.customRpcUrls=t},setAllWallets(t){Le.allWallets=t},setIncludeWalletIds(t){Le.includeWalletIds=t},setExcludeWalletIds(t){Le.excludeWalletIds=t},setFeaturedWalletIds(t){Le.featuredWalletIds=t},setTokens(t){Le.tokens=t},setTermsConditionsUrl(t){Le.termsConditionsUrl=t},setPrivacyPolicyUrl(t){Le.privacyPolicyUrl=t},setCustomWallets(t){Le.customWallets=t},setIsSiweEnabled(t){Le.isSiweEnabled=t},setIsUniversalProvider(t){Le.isUniversalProvider=t},setSdkVersion(t){Le.sdkVersion=t},setMetadata(t){Le.metadata=t},setDisableAppend(t){Le.disableAppend=t},setEIP6963Enabled(t){Le.enableEIP6963=t},setDebug(t){Le.debug=t},setEnableWalletGuide(t){Le.enableWalletGuide=t},setEnableAuthLogger(t){Le.enableAuthLogger=t},setEnableWallets(t){Le.enableWallets=t},setPreferUniversalLinks(t){Le.experimental_preferUniversalLinks=t},setSIWX(t){if(t)for(const[e,n]of Object.entries(We.SIWX_DEFAULTS))t[e]??(t[e]=n);Le.siwx=t},setConnectMethodsOrder(t){Le.features={...Le.features,connectMethodsOrder:t}},setWalletFeaturesOrder(t){Le.features={...Le.features,walletFeaturesOrder:t}},setSocialsOrder(t){Le.remoteFeatures={...Le.remoteFeatures,socials:t}},setCollapseWallets(t){Le.features={...Le.features,collapseWallets:t}},setEnableEmbedded(t){Le.enableEmbedded=t},setAllowUnsupportedChain(t){Le.allowUnsupportedChain=t},setManualWCControl(t){Le.manualWCControl=t},setEnableNetworkSwitch(t){Le.enableNetworkSwitch=t},setEnableMobileFullScreen(t){Le.enableMobileFullScreen=ee.isMobile()&&t},setEnableReconnect(t){Le.enableReconnect=t},setCoinbasePreference(t){Le.coinbasePreference=t},setDefaultAccountTypes(t={}){Object.entries(t).forEach(([e,n])=>{n&&(Le.defaultAccountTypes[e]=n)})},setUniversalProviderConfigOverride(t){Le.universalProviderConfigOverride=t},getUniversalProviderConfigOverride(){return Le.universalProviderConfigOverride},getSnapshot(){return $d(Le)}},Ru=Object.freeze({message:"",variant:"success",svg:void 0,open:!1,autoClose:!0}),Nn=Lt({...Ru}),pH={state:Nn,subscribeKey(t,e){return xn(Nn,t,e)},showLoading(t,e={}){this._showMessage({message:t,variant:"loading",...e})},showSuccess(t){this._showMessage({message:t,variant:"success"})},showSvg(t,e){this._showMessage({message:t,svg:e})},showError(t){const e=ee.parseError(t);this._showMessage({message:e,variant:"error"})},hide(){Nn.message=Ru.message,Nn.variant=Ru.variant,Nn.svg=Ru.svg,Nn.open=Ru.open,Nn.autoClose=Ru.autoClose},_showMessage({message:t,svg:e,variant:n="success",autoClose:r=Ru.autoClose}){Nn.open?(Nn.open=!1,setTimeout(()=>{Nn.message=t,Nn.variant=n,Nn.svg=e,Nn.open=!0,Nn.autoClose=r},150)):(Nn.message=t,Nn.variant=n,Nn.svg=e,Nn.open=!0,Nn.autoClose=r)}},nt=pH,gH={purchaseCurrencies:[{id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"USD Coin",symbol:"USDC",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]},{id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"Ether",symbol:"ETH",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]}],paymentCurrencies:[{id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},{id:"EUR",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]}]},_N=ee.getBlockchainApiUrl(),Dr=Lt({clientId:null,api:new G0({baseUrl:_N,clientId:null}),supportedChains:{http:[],ws:[]}}),qe={state:Dr,async get(t){const{st:e,sv:n}=qe.getSdkProperties(),r=V.state.projectId,i={...t.params||{},st:e,sv:n,projectId:r};return Dr.api.get({...t,params:i})},getSdkProperties(){const{sdkType:t,sdkVersion:e}=V.state;return{st:t||"unknown",sv:e||"unknown"}},async isNetworkSupported(t){if(!t)return!1;try{Dr.supportedChains.http.length||await qe.getSupportedNetworks()}catch{return!1}return Dr.supportedChains.http.includes(t)},async getSupportedNetworks(){try{const t=await qe.get({path:"v1/supported-chains"});return Dr.supportedChains=t,t}catch{return Dr.supportedChains}},async fetchIdentity({address:t}){const e=re.getIdentityFromCacheForAddress(t);if(e)return e;const n=await qe.get({path:`/v1/identity/${t}`,params:{sender:v.state.activeCaipAddress?ee.getPlainAddress(v.state.activeCaipAddress):void 0}});return re.updateIdentityCache({address:t,identity:n,timestamp:Date.now()}),n},async fetchTransactions({account:t,cursor:e,signal:n,cache:r,chainId:i}){var c;if(!await qe.isNetworkSupported((c=v.state.activeCaipNetwork)==null?void 0:c.caipNetworkId))return{data:[],next:void 0};const o=re.getTransactionsCacheForAddress({address:t,chainId:i});if(o)return o;const a=await qe.get({path:`/v1/account/${t}/history`,params:{cursor:e,chainId:i},signal:n,cache:r});return re.updateTransactionsCache({address:t,chainId:i,timestamp:Date.now(),transactions:a}),a},async fetchSwapQuote({amount:t,userAddress:e,from:n,to:r,gasPrice:i}){var o;return await qe.isNetworkSupported((o=v.state.activeCaipNetwork)==null?void 0:o.caipNetworkId)?qe.get({path:"/v1/convert/quotes",headers:{"Content-Type":"application/json"},params:{amount:t,userAddress:e,from:n,to:r,gasPrice:i}}):{quotes:[]}},async fetchSwapTokens({chainId:t}){var n;return await qe.isNetworkSupported((n=v.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?qe.get({path:"/v1/convert/tokens",params:{chainId:t}}):{tokens:[]}},async getAddressBalance({caipNetworkId:t,address:e}){return Dr.api.post({path:`/v1?chainId=${t}&projectId=${V.state.projectId}`,body:{id:"1",jsonrpc:"2.0",method:"getAddressBalance",params:{address:e}}}).then(n=>n.result)},async fetchTokenPrice({addresses:t,caipNetworkId:e=(n=>(n=v.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)()}){if(!await qe.isNetworkSupported(e))return{fungibles:[]};const i=re.getTokenPriceCacheForAddresses(t);if(i)return i;const s=await Dr.api.post({path:"/v1/fungible/price",body:{currency:"usd",addresses:t,projectId:V.state.projectId},headers:{"Content-Type":"application/json"}});return re.updateTokenPriceCache({addresses:t,timestamp:Date.now(),tokenPrice:s}),s},async fetchSwapAllowance({tokenAddress:t,userAddress:e}){var r;return await qe.isNetworkSupported((r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)?qe.get({path:"/v1/convert/allowance",params:{tokenAddress:t,userAddress:e},headers:{"Content-Type":"application/json"}}):{allowance:"0"}},async fetchGasPrice({chainId:t}){var i;const{st:e,sv:n}=qe.getSdkProperties();if(!await qe.isNetworkSupported((i=v.state.activeCaipNetwork)==null?void 0:i.caipNetworkId))throw new Error("Network not supported for Gas Price");return qe.get({path:"/v1/convert/gas-price",headers:{"Content-Type":"application/json"},params:{chainId:t,st:e,sv:n}})},async generateSwapCalldata({amount:t,from:e,to:n,userAddress:r,disableEstimate:i}){var o;if(!await qe.isNetworkSupported((o=v.state.activeCaipNetwork)==null?void 0:o.caipNetworkId))throw new Error("Network not supported for Swaps");return Dr.api.post({path:"/v1/convert/build-transaction",headers:{"Content-Type":"application/json"},body:{amount:t,eip155:{slippage:We.CONVERT_SLIPPAGE_TOLERANCE},projectId:V.state.projectId,from:e,to:n,userAddress:r,disableEstimate:i}})},async generateApproveCalldata({from:t,to:e,userAddress:n}){var o;const{st:r,sv:i}=qe.getSdkProperties();if(!await qe.isNetworkSupported((o=v.state.activeCaipNetwork)==null?void 0:o.caipNetworkId))throw new Error("Network not supported for Swaps");return qe.get({path:"/v1/convert/build-approve",headers:{"Content-Type":"application/json"},params:{userAddress:n,from:t,to:e,st:r,sv:i}})},async getBalance(t,e,n){var l;const{st:r,sv:i}=qe.getSdkProperties();if(!await qe.isNetworkSupported((l=v.state.activeCaipNetwork)==null?void 0:l.caipNetworkId))return nt.showError("Token Balance Unavailable"),{balances:[]};const o=`${e}:${t}`,a=re.getBalanceCacheForCaipAddress(o);if(a)return a;const c=await qe.get({path:`/v1/account/${t}/balance`,params:{currency:"usd",chainId:e,forceUpdate:n,st:r,sv:i}});return re.updateBalanceCache({caipAddress:o,balance:c,timestamp:Date.now()}),c},async lookupEnsName(t){var n;return await qe.isNetworkSupported((n=v.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?qe.get({path:`/v1/profile/account/${t}`,params:{apiVersion:"2"}}):{addresses:{},attributes:[]}},async reverseLookupEnsName({address:t}){var r,i;if(!await qe.isNetworkSupported((r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId))return[];const n=(i=v.getAccountData())==null?void 0:i.address;return qe.get({path:`/v1/profile/reverse/${t}`,params:{sender:n,apiVersion:"2"}})},async getEnsNameSuggestions(t){var n;return await qe.isNetworkSupported((n=v.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?qe.get({path:`/v1/profile/suggestions/${t}`,params:{zone:"reown.id"}}):{suggestions:[]}},async registerEnsName({coinType:t,address:e,message:n,signature:r}){var s;return await qe.isNetworkSupported((s=v.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)?Dr.api.post({path:"/v1/profile/account",body:{coin_type:t,address:e,message:n,signature:r},headers:{"Content-Type":"application/json"}}):{success:!1}},async generateOnRampURL({destinationWallets:t,partnerUserId:e,defaultNetwork:n,purchaseAmount:r,paymentAmount:i}){var a;return await qe.isNetworkSupported((a=v.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)?(await Dr.api.post({path:"/v1/generators/onrampurl",params:{projectId:V.state.projectId},body:{destinationWallets:t,defaultNetwork:n,partnerUserId:e,defaultExperience:"buy",presetCryptoAmount:r,presetFiatAmount:i}})).url:""},async getOnrampOptions(){var e;if(!await qe.isNetworkSupported((e=v.state.activeCaipNetwork)==null?void 0:e.caipNetworkId))return{paymentCurrencies:[],purchaseCurrencies:[]};try{return await qe.get({path:"/v1/onramp/options"})}catch{return gH}},async getOnrampQuote({purchaseCurrency:t,paymentCurrency:e,amount:n,network:r}){var i;try{return await qe.isNetworkSupported((i=v.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)?await Dr.api.post({path:"/v1/onramp/quote",params:{projectId:V.state.projectId},body:{purchaseCurrency:t,paymentCurrency:e,amount:n,network:r}}):null}catch{return{networkFee:{amount:n,currency:e.id},paymentSubtotal:{amount:n,currency:e.id},paymentTotal:{amount:n,currency:e.id},purchaseAmount:{amount:n,currency:e.id},quoteId:"mocked-quote-id"}}},async getSmartSessions(t){var n;return await qe.isNetworkSupported((n=v.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?qe.get({path:`/v1/sessions/${t}`}):[]},async revokeSmartSession(t,e,n){var i;return await qe.isNetworkSupported((i=v.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)?Dr.api.post({path:`/v1/sessions/${t}/revoke`,params:{projectId:V.state.projectId},body:{pci:e,signature:n}}):{success:!1}},setClientId(t){Dr.clientId=t,Dr.api=new G0({baseUrl:_N,clientId:t})}},mH=Object.freeze({enabled:!0,events:[]}),wH=new G0({baseUrl:ee.getAnalyticsUrl(),clientId:null}),yH=5,bH=60*1e3,Wc=Lt({...mH}),xH={state:Wc,subscribeKey(t,e){return xn(Wc,t,e)},async sendError(t,e){if(!Wc.enabled)return;const n=Date.now();if(Wc.events.filter(s=>{const o=new Date(s.properties.timestamp||"").getTime();return n-o<bH}).length>=yH)return;const i={type:"error",event:e,properties:{errorType:t.name,errorMessage:t.message,stackTrace:t.stack,timestamp:new Date().toISOString()}};Wc.events.push(i);try{if(typeof window>"u")return;const{projectId:s,sdkType:o,sdkVersion:a}=V.state;await wH.post({path:"/e",params:{projectId:s,st:o,sv:a||"html-wagmi-4.2.2"},body:{eventId:ee.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:new Date().toISOString(),props:{type:"error",event:e,errorType:t.name,errorMessage:t.message,stackTrace:t.stack}}})}catch{}},enable(){Wc.enabled=!0},disable(){Wc.enabled=!1},clearEvents(){Wc.events=[]}};class go extends Error{constructor(e,n,r){super(e),this.originalName="AppKitError",this.name="AppKitError",this.category=n,this.originalError=r,r&&r instanceof Error&&(this.originalName=r.name),Object.setPrototypeOf(this,go.prototype);let i=!1;if(r instanceof Error&&typeof r.stack=="string"&&r.stack){const s=r.stack,o=s.indexOf(`
|
|
28
28
|
`);if(o>-1){const a=s.substring(o+1);this.stack=`${this.name}: ${this.message}
|
|
29
|
-
${a}`,i=!0}}i||(Error.captureStackTrace?Error.captureStackTrace(this,go):this.stack||(this.stack=`${this.name}: ${this.message}`))}}function BA(t,e){let n="";try{t instanceof Error?n=t.message:typeof t=="string"?n=t:typeof t=="object"&&t!==null?Object.keys(t).length===0?n="Unknown error":n=(t==null?void 0:t.message)||JSON.stringify(t):n=String(t)}catch(i){n="Unknown error",console.error("Error parsing error message",i)}const r=t instanceof go?t:new go(n,e,t);throw xH.sendError(r,r.category),r}function _i(t,e="INTERNAL_SDK_ERROR"){const n={};return Object.keys(t).forEach(r=>{const i=t[r];if(typeof i=="function"){let s=i;i.constructor.name==="AsyncFunction"?s=async(...o)=>{try{return await i(...o)}catch(a){return BA(a,e)}}:s=(...o)=>{try{return i(...o)}catch(a){return BA(a,e)}},n[r]=s}else n[r]=i}),n}const Oi=Lt({walletImages:{},networkImages:{},chainImages:{},connectorImages:{},tokenImages:{},currencyImages:{}}),EH={state:Oi,subscribeNetworkImages(t){return fn(Oi.networkImages,()=>t(Oi.networkImages))},subscribeKey(t,e){return xn(Oi,t,e)},subscribe(t){return fn(Oi,()=>t(Oi))},setWalletImage(t,e){Oi.walletImages[t]=e},setNetworkImage(t,e){Oi.networkImages[t]=e},setChainImage(t,e){Oi.chainImages[t]=e},setConnectorImage(t,e){Oi.connectorImages={...Oi.connectorImages,[t]:e}},setTokenImage(t,e){Oi.tokenImages[t]=e},setCurrencyImage(t,e){Oi.currencyImages[t]=e}},gn=_i(EH),UA={eip155:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",solana:"a1b58899-f671-4276-6a5e-56ca5bd59700",polkadot:"",bip122:"0b4838db-0161-4ffe-022d-532bf03dba00",cosmos:"",sui:"",stacks:"",ton:"20f673c0-095e-49b2-07cf-eb5049dcf600"},Vh=Lt({networkImagePromises:{},tokenImagePromises:{}}),Nt={async fetchWalletImage(t){if(t)return await he._fetchWalletImage(t),this.getWalletImageById(t)},async fetchNetworkImage(t){if(!t)return;const e=this.getNetworkImageById(t);return e||(Vh.networkImagePromises[t]||(Vh.networkImagePromises[t]=he._fetchNetworkImage(t)),await Vh.networkImagePromises[t],this.getNetworkImageById(t))},async fetchTokenImage(t){if(t)return Vh.tokenImagePromises[t]||(Vh.tokenImagePromises[t]=he._fetchTokenImage(t)),await Vh.tokenImagePromises[t],this.getTokenImage(t)},getWalletImageById(t){if(t)return gn.state.walletImages[t]},getWalletImage(t){if(t!=null&&t.image_url)return t==null?void 0:t.image_url;if(t!=null&&t.image_id)return gn.state.walletImages[t.image_id]},getNetworkImage(t){var e,n,r;if((e=t==null?void 0:t.assets)!=null&&e.imageUrl)return(n=t==null?void 0:t.assets)==null?void 0:n.imageUrl;if((r=t==null?void 0:t.assets)!=null&&r.imageId)return gn.state.networkImages[t.assets.imageId]},getNetworkImageById(t){if(t)return gn.state.networkImages[t]},getConnectorImage(t){var e;if(t!=null&&t.imageUrl)return t.imageUrl;if((e=t==null?void 0:t.info)!=null&&e.icon)return t.info.icon;if(t!=null&&t.imageId)return gn.state.connectorImages[t.imageId]},getChainImage(t){return gn.state.networkImages[UA[t]]},getTokenImage(t){if(t)return gn.state.tokenImages[t]},getWalletImageUrl(t){if(!t)return"";const{projectId:e,sdkType:n,sdkVersion:r}=V.state,i=new URL(`${H.W3M_API_URL}/getWalletImage/${t}`);return i.searchParams.set("projectId",e),i.searchParams.set("st",n),i.searchParams.set("sv",r),i.toString()},getAssetImageUrl(t){if(!t)return"";const{projectId:e,sdkType:n,sdkVersion:r}=V.state,i=new URL(`${H.W3M_API_URL}/public/getAssetImage/${t}`);return i.searchParams.set("projectId",e),i.searchParams.set("st",n),i.searchParams.set("sv",r),i.toString()},getChainNamespaceImageUrl(t){return this.getAssetImageUrl(UA[t])},async getImageByToken(t,e){if(t==="native"){const r=H.NATIVE_IMAGE_IDS_BY_NAMESPACE[e]??null;return r?Nt.fetchNetworkImage(r):void 0}const[,n]=Object.entries(H.TOKEN_SYMBOLS_BY_ADDRESS).find(([r])=>r.toLowerCase()===t.toLowerCase())??[];if(n)return Nt.fetchTokenImage(n)}},fs={PHANTOM:{id:"a797aa35c0fadbfc1a53e7f675162ed5226968b44a19ee3d24385c64d1d3c393",url:"https://phantom.app"},SOLFLARE:{id:"1ca0bdd4747578705b1939af023d120677c64fe6ca76add81fda36e350605e79",url:"https://solflare.com"},COINBASE:{id:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",url:"https://go.cb-w.com"},BINANCE:{id:"2fafea35bb471d22889ccb49c08d99dd0a18a37982602c33f696a5723934ba25",appId:"yFK5FCqYprrXDiVFbhyRx7",deeplink:"bnc://app.binance.com/mp/app",url:"https://app.binance.com/en/download"}},vH={handleMobileDeeplinkRedirect(t,e){const n=window.location.href,r=encodeURIComponent(n);if(t===fs.PHANTOM.id&&!("phantom"in window)){const i=n.startsWith("https")?"https":"http",s=n.split("/")[2],o=encodeURIComponent(`${i}://${s}`);window.location.href=`${fs.PHANTOM.url}/ul/browse/${r}?ref=${o}`}if(t===fs.SOLFLARE.id&&!("solflare"in window)&&(window.location.href=`${fs.SOLFLARE.url}/ul/v1/browse/${r}?ref=${r}`),e===H.CHAIN.SOLANA&&t===fs.COINBASE.id&&!("coinbaseSolana"in window)&&(window.location.href=`${fs.COINBASE.url}/dapp?cb_url=${r}`),e===H.CHAIN.BITCOIN&&t===fs.BINANCE.id&&!("binancew3w"in window)){const i=v.state.activeCaipNetwork,s=window.btoa("/pages/browser/index"),o=window.btoa(`url=${r}&defaultChainId=${(i==null?void 0:i.id)??1}`),a=new URL(fs.BINANCE.deeplink);a.searchParams.set("appId",fs.BINANCE.appId),a.searchParams.set("startPagePath",s),a.searchParams.set("startPageQuery",o);const c=new URL(fs.BINANCE.url);c.searchParams.set("_dp",window.btoa(a.toString())),window.location.href=c.toString()}}},CH=ee.getAnalyticsUrl(),AH=new G0({baseUrl:CH,clientId:null}),_H=["MODAL_CREATED"],SH=45,LA=1e3*10,un=Lt({timestamp:Date.now(),lastFlush:Date.now(),reportedErrors:{},data:{type:"track",event:"MODAL_CREATED"},pendingEvents:[],subscribedToVisibilityChange:!1,walletImpressions:[]}),we={state:un,subscribe(t){return fn(un,()=>t(un))},getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=V.state;return{projectId:t,st:e,sv:n||"html-wagmi-4.2.2"}},shouldFlushEvents(){const t=JSON.stringify(un.pendingEvents).length/1024>SH,e=un.lastFlush+LA<Date.now();return t||e},_setPendingEvent(t){var e,n;try{let r=(e=v.getAccountData())==null?void 0:e.address;if("address"in t.data&&t.data.address&&(r=t.data.address),_H.includes(t.data.event)||typeof window>"u")return;const i=(n=v.getActiveCaipNetwork())==null?void 0:n.caipNetworkId;this.state.pendingEvents.push({eventId:ee.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:t.timestamp,props:{...t.data,address:r,properties:{..."properties"in t.data?t.data.properties:{},caipNetworkId:i}}}),un.reportedErrors.FORBIDDEN=!1,we.shouldFlushEvents()&&we._submitPendingEvents()}catch(r){console.warn("_setPendingEvent",r)}},sendEvent(t){var n;un.timestamp=Date.now(),un.data=t;const e=["INITIALIZE","CONNECT_SUCCESS","SOCIAL_LOGIN_SUCCESS"];((n=V.state.features)!=null&&n.analytics||e.includes(t.event))&&we._setPendingEvent(un),this.subscribeToFlushTriggers()},sendWalletImpressionEvent(t){un.walletImpressions.push(t)},_transformPendingEventsForBatch(t){try{return t.filter(e=>e.props.event!=="WALLET_IMPRESSION_V2")}catch{return t}},_submitPendingEvents(){if(un.lastFlush=Date.now(),!(un.pendingEvents.length===0&&un.walletImpressions.length===0))try{const t=we._transformPendingEventsForBatch(un.pendingEvents);un.walletImpressions.length&&t.push({eventId:ee.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:Date.now(),props:{type:"track",event:"WALLET_IMPRESSION_V2",items:[...un.walletImpressions]}}),AH.sendBeacon({path:"/batch",params:we.getSdkProperties(),body:t}),un.reportedErrors.FORBIDDEN=!1,un.pendingEvents=[],un.walletImpressions=[]}catch{un.reportedErrors.FORBIDDEN=!0}},subscribeToFlushTriggers(){var t,e,n;un.subscribedToVisibilityChange||typeof document>"u"||(un.subscribedToVisibilityChange=!0,(t=document==null?void 0:document.addEventListener)==null||t.call(document,"visibilitychange",()=>{document.visibilityState==="hidden"&&we._submitPendingEvents()}),(e=document==null?void 0:document.addEventListener)==null||e.call(document,"freeze",()=>{we._submitPendingEvents()}),(n=window==null?void 0:window.addEventListener)==null||n.call(window,"pagehide",()=>{we._submitPendingEvents()}),setInterval(()=>{we._submitPendingEvents()},LA))}},IH=ee.getApiUrl(),Br=new G0({baseUrl:IH,clientId:null}),TH=40,MA=4,NH=20,Ye=Lt({promises:{},page:1,count:0,featured:[],allFeatured:[],recommended:[],allRecommended:[],wallets:[],filteredWallets:[],search:[],isAnalyticsEnabled:!1,excludedWallets:[],isFetchingRecommendedWallets:!1,explorerWallets:[],explorerFilteredWallets:[],plan:{tier:"none",hasExceededUsageLimit:!1,limits:{isAboveRpcLimit:!1,isAboveMauLimit:!1}}}),he={state:Ye,subscribeKey(t,e){return xn(Ye,t,e)},_getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=V.state;return{projectId:t,st:e||"appkit",sv:n||"html-wagmi-4.2.2"}},_filterOutExtensions(t){return V.state.isUniversalProvider?t.filter(e=>!!(e.mobile_link||e.desktop_link||e.webapp_link)):t},async _fetchWalletImage(t){const e=`${Br.baseUrl}/getWalletImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setWalletImage(t,URL.createObjectURL(n))},async _fetchNetworkImage(t){const e=`${Br.baseUrl}/public/getAssetImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setNetworkImage(t,URL.createObjectURL(n))},async _fetchConnectorImage(t){const e=`${Br.baseUrl}/public/getAssetImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setConnectorImage(t,URL.createObjectURL(n))},async _fetchCurrencyImage(t){const e=`${Br.baseUrl}/public/getCurrencyImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setCurrencyImage(t,URL.createObjectURL(n))},async _fetchTokenImage(t){const e=`${Br.baseUrl}/public/getTokenImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setTokenImage(t,URL.createObjectURL(n))},_filterWalletsByPlatform(t){const e=t.length,n=ee.isMobile()?t==null?void 0:t.filter(i=>i.mobile_link||i.webapp_link?!0:Object.values(fs).map(o=>o.id).includes(i.id)):t,r=e-n.length;return{filteredWallets:n,mobileFilteredOutWalletsLength:r}},async fetchProjectConfig(){return(await Br.get({path:"/appkit/v1/config",params:he._getSdkProperties()})).features},async fetchUsage(){try{const t=await Br.get({path:"/appkit/v1/project-limits",params:he._getSdkProperties()}),{tier:e,isAboveMauLimit:n,isAboveRpcLimit:r}=t.planLimits,i=e==="starter",s=n||r;he.state.plan={tier:e,hasExceededUsageLimit:i&&s,limits:{isAboveRpcLimit:r,isAboveMauLimit:n}}}catch(t){console.warn("Failed to fetch usage",t)}},async fetchAllowedOrigins(){try{const{allowedOrigins:t}=await Br.get({path:"/projects/v1/origins",params:he._getSdkProperties()});return t}catch(t){if(t instanceof Error&&t.cause instanceof Response){const e=t.cause.status;if(e===H.HTTP_STATUS_CODES.TOO_MANY_REQUESTS)throw new Error("RATE_LIMITED",{cause:t});if(e>=H.HTTP_STATUS_CODES.SERVER_ERROR&&e<600)throw new Error("SERVER_ERROR",{cause:t});return[]}return[]}},async fetchNetworkImages(){const t=v.getAllRequestedCaipNetworks(),e=t==null?void 0:t.map(({assets:n})=>n==null?void 0:n.imageId).filter(Boolean).filter(n=>!Nt.getNetworkImageById(n));e&&await Promise.allSettled(e.map(n=>he._fetchNetworkImage(n)))},async fetchConnectorImages(){const{connectors:t}=J.state,e=t.map(({imageId:n})=>n).filter(Boolean);await Promise.allSettled(e.map(n=>he._fetchConnectorImage(n)))},async fetchCurrencyImages(t=[]){await Promise.allSettled(t.map(e=>he._fetchCurrencyImage(e)))},async fetchTokenImages(t=[]){await Promise.allSettled(t.map(e=>he._fetchTokenImage(e)))},async fetchWallets(t){var o;const e=t.exclude??[];he._getSdkProperties().sv.startsWith("html-core-")&&e.push(...Object.values(fs).map(a=>a.id));const r=await Br.get({path:"/getWallets",params:{...he._getSdkProperties(),...t,page:String(t.page),entries:String(t.entries),include:(o=t.include)==null?void 0:o.join(","),exclude:e.join(",")}}),{filteredWallets:i,mobileFilteredOutWalletsLength:s}=he._filterWalletsByPlatform(r==null?void 0:r.data);return{data:i||[],count:r==null?void 0:r.count,mobileFilteredOutWalletsLength:s}},async prefetchWalletRanks(){const t=J.state.connectors;if(!(t!=null&&t.length))return;const e={page:1,entries:20,badge:"certified"};if(e.names=t.map(i=>i.name).join(","),v.state.activeChain===H.CHAIN.EVM){const i=[...t.flatMap(s=>{var o;return((o=s.connectors)==null?void 0:o.map(a=>{var c;return(c=a.info)==null?void 0:c.rdns}))||[]}),...t.map(s=>{var o;return(o=s.info)==null?void 0:o.rdns})].filter(s=>typeof s=="string"&&s.length>0);i.length&&(e.rdns=i.join(","))}const{data:n}=await he.fetchWallets(e);Ye.explorerWallets=n,J.extendConnectorsWithExplorerWallets(n);const r=v.getRequestedCaipNetworkIds().join(",");Ye.explorerFilteredWallets=n.filter(i=>{var s;return(s=i.chains)==null?void 0:s.some(o=>r.includes(o))})},async fetchFeaturedWallets(){const{featuredWalletIds:t}=V.state;if(t!=null&&t.length){const e={...he._getSdkProperties(),page:1,entries:(t==null?void 0:t.length)??MA,include:t},{data:n}=await he.fetchWallets(e),r=[...n].sort((s,o)=>t.indexOf(s.id)-t.indexOf(o.id)),i=r.map(s=>s.image_id).filter(Boolean);await Promise.allSettled(i.map(s=>he._fetchWalletImage(s))),Ye.featured=r,Ye.allFeatured=r}},async fetchRecommendedWallets(){try{Ye.isFetchingRecommendedWallets=!0;const{includeWalletIds:t,excludeWalletIds:e,featuredWalletIds:n}=V.state,r=[...e??[],...n??[]].filter(Boolean),i=v.getRequestedCaipNetworkIds().join(","),s={page:1,entries:MA,include:t,exclude:r,chains:i},{data:o,count:a}=await he.fetchWallets(s),c=re.getRecentWallets(),l=o.map(d=>d.image_id).filter(Boolean),u=c.map(d=>d.image_id).filter(Boolean);await Promise.allSettled([...l,...u].map(d=>he._fetchWalletImage(d))),Ye.recommended=o,Ye.allRecommended=o,Ye.count=a??0}catch{}finally{Ye.isFetchingRecommendedWallets=!1}},async fetchWalletsByPage({page:t}){const{includeWalletIds:e,excludeWalletIds:n,featuredWalletIds:r}=V.state,i=v.getRequestedCaipNetworkIds().join(","),s=[...Ye.recommended.map(({id:d})=>d),...n??[],...r??[]].filter(Boolean),o={page:t,entries:TH,include:e,exclude:s,chains:i},{data:a,count:c,mobileFilteredOutWalletsLength:l}=await he.fetchWallets(o);Ye.mobileFilteredOutWalletsLength=l+(Ye.mobileFilteredOutWalletsLength??0);const u=a.slice(0,NH).map(d=>d.image_id).filter(Boolean);await Promise.allSettled(u.map(d=>he._fetchWalletImage(d))),Ye.wallets=ee.uniqueBy([...Ye.wallets,...he._filterOutExtensions(a)],"id").filter(d=>{var h;return(h=d.chains)==null?void 0:h.some(f=>i.includes(f))}),Ye.count=c>Ye.count?c:Ye.count,Ye.page=t},async initializeExcludedWallets({ids:t}){const e={page:1,entries:t.length,include:t},{data:n}=await he.fetchWallets(e);n&&n.forEach(r=>{Ye.excludedWallets.push({rdns:r.rdns,name:r.name})})},async searchWallet({search:t,badge:e}){const{includeWalletIds:n,excludeWalletIds:r}=V.state,i=v.getRequestedCaipNetworkIds().join(",");Ye.search=[];const s={page:1,entries:100,search:t==null?void 0:t.trim(),badge_type:e,include:n,exclude:r,chains:i},{data:o}=await he.fetchWallets(s);we.sendEvent({type:"track",event:"SEARCH_WALLET",properties:{badge:e??"",search:t??""}});const a=o.map(c=>c.image_id).filter(Boolean);await Promise.allSettled([...a.map(c=>he._fetchWalletImage(c)),ee.wait(300)]),Ye.search=he._filterOutExtensions(o)},initPromise(t,e){const n=Ye.promises[t];return n||(Ye.promises[t]=e())},prefetch({fetchConnectorImages:t=!0,fetchFeaturedWallets:e=!0,fetchRecommendedWallets:n=!0,fetchNetworkImages:r=!0,fetchWalletRanks:i=!0}={}){const s=[t&&he.initPromise("connectorImages",he.fetchConnectorImages),e&&he.initPromise("featuredWallets",he.fetchFeaturedWallets),n&&he.initPromise("recommendedWallets",he.fetchRecommendedWallets),r&&he.initPromise("networkImages",he.fetchNetworkImages),i&&he.initPromise("walletRanks",he.prefetchWalletRanks)].filter(Boolean);return Promise.allSettled(s)},prefetchAnalyticsConfig(){var t;(t=V.state.features)!=null&&t.analytics&&he.fetchAnalyticsConfig()},async fetchAnalyticsConfig(){try{const{isAnalyticsEnabled:t}=await Br.get({path:"/getAnalyticsConfig",params:he._getSdkProperties()});V.setFeatures({analytics:t})}catch{V.setFeatures({analytics:!1})}},filterByNamespaces(t){if(!(t!=null&&t.length)){Ye.featured=Ye.allFeatured,Ye.recommended=Ye.allRecommended;return}const e=v.getRequestedCaipNetworkIds().join(",");Ye.featured=Ye.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.recommended=Ye.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.filteredWallets=Ye.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))})},clearFilterByNamespaces(){Ye.filteredWallets=[]},setFilterByNamespace(t){if(!t){Ye.featured=Ye.allFeatured,Ye.recommended=Ye.allRecommended;return}const e=v.getRequestedCaipNetworkIds().join(",");Ye.featured=Ye.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.recommended=Ye.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.filteredWallets=Ye.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))})}},Gi={filterOutDuplicatesByRDNS(t){const e=V.state.enableEIP6963?J.state.connectors:[],n=re.getRecentWallets(),r=e.map(a=>{var c;return(c=a.info)==null?void 0:c.rdns}).filter(Boolean),i=n.map(a=>a.rdns).filter(Boolean),s=r.concat(i);if(s.includes("io.metamask.mobile")&&ee.isMobile()){const a=s.indexOf("io.metamask.mobile");s[a]="io.metamask"}return t.filter(a=>!(a!=null&&a.rdns&&s.includes(String(a.rdns))||!(a!=null&&a.rdns)&&e.some(l=>l.name===a.name)))},filterOutDuplicatesByIds(t){const e=J.state.connectors.filter(a=>a.type==="ANNOUNCED"||a.type==="INJECTED"||a.type==="MULTI_CHAIN"),n=re.getRecentWallets(),r=e.map(a=>{var c;return a.explorerId||((c=a.explorerWallet)==null?void 0:c.id)||a.id}),i=n.map(a=>a.id),s=r.concat(i);return t.filter(a=>!s.includes(a==null?void 0:a.id))},filterOutDuplicateWallets(t){const e=this.filterOutDuplicatesByRDNS(t);return this.filterOutDuplicatesByIds(e)},markWalletsAsInstalled(t){const{connectors:e}=J.state,{featuredWalletIds:n}=V.state,r=e.filter(o=>o.type==="ANNOUNCED").reduce((o,a)=>{var c;return(c=a.info)!=null&&c.rdns&&(o[a.info.rdns]=!0),o},{});return t.map(o=>({...o,installed:!!o.rdns&&!!r[o.rdns??""]})).sort((o,a)=>{const c=Number(a.installed)-Number(o.installed);if(c!==0)return c;if(n!=null&&n.length){const l=n.indexOf(o.id),u=n.indexOf(a.id);if(l!==-1&&u!==-1)return l-u;if(l!==-1)return-1;if(u!==-1)return 1}return 0})},getConnectOrderMethod(t,e){var c;const n=(t==null?void 0:t.connectMethodsOrder)||((c=V.state.features)==null?void 0:c.connectMethodsOrder),r=e||J.state.connectors;if(n)return n;const{injected:i,announced:s}=Pn.getConnectorsByType(r,he.state.recommended,he.state.featured),o=i.filter(Pn.showConnector),a=s.filter(Pn.showConnector);return o.length||a.length?["wallet","email","social"]:We.DEFAULT_CONNECT_METHOD_ORDER},isExcluded(t){const e=!!t.rdns&&he.state.excludedWallets.some(r=>r.rdns===t.rdns),n=!!t.name&&he.state.excludedWallets.some(r=>OI.isLowerCaseMatch(r.name,t.name));return e||n},markWalletsWithDisplayIndex(t){return t.map((e,n)=>({...e,display_index:n}))},filterWalletsByWcSupport(t){return te.state.wcBasic?t.filter(e=>e.supports_wc):ee.isMobile()?t.filter(e=>e.supports_wc||We.MANDATORY_WALLET_IDS_ON_MOBILE.includes(e.id)):t},getWalletConnectWallets(t){var s;const e=[...he.state.featured,...he.state.recommended];((s=he.state.filteredWallets)==null?void 0:s.length)>0?e.push(...he.state.filteredWallets):e.push(...t);const n=ee.uniqueBy(e,"id"),r=Gi.markWalletsAsInstalled(n),i=Gi.filterWalletsByWcSupport(r);return Gi.markWalletsWithDisplayIndex(i)}},Pn={getConnectorsByType(t,e,n){const{customWallets:r}=V.state,i=re.getRecentWallets(),s=Gi.filterOutDuplicateWallets(e),o=Gi.filterOutDuplicateWallets(n),a=t.filter(d=>d.type==="MULTI_CHAIN"),c=t.filter(d=>d.type==="ANNOUNCED"),l=t.filter(d=>d.type==="INJECTED"),u=t.filter(d=>d.type==="EXTERNAL");return{custom:r,recent:i,external:u,multiChain:a,announced:c,injected:l,recommended:s,featured:o}},showConnector(t){var i;const e=(i=t.info)==null?void 0:i.rdns,n=!!e&&he.state.excludedWallets.some(s=>!!s.rdns&&s.rdns===e),r=!!t.name&&he.state.excludedWallets.some(s=>OI.isLowerCaseMatch(s.name,t.name));return!(t.type==="INJECTED"&&(t.name==="Browser Wallet"&&(!ee.isMobile()||ee.isMobile()&&!e&&!te.checkInstalled())||n||r)||(t.type==="ANNOUNCED"||t.type==="EXTERNAL")&&(n||r))},getIsConnectedWithWC(){return Array.from(v.state.chains.values()).some(n=>J.getConnectorId(n.namespace)===H.CONNECTOR_ID.WALLET_CONNECT)},getConnectorTypeOrder({recommended:t,featured:e,custom:n,recent:r,announced:i,injected:s,multiChain:o,external:a,overriddenConnectors:c=(l=>(l=V.state.features)==null?void 0:l.connectorTypeOrder)()??[]}){const d=[{type:"walletConnect",isEnabled:!0},{type:"recent",isEnabled:r.length>0},{type:"injected",isEnabled:[...s,...i,...o].length>0},{type:"featured",isEnabled:e.length>0},{type:"custom",isEnabled:n&&n.length>0},{type:"external",isEnabled:a.length>0},{type:"recommended",isEnabled:t.length>0}].filter(p=>p.isEnabled),h=new Set(d.map(p=>p.type)),f=c.filter(p=>h.has(p)).map(p=>({type:p,isEnabled:!0})),g=d.filter(({type:p})=>!f.some(({type:b})=>b===p));return Array.from(new Set([...f,...g].map(({type:p})=>p)))},sortConnectorsByExplorerWallet(t){return[...t].sort((e,n)=>e.explorerWallet&&n.explorerWallet?(e.explorerWallet.order??0)-(n.explorerWallet.order??0):e.explorerWallet?-1:n.explorerWallet?1:0)},getPriority(t){return t.id===H.CONNECTOR_ID.BASE_ACCOUNT?0:t.id===H.CONNECTOR_ID.COINBASE||t.id===H.CONNECTOR_ID.COINBASE_SDK?1:2},sortConnectorsByPriority(t){return[...t].sort((e,n)=>Pn.getPriority(e)-Pn.getPriority(n))},getAuthName({email:t,socialUsername:e,socialProvider:n}){return e?n&&n==="discord"&&e.endsWith("0")?e.slice(0,-1):e:t.length>30?`${t.slice(0,-3)}...`:t},async fetchProviderData(t){var e,n;try{if(t.name==="Browser Wallet"&&!ee.isMobile())return{accounts:[],chainId:void 0};if(t.id===H.CONNECTOR_ID.AUTH)return{accounts:[],chainId:void 0};const[r,i]=await Promise.all([(e=t.provider)==null?void 0:e.request({method:"eth_accounts"}),(n=t.provider)==null?void 0:n.request({method:"eth_chainId"}).then(s=>Number(s))]);return{accounts:r,chainId:i}}catch(r){return console.warn(`Failed to fetch provider data for ${t.name}`,r),{accounts:[],chainId:void 0}}},getFilteredCustomWallets(t){const e=re.getRecentWallets(),n=J.state.connectors.map(o=>{var a;return(a=o.info)==null?void 0:a.rdns}).filter(Boolean),r=e.map(o=>o.rdns).filter(Boolean),i=n.concat(r);if(i.includes("io.metamask.mobile")&&ee.isMobile()){const o=i.indexOf("io.metamask.mobile");i[o]="io.metamask"}return t.filter(o=>!i.includes(String(o==null?void 0:o.rdns)))},hasWalletConnector(t){return J.state.connectors.some(e=>e.id===t.id||e.name===t.name)},isWalletCompatibleWithCurrentChain(t){const e=v.state.activeChain;return e&&t.chains?t.chains.some(n=>{const r=n.split(":")[0];return e===r}):!0},getFilteredRecentWallets(){return re.getRecentWallets().filter(n=>!Gi.isExcluded(n)).filter(n=>!this.hasWalletConnector(n)).filter(n=>this.isWalletCompatibleWithCurrentChain(n))},getCappedRecommendedWallets(t){const{connectors:e}=J.state,{customWallets:n,featuredWalletIds:r}=V.state,i=e.find(C=>C.id==="walletConnect"),s=e.filter(C=>C.type==="INJECTED"||C.type==="ANNOUNCED"||C.type==="MULTI_CHAIN");if(!i&&!s.length&&!(n!=null&&n.length))return[];const o=Ev.isEmailEnabled(),a=Ev.isSocialsEnabled(),c=s.filter(C=>C.name!=="Browser Wallet"&&C.name!=="WalletConnect"),l=(r==null?void 0:r.length)||0,u=(n==null?void 0:n.length)||0,d=c.length||0,h=o?1:0,f=a?1:0,g=l+u+d+h+f,m=Math.max(0,4-g);return m<=0?[]:Gi.filterOutDuplicateWallets(t).slice(0,m)},processConnectorsByType(t,e=!0){const n=Pn.sortConnectorsByExplorerWallet([...t]);return e?n.filter(Pn.showConnector):n},connectorList(){const t=Pn.getConnectorsByType(J.state.connectors,he.state.recommended,he.state.featured),e=this.processConnectorsByType(t.announced.filter(f=>f.id!=="walletConnect")),n=this.processConnectorsByType(t.injected),r=this.processConnectorsByType(t.multiChain.filter(f=>f.name!=="WalletConnect"),!1),i=t.custom,s=t.recent,o=this.processConnectorsByType(t.external.filter(f=>f.id!==H.CONNECTOR_ID.COINBASE_SDK&&f.id!==H.CONNECTOR_ID.BASE_ACCOUNT)),a=t.recommended,c=t.featured,l=Pn.getConnectorTypeOrder({custom:i,recent:s,announced:e,injected:n,multiChain:r,recommended:a,featured:c,external:o}),u=J.state.connectors.find(f=>f.id==="walletConnect"),d=ee.isMobile(),h=[];for(const f of l)switch(f){case"walletConnect":{!d&&u&&h.push({kind:"connector",subtype:"walletConnect",connector:u});break}case"recent":{Pn.getFilteredRecentWallets().forEach(p=>h.push({kind:"wallet",subtype:"recent",wallet:p}));break}case"injected":{r.forEach(g=>h.push({kind:"connector",subtype:"multiChain",connector:g})),e.forEach(g=>h.push({kind:"connector",subtype:"announced",connector:g})),n.forEach(g=>h.push({kind:"connector",subtype:"injected",connector:g}));break}case"featured":{c.forEach(g=>h.push({kind:"wallet",subtype:"featured",wallet:g}));break}case"custom":{Pn.getFilteredCustomWallets(i??[]).forEach(p=>h.push({kind:"wallet",subtype:"custom",wallet:p}));break}case"external":{o.forEach(g=>h.push({kind:"connector",subtype:"external",connector:g}));break}case"recommended":{Pn.getCappedRecommendedWallets(a).forEach(p=>h.push({kind:"wallet",subtype:"recommended",wallet:p}));break}default:console.warn(`Unknown connector type: ${f}`)}return h},hasInjectedConnectors(){return J.state.connectors.filter(t=>(t.type==="INJECTED"||t.type==="ANNOUNCED"||t.type==="MULTI_CHAIN")&&t.name!=="Browser Wallet"&&t.name!=="WalletConnect").length}},RH=["ConnectingExternal","ConnectingMultiChain","ConnectingSocial","ConnectingFarcaster"],Pt=Lt({view:"Connect",history:["Connect"],transactionStack:[]}),OH={state:Pt,subscribeKey(t,e){return xn(Pt,t,e)},pushTransactionStack(t){Pt.transactionStack.push(t)},popTransactionStack(t){const e=Pt.transactionStack.pop();if(!e)return;const{onSuccess:n,onError:r,onCancel:i}=e;switch(t){case"success":n==null||n();break;case"error":r==null||r(),Z.goBack();break;case"cancel":i==null||i(),Z.goBack();break}},push(t,e){let n=t,r=e;he.state.plan.hasExceededUsageLimit&&RH.includes(t)&&(n="UsageExceeded",r=void 0),n!==Pt.view&&(Pt.view=n,Pt.history.push(n),Pt.data=r)},reset(t,e){Pt.view=t,Pt.history=[t],Pt.data=e},replace(t,e){Pt.history.at(-1)===t||(Pt.view=t,Pt.history[Pt.history.length-1]=t,Pt.data=e)},goBack(){var r,i;const t=v.state.activeCaipAddress,e=Z.state.view==="ConnectingFarcaster",n=!t&&e;if(Pt.history.length>1){Pt.history.pop();const[s]=Pt.history.slice(-1);s&&(t&&s==="Connect"?Pt.view="Account":Pt.view=s)}else je.close();(r=Pt.data)!=null&&r.wallet&&(Pt.data.wallet=void 0),(i=Pt.data)!=null&&i.redirectView&&(Pt.data.redirectView=void 0),setTimeout(()=>{var s,o,a;if(n){v.setAccountProp("farcasterUrl",void 0,v.state.activeChain);const c=J.getAuthConnector();(s=c==null?void 0:c.provider)==null||s.reload();const l=$d(V.state);(a=(o=c==null?void 0:c.provider)==null?void 0:o.syncDappData)==null||a.call(o,{metadata:l.metadata,sdkVersion:l.sdkVersion,projectId:l.projectId,sdkType:l.sdkType})}},100)},goBackToIndex(t){if(Pt.history.length>1){Pt.history=Pt.history.slice(0,t+1);const[e]=Pt.history.slice(-1);e&&(Pt.view=e)}},goBackOrCloseModal(){Z.state.history.length>1?Z.goBack():je.close()}},Z=_i(OH),Aa=Lt({themeMode:"dark",themeVariables:{},w3mThemeVariables:void 0}),vv={state:Aa,subscribe(t){return fn(Aa,()=>t(Aa))},setThemeMode(t){Aa.themeMode=t;try{const e=J.getAuthConnector();if(e){const n=vv.getSnapshot().themeVariables;e.provider.syncTheme({themeMode:t,themeVariables:n,w3mThemeVariables:Hp(n,t)})}}catch{console.info("Unable to sync theme to auth connector")}},setThemeVariables(t){Aa.themeVariables={...Aa.themeVariables,...t};try{const e=J.getAuthConnector();if(e){const n=vv.getSnapshot().themeVariables;e.provider.syncTheme({themeVariables:n,w3mThemeVariables:Hp(Aa.themeVariables,Aa.themeMode)})}}catch{console.info("Unable to sync theme to auth connector")}},getSnapshot(){return $d(Aa)}},kn=_i(vv),SN=Object.fromEntries(UI.map(t=>[t,void 0])),PH=Object.fromEntries(UI.map(t=>[t,!0])),bt=Lt({allConnectors:[],connectors:[],activeConnector:void 0,filterByNamespace:void 0,activeConnectorIds:SN,filterByNamespaceMap:PH}),kH={state:bt,subscribe(t){return fn(bt,()=>{t(bt)})},subscribeKey(t,e){return xn(bt,t,e)},initialize(t){t.forEach(e=>{const n=re.getConnectedConnectorId(e);n&&J.setConnectorId(n,e)})},setActiveConnector(t){t&&(bt.activeConnector=jp(t))},setConnectors(t){t.filter(i=>!bt.allConnectors.some(s=>s.id===i.id&&J.getConnectorName(s.name)===J.getConnectorName(i.name)&&s.chain===i.chain)).forEach(i=>{i.type!=="MULTI_CHAIN"&&bt.allConnectors.push(jp(i))});const n=J.getEnabledNamespaces(),r=J.getEnabledConnectors(n);bt.connectors=J.mergeMultiChainConnectors(r)},filterByNamespaces(t){Object.keys(bt.filterByNamespaceMap).forEach(e=>{bt.filterByNamespaceMap[e]=!1}),t.forEach(e=>{bt.filterByNamespaceMap[e]=!0}),J.updateConnectorsForEnabledNamespaces()},filterByNamespace(t,e){bt.filterByNamespaceMap[t]=e,J.updateConnectorsForEnabledNamespaces()},updateConnectorsForEnabledNamespaces(){const t=J.getEnabledNamespaces(),e=J.getEnabledConnectors(t),n=J.areAllNamespacesEnabled();bt.connectors=J.mergeMultiChainConnectors(e),n?he.clearFilterByNamespaces():he.filterByNamespaces(t)},getEnabledNamespaces(){return Object.entries(bt.filterByNamespaceMap).filter(([t,e])=>e).map(([t])=>t)},getEnabledConnectors(t){return bt.allConnectors.filter(e=>t.includes(e.chain))},areAllNamespacesEnabled(){return Object.values(bt.filterByNamespaceMap).every(t=>t)},mergeMultiChainConnectors(t){const e=J.generateConnectorMapByName(t),n=[];return e.forEach(r=>{const i=r[0],s=(i==null?void 0:i.id)===H.CONNECTOR_ID.AUTH;r.length>1&&i?n.push({name:i.name,imageUrl:i.imageUrl,imageId:i.imageId,connectors:[...r],type:s?"AUTH":"MULTI_CHAIN",chain:"eip155",id:(i==null?void 0:i.id)||""}):i&&n.push(i)}),n},generateConnectorMapByName(t){const e=new Map;return t.forEach(n=>{const{name:r}=n,i=J.getConnectorName(r);if(!i)return;const s=e.get(i)||[];s.find(a=>a.chain===n.chain)||s.push(n),e.set(i,s)}),e},getConnectorName(t){return t&&({"Trust Wallet":"Trust"}[t]||t)},getUniqueConnectorsByName(t){const e=[];return t.forEach(n=>{e.find(r=>r.chain===n.chain)||e.push(n)}),e},addConnector(t){var e,n,r;if(t.id===H.CONNECTOR_ID.AUTH){const i=t,s=$d(V.state),o=kn.getSnapshot().themeMode,a=kn.getSnapshot().themeVariables;(n=(e=i==null?void 0:i.provider)==null?void 0:e.syncDappData)==null||n.call(e,{metadata:s.metadata,sdkVersion:s.sdkVersion,projectId:s.projectId,sdkType:s.sdkType}),(r=i==null?void 0:i.provider)==null||r.syncTheme({themeMode:o,themeVariables:a,w3mThemeVariables:Hp(a,o)}),J.setConnectors([t])}else J.setConnectors([t])},getAuthConnector(t){var r;const e=t||v.state.activeChain,n=bt.connectors.find(i=>i.id===H.CONNECTOR_ID.AUTH);if(n)return(r=n==null?void 0:n.connectors)!=null&&r.length?n.connectors.find(s=>s.chain===e):n},getAnnouncedConnectorRdns(){return bt.connectors.filter(t=>t.type==="ANNOUNCED").map(t=>{var e;return(e=t.info)==null?void 0:e.rdns})},getConnectorById(t){return Pn.sortConnectorsByPriority(bt.allConnectors).find(n=>n.id===t)},getConnector({id:t,namespace:e}){const n=e||v.state.activeChain,r=bt.allConnectors.filter(o=>o.chain===n);return Pn.sortConnectorsByPriority(r).find(o=>o.id===t||o.explorerId===t)},syncIfAuthConnector(t){var s,o;if(t.id!=="AUTH")return;const e=t,n=$d(V.state),r=kn.getSnapshot().themeMode,i=kn.getSnapshot().themeVariables;(o=(s=e==null?void 0:e.provider)==null?void 0:s.syncDappData)==null||o.call(s,{metadata:n.metadata,sdkVersion:n.sdkVersion,sdkType:n.sdkType,projectId:n.projectId}),e.provider.syncTheme({themeMode:r,themeVariables:i,w3mThemeVariables:Hp(i,r)})},getConnectorsByNamespace(t){const e=bt.allConnectors.filter(n=>n.chain===t);return J.mergeMultiChainConnectors(e)},canSwitchToSmartAccount(t){return v.checkIfSmartAccountEnabled()&&rn(t)===$t.ACCOUNT_TYPES.EOA},selectWalletConnector(t){var i;const e=(i=Z.state.data)==null?void 0:i.redirectView,n=v.state.activeChain,r=n?J.getConnector({id:t.id,namespace:n}):void 0;vH.handleMobileDeeplinkRedirect((r==null?void 0:r.explorerId)||t.id,v.state.activeChain),r?Z.push("ConnectingExternal",{connector:r,wallet:t,redirectView:e}):Z.push("ConnectingWalletConnect",{wallet:t,redirectView:e})},getConnectors(t){return t?J.getConnectorsByNamespace(t):J.mergeMultiChainConnectors(bt.allConnectors)},setFilterByNamespace(t){bt.filterByNamespace=t,bt.connectors=J.getConnectors(t),he.setFilterByNamespace(t)},setConnectorId(t,e){t&&(bt.activeConnectorIds={...bt.activeConnectorIds,[e]:t},re.setConnectedConnectorId(e,t))},removeConnectorId(t){bt.activeConnectorIds={...bt.activeConnectorIds,[t]:void 0},re.deleteConnectedConnectorId(t)},getConnectorId(t){if(t)return bt.activeConnectorIds[t]},isConnected(t){return t?!!bt.activeConnectorIds[t]:Object.values(bt.activeConnectorIds).some(e=>!!e)},resetConnectorIds(){bt.activeConnectorIds={...SN}},extendConnectorsWithExplorerWallets(t){bt.allConnectors.forEach(r=>{const i=t.find(s=>{var o;return s.id===r.id||s.rdns&&s.rdns===((o=r.info)==null?void 0:o.rdns)});i&&(r.explorerWallet=i)});const e=J.getEnabledNamespaces(),n=J.getEnabledConnectors(e);bt.connectors=J.mergeMultiChainConnectors(n)},async connect(t={}){const{namespace:e}=t;return J.setFilterByNamespace(e),Z.push("Connect",{addWalletForNamespace:e}),new Promise((n,r)=>{if(e){const i=v.subscribeChainProp("accountState",o=>{o!=null&&o.caipAddress&&(n({caipAddress:o==null?void 0:o.caipAddress}),i())},e),s=je.subscribeKey("open",o=>{o||(r(new Error("Modal closed")),s())})}else{const i=v.subscribeKey("activeCaipAddress",o=>{o&&(n({caipAddress:o}),i())}),s=je.subscribeKey("open",o=>{o||(r(new Error("Modal closed")),s())})}})}},J=_i(kH),$H=1e3,Eg={checkNamespaceConnectorId(t,e){return J.getConnectorId(t)===e},isSocialProvider(t){return We.DEFAULT_REMOTE_FEATURES.socials.includes(t)},connectWalletConnect({walletConnect:t,connector:e,closeModalOnConnect:n=!0,redirectViewOnModalClose:r="Connect",onOpen:i,onConnect:s}){return new Promise((o,a)=>{if(t&&J.setActiveConnector(e),i==null||i(ee.isMobile()&&t),r){const l=je.subscribeKey("open",u=>{u||(Z.state.view!==r&&Z.replace(r),l(),a(new Error("Modal closed")))})}const c=v.subscribeKey("activeCaipAddress",l=>{l&&(s==null||s(),n&&je.close(),c(),o(hn.parseCaipAddress(l)))})})},connectExternal(t){return new Promise((e,n)=>{const r=v.subscribeKey("activeCaipAddress",i=>{i&&(je.close(),r(),e(hn.parseCaipAddress(i)))});te.connectExternal(t,t.chain).catch(()=>{r(),n(new Error("Connection rejected"))})})},connectSocial({social:t,namespace:e,closeModalOnConnect:n=!0,onOpenFarcaster:r,onConnect:i}){let s,o=!1,a=null;const c=e||v.state.activeChain,l=v.subscribeKey("activeCaipAddress",u=>{u&&(n&&je.close(),l())});return new Promise((u,d)=>{async function h(g){var p;if((p=g.data)!=null&&p.resultUri)if(g.origin===H.SECURE_SITE_SDK_ORIGIN){window.removeEventListener("message",h,!1);try{const m=J.getAuthConnector(c);if(m&&!o){s&&s.close(),o=!0;const b=g.data.resultUri;we.sendEvent({type:"track",event:"SOCIAL_LOGIN_REQUEST_USER_DATA",properties:{provider:t}}),re.setConnectedSocialProvider(t),await te.connectExternal({id:m.id,type:m.type,socialUri:b},m.chain);const C=v.state.activeCaipAddress;if(!C){d(new Error("Failed to connect"));return}u(hn.parseCaipAddress(C)),we.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:t}})}}catch(m){we.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:ee.parseError(m)}}),d(new Error("Failed to connect"))}}else we.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:"Untrusted Origin"}})}async function f(){if(we.sendEvent({type:"track",event:"SOCIAL_LOGIN_STARTED",properties:{provider:t}}),t==="farcaster"){r==null||r();const g=je.subscribeKey("open",m=>{!m&&t==="farcaster"&&(d(new Error("Popup closed")),i==null||i(),g())}),p=J.getAuthConnector();if(p){const m=v.getAccountData(c);if(!(m!=null&&m.farcasterUrl))try{const{url:b}=await p.provider.getFarcasterUri();v.setAccountProp("farcasterUrl",b,c)}catch{d(new Error("Failed to connect to farcaster"))}}}else{const g=J.getAuthConnector();a=ee.returnOpenHref(`${H.SECURE_SITE_SDK_ORIGIN}/loading`,"popupWindow","width=600,height=800,scrollbars=yes");try{if(g){const{uri:p}=await g.provider.getSocialRedirectUri({provider:t});if(a&&p){a.location.href=p,s=a;const m=setInterval(()=>{s!=null&&s.closed&&!o&&(d(new Error("Popup closed")),clearInterval(m))},1e3);window.addEventListener("message",h,!1)}else a==null||a.close(),d(new Error("Failed to initiate social connection"))}}catch{d(new Error("Failed to initiate social connection")),a==null||a.close()}}}f()})},connectEmail({closeModalOnConnect:t=!0,redirectViewOnModalClose:e="Connect",onOpen:n,onConnect:r}){return new Promise((i,s)=>{if(n==null||n(),e){const a=je.subscribeKey("open",c=>{c||(Z.state.view!==e&&Z.replace(e),a(),s(new Error("Modal closed")))})}const o=v.subscribeKey("activeCaipAddress",a=>{a&&(r==null||r(),t&&je.close(),o(),i(hn.parseCaipAddress(a)))})})},async updateEmail(){const t=re.getConnectedConnectorId(v.state.activeChain),e=J.getAuthConnector();if(!e)throw new Error("No auth connector found");if(t!==H.CONNECTOR_ID.AUTH)throw new Error("Not connected to email or social");const n=e.provider.getEmail()??"";return await je.open({view:"UpdateEmailWallet",data:{email:n,redirectView:void 0}}),new Promise((r,i)=>{const s=setInterval(()=>{const a=e.provider.getEmail()??"";a!==n&&(je.close(),clearInterval(s),o(),r({email:a}))},$H),o=je.subscribeKey("open",a=>{a||(Z.state.view!=="Connect"&&Z.push("Connect"),clearInterval(s),o(),i(new Error("Modal closed")))})})},canSwitchToSmartAccount(t){return v.checkIfSmartAccountEnabled()&&rn(t)===$t.ACCOUNT_TYPES.EOA}};function Fm(){var r,i;const t=((r=v.state.activeCaipNetwork)==null?void 0:r.chainNamespace)||"eip155",e=((i=v.state.activeCaipNetwork)==null?void 0:i.id)||1,n=We.NATIVE_TOKEN_ADDRESS[t];return`${t}:${e}:${n}`}function DH(t){return We.NATIVE_TOKEN_ADDRESS[t]}function rn(t){var n;return(n=v.getAccountData(t))==null?void 0:n.preferredAccountType}function gf(t){var e,n;return t?(n=(e=v.state.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:v.state.activeCaipNetwork}const Vi={getConnectionStatus(t,e){const n=J.state.activeConnectorIds[e],r=te.getConnections(e);return!!n&&t.connectorId===n?"connected":r.some(o=>o.connectorId.toLowerCase()===t.connectorId.toLowerCase())?"active":"disconnected"},excludeConnectorAddressFromConnections({connections:t,connectorId:e,addresses:n}){return t.map(r=>{if((e?r.connectorId.toLowerCase()===e.toLowerCase():!1)&&n){const s=r.accounts.filter(o=>!n.some(c=>c.toLowerCase()===o.address.toLowerCase()));return{...r,accounts:s}}return r})},excludeExistingConnections(t,e){const n=new Set(t);return e.filter(r=>!n.has(r.connectorId))},getConnectionsByConnectorId(t,e){return t.filter(n=>n.connectorId.toLowerCase()===e.toLowerCase())},getConnectionsData(t){var a;const e=!!((a=V.state.remoteFeatures)!=null&&a.multiWallet),n=J.state.activeConnectorIds[t],r=te.getConnections(t),s=(te.state.recentConnections.get(t)??[]).filter(c=>J.getConnectorById(c.connectorId)),o=Vi.excludeExistingConnections([...r.map(c=>c.connectorId),...n?[n]:[]],s);return e?{connections:r,recentConnections:o}:{connections:r.filter(c=>c.connectorId.toLowerCase()===(n==null?void 0:n.toLowerCase())),recentConnections:[]}},onConnectMobile(t){const e=te.state.wcUri;if(t!=null&&t.mobile_link&&e)try{te.setWcError(!1);const{mobile_link:n,link_mode:r,name:i}=t,{redirect:s,redirectUniversalLink:o,href:a}=ee.formatNativeUrl(n,e,r),c=s,l=o,u=ee.isIframe()?"_top":"_self";te.setWcLinking({name:i,href:a}),te.setRecentWallet(t),V.state.experimental_preferUniversalLinks&&l?ee.openHref(l,u):ee.openHref(c,u)}catch(n){we.sendEvent({type:"track",event:"CONNECT_PROXY_ERROR",properties:{message:n instanceof Error?n.message:"Error parsing the deep link",uri:e,mobile_link:t.mobile_link,name:t.name}}),te.setWcError(!0)}}},qh=Lt({loading:!1,open:!1,selectedNetworkId:void 0,activeChain:void 0,initialized:!1,connectingWallet:void 0}),Ki={state:qh,subscribe(t){return fn(qh,()=>t(qh))},subscribeOpen(t){return xn(qh,"open",t)},set(t){Object.assign(qh,{...qh,...t})}},Xt=Lt({transactions:[],transactionsByYear:{},lastNetworkInView:void 0,loading:!1,empty:!1,next:void 0}),BH={state:Xt,subscribe(t){return fn(Xt,()=>t(Xt))},setLastNetworkInView(t){Xt.lastNetworkInView=t},async fetchTransactions(t){var e;if(!t)throw new Error("Transactions can't be fetched without an accountAddress");Xt.loading=!0;try{const n=await qe.fetchTransactions({account:t,cursor:Xt.next,chainId:(e=v.state.activeCaipNetwork)==null?void 0:e.caipNetworkId}),r=Fr.filterSpamTransactions(n.data),i=Fr.filterByConnectedChain(r),s=[...Xt.transactions,...i];Xt.loading=!1,Xt.transactions=s,Xt.transactionsByYear=Fr.groupTransactionsByYearAndMonth(Xt.transactionsByYear,i),Xt.empty=s.length===0,Xt.next=n.next?n.next:void 0}catch{const r=v.state.activeChain;we.sendEvent({type:"track",event:"ERROR_FETCH_TRANSACTIONS",properties:{address:t,projectId:V.state.projectId,cursor:Xt.next,isSmartAccount:rn(r)===$t.ACCOUNT_TYPES.SMART_ACCOUNT}}),nt.showError("Failed to fetch transactions"),Xt.loading=!1,Xt.empty=!0,Xt.next=void 0}},groupTransactionsByYearAndMonth(t={},e=[]){const n=t;return e.forEach(r=>{const i=new Date(r.metadata.minedAt).getFullYear(),s=new Date(r.metadata.minedAt).getMonth(),o=n[i]??{},c=(o[s]??[]).filter(l=>l.id!==r.id);n[i]={...o,[s]:[...c,r].sort((l,u)=>new Date(u.metadata.minedAt).getTime()-new Date(l.metadata.minedAt).getTime())}}),n},filterSpamTransactions(t){return t.filter(e=>{var r;return!((r=e.transfers)==null?void 0:r.every(i=>{var s;return((s=i.nft_info)==null?void 0:s.flags.is_spam)===!0}))})},filterByConnectedChain(t){var r;const e=(r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId;return t.filter(i=>i.metadata.chain===e)},clearCursor(){Xt.next=void 0},resetTransactions(){Xt.transactions=[],Xt.transactionsByYear={},Xt.lastNetworkInView=void 0,Xt.loading=!1,Xt.empty=!1,Xt.next=void 0}},Fr=_i(BH,"API_ERROR"),at=Lt({connections:new Map,recentConnections:new Map,isSwitchingConnection:!1,wcError:!1,wcFetchingUri:!1,buffering:!1,status:"disconnected"});let bu;const UH={state:at,subscribe(t){return fn(at,()=>t(at))},subscribeKey(t,e){return xn(at,t,e)},_getClient(){return at._client},setClient(t){at._client=jp(t)},initialize(t){const e=t.filter(n=>!!n.namespace).map(n=>n.namespace);te.syncStorageConnections(e)},syncStorageConnections(t){const e=re.getConnections(),n=t??Array.from(v.state.chains.keys());for(const r of n){const i=e[r]??[],s=new Map(at.recentConnections);s.set(r,i),at.recentConnections=s}},getConnections(t){return t?at.connections.get(t)??[]:[]},hasAnyConnection(t){const e=te.state.connections;return Array.from(e.values()).flatMap(n=>n).some(({connectorId:n})=>n===t)},async connectWalletConnect({cache:t="auto"}={}){var n,r,i,s;at.wcFetchingUri=!0;const e=ee.isTelegram()||ee.isSafari()&&ee.isIos();if(t==="always"||t==="auto"&&e){if(bu){await bu,bu=void 0;return}if(!ee.isPairingExpired(at==null?void 0:at.wcPairingExpiry)){const o=at.wcUri;at.wcUri=o;return}bu=(r=(n=te._getClient())==null?void 0:n.connectWalletConnect)==null?void 0:r.call(n).catch(()=>{}),te.state.status="connecting",await bu,bu=void 0,at.wcPairingExpiry=void 0,te.state.status="connected"}else await((s=(i=te._getClient())==null?void 0:i.connectWalletConnect)==null?void 0:s.call(i))},async connectExternal(t,e,n=!0){var o,a,c;const r=await((a=(o=te._getClient())==null?void 0:o.connectExternal)==null?void 0:a.call(o,t));n&&v.setActiveNamespace(e);const i=J.state.allConnectors.find(l=>l.id===(t==null?void 0:t.id)),s=t.type==="AUTH"?"email":"browser";return we.sendEvent({type:"track",event:"CONNECT_SUCCESS",properties:{method:s,name:(i==null?void 0:i.name)||"Unknown",view:Z.state.view,walletRank:(c=i==null?void 0:i.explorerWallet)==null?void 0:c.order}}),r},async reconnectExternal(t){var n,r;await((r=(n=te._getClient())==null?void 0:n.reconnectExternal)==null?void 0:r.call(n,t));const e=t.chain||v.state.activeChain;e&&J.setConnectorId(t.id,e)},async setPreferredAccountType(t,e){var r;if(!e)return;je.setLoading(!0,v.state.activeChain);const n=J.getAuthConnector();n&&(v.setAccountProp("preferredAccountType",t,e),await n.provider.setPreferredAccount(t),re.setPreferredAccountTypes(Object.entries(v.state.chains).reduce((i,[s,o])=>{const a=s,c=rn(a);return c!==void 0&&(i[a]=c),i},{})),await te.reconnectExternal(n),je.setLoading(!1,v.state.activeChain),we.sendEvent({type:"track",event:"SET_PREFERRED_ACCOUNT_TYPE",properties:{accountType:t,network:((r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}}))},async signMessage(t){var e;return(e=te._getClient())==null?void 0:e.signMessage(t)},parseUnits(t,e){var n;return(n=te._getClient())==null?void 0:n.parseUnits(t,e)},formatUnits(t,e){var n;return(n=te._getClient())==null?void 0:n.formatUnits(t,e)},updateBalance(t){var e;return(e=te._getClient())==null?void 0:e.updateBalance(t)},async sendTransaction(t){var e;return(e=te._getClient())==null?void 0:e.sendTransaction(t)},async getCapabilities(t){var e;return(e=te._getClient())==null?void 0:e.getCapabilities(t)},async grantPermissions(t){var e;return(e=te._getClient())==null?void 0:e.grantPermissions(t)},async walletGetAssets(t){var e;return((e=te._getClient())==null?void 0:e.walletGetAssets(t))??{}},async estimateGas(t){var e;return(e=te._getClient())==null?void 0:e.estimateGas(t)},async writeContract(t){var e;return(e=te._getClient())==null?void 0:e.writeContract(t)},async writeSolanaTransaction(t){var e;return(e=te._getClient())==null?void 0:e.writeSolanaTransaction(t)},async getEnsAddress(t){var e;return(e=te._getClient())==null?void 0:e.getEnsAddress(t)},async getEnsAvatar(t){var e;return(e=te._getClient())==null?void 0:e.getEnsAvatar(t)},checkInstalled(t){var e,n;return((n=(e=te._getClient())==null?void 0:e.checkInstalled)==null?void 0:n.call(e,t))||!1},resetWcConnection(){at.wcUri=void 0,at.wcPairingExpiry=void 0,at.wcLinking=void 0,at.recentWallet=void 0,at.wcFetchingUri=!1,at.status="disconnected",Fr.resetTransactions(),re.deleteWalletConnectDeepLink(),re.deleteRecentWallet(),Ki.set({connectingWallet:void 0})},resetUri(){at.wcUri=void 0,at.wcPairingExpiry=void 0,bu=void 0,at.wcFetchingUri=!1,Ki.set({connectingWallet:void 0})},finalizeWcConnection(t){var r,i;const{wcLinking:e,recentWallet:n}=te.state;e&&re.setWalletConnectDeepLink(e),n&&re.setAppKitRecent(n),t&&we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:t,properties:{method:e?"mobile":"qrcode",name:((i=(r=Z.state.data)==null?void 0:r.wallet)==null?void 0:i.name)||"Unknown",view:Z.state.view,walletRank:n==null?void 0:n.order}})},setWcBasic(t){at.wcBasic=t},setUri(t){at.wcUri=t,at.wcFetchingUri=!1,at.wcPairingExpiry=ee.getPairingExpiry()},setWcLinking(t){at.wcLinking=t},setWcError(t){at.wcError=t,at.wcFetchingUri=!1,at.buffering=!1},setRecentWallet(t){at.recentWallet=t},setBuffering(t){at.buffering=t},setStatus(t){at.status=t},setIsSwitchingConnection(t){at.isSwitchingConnection=t},async disconnect({id:t,namespace:e,initialDisconnect:n}={}){var r;try{await((r=te._getClient())==null?void 0:r.disconnect({id:t,chainNamespace:e,initialDisconnect:n}))}catch(i){throw new go("Failed to disconnect","INTERNAL_SDK_ERROR",i)}},async disconnectConnector({id:t,namespace:e}){var n;try{await((n=te._getClient())==null?void 0:n.disconnectConnector({id:t,namespace:e}))}catch(r){throw new go("Failed to disconnect connector","INTERNAL_SDK_ERROR",r)}},setConnections(t,e){const n=new Map(at.connections);n.set(e,t),at.connections=n},async handleAuthAccountSwitch({address:t,namespace:e}){var s,o;const n=v.getAccountData(e),r=(o=(s=n==null?void 0:n.user)==null?void 0:s.accounts)==null?void 0:o.find(a=>a.type==="smartAccount"),i=r&&r.address.toLowerCase()===t.toLowerCase()&&Eg.canSwitchToSmartAccount(e)?"smartAccount":"eoa";await te.setPreferredAccountType(i,e)},async handleActiveConnection({connection:t,namespace:e,address:n}){const r=J.getConnectorById(t.connectorId),i=t.connectorId===H.CONNECTOR_ID.AUTH;if(!r)throw new Error(`No connector found for connection: ${t.connectorId}`);if(i)n&&await te.handleAuthAccountSwitch({address:n,namespace:e});else{const s=await te.connectExternal({id:r.id,type:r.type,provider:r.provider,address:n,chain:e},e);return s==null?void 0:s.address}return n},async handleDisconnectedConnection({connection:t,namespace:e,address:n,closeModalOnConnect:r}){var l,u;const i=J.getConnectorById(t.connectorId),s=(u=(l=t.auth)==null?void 0:l.name)==null?void 0:u.toLowerCase(),o=t.connectorId===H.CONNECTOR_ID.AUTH,a=t.connectorId===H.CONNECTOR_ID.WALLET_CONNECT;if(!i)throw new Error(`No connector found for connection: ${t.connectorId}`);let c;if(o)if(s&&Eg.isSocialProvider(s)){const{address:d}=await Eg.connectSocial({social:s,closeModalOnConnect:r,onOpenFarcaster(){je.open({view:"ConnectingFarcaster"})},onConnect(){Z.replace("ProfileWallets")}});c=d}else{const{address:d}=await Eg.connectEmail({closeModalOnConnect:r,onOpen(){je.open({view:"EmailLogin"})},onConnect(){Z.replace("ProfileWallets")}});c=d}else if(a){const{address:d}=await Eg.connectWalletConnect({walletConnect:!0,connector:i,closeModalOnConnect:r,onOpen(h){const f=h?"AllWallets":"ConnectingWalletConnect";je.state.open?Z.push(f):je.open({view:f})},onConnect(){Z.replace("ProfileWallets")}});c=d}else{const d=await te.connectExternal({id:i.id,type:i.type,provider:i.provider,chain:e},e);d&&(c=d.address)}return o&&n&&await te.handleAuthAccountSwitch({address:n,namespace:e}),c},async switchConnection({connection:t,address:e,namespace:n,closeModalOnConnect:r,onChange:i}){var c;let s;const o=(c=v.getAccountData(n))==null?void 0:c.caipAddress;if(o){const{address:l}=hn.parseCaipAddress(o);s=l}const a=Vi.getConnectionStatus(t,n);switch(a){case"connected":case"active":{const l=await te.handleActiveConnection({connection:t,namespace:n,address:e});if(s&&l){const u=l.toLowerCase()!==s.toLowerCase();i==null||i({address:l,namespace:n,hasSwitchedAccount:u,hasSwitchedWallet:a==="active"})}break}case"disconnected":{const l=await te.handleDisconnectedConnection({connection:t,namespace:n,address:e,closeModalOnConnect:r});l&&(i==null||i({address:l,namespace:n,hasSwitchedAccount:!0,hasSwitchedWallet:!0}));break}default:throw new Error(`Invalid connection status: ${a}`)}}},te=_i(UH),px={createBalance(t,e){const n={name:t.metadata.name||"",symbol:t.metadata.symbol||"",decimals:t.metadata.decimals||0,value:t.metadata.value||0,price:t.metadata.price||0,iconUrl:t.metadata.iconUrl||""};return{name:n.name,symbol:n.symbol,chainId:e,address:t.address==="native"?void 0:this.convertAddressToCAIP10Address(t.address,e),value:n.value,price:n.price,quantity:{decimals:n.decimals.toString(),numeric:this.convertHexToBalance({hex:t.balance,decimals:n.decimals})},iconUrl:n.iconUrl}},convertHexToBalance({hex:t,decimals:e}){return K2(BigInt(t),e)},convertAddressToCAIP10Address(t,e){return`${e}:${t}`},createCAIP2ChainId(t,e){return`${e}:${parseInt(t,16)}`},getChainIdHexFromCAIP2ChainId(t){const e=t.split(":");if(e.length<2||!e[1])return"0x0";const n=e[1],r=parseInt(n,10);return isNaN(r)?"0x0":`0x${r.toString(16)}`},isWalletGetAssetsResponse(t){return typeof t!="object"||t===null?!1:Object.values(t).every(e=>Array.isArray(e)&&e.every(n=>this.isValidAsset(n)))},isValidAsset(t){return typeof t=="object"&&t!==null&&typeof t.address=="string"&&typeof t.balance=="string"&&(t.type==="ERC20"||t.type==="NATIVE")&&typeof t.metadata=="object"&&t.metadata!==null&&typeof t.metadata.name=="string"&&typeof t.metadata.symbol=="string"&&typeof t.metadata.decimals=="number"&&typeof t.metadata.price=="number"&&typeof t.metadata.iconUrl=="string"}};let gx;async function FA(){if(!gx){const{createPublicClient:t,http:e,defineChain:n}=await Promise.resolve().then(()=>require("./index-NFI34NW-.js"));gx={createPublicClient:t,http:e,defineChain:n}}return gx}const Cv={getBlockchainApiRpcUrl(t,e){const n=new URL("https://rpc.walletconnect.org/v1/");return n.searchParams.set("chainId",t),n.searchParams.set("projectId",e),n.toString()},async getViemChain(t){const{defineChain:e}=await FA(),{chainId:n}=hn.parseCaipNetworkId(t.caipNetworkId);return e({...t,id:Number(n)})},async createViemPublicClient(t){const{createPublicClient:e,http:n}=await FA(),r=V.state.projectId,i=await Cv.getViemChain(t);if(!i)throw new Error(`Chain ${t.caipNetworkId} not found in viem/chains`);return e({chain:i,transport:n(Cv.getBlockchainApiRpcUrl(t.caipNetworkId,r))})}},J2={async getMyTokensWithBalance(t={forceUpdate:void 0,caipNetwork:v.state.activeCaipNetwork,address:(e=>(e=v.getAccountData())==null?void 0:e.address)()}){const{forceUpdate:n,caipNetwork:r,address:i}=t,s=J.getConnectorId("eip155")===H.CONNECTOR_ID.AUTH;if(!i)return[];const o=r?`${r.caipNetworkId}:${i}`:i,a=re.getBalanceCacheForCaipAddress(o);if(a)return a.balances;if(r&&r.chainNamespace===H.CHAIN.EVM&&s){const l=await this.getEIP155Balances(i,r);if(l)return this.filterLowQualityTokens(l)}const c=await qe.getBalance(i,r==null?void 0:r.caipNetworkId,n);return this.filterLowQualityTokens(c.balances)},async getEIP155Balances(t,e){var n,r;try{const i=px.getChainIdHexFromCAIP2ChainId(e.caipNetworkId),s=await te.getCapabilities(t);if(!((r=(n=s==null?void 0:s[i])==null?void 0:n.assetDiscovery)!=null&&r.supported))return null;const o=await te.walletGetAssets({account:t,chainFilter:[i]});if(!px.isWalletGetAssetsResponse(o))return null;const c=(o[i]||[]).map(l=>px.createBalance(l,e.caipNetworkId));return re.updateBalanceCache({caipAddress:`${e.caipNetworkId}:${t}`,balance:{balances:c},timestamp:Date.now()}),c}catch{return null}},filterLowQualityTokens(t){return t.filter(e=>e.quantity.decimals!=="0")},async fetchERC20Balance({caipAddress:t,assetAddress:e,caipNetwork:n}){const r=await Cv.createViemPublicClient(n),{address:i}=hn.parseCaipAddress(t),[{result:s},{result:o},{result:a},{result:c}]=await r.multicall({contracts:[{address:e,functionName:"name",args:[],abi:Vg},{address:e,functionName:"symbol",args:[],abi:Vg},{address:e,functionName:"balanceOf",args:[i],abi:Vg},{address:e,functionName:"decimals",args:[],abi:Vg}]});return{name:s,symbol:o,decimals:c,balance:a&&c?K2(a,c):"0"}}},mx={adapters:{}},pC={state:mx,initialize(t){mx.adapters={...t}},get(t){return mx.adapters[t]}},Sb={eip155:void 0,solana:void 0,polkadot:void 0,bip122:void 0,cosmos:void 0,sui:void 0,stacks:void 0,ton:void 0},Qr=Lt({providers:{...Sb},providerIds:{...Sb}}),dt={state:Qr,subscribeKey(t,e){return xn(Qr,t,e)},subscribe(t){return fn(Qr,()=>{t(Qr)})},subscribeProviders(t){return fn(Qr.providers,()=>t(Qr.providers))},setProvider(t,e){t&&e&&(Qr.providers[t]=jp(e))},getProvider(t){if(t)return Qr.providers[t]},setProviderId(t,e){e&&(Qr.providerIds[t]=e)},getProviderId(t){if(t)return Qr.providerIds[t]},reset(){Qr.providers={...Sb},Qr.providerIds={...Sb}},resetChain(t){Qr.providers[t]=void 0,Qr.providerIds[t]=void 0}},IN={async getTokenList(t){var r;const e=await qe.fetchSwapTokens({chainId:t});return((r=e==null?void 0:e.tokens)==null?void 0:r.map(i=>({...i,eip2612:!1,quantity:{decimals:"0",numeric:"0"},price:0,value:0})))||[]},async fetchGasPrice(){var e;const t=v.state.activeCaipNetwork;if(!t)return null;try{switch(t.chainNamespace){case"solana":const n=(e=await(te==null?void 0:te.estimateGas({chainNamespace:"solana"})))==null?void 0:e.toString();return{standard:n,fast:n,instant:n};case"eip155":default:return await qe.fetchGasPrice({chainId:t.caipNetworkId})}}catch{return null}},async fetchSwapAllowance({tokenAddress:t,userAddress:e,sourceTokenAmount:n,sourceTokenDecimals:r}){const i=await qe.fetchSwapAllowance({tokenAddress:t,userAddress:e});if(i!=null&&i.allowance&&n&&r){const s=te.parseUnits(n,r)||0;return BigInt(i.allowance)>=s}return!1},async getMyTokensWithBalance(t){var n;const e=await J2.getMyTokensWithBalance({forceUpdate:t,caipNetwork:v.state.activeCaipNetwork,address:(n=v.getAccountData())==null?void 0:n.address});return v.setAccountProp("tokenBalance",e,v.state.activeChain),this.mapBalancesToSwapTokens(e)},mapBalancesToSwapTokens(t){return(t==null?void 0:t.map(e=>({...e,address:e!=null&&e.address?e.address:Fm(),decimals:parseInt(e.quantity.decimals,10),logoUri:e.iconUrl,eip2612:!1})))||[]},async handleSwapError(t){var e,n;try{const r=t==null?void 0:t.cause;if(!(r!=null&&r.json))return;const i=await r.json(),s=(n=(e=i==null?void 0:i.reasons)==null?void 0:e[0])==null?void 0:n.description;return s!=null&&s.includes("insufficient liquidity")?"Insufficient liquidity":void 0}catch{return}}},xt=Lt({tokenBalances:[],loading:!1}),LH={state:xt,subscribe(t){return fn(xt,()=>t(xt))},subscribeKey(t,e){return xn(xt,t,e)},setToken(t){t&&(xt.token=jp(t))},setTokenAmount(t){xt.sendTokenAmount=t},setReceiverAddress(t){xt.receiverAddress=t},setReceiverProfileImageUrl(t){xt.receiverProfileImageUrl=t},setReceiverProfileName(t){xt.receiverProfileName=t},setNetworkBalanceInUsd(t){xt.networkBalanceInUSD=t},setLoading(t){xt.loading=t},getSdkEventProperties(t){var e,n;return{message:ee.parseError(t),isSmartAccount:rn(v.state.activeChain)===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:((e=xt.token)==null?void 0:e.symbol)||"",amount:xt.sendTokenAmount??0,network:((n=v.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||""}},async sendToken(){var t;try{switch(tt.setLoading(!0),(t=v.state.activeCaipNetwork)==null?void 0:t.chainNamespace){case"eip155":await tt.sendEvmToken();return;case"solana":await tt.sendSolanaToken();return;default:throw new Error("Unsupported chain")}}catch(e){throw fi.isUserRejectedRequestError(e)?new j4(e):e}finally{tt.setLoading(!1)}},async sendEvmToken(){var n,r,i;const t=v.state.activeChain;if(!t)throw new Error("SendController:sendEvmToken - activeChainNamespace is required");const e=rn(t);if(!tt.state.sendTokenAmount||!tt.state.receiverAddress)throw new Error("An amount and receiver address are required");if(!tt.state.token)throw new Error("A token is required");if((n=tt.state.token)!=null&&n.address){we.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:tt.state.token.address,amount:tt.state.sendTokenAmount,network:((r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}});const{hash:s}=await tt.sendERC20Token({receiverAddress:tt.state.receiverAddress,tokenAddress:tt.state.token.address,sendTokenAmount:tt.state.sendTokenAmount,decimals:tt.state.token.quantity.decimals});s&&(xt.hash=s)}else{we.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:tt.state.token.symbol||"",amount:tt.state.sendTokenAmount,network:((i=v.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)||""}});const{hash:s}=await tt.sendNativeToken({receiverAddress:tt.state.receiverAddress,sendTokenAmount:tt.state.sendTokenAmount,decimals:tt.state.token.quantity.decimals});s&&(xt.hash=s)}},async fetchTokenBalance(t){var o,a,c;xt.loading=!0;const e=v.state.activeChain,n=(o=v.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,r=(a=v.state.activeCaipNetwork)==null?void 0:a.chainNamespace,i=((c=v.getAccountData(e))==null?void 0:c.caipAddress)??v.state.activeCaipAddress,s=i?ee.getPlainAddress(i):void 0;if(xt.lastRetry&&!ee.isAllowedRetry(xt.lastRetry,30*We.ONE_SEC_MS))return xt.loading=!1,[];try{if(s&&n&&r){const l=await J2.getMyTokensWithBalance();return xt.tokenBalances=l,xt.lastRetry=void 0,l}}catch(l){xt.lastRetry=Date.now(),t==null||t(l),nt.showError("Token Balance Unavailable")}finally{xt.loading=!1}return[]},fetchNetworkBalance(){if(xt.tokenBalances.length===0)return;const t=IN.mapBalancesToSwapTokens(xt.tokenBalances);if(!t)return;const e=t.find(n=>n.address===Fm());e&&(xt.networkBalanceInUSD=e?Bd.multiply(e.quantity.numeric,e.price).toString():"0")},async sendNativeToken(t){var o,a,c,l;Z.pushTransactionStack({});const e=t.receiverAddress,n=(o=v.getAccountData())==null?void 0:o.address,r=te.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),s=await te.sendTransaction({chainNamespace:H.CHAIN.EVM,to:e,address:n,data:"0x",value:r??BigInt(0)});return we.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:rn("eip155")===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:((a=tt.state.token)==null?void 0:a.symbol)||"",amount:t.sendTokenAmount,network:((c=v.state.activeCaipNetwork)==null?void 0:c.caipNetworkId)||"",hash:s||""}}),(l=te._getClient())==null||l.updateBalance("eip155"),tt.resetSend(),{hash:s}},async sendERC20Token(t){var r,i,s;Z.pushTransactionStack({onSuccess(){Z.replace("Account")}});const e=te.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),n=(r=v.getAccountData())==null?void 0:r.address;if(n&&t.sendTokenAmount&&t.receiverAddress&&t.tokenAddress){const o=ee.getPlainAddress(t.tokenAddress);if(!o)throw new Error("SendController:sendERC20Token - tokenAddress is required");const a=await te.writeContract({fromAddress:n,tokenAddress:o,args:[t.receiverAddress,e??BigInt(0)],method:"transfer",abi:FI.getERC20Abi(o),chainNamespace:H.CHAIN.EVM});return we.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:rn("eip155")===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:((i=tt.state.token)==null?void 0:i.symbol)||"",amount:t.sendTokenAmount,network:((s=v.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)||"",hash:a||""}}),tt.resetSend(),{hash:a}}return{hash:void 0}},async sendSolanaToken(){var n,r,i;if(!tt.state.sendTokenAmount||!tt.state.receiverAddress)throw new Error("An amount and receiver address are required");Z.pushTransactionStack({onSuccess(){Z.replace("Account")}});let t;tt.state.token&&tt.state.token.address!==We.SOLANA_NATIVE_TOKEN_ADDRESS&&(ee.isCaipAddress(tt.state.token.address)?t=ee.getPlainAddress(tt.state.token.address):t=tt.state.token.address);const e=await te.sendTransaction({chainNamespace:"solana",tokenMint:t,to:tt.state.receiverAddress,value:tt.state.sendTokenAmount});e&&(xt.hash=e),(n=te._getClient())==null||n.updateBalance("solana"),we.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:!1,token:((r=tt.state.token)==null?void 0:r.symbol)||"",amount:tt.state.sendTokenAmount,network:((i=v.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)||"",hash:e||""}}),tt.resetSend()},resetSend(){xt.token=void 0,xt.sendTokenAmount=void 0,xt.receiverAddress=void 0,xt.receiverProfileImageUrl=void 0,xt.receiverProfileName=void 0,xt.loading=!1,xt.tokenBalances=[]}},tt=_i(LH),wx={currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,user:void 0,preferredAccountType:void 0},Vw={caipNetwork:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]},ve=Lt({chains:UU(),activeCaipAddress:void 0,activeChain:void 0,activeCaipNetwork:void 0,noAdapters:!1,universalAdapter:{connectionControllerClient:void 0},isSwitchingNamespace:!1}),TN={state:ve,subscribe(t){return fn(ve,()=>{t(ve)})},subscribeKey(t,e){return xn(ve,t,e)},subscribeAccountStateProp(t,e,n){var i;const r=n||ve.activeChain;return r?xn(((i=ve.chains.get(r))==null?void 0:i.accountState)||{},t,e):()=>{}},subscribeChainProp(t,e,n){let r;return fn(ve.chains,()=>{var s;const i=n||ve.activeChain;if(i){const o=(s=ve.chains.get(i))==null?void 0:s[t];r!==o&&(r=o,e(o))}})},initialize(t,e,n){const{chainId:r,namespace:i}=re.getActiveNetworkProps(),s=e==null?void 0:e.find(u=>u.id.toString()===(r==null?void 0:r.toString())),a=t.find(u=>(u==null?void 0:u.namespace)===i)||(t==null?void 0:t[0]),c=t.map(u=>u.namespace).filter(u=>u!==void 0),l=V.state.enableEmbedded?new Set([...c]):new Set([...(e==null?void 0:e.map(u=>u.chainNamespace))??[]]);((t==null?void 0:t.length)===0||!a)&&(ve.noAdapters=!0),ve.noAdapters||(ve.activeChain=a==null?void 0:a.namespace,ve.activeCaipNetwork=s,v.setChainNetworkData(a==null?void 0:a.namespace,{caipNetwork:s}),ve.activeChain&&Ki.set({activeChain:a==null?void 0:a.namespace})),l.forEach(u=>{const d=e==null?void 0:e.filter(g=>g.chainNamespace===u),h=re.getPreferredAccountTypes()||{},f={...V.state.defaultAccountTypes,...h};v.state.chains.set(u,{namespace:u,networkState:Lt({...Vw,caipNetwork:d==null?void 0:d[0]}),accountState:Lt({...wx,preferredAccountType:f[u]}),caipNetworks:d??[],...n}),v.setRequestedCaipNetworks(d??[],u)})},removeAdapter(t){var e,n;if(ve.activeChain===t){const r=Array.from(ve.chains.entries()).find(([i])=>i!==t);if(r){const i=(n=(e=r[1])==null?void 0:e.caipNetworks)==null?void 0:n[0];i&&v.setActiveCaipNetwork(i)}}ve.chains.delete(t)},addAdapter(t,{connectionControllerClient:e},n){if(!t.namespace)throw new Error("ChainController:addAdapter - adapter must have a namespace");ve.chains.set(t.namespace,{namespace:t.namespace,networkState:{...Vw,caipNetwork:n[0]},accountState:{...wx},caipNetworks:n,connectionControllerClient:e}),v.setRequestedCaipNetworks((n==null?void 0:n.filter(r=>r.chainNamespace===t.namespace))??[],t.namespace)},addNetwork(t){var n;const e=ve.chains.get(t.chainNamespace);if(e){const r=[...e.caipNetworks||[]];(n=e.caipNetworks)!=null&&n.find(i=>i.id===t.id)||r.push(t),ve.chains.set(t.chainNamespace,{...e,caipNetworks:r}),v.setRequestedCaipNetworks(r,t.chainNamespace),J.filterByNamespace(t.chainNamespace,!0)}},removeNetwork(t,e){var r,i,s;const n=ve.chains.get(t);if(n){const o=((r=ve.activeCaipNetwork)==null?void 0:r.id)===e,a=[...((i=n.caipNetworks)==null?void 0:i.filter(c=>c.id!==e))||[]];o&&((s=n==null?void 0:n.caipNetworks)!=null&&s[0])&&v.setActiveCaipNetwork(n.caipNetworks[0]),ve.chains.set(t,{...n,caipNetworks:a}),v.setRequestedCaipNetworks(a||[],t),a.length===0&&J.filterByNamespace(t,!1)}},setAdapterNetworkState(t,e){const n=ve.chains.get(t);n&&(n.networkState={...n.networkState||Vw,...e},ve.chains.set(t,n))},setChainAccountData(t,e,n=!0){if(!t)throw new Error("Chain is required to update chain account data");const r=ve.chains.get(t);if(r){const i={...r.accountState||wx,...e};ve.chains.set(t,{...r,accountState:i}),(ve.chains.size===1||ve.activeChain===t)&&e.caipAddress&&(ve.activeCaipAddress=e.caipAddress)}},setChainNetworkData(t,e){if(!t)return;const n=ve.chains.get(t);if(n){const r={...n.networkState||Vw,...e};ve.chains.set(t,{...n,networkState:r})}},setAccountProp(t,e,n,r=!0){v.setChainAccountData(n,{[t]:e},r)},setActiveNamespace(t){var r,i;ve.activeChain=t;const e=t?ve.chains.get(t):void 0,n=(r=e==null?void 0:e.networkState)==null?void 0:r.caipNetwork;n!=null&&n.id&&t&&(ve.activeCaipAddress=(i=e==null?void 0:e.accountState)==null?void 0:i.caipAddress,ve.activeCaipNetwork=n,v.setChainNetworkData(t,{caipNetwork:n}),re.setActiveCaipNetworkId(n==null?void 0:n.caipNetworkId),Ki.set({activeChain:t,selectedNetworkId:n==null?void 0:n.caipNetworkId}))},setActiveCaipNetwork(t){var s,o;if(!t)return;const e=ve.activeChain===t.chainNamespace;e||v.setIsSwitchingNamespace(!0);const n=ve.chains.get(t.chainNamespace);ve.activeChain=t.chainNamespace,ve.activeCaipNetwork=t,v.setChainNetworkData(t.chainNamespace,{caipNetwork:t});let r=(s=n==null?void 0:n.accountState)==null?void 0:s.address;if(r)ve.activeCaipAddress=`${t.chainNamespace}:${t.id}:${r}`;else if(e&&ve.activeCaipAddress){const{address:a}=hn.parseCaipAddress(ve.activeCaipAddress);r=a,ve.activeCaipAddress=`${t.caipNetworkId}:${r}`}else ve.activeCaipAddress=void 0;v.setChainAccountData(t.chainNamespace,{address:r,caipAddress:ve.activeCaipAddress}),tt.resetSend(),Ki.set({activeChain:ve.activeChain,selectedNetworkId:(o=ve.activeCaipNetwork)==null?void 0:o.caipNetworkId}),re.setActiveCaipNetworkId(t.caipNetworkId),!v.checkIfSupportedNetwork(t.chainNamespace)&&V.state.enableNetworkSwitch&&!V.state.allowUnsupportedChain&&!te.state.wcBasic&&v.showUnsupportedChainUI()},addCaipNetwork(t){var n;if(!t)return;const e=ve.chains.get(t.chainNamespace);e&&((n=e==null?void 0:e.caipNetworks)==null||n.push(t))},async switchActiveNamespace(t){var i;if(!t)return;const e=t!==v.state.activeChain,n=(i=v.getNetworkData(t))==null?void 0:i.caipNetwork,r=v.getCaipNetworkByNamespace(t,n==null?void 0:n.id);e&&r&&await v.switchActiveNetwork(r)},async switchActiveNetwork(t,{throwOnFailure:e=!1}={}){var o;const n=v.state.activeChain;if(!n)throw new Error("ChainController:switchActiveNetwork - namespace is required");const r=dt.getProviderId(ve.activeChain)==="AUTH",i=(o=v.getAccountData(n))==null?void 0:o.address,s=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(t.chainNamespace);try{if(i&&t.chainNamespace===n||r&&s){const a=pC.get(t.chainNamespace);if(!a)throw new Error("Adapter not found");await a.switchNetwork({caipNetwork:t})}v.setActiveCaipNetwork(t)}catch(a){if(e)throw a}we.sendEvent({type:"track",event:"SWITCH_NETWORK",properties:{network:t.caipNetworkId}})},getConnectionControllerClient(t){const e=t||ve.activeChain;if(!e)throw new Error("Chain is required to get connection controller client");const n=ve.chains.get(e);if(!(n!=null&&n.connectionControllerClient))throw new Error("ConnectionController client not set");return n.connectionControllerClient},getNetworkProp(t,e){var r;const n=(r=ve.chains.get(e))==null?void 0:r.networkState;if(n)return n[t]},getRequestedCaipNetworks(t){const e=ve.chains.get(t),{approvedCaipNetworkIds:n=[],requestedCaipNetworks:r=[]}=(e==null?void 0:e.networkState)||{};return ee.sortRequestedNetworks(n,r).filter(o=>o==null?void 0:o.id)},getAllRequestedCaipNetworks(){const t=[];return ve.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllRequestedCaipNetworks - chainAdapter must have a namespace");const n=v.getRequestedCaipNetworks(e.namespace);t.push(...n)}),t},setRequestedCaipNetworks(t,e){v.setAdapterNetworkState(e,{requestedCaipNetworks:t});const r=v.getAllRequestedCaipNetworks().map(s=>s.chainNamespace),i=Array.from(new Set(r));J.filterByNamespaces(i)},getAllApprovedCaipNetworkIds(){const t=[];return ve.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllApprovedCaipNetworkIds - chainAdapter must have a namespace");const n=v.getApprovedCaipNetworkIds(e.namespace);t.push(...n)}),t},getActiveCaipNetwork(t){var e,n;return t?(n=(e=ve.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:ve.activeCaipNetwork},getActiveCaipAddress(){return ve.activeCaipAddress},getApprovedCaipNetworkIds(t){var r;const e=ve.chains.get(t);return((r=e==null?void 0:e.networkState)==null?void 0:r.approvedCaipNetworkIds)||[]},setApprovedCaipNetworksData(t,e){v.setAdapterNetworkState(t,e)},checkIfSupportedNetwork(t,e){var i;const n=e||((i=ve.activeCaipNetwork)==null?void 0:i.caipNetworkId),r=v.getRequestedCaipNetworks(t);return r.length?r==null?void 0:r.some(s=>s.caipNetworkId===n):!0},checkIfSupportedChainId(t){if(!ve.activeChain)return!0;const e=v.getRequestedCaipNetworks(ve.activeChain);return e==null?void 0:e.some(n=>n.id===t)},checkIfSmartAccountEnabled(){var r,i;const t=W4.caipNetworkIdToNumber((r=ve.activeCaipNetwork)==null?void 0:r.caipNetworkId);if(!ve.activeChain||!t)return!1;const n=((i=Cn.get(ke.SMART_ACCOUNT_ENABLED_NETWORKS))==null?void 0:i.split(","))||[];return!!(n!=null&&n.includes(t.toString()))},showUnsupportedChainUI(){je.open({view:"UnsupportedChain"})},checkIfNamesSupported(){const t=ve.activeCaipNetwork;return!!(t!=null&&t.chainNamespace&&We.NAMES_SUPPORTED_CHAIN_NAMESPACES.includes(t.chainNamespace))},resetNetwork(t){v.setAdapterNetworkState(t,{approvedCaipNetworkIds:void 0,supportsAllNetworks:!0})},resetAccount(t){var i,s;const e=t;if(!e)throw new Error("Chain is required to set account prop");const n=(s=(i=v.state.chains.get(e))==null?void 0:i.accountState)==null?void 0:s.preferredAccountType,r=V.state.defaultAccountTypes[e];ve.activeCaipAddress=void 0,v.setChainAccountData(e,{smartAccountDeployed:!1,currentTab:0,caipAddress:void 0,address:void 0,balance:void 0,balanceSymbol:void 0,profileName:void 0,profileImage:void 0,addressExplorerUrl:void 0,tokenBalance:[],connectedWalletInfo:void 0,preferredAccountType:r||n,socialProvider:void 0,socialWindow:void 0,farcasterUrl:void 0,user:void 0,status:"disconnected"}),J.removeConnectorId(e)},setIsSwitchingNamespace(t){ve.isSwitchingNamespace=t},getFirstCaipNetworkSupportsAuthConnector(){var n,r;const t=[];let e;if(ve.chains.forEach(i=>{H.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(s=>s===i.namespace)&&i.namespace&&t.push(i.namespace)}),t.length>0){const i=t[0];return e=i?(r=(n=ve.chains.get(i))==null?void 0:n.caipNetworks)==null?void 0:r[0]:void 0,e}},getAccountData(t){var n;const e=t||ve.activeChain;if(e)return(n=v.state.chains.get(e))==null?void 0:n.accountState},getNetworkData(t){var n;const e=t||ve.activeChain;if(e)return(n=v.state.chains.get(e))==null?void 0:n.networkState},getCaipNetworkByNamespace(t,e){var i,s,o;if(!t)return;const n=v.state.chains.get(t),r=(i=n==null?void 0:n.caipNetworks)==null?void 0:i.find(a=>a.id.toString()===(e==null?void 0:e.toString()));return r||((s=n==null?void 0:n.networkState)==null?void 0:s.caipNetwork)||((o=n==null?void 0:n.caipNetworks)==null?void 0:o[0])},getRequestedCaipNetworkIds(){const t=J.state.filterByNamespace;return(t?[ve.chains.get(t)]:Array.from(ve.chains.values())).flatMap(n=>(n==null?void 0:n.caipNetworks)||[]).map(n=>n.caipNetworkId)},getCaipNetworks(t){return t?v.getRequestedCaipNetworks(t):v.getAllRequestedCaipNetworks()},getCaipNetworkById(t,e){return TN.getCaipNetworks(e).find(n=>n.id.toString()===t.toString()||n.caipNetworkId.toString()===t.toString())},setLastConnectedSIWECaipNetwork(t){ve.lastConnectedSIWECaipNetwork=t},getLastConnectedSIWECaipNetwork(){return ve.lastConnectedSIWECaipNetwork},async fetchTokenBalance(t){var o,a;const e=v.getAccountData();if(!e)return[];const n=(o=v.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,r=(a=v.state.activeCaipNetwork)==null?void 0:a.chainNamespace,i=v.state.activeCaipAddress,s=i?ee.getPlainAddress(i):void 0;if(v.setAccountProp("balanceLoading",!0,r),e.lastRetry&&!ee.isAllowedRetry(e.lastRetry,30*We.ONE_SEC_MS))return v.setAccountProp("balanceLoading",!1,r),[];try{if(s&&n&&r){const c=await J2.getMyTokensWithBalance();return v.setAccountProp("tokenBalance",c,r),v.setAccountProp("lastRetry",void 0,r),v.setAccountProp("balanceLoading",!1,r),c}}catch(c){v.setAccountProp("lastRetry",Date.now(),r),t==null||t(c),nt.showError("Token Balance Unavailable")}finally{v.setAccountProp("balanceLoading",!1,r)}return[]},isCaipNetworkDisabled(t){var c;const e=t.chainNamespace,n=!!((c=v.getAccountData(e))!=null&&c.caipAddress),r=v.getAllApprovedCaipNetworkIds(),i=v.getNetworkProp("supportsAllNetworks",e)!==!1,s=J.getConnectorId(e),o=J.getAuthConnector(),a=s===H.CONNECTOR_ID.AUTH&&o;return!n||i||a?!1:!(r!=null&&r.includes(t.caipNetworkId))}},v=_i(TN),NN={onSwitchNetwork({network:t,ignoreSwitchConfirmation:e=!1}){var h,f;const n=v.state.activeCaipNetwork,r=v.state.activeChain,i=Z.state.data;if(t.id===(n==null?void 0:n.id))return;const o=!!((h=v.getAccountData(r))!=null&&h.address),a=!!((f=v.getAccountData(t.chainNamespace))!=null&&f.address),c=t.chainNamespace!==r,u=J.getConnectorId(r)===H.CONNECTOR_ID.AUTH,d=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(g=>g===t.chainNamespace);e||u&&d?Z.push("SwitchNetwork",{...i,network:t}):o&&c&&!a?Z.push("SwitchActiveChain",{switchToChain:t.chainNamespace,navigateTo:"Connect",navigateWithReplace:!0,network:t}):Z.push("SwitchNetwork",{...i,network:t})}},Xr=Lt({loading:!1,loadingNamespaceMap:new Map,open:!1,shake:!1,namespace:void 0}),MH={state:Xr,subscribe(t){return fn(Xr,()=>t(Xr))},subscribeKey(t,e){return xn(Xr,t,e)},async open(t){var o,a;const e=t==null?void 0:t.namespace,n=v.state.activeChain,r=e&&e!==n,i=(o=v.getAccountData(t==null?void 0:t.namespace))==null?void 0:o.caipAddress,s=v.state.noAdapters;if(te.state.wcBasic?he.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1}):await he.prefetch(),J.setFilterByNamespace(t==null?void 0:t.namespace),je.setLoading(!0,e),e&&r){const c=((a=v.getNetworkData(e))==null?void 0:a.caipNetwork)||v.getRequestedCaipNetworks(e)[0];c&&(s?(await v.switchActiveNetwork(c),Z.push("ConnectingWalletConnectBasic")):NN.onSwitchNetwork({network:c,ignoreSwitchConfirmation:!0}))}else V.state.manualWCControl||s&&!i?ee.isMobile()?Z.reset("AllWallets"):Z.reset("ConnectingWalletConnectBasic"):t!=null&&t.view?Z.reset(t.view,t.data):i?Z.reset("Account"):Z.reset("Connect");Xr.open=!0,Ki.set({open:!0}),we.sendEvent({type:"track",event:"MODAL_OPEN",properties:{connected:!!i}})},close(){const t=V.state.enableEmbedded,e=!!v.state.activeCaipAddress;Xr.open&&we.sendEvent({type:"track",event:"MODAL_CLOSE",properties:{connected:e}}),Xr.open=!1,Z.reset("Connect"),je.clearLoading(),t?e?Z.replace("Account"):Z.push("Connect"):Ki.set({open:!1}),te.resetUri()},setLoading(t,e){e&&Xr.loadingNamespaceMap.set(e,t),Xr.loading=t,Ki.set({loading:t})},clearLoading(){Xr.loadingNamespaceMap.clear(),Xr.loading=!1,Ki.set({loading:!1})},shake(){Xr.shake||(Xr.shake=!0,setTimeout(()=>{Xr.shake=!1},500))}},je=_i(MH),lm={id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"USD Coin",symbol:"USDC",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]},Av={id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},FH={providers:jI,selectedProvider:null,error:null,purchaseCurrency:lm,paymentCurrency:Av,purchaseCurrencies:[lm],paymentCurrencies:[],quotesLoading:!1},vt=Lt(FH),WH={state:vt,subscribe(t){return fn(vt,()=>t(vt))},subscribeKey(t,e){return xn(vt,t,e)},setSelectedProvider(t){var e,n;if(t&&t.name==="meld"){const r=v.state.activeChain,i=r===H.CHAIN.SOLANA?"SOL":"USDC",s=r?((n=(e=v.state.chains.get(r))==null?void 0:e.accountState)==null?void 0:n.address)??"":"",o=new URL(t.url);o.searchParams.append("publicKey",sL),o.searchParams.append("destinationCurrencyCode",i),o.searchParams.append("walletAddress",s),o.searchParams.append("externalCustomerId",V.state.projectId),vt.selectedProvider={...t,url:o.toString()}}else vt.selectedProvider=t},setOnrampProviders(t){if(Array.isArray(t)&&t.every(e=>typeof e=="string")){const e=t,n=jI.filter(r=>e.includes(r.name));vt.providers=n}else vt.providers=[]},setPurchaseCurrency(t){vt.purchaseCurrency=t},setPaymentCurrency(t){vt.paymentCurrency=t},setPurchaseAmount(t){Ib.state.purchaseAmount=t},setPaymentAmount(t){Ib.state.paymentAmount=t},async getAvailableCurrencies(){const t=await qe.getOnrampOptions();vt.purchaseCurrencies=t.purchaseCurrencies,vt.paymentCurrencies=t.paymentCurrencies,vt.paymentCurrency=t.paymentCurrencies[0]||Av,vt.purchaseCurrency=t.purchaseCurrencies[0]||lm,await he.fetchCurrencyImages(t.paymentCurrencies.map(e=>e.id)),await he.fetchTokenImages(t.purchaseCurrencies.map(e=>e.symbol))},async getQuote(){var t,e;vt.quotesLoading=!0;try{const n=await qe.getOnrampQuote({purchaseCurrency:vt.purchaseCurrency,paymentCurrency:vt.paymentCurrency,amount:((t=vt.paymentAmount)==null?void 0:t.toString())||"0",network:(e=vt.purchaseCurrency)==null?void 0:e.symbol});return vt.quotesLoading=!1,vt.purchaseAmount=Number(n==null?void 0:n.purchaseAmount.amount),n}catch(n){return vt.error=n.message,vt.quotesLoading=!1,null}finally{vt.quotesLoading=!1}},resetState(){vt.selectedProvider=null,vt.error=null,vt.purchaseCurrency=lm,vt.paymentCurrency=Av,vt.purchaseCurrencies=[lm],vt.paymentCurrencies=[],vt.paymentAmount=void 0,vt.purchaseAmount=void 0,vt.quotesLoading=!1}},Ib=_i(WH);var gC={exports:{}},Pf=typeof Reflect=="object"?Reflect:null,WA=Pf&&typeof Pf.apply=="function"?Pf.apply:function(e,n,r){return Function.prototype.apply.call(e,n,r)},By;Pf&&typeof Pf.ownKeys=="function"?By=Pf.ownKeys:Object.getOwnPropertySymbols?By=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:By=function(e){return Object.getOwnPropertyNames(e)};function jH(t){console&&console.warn&&console.warn(t)}var RN=Number.isNaN||function(e){return e!==e};function jt(){jt.init.call(this)}gC.exports=jt;gC.exports.once=qH;jt.EventEmitter=jt;jt.prototype._events=void 0;jt.prototype._eventsCount=0;jt.prototype._maxListeners=void 0;var jA=10;function Q2(t){if(typeof t!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}Object.defineProperty(jt,"defaultMaxListeners",{enumerable:!0,get:function(){return jA},set:function(t){if(typeof t!="number"||t<0||RN(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");jA=t}});jt.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};jt.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||RN(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this};function ON(t){return t._maxListeners===void 0?jt.defaultMaxListeners:t._maxListeners}jt.prototype.getMaxListeners=function(){return ON(this)};jt.prototype.emit=function(e){for(var n=[],r=1;r<arguments.length;r++)n.push(arguments[r]);var i=e==="error",s=this._events;if(s!==void 0)i=i&&s.error===void 0;else if(!i)return!1;if(i){var o;if(n.length>0&&(o=n[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var c=s[e];if(c===void 0)return!1;if(typeof c=="function")WA(c,this,n);else for(var l=c.length,u=BN(c,l),r=0;r<l;++r)WA(u[r],this,n);return!0};function PN(t,e,n,r){var i,s,o;if(Q2(n),s=t._events,s===void 0?(s=t._events=Object.create(null),t._eventsCount=0):(s.newListener!==void 0&&(t.emit("newListener",e,n.listener?n.listener:n),s=t._events),o=s[e]),o===void 0)o=s[e]=n,++t._eventsCount;else if(typeof o=="function"?o=s[e]=r?[n,o]:[o,n]:r?o.unshift(n):o.push(n),i=ON(t),i>0&&o.length>i&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,jH(a)}return t}jt.prototype.addListener=function(e,n){return PN(this,e,n,!1)};jt.prototype.on=jt.prototype.addListener;jt.prototype.prependListener=function(e,n){return PN(this,e,n,!0)};function HH(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function kN(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},i=HH.bind(r);return i.listener=n,r.wrapFn=i,i}jt.prototype.once=function(e,n){return Q2(n),this.on(e,kN(this,e,n)),this};jt.prototype.prependOnceListener=function(e,n){return Q2(n),this.prependListener(e,kN(this,e,n)),this};jt.prototype.removeListener=function(e,n){var r,i,s,o,a;if(Q2(n),i=this._events,i===void 0)return this;if(r=i[e],r===void 0)return this;if(r===n||r.listener===n)--this._eventsCount===0?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,r.listener||n));else if(typeof r!="function"){for(s=-1,o=r.length-1;o>=0;o--)if(r[o]===n||r[o].listener===n){a=r[o].listener,s=o;break}if(s<0)return this;s===0?r.shift():zH(r,s),r.length===1&&(i[e]=r[0]),i.removeListener!==void 0&&this.emit("removeListener",e,a||n)}return this};jt.prototype.off=jt.prototype.removeListener;jt.prototype.removeAllListeners=function(e){var n,r,i;if(r=this._events,r===void 0)return this;if(r.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):r[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete r[e]),this;if(arguments.length===0){var s=Object.keys(r),o;for(i=0;i<s.length;++i)o=s[i],o!=="removeListener"&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(n=r[e],typeof n=="function")this.removeListener(e,n);else if(n!==void 0)for(i=n.length-1;i>=0;i--)this.removeListener(e,n[i]);return this};function $N(t,e,n){var r=t._events;if(r===void 0)return[];var i=r[e];return i===void 0?[]:typeof i=="function"?n?[i.listener||i]:[i]:n?VH(i):BN(i,i.length)}jt.prototype.listeners=function(e){return $N(this,e,!0)};jt.prototype.rawListeners=function(e){return $N(this,e,!1)};jt.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):DN.call(t,e)};jt.prototype.listenerCount=DN;function DN(t){var e=this._events;if(e!==void 0){var n=e[t];if(typeof n=="function")return 1;if(n!==void 0)return n.length}return 0}jt.prototype.eventNames=function(){return this._eventsCount>0?By(this._events):[]};function BN(t,e){for(var n=new Array(e),r=0;r<e;++r)n[r]=t[r];return n}function zH(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function VH(t){for(var e=new Array(t.length),n=0;n<e.length;++n)e[n]=t[n].listener||t[n];return e}function qH(t,e){return new Promise(function(n,r){function i(o){t.removeListener(e,s),r(o)}function s(){typeof t.removeListener=="function"&&t.removeListener("error",i),n([].slice.call(arguments))}UN(t,e,s,{once:!0}),e!=="error"&&GH(t,i,{once:!0})})}function GH(t,e,n){typeof t.on=="function"&&UN(t,"error",e,n)}function UN(t,e,n,r){if(typeof t.on=="function")r.once?t.once(e,n):t.on(e,n);else if(typeof t.addEventListener=="function")t.addEventListener(e,function i(s){r.once&&t.removeEventListener(e,i),n(s)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t)}var Xi=gC.exports;const mC=su(Xi);var ge={};/*! *****************************************************************************
|
|
29
|
+
${a}`,i=!0}}i||(Error.captureStackTrace?Error.captureStackTrace(this,go):this.stack||(this.stack=`${this.name}: ${this.message}`))}}function BA(t,e){let n="";try{t instanceof Error?n=t.message:typeof t=="string"?n=t:typeof t=="object"&&t!==null?Object.keys(t).length===0?n="Unknown error":n=(t==null?void 0:t.message)||JSON.stringify(t):n=String(t)}catch(i){n="Unknown error",console.error("Error parsing error message",i)}const r=t instanceof go?t:new go(n,e,t);throw xH.sendError(r,r.category),r}function _i(t,e="INTERNAL_SDK_ERROR"){const n={};return Object.keys(t).forEach(r=>{const i=t[r];if(typeof i=="function"){let s=i;i.constructor.name==="AsyncFunction"?s=async(...o)=>{try{return await i(...o)}catch(a){return BA(a,e)}}:s=(...o)=>{try{return i(...o)}catch(a){return BA(a,e)}},n[r]=s}else n[r]=i}),n}const Oi=Lt({walletImages:{},networkImages:{},chainImages:{},connectorImages:{},tokenImages:{},currencyImages:{}}),EH={state:Oi,subscribeNetworkImages(t){return fn(Oi.networkImages,()=>t(Oi.networkImages))},subscribeKey(t,e){return xn(Oi,t,e)},subscribe(t){return fn(Oi,()=>t(Oi))},setWalletImage(t,e){Oi.walletImages[t]=e},setNetworkImage(t,e){Oi.networkImages[t]=e},setChainImage(t,e){Oi.chainImages[t]=e},setConnectorImage(t,e){Oi.connectorImages={...Oi.connectorImages,[t]:e}},setTokenImage(t,e){Oi.tokenImages[t]=e},setCurrencyImage(t,e){Oi.currencyImages[t]=e}},gn=_i(EH),UA={eip155:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",solana:"a1b58899-f671-4276-6a5e-56ca5bd59700",polkadot:"",bip122:"0b4838db-0161-4ffe-022d-532bf03dba00",cosmos:"",sui:"",stacks:"",ton:"20f673c0-095e-49b2-07cf-eb5049dcf600"},Vh=Lt({networkImagePromises:{},tokenImagePromises:{}}),Nt={async fetchWalletImage(t){if(t)return await he._fetchWalletImage(t),this.getWalletImageById(t)},async fetchNetworkImage(t){if(!t)return;const e=this.getNetworkImageById(t);return e||(Vh.networkImagePromises[t]||(Vh.networkImagePromises[t]=he._fetchNetworkImage(t)),await Vh.networkImagePromises[t],this.getNetworkImageById(t))},async fetchTokenImage(t){if(t)return Vh.tokenImagePromises[t]||(Vh.tokenImagePromises[t]=he._fetchTokenImage(t)),await Vh.tokenImagePromises[t],this.getTokenImage(t)},getWalletImageById(t){if(t)return gn.state.walletImages[t]},getWalletImage(t){if(t!=null&&t.image_url)return t==null?void 0:t.image_url;if(t!=null&&t.image_id)return gn.state.walletImages[t.image_id]},getNetworkImage(t){var e,n,r;if((e=t==null?void 0:t.assets)!=null&&e.imageUrl)return(n=t==null?void 0:t.assets)==null?void 0:n.imageUrl;if((r=t==null?void 0:t.assets)!=null&&r.imageId)return gn.state.networkImages[t.assets.imageId]},getNetworkImageById(t){if(t)return gn.state.networkImages[t]},getConnectorImage(t){var e;if(t!=null&&t.imageUrl)return t.imageUrl;if((e=t==null?void 0:t.info)!=null&&e.icon)return t.info.icon;if(t!=null&&t.imageId)return gn.state.connectorImages[t.imageId]},getChainImage(t){return gn.state.networkImages[UA[t]]},getTokenImage(t){if(t)return gn.state.tokenImages[t]},getWalletImageUrl(t){if(!t)return"";const{projectId:e,sdkType:n,sdkVersion:r}=V.state,i=new URL(`${H.W3M_API_URL}/getWalletImage/${t}`);return i.searchParams.set("projectId",e),i.searchParams.set("st",n),i.searchParams.set("sv",r),i.toString()},getAssetImageUrl(t){if(!t)return"";const{projectId:e,sdkType:n,sdkVersion:r}=V.state,i=new URL(`${H.W3M_API_URL}/public/getAssetImage/${t}`);return i.searchParams.set("projectId",e),i.searchParams.set("st",n),i.searchParams.set("sv",r),i.toString()},getChainNamespaceImageUrl(t){return this.getAssetImageUrl(UA[t])},async getImageByToken(t,e){if(t==="native"){const r=H.NATIVE_IMAGE_IDS_BY_NAMESPACE[e]??null;return r?Nt.fetchNetworkImage(r):void 0}const[,n]=Object.entries(H.TOKEN_SYMBOLS_BY_ADDRESS).find(([r])=>r.toLowerCase()===t.toLowerCase())??[];if(n)return Nt.fetchTokenImage(n)}},fs={PHANTOM:{id:"a797aa35c0fadbfc1a53e7f675162ed5226968b44a19ee3d24385c64d1d3c393",url:"https://phantom.app"},SOLFLARE:{id:"1ca0bdd4747578705b1939af023d120677c64fe6ca76add81fda36e350605e79",url:"https://solflare.com"},COINBASE:{id:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",url:"https://go.cb-w.com"},BINANCE:{id:"2fafea35bb471d22889ccb49c08d99dd0a18a37982602c33f696a5723934ba25",appId:"yFK5FCqYprrXDiVFbhyRx7",deeplink:"bnc://app.binance.com/mp/app",url:"https://app.binance.com/en/download"}},vH={handleMobileDeeplinkRedirect(t,e){const n=window.location.href,r=encodeURIComponent(n);if(t===fs.PHANTOM.id&&!("phantom"in window)){const i=n.startsWith("https")?"https":"http",s=n.split("/")[2],o=encodeURIComponent(`${i}://${s}`);window.location.href=`${fs.PHANTOM.url}/ul/browse/${r}?ref=${o}`}if(t===fs.SOLFLARE.id&&!("solflare"in window)&&(window.location.href=`${fs.SOLFLARE.url}/ul/v1/browse/${r}?ref=${r}`),e===H.CHAIN.SOLANA&&t===fs.COINBASE.id&&!("coinbaseSolana"in window)&&(window.location.href=`${fs.COINBASE.url}/dapp?cb_url=${r}`),e===H.CHAIN.BITCOIN&&t===fs.BINANCE.id&&!("binancew3w"in window)){const i=v.state.activeCaipNetwork,s=window.btoa("/pages/browser/index"),o=window.btoa(`url=${r}&defaultChainId=${(i==null?void 0:i.id)??1}`),a=new URL(fs.BINANCE.deeplink);a.searchParams.set("appId",fs.BINANCE.appId),a.searchParams.set("startPagePath",s),a.searchParams.set("startPageQuery",o);const c=new URL(fs.BINANCE.url);c.searchParams.set("_dp",window.btoa(a.toString())),window.location.href=c.toString()}}},CH=ee.getAnalyticsUrl(),AH=new G0({baseUrl:CH,clientId:null}),_H=["MODAL_CREATED"],SH=45,LA=1e3*10,un=Lt({timestamp:Date.now(),lastFlush:Date.now(),reportedErrors:{},data:{type:"track",event:"MODAL_CREATED"},pendingEvents:[],subscribedToVisibilityChange:!1,walletImpressions:[]}),we={state:un,subscribe(t){return fn(un,()=>t(un))},getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=V.state;return{projectId:t,st:e,sv:n||"html-wagmi-4.2.2"}},shouldFlushEvents(){const t=JSON.stringify(un.pendingEvents).length/1024>SH,e=un.lastFlush+LA<Date.now();return t||e},_setPendingEvent(t){var e,n;try{let r=(e=v.getAccountData())==null?void 0:e.address;if("address"in t.data&&t.data.address&&(r=t.data.address),_H.includes(t.data.event)||typeof window>"u")return;const i=(n=v.getActiveCaipNetwork())==null?void 0:n.caipNetworkId;this.state.pendingEvents.push({eventId:ee.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:t.timestamp,props:{...t.data,address:r,properties:{..."properties"in t.data?t.data.properties:{},caipNetworkId:i}}}),un.reportedErrors.FORBIDDEN=!1,we.shouldFlushEvents()&&we._submitPendingEvents()}catch(r){console.warn("_setPendingEvent",r)}},sendEvent(t){var n;un.timestamp=Date.now(),un.data=t;const e=["INITIALIZE","CONNECT_SUCCESS","SOCIAL_LOGIN_SUCCESS"];((n=V.state.features)!=null&&n.analytics||e.includes(t.event))&&we._setPendingEvent(un),this.subscribeToFlushTriggers()},sendWalletImpressionEvent(t){un.walletImpressions.push(t)},_transformPendingEventsForBatch(t){try{return t.filter(e=>e.props.event!=="WALLET_IMPRESSION_V2")}catch{return t}},_submitPendingEvents(){if(un.lastFlush=Date.now(),!(un.pendingEvents.length===0&&un.walletImpressions.length===0))try{const t=we._transformPendingEventsForBatch(un.pendingEvents);un.walletImpressions.length&&t.push({eventId:ee.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:Date.now(),props:{type:"track",event:"WALLET_IMPRESSION_V2",items:[...un.walletImpressions]}}),AH.sendBeacon({path:"/batch",params:we.getSdkProperties(),body:t}),un.reportedErrors.FORBIDDEN=!1,un.pendingEvents=[],un.walletImpressions=[]}catch{un.reportedErrors.FORBIDDEN=!0}},subscribeToFlushTriggers(){var t,e,n;un.subscribedToVisibilityChange||typeof document>"u"||(un.subscribedToVisibilityChange=!0,(t=document==null?void 0:document.addEventListener)==null||t.call(document,"visibilitychange",()=>{document.visibilityState==="hidden"&&we._submitPendingEvents()}),(e=document==null?void 0:document.addEventListener)==null||e.call(document,"freeze",()=>{we._submitPendingEvents()}),(n=window==null?void 0:window.addEventListener)==null||n.call(window,"pagehide",()=>{we._submitPendingEvents()}),setInterval(()=>{we._submitPendingEvents()},LA))}},IH=ee.getApiUrl(),Br=new G0({baseUrl:IH,clientId:null}),TH=40,MA=4,NH=20,Ye=Lt({promises:{},page:1,count:0,featured:[],allFeatured:[],recommended:[],allRecommended:[],wallets:[],filteredWallets:[],search:[],isAnalyticsEnabled:!1,excludedWallets:[],isFetchingRecommendedWallets:!1,explorerWallets:[],explorerFilteredWallets:[],plan:{tier:"none",hasExceededUsageLimit:!1,limits:{isAboveRpcLimit:!1,isAboveMauLimit:!1}}}),he={state:Ye,subscribeKey(t,e){return xn(Ye,t,e)},_getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=V.state;return{projectId:t,st:e||"appkit",sv:n||"html-wagmi-4.2.2"}},_filterOutExtensions(t){return V.state.isUniversalProvider?t.filter(e=>!!(e.mobile_link||e.desktop_link||e.webapp_link)):t},async _fetchWalletImage(t){const e=`${Br.baseUrl}/getWalletImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setWalletImage(t,URL.createObjectURL(n))},async _fetchNetworkImage(t){const e=`${Br.baseUrl}/public/getAssetImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setNetworkImage(t,URL.createObjectURL(n))},async _fetchConnectorImage(t){const e=`${Br.baseUrl}/public/getAssetImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setConnectorImage(t,URL.createObjectURL(n))},async _fetchCurrencyImage(t){const e=`${Br.baseUrl}/public/getCurrencyImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setCurrencyImage(t,URL.createObjectURL(n))},async _fetchTokenImage(t){const e=`${Br.baseUrl}/public/getTokenImage/${t}`,n=await Br.getBlob({path:e,params:he._getSdkProperties()});gn.setTokenImage(t,URL.createObjectURL(n))},_filterWalletsByPlatform(t){const e=t.length,n=ee.isMobile()?t==null?void 0:t.filter(i=>i.mobile_link||i.webapp_link?!0:Object.values(fs).map(o=>o.id).includes(i.id)):t,r=e-n.length;return{filteredWallets:n,mobileFilteredOutWalletsLength:r}},async fetchProjectConfig(){return(await Br.get({path:"/appkit/v1/config",params:he._getSdkProperties()})).features},async fetchUsage(){try{const t=await Br.get({path:"/appkit/v1/project-limits",params:he._getSdkProperties()}),{tier:e,isAboveMauLimit:n,isAboveRpcLimit:r}=t.planLimits,i=e==="starter",s=n||r;he.state.plan={tier:e,hasExceededUsageLimit:i&&s,limits:{isAboveRpcLimit:r,isAboveMauLimit:n}}}catch(t){console.warn("Failed to fetch usage",t)}},async fetchAllowedOrigins(){try{const{allowedOrigins:t}=await Br.get({path:"/projects/v1/origins",params:he._getSdkProperties()});return t}catch(t){if(t instanceof Error&&t.cause instanceof Response){const e=t.cause.status;if(e===H.HTTP_STATUS_CODES.TOO_MANY_REQUESTS)throw new Error("RATE_LIMITED",{cause:t});if(e>=H.HTTP_STATUS_CODES.SERVER_ERROR&&e<600)throw new Error("SERVER_ERROR",{cause:t});return[]}return[]}},async fetchNetworkImages(){const t=v.getAllRequestedCaipNetworks(),e=t==null?void 0:t.map(({assets:n})=>n==null?void 0:n.imageId).filter(Boolean).filter(n=>!Nt.getNetworkImageById(n));e&&await Promise.allSettled(e.map(n=>he._fetchNetworkImage(n)))},async fetchConnectorImages(){const{connectors:t}=J.state,e=t.map(({imageId:n})=>n).filter(Boolean);await Promise.allSettled(e.map(n=>he._fetchConnectorImage(n)))},async fetchCurrencyImages(t=[]){await Promise.allSettled(t.map(e=>he._fetchCurrencyImage(e)))},async fetchTokenImages(t=[]){await Promise.allSettled(t.map(e=>he._fetchTokenImage(e)))},async fetchWallets(t){var o;const e=t.exclude??[];he._getSdkProperties().sv.startsWith("html-core-")&&e.push(...Object.values(fs).map(a=>a.id));const r=await Br.get({path:"/getWallets",params:{...he._getSdkProperties(),...t,page:String(t.page),entries:String(t.entries),include:(o=t.include)==null?void 0:o.join(","),exclude:e.join(",")}}),{filteredWallets:i,mobileFilteredOutWalletsLength:s}=he._filterWalletsByPlatform(r==null?void 0:r.data);return{data:i||[],count:r==null?void 0:r.count,mobileFilteredOutWalletsLength:s}},async prefetchWalletRanks(){const t=J.state.connectors;if(!(t!=null&&t.length))return;const e={page:1,entries:20,badge:"certified"};if(e.names=t.map(i=>i.name).join(","),v.state.activeChain===H.CHAIN.EVM){const i=[...t.flatMap(s=>{var o;return((o=s.connectors)==null?void 0:o.map(a=>{var c;return(c=a.info)==null?void 0:c.rdns}))||[]}),...t.map(s=>{var o;return(o=s.info)==null?void 0:o.rdns})].filter(s=>typeof s=="string"&&s.length>0);i.length&&(e.rdns=i.join(","))}const{data:n}=await he.fetchWallets(e);Ye.explorerWallets=n,J.extendConnectorsWithExplorerWallets(n);const r=v.getRequestedCaipNetworkIds().join(",");Ye.explorerFilteredWallets=n.filter(i=>{var s;return(s=i.chains)==null?void 0:s.some(o=>r.includes(o))})},async fetchFeaturedWallets(){const{featuredWalletIds:t}=V.state;if(t!=null&&t.length){const e={...he._getSdkProperties(),page:1,entries:(t==null?void 0:t.length)??MA,include:t},{data:n}=await he.fetchWallets(e),r=[...n].sort((s,o)=>t.indexOf(s.id)-t.indexOf(o.id)),i=r.map(s=>s.image_id).filter(Boolean);await Promise.allSettled(i.map(s=>he._fetchWalletImage(s))),Ye.featured=r,Ye.allFeatured=r}},async fetchRecommendedWallets(){try{Ye.isFetchingRecommendedWallets=!0;const{includeWalletIds:t,excludeWalletIds:e,featuredWalletIds:n}=V.state,r=[...e??[],...n??[]].filter(Boolean),i=v.getRequestedCaipNetworkIds().join(","),s={page:1,entries:MA,include:t,exclude:r,chains:i},{data:o,count:a}=await he.fetchWallets(s),c=re.getRecentWallets(),l=o.map(d=>d.image_id).filter(Boolean),u=c.map(d=>d.image_id).filter(Boolean);await Promise.allSettled([...l,...u].map(d=>he._fetchWalletImage(d))),Ye.recommended=o,Ye.allRecommended=o,Ye.count=a??0}catch{}finally{Ye.isFetchingRecommendedWallets=!1}},async fetchWalletsByPage({page:t}){const{includeWalletIds:e,excludeWalletIds:n,featuredWalletIds:r}=V.state,i=v.getRequestedCaipNetworkIds().join(","),s=[...Ye.recommended.map(({id:d})=>d),...n??[],...r??[]].filter(Boolean),o={page:t,entries:TH,include:e,exclude:s,chains:i},{data:a,count:c,mobileFilteredOutWalletsLength:l}=await he.fetchWallets(o);Ye.mobileFilteredOutWalletsLength=l+(Ye.mobileFilteredOutWalletsLength??0);const u=a.slice(0,NH).map(d=>d.image_id).filter(Boolean);await Promise.allSettled(u.map(d=>he._fetchWalletImage(d))),Ye.wallets=ee.uniqueBy([...Ye.wallets,...he._filterOutExtensions(a)],"id").filter(d=>{var h;return(h=d.chains)==null?void 0:h.some(f=>i.includes(f))}),Ye.count=c>Ye.count?c:Ye.count,Ye.page=t},async initializeExcludedWallets({ids:t}){const e={page:1,entries:t.length,include:t},{data:n}=await he.fetchWallets(e);n&&n.forEach(r=>{Ye.excludedWallets.push({rdns:r.rdns,name:r.name})})},async searchWallet({search:t,badge:e}){const{includeWalletIds:n,excludeWalletIds:r}=V.state,i=v.getRequestedCaipNetworkIds().join(",");Ye.search=[];const s={page:1,entries:100,search:t==null?void 0:t.trim(),badge_type:e,include:n,exclude:r,chains:i},{data:o}=await he.fetchWallets(s);we.sendEvent({type:"track",event:"SEARCH_WALLET",properties:{badge:e??"",search:t??""}});const a=o.map(c=>c.image_id).filter(Boolean);await Promise.allSettled([...a.map(c=>he._fetchWalletImage(c)),ee.wait(300)]),Ye.search=he._filterOutExtensions(o)},initPromise(t,e){const n=Ye.promises[t];return n||(Ye.promises[t]=e())},prefetch({fetchConnectorImages:t=!0,fetchFeaturedWallets:e=!0,fetchRecommendedWallets:n=!0,fetchNetworkImages:r=!0,fetchWalletRanks:i=!0}={}){const s=[t&&he.initPromise("connectorImages",he.fetchConnectorImages),e&&he.initPromise("featuredWallets",he.fetchFeaturedWallets),n&&he.initPromise("recommendedWallets",he.fetchRecommendedWallets),r&&he.initPromise("networkImages",he.fetchNetworkImages),i&&he.initPromise("walletRanks",he.prefetchWalletRanks)].filter(Boolean);return Promise.allSettled(s)},prefetchAnalyticsConfig(){var t;(t=V.state.features)!=null&&t.analytics&&he.fetchAnalyticsConfig()},async fetchAnalyticsConfig(){try{const{isAnalyticsEnabled:t}=await Br.get({path:"/getAnalyticsConfig",params:he._getSdkProperties()});V.setFeatures({analytics:t})}catch{V.setFeatures({analytics:!1})}},filterByNamespaces(t){if(!(t!=null&&t.length)){Ye.featured=Ye.allFeatured,Ye.recommended=Ye.allRecommended;return}const e=v.getRequestedCaipNetworkIds().join(",");Ye.featured=Ye.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.recommended=Ye.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.filteredWallets=Ye.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))})},clearFilterByNamespaces(){Ye.filteredWallets=[]},setFilterByNamespace(t){if(!t){Ye.featured=Ye.allFeatured,Ye.recommended=Ye.allRecommended;return}const e=v.getRequestedCaipNetworkIds().join(",");Ye.featured=Ye.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.recommended=Ye.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))}),Ye.filteredWallets=Ye.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(i=>e.includes(i))})}},Gi={filterOutDuplicatesByRDNS(t){const e=V.state.enableEIP6963?J.state.connectors:[],n=re.getRecentWallets(),r=e.map(a=>{var c;return(c=a.info)==null?void 0:c.rdns}).filter(Boolean),i=n.map(a=>a.rdns).filter(Boolean),s=r.concat(i);if(s.includes("io.metamask.mobile")&&ee.isMobile()){const a=s.indexOf("io.metamask.mobile");s[a]="io.metamask"}return t.filter(a=>!(a!=null&&a.rdns&&s.includes(String(a.rdns))||!(a!=null&&a.rdns)&&e.some(l=>l.name===a.name)))},filterOutDuplicatesByIds(t){const e=J.state.connectors.filter(a=>a.type==="ANNOUNCED"||a.type==="INJECTED"||a.type==="MULTI_CHAIN"),n=re.getRecentWallets(),r=e.map(a=>{var c;return a.explorerId||((c=a.explorerWallet)==null?void 0:c.id)||a.id}),i=n.map(a=>a.id),s=r.concat(i);return t.filter(a=>!s.includes(a==null?void 0:a.id))},filterOutDuplicateWallets(t){const e=this.filterOutDuplicatesByRDNS(t);return this.filterOutDuplicatesByIds(e)},markWalletsAsInstalled(t){const{connectors:e}=J.state,{featuredWalletIds:n}=V.state,r=e.filter(o=>o.type==="ANNOUNCED").reduce((o,a)=>{var c;return(c=a.info)!=null&&c.rdns&&(o[a.info.rdns]=!0),o},{});return t.map(o=>({...o,installed:!!o.rdns&&!!r[o.rdns??""]})).sort((o,a)=>{const c=Number(a.installed)-Number(o.installed);if(c!==0)return c;if(n!=null&&n.length){const l=n.indexOf(o.id),u=n.indexOf(a.id);if(l!==-1&&u!==-1)return l-u;if(l!==-1)return-1;if(u!==-1)return 1}return 0})},getConnectOrderMethod(t,e){var c;const n=(t==null?void 0:t.connectMethodsOrder)||((c=V.state.features)==null?void 0:c.connectMethodsOrder),r=e||J.state.connectors;if(n)return n;const{injected:i,announced:s}=Pn.getConnectorsByType(r,he.state.recommended,he.state.featured),o=i.filter(Pn.showConnector),a=s.filter(Pn.showConnector);return o.length||a.length?["wallet","email","social"]:We.DEFAULT_CONNECT_METHOD_ORDER},isExcluded(t){const e=!!t.rdns&&he.state.excludedWallets.some(r=>r.rdns===t.rdns),n=!!t.name&&he.state.excludedWallets.some(r=>OI.isLowerCaseMatch(r.name,t.name));return e||n},markWalletsWithDisplayIndex(t){return t.map((e,n)=>({...e,display_index:n}))},filterWalletsByWcSupport(t){return te.state.wcBasic?t.filter(e=>e.supports_wc):ee.isMobile()?t.filter(e=>e.supports_wc||We.MANDATORY_WALLET_IDS_ON_MOBILE.includes(e.id)):t},getWalletConnectWallets(t){var s;const e=[...he.state.featured,...he.state.recommended];((s=he.state.filteredWallets)==null?void 0:s.length)>0?e.push(...he.state.filteredWallets):e.push(...t);const n=ee.uniqueBy(e,"id"),r=Gi.markWalletsAsInstalled(n),i=Gi.filterWalletsByWcSupport(r);return Gi.markWalletsWithDisplayIndex(i)}},Pn={getConnectorsByType(t,e,n){const{customWallets:r}=V.state,i=re.getRecentWallets(),s=Gi.filterOutDuplicateWallets(e),o=Gi.filterOutDuplicateWallets(n),a=t.filter(d=>d.type==="MULTI_CHAIN"),c=t.filter(d=>d.type==="ANNOUNCED"),l=t.filter(d=>d.type==="INJECTED"),u=t.filter(d=>d.type==="EXTERNAL");return{custom:r,recent:i,external:u,multiChain:a,announced:c,injected:l,recommended:s,featured:o}},showConnector(t){var i;const e=(i=t.info)==null?void 0:i.rdns,n=!!e&&he.state.excludedWallets.some(s=>!!s.rdns&&s.rdns===e),r=!!t.name&&he.state.excludedWallets.some(s=>OI.isLowerCaseMatch(s.name,t.name));return!(t.type==="INJECTED"&&(t.name==="Browser Wallet"&&(!ee.isMobile()||ee.isMobile()&&!e&&!te.checkInstalled())||n||r)||(t.type==="ANNOUNCED"||t.type==="EXTERNAL")&&(n||r))},getIsConnectedWithWC(){return Array.from(v.state.chains.values()).some(n=>J.getConnectorId(n.namespace)===H.CONNECTOR_ID.WALLET_CONNECT)},getConnectorTypeOrder({recommended:t,featured:e,custom:n,recent:r,announced:i,injected:s,multiChain:o,external:a,overriddenConnectors:c=(l=>(l=V.state.features)==null?void 0:l.connectorTypeOrder)()??[]}){const d=[{type:"walletConnect",isEnabled:!0},{type:"recent",isEnabled:r.length>0},{type:"injected",isEnabled:[...s,...i,...o].length>0},{type:"featured",isEnabled:e.length>0},{type:"custom",isEnabled:n&&n.length>0},{type:"external",isEnabled:a.length>0},{type:"recommended",isEnabled:t.length>0}].filter(p=>p.isEnabled),h=new Set(d.map(p=>p.type)),f=c.filter(p=>h.has(p)).map(p=>({type:p,isEnabled:!0})),g=d.filter(({type:p})=>!f.some(({type:b})=>b===p));return Array.from(new Set([...f,...g].map(({type:p})=>p)))},sortConnectorsByExplorerWallet(t){return[...t].sort((e,n)=>e.explorerWallet&&n.explorerWallet?(e.explorerWallet.order??0)-(n.explorerWallet.order??0):e.explorerWallet?-1:n.explorerWallet?1:0)},getPriority(t){return t.id===H.CONNECTOR_ID.BASE_ACCOUNT?0:t.id===H.CONNECTOR_ID.COINBASE||t.id===H.CONNECTOR_ID.COINBASE_SDK?1:2},sortConnectorsByPriority(t){return[...t].sort((e,n)=>Pn.getPriority(e)-Pn.getPriority(n))},getAuthName({email:t,socialUsername:e,socialProvider:n}){return e?n&&n==="discord"&&e.endsWith("0")?e.slice(0,-1):e:t.length>30?`${t.slice(0,-3)}...`:t},async fetchProviderData(t){var e,n;try{if(t.name==="Browser Wallet"&&!ee.isMobile())return{accounts:[],chainId:void 0};if(t.id===H.CONNECTOR_ID.AUTH)return{accounts:[],chainId:void 0};const[r,i]=await Promise.all([(e=t.provider)==null?void 0:e.request({method:"eth_accounts"}),(n=t.provider)==null?void 0:n.request({method:"eth_chainId"}).then(s=>Number(s))]);return{accounts:r,chainId:i}}catch(r){return console.warn(`Failed to fetch provider data for ${t.name}`,r),{accounts:[],chainId:void 0}}},getFilteredCustomWallets(t){const e=re.getRecentWallets(),n=J.state.connectors.map(o=>{var a;return(a=o.info)==null?void 0:a.rdns}).filter(Boolean),r=e.map(o=>o.rdns).filter(Boolean),i=n.concat(r);if(i.includes("io.metamask.mobile")&&ee.isMobile()){const o=i.indexOf("io.metamask.mobile");i[o]="io.metamask"}return t.filter(o=>!i.includes(String(o==null?void 0:o.rdns)))},hasWalletConnector(t){return J.state.connectors.some(e=>e.id===t.id||e.name===t.name)},isWalletCompatibleWithCurrentChain(t){const e=v.state.activeChain;return e&&t.chains?t.chains.some(n=>{const r=n.split(":")[0];return e===r}):!0},getFilteredRecentWallets(){return re.getRecentWallets().filter(n=>!Gi.isExcluded(n)).filter(n=>!this.hasWalletConnector(n)).filter(n=>this.isWalletCompatibleWithCurrentChain(n))},getCappedRecommendedWallets(t){const{connectors:e}=J.state,{customWallets:n,featuredWalletIds:r}=V.state,i=e.find(C=>C.id==="walletConnect"),s=e.filter(C=>C.type==="INJECTED"||C.type==="ANNOUNCED"||C.type==="MULTI_CHAIN");if(!i&&!s.length&&!(n!=null&&n.length))return[];const o=Ev.isEmailEnabled(),a=Ev.isSocialsEnabled(),c=s.filter(C=>C.name!=="Browser Wallet"&&C.name!=="WalletConnect"),l=(r==null?void 0:r.length)||0,u=(n==null?void 0:n.length)||0,d=c.length||0,h=o?1:0,f=a?1:0,g=l+u+d+h+f,m=Math.max(0,4-g);return m<=0?[]:Gi.filterOutDuplicateWallets(t).slice(0,m)},processConnectorsByType(t,e=!0){const n=Pn.sortConnectorsByExplorerWallet([...t]);return e?n.filter(Pn.showConnector):n},connectorList(){const t=Pn.getConnectorsByType(J.state.connectors,he.state.recommended,he.state.featured),e=this.processConnectorsByType(t.announced.filter(f=>f.id!=="walletConnect")),n=this.processConnectorsByType(t.injected),r=this.processConnectorsByType(t.multiChain.filter(f=>f.name!=="WalletConnect"),!1),i=t.custom,s=t.recent,o=this.processConnectorsByType(t.external.filter(f=>f.id!==H.CONNECTOR_ID.COINBASE_SDK&&f.id!==H.CONNECTOR_ID.BASE_ACCOUNT)),a=t.recommended,c=t.featured,l=Pn.getConnectorTypeOrder({custom:i,recent:s,announced:e,injected:n,multiChain:r,recommended:a,featured:c,external:o}),u=J.state.connectors.find(f=>f.id==="walletConnect"),d=ee.isMobile(),h=[];for(const f of l)switch(f){case"walletConnect":{!d&&u&&h.push({kind:"connector",subtype:"walletConnect",connector:u});break}case"recent":{Pn.getFilteredRecentWallets().forEach(p=>h.push({kind:"wallet",subtype:"recent",wallet:p}));break}case"injected":{r.forEach(g=>h.push({kind:"connector",subtype:"multiChain",connector:g})),e.forEach(g=>h.push({kind:"connector",subtype:"announced",connector:g})),n.forEach(g=>h.push({kind:"connector",subtype:"injected",connector:g}));break}case"featured":{c.forEach(g=>h.push({kind:"wallet",subtype:"featured",wallet:g}));break}case"custom":{Pn.getFilteredCustomWallets(i??[]).forEach(p=>h.push({kind:"wallet",subtype:"custom",wallet:p}));break}case"external":{o.forEach(g=>h.push({kind:"connector",subtype:"external",connector:g}));break}case"recommended":{Pn.getCappedRecommendedWallets(a).forEach(p=>h.push({kind:"wallet",subtype:"recommended",wallet:p}));break}default:console.warn(`Unknown connector type: ${f}`)}return h},hasInjectedConnectors(){return J.state.connectors.filter(t=>(t.type==="INJECTED"||t.type==="ANNOUNCED"||t.type==="MULTI_CHAIN")&&t.name!=="Browser Wallet"&&t.name!=="WalletConnect").length}},RH=["ConnectingExternal","ConnectingMultiChain","ConnectingSocial","ConnectingFarcaster"],Pt=Lt({view:"Connect",history:["Connect"],transactionStack:[]}),OH={state:Pt,subscribeKey(t,e){return xn(Pt,t,e)},pushTransactionStack(t){Pt.transactionStack.push(t)},popTransactionStack(t){const e=Pt.transactionStack.pop();if(!e)return;const{onSuccess:n,onError:r,onCancel:i}=e;switch(t){case"success":n==null||n();break;case"error":r==null||r(),Z.goBack();break;case"cancel":i==null||i(),Z.goBack();break}},push(t,e){let n=t,r=e;he.state.plan.hasExceededUsageLimit&&RH.includes(t)&&(n="UsageExceeded",r=void 0),n!==Pt.view&&(Pt.view=n,Pt.history.push(n),Pt.data=r)},reset(t,e){Pt.view=t,Pt.history=[t],Pt.data=e},replace(t,e){Pt.history.at(-1)===t||(Pt.view=t,Pt.history[Pt.history.length-1]=t,Pt.data=e)},goBack(){var r,i;const t=v.state.activeCaipAddress,e=Z.state.view==="ConnectingFarcaster",n=!t&&e;if(Pt.history.length>1){Pt.history.pop();const[s]=Pt.history.slice(-1);s&&(t&&s==="Connect"?Pt.view="Account":Pt.view=s)}else je.close();(r=Pt.data)!=null&&r.wallet&&(Pt.data.wallet=void 0),(i=Pt.data)!=null&&i.redirectView&&(Pt.data.redirectView=void 0),setTimeout(()=>{var s,o,a;if(n){v.setAccountProp("farcasterUrl",void 0,v.state.activeChain);const c=J.getAuthConnector();(s=c==null?void 0:c.provider)==null||s.reload();const l=$d(V.state);(a=(o=c==null?void 0:c.provider)==null?void 0:o.syncDappData)==null||a.call(o,{metadata:l.metadata,sdkVersion:l.sdkVersion,projectId:l.projectId,sdkType:l.sdkType})}},100)},goBackToIndex(t){if(Pt.history.length>1){Pt.history=Pt.history.slice(0,t+1);const[e]=Pt.history.slice(-1);e&&(Pt.view=e)}},goBackOrCloseModal(){Z.state.history.length>1?Z.goBack():je.close()}},Z=_i(OH),Aa=Lt({themeMode:"dark",themeVariables:{},w3mThemeVariables:void 0}),vv={state:Aa,subscribe(t){return fn(Aa,()=>t(Aa))},setThemeMode(t){Aa.themeMode=t;try{const e=J.getAuthConnector();if(e){const n=vv.getSnapshot().themeVariables;e.provider.syncTheme({themeMode:t,themeVariables:n,w3mThemeVariables:Hp(n,t)})}}catch{console.info("Unable to sync theme to auth connector")}},setThemeVariables(t){Aa.themeVariables={...Aa.themeVariables,...t};try{const e=J.getAuthConnector();if(e){const n=vv.getSnapshot().themeVariables;e.provider.syncTheme({themeVariables:n,w3mThemeVariables:Hp(Aa.themeVariables,Aa.themeMode)})}}catch{console.info("Unable to sync theme to auth connector")}},getSnapshot(){return $d(Aa)}},kn=_i(vv),SN=Object.fromEntries(UI.map(t=>[t,void 0])),PH=Object.fromEntries(UI.map(t=>[t,!0])),bt=Lt({allConnectors:[],connectors:[],activeConnector:void 0,filterByNamespace:void 0,activeConnectorIds:SN,filterByNamespaceMap:PH}),kH={state:bt,subscribe(t){return fn(bt,()=>{t(bt)})},subscribeKey(t,e){return xn(bt,t,e)},initialize(t){t.forEach(e=>{const n=re.getConnectedConnectorId(e);n&&J.setConnectorId(n,e)})},setActiveConnector(t){t&&(bt.activeConnector=jp(t))},setConnectors(t){t.filter(i=>!bt.allConnectors.some(s=>s.id===i.id&&J.getConnectorName(s.name)===J.getConnectorName(i.name)&&s.chain===i.chain)).forEach(i=>{i.type!=="MULTI_CHAIN"&&bt.allConnectors.push(jp(i))});const n=J.getEnabledNamespaces(),r=J.getEnabledConnectors(n);bt.connectors=J.mergeMultiChainConnectors(r)},filterByNamespaces(t){Object.keys(bt.filterByNamespaceMap).forEach(e=>{bt.filterByNamespaceMap[e]=!1}),t.forEach(e=>{bt.filterByNamespaceMap[e]=!0}),J.updateConnectorsForEnabledNamespaces()},filterByNamespace(t,e){bt.filterByNamespaceMap[t]=e,J.updateConnectorsForEnabledNamespaces()},updateConnectorsForEnabledNamespaces(){const t=J.getEnabledNamespaces(),e=J.getEnabledConnectors(t),n=J.areAllNamespacesEnabled();bt.connectors=J.mergeMultiChainConnectors(e),n?he.clearFilterByNamespaces():he.filterByNamespaces(t)},getEnabledNamespaces(){return Object.entries(bt.filterByNamespaceMap).filter(([t,e])=>e).map(([t])=>t)},getEnabledConnectors(t){return bt.allConnectors.filter(e=>t.includes(e.chain))},areAllNamespacesEnabled(){return Object.values(bt.filterByNamespaceMap).every(t=>t)},mergeMultiChainConnectors(t){const e=J.generateConnectorMapByName(t),n=[];return e.forEach(r=>{const i=r[0],s=(i==null?void 0:i.id)===H.CONNECTOR_ID.AUTH;r.length>1&&i?n.push({name:i.name,imageUrl:i.imageUrl,imageId:i.imageId,connectors:[...r],type:s?"AUTH":"MULTI_CHAIN",chain:"eip155",id:(i==null?void 0:i.id)||""}):i&&n.push(i)}),n},generateConnectorMapByName(t){const e=new Map;return t.forEach(n=>{const{name:r}=n,i=J.getConnectorName(r);if(!i)return;const s=e.get(i)||[];s.find(a=>a.chain===n.chain)||s.push(n),e.set(i,s)}),e},getConnectorName(t){return t&&({"Trust Wallet":"Trust"}[t]||t)},getUniqueConnectorsByName(t){const e=[];return t.forEach(n=>{e.find(r=>r.chain===n.chain)||e.push(n)}),e},addConnector(t){var e,n,r;if(t.id===H.CONNECTOR_ID.AUTH){const i=t,s=$d(V.state),o=kn.getSnapshot().themeMode,a=kn.getSnapshot().themeVariables;(n=(e=i==null?void 0:i.provider)==null?void 0:e.syncDappData)==null||n.call(e,{metadata:s.metadata,sdkVersion:s.sdkVersion,projectId:s.projectId,sdkType:s.sdkType}),(r=i==null?void 0:i.provider)==null||r.syncTheme({themeMode:o,themeVariables:a,w3mThemeVariables:Hp(a,o)}),J.setConnectors([t])}else J.setConnectors([t])},getAuthConnector(t){var r;const e=t||v.state.activeChain,n=bt.connectors.find(i=>i.id===H.CONNECTOR_ID.AUTH);if(n)return(r=n==null?void 0:n.connectors)!=null&&r.length?n.connectors.find(s=>s.chain===e):n},getAnnouncedConnectorRdns(){return bt.connectors.filter(t=>t.type==="ANNOUNCED").map(t=>{var e;return(e=t.info)==null?void 0:e.rdns})},getConnectorById(t){return Pn.sortConnectorsByPriority(bt.allConnectors).find(n=>n.id===t)},getConnector({id:t,namespace:e}){const n=e||v.state.activeChain,r=bt.allConnectors.filter(o=>o.chain===n);return Pn.sortConnectorsByPriority(r).find(o=>o.id===t||o.explorerId===t)},syncIfAuthConnector(t){var s,o;if(t.id!=="AUTH")return;const e=t,n=$d(V.state),r=kn.getSnapshot().themeMode,i=kn.getSnapshot().themeVariables;(o=(s=e==null?void 0:e.provider)==null?void 0:s.syncDappData)==null||o.call(s,{metadata:n.metadata,sdkVersion:n.sdkVersion,sdkType:n.sdkType,projectId:n.projectId}),e.provider.syncTheme({themeMode:r,themeVariables:i,w3mThemeVariables:Hp(i,r)})},getConnectorsByNamespace(t){const e=bt.allConnectors.filter(n=>n.chain===t);return J.mergeMultiChainConnectors(e)},canSwitchToSmartAccount(t){return v.checkIfSmartAccountEnabled()&&rn(t)===$t.ACCOUNT_TYPES.EOA},selectWalletConnector(t){var i;const e=(i=Z.state.data)==null?void 0:i.redirectView,n=v.state.activeChain,r=n?J.getConnector({id:t.id,namespace:n}):void 0;vH.handleMobileDeeplinkRedirect((r==null?void 0:r.explorerId)||t.id,v.state.activeChain),r?Z.push("ConnectingExternal",{connector:r,wallet:t,redirectView:e}):Z.push("ConnectingWalletConnect",{wallet:t,redirectView:e})},getConnectors(t){return t?J.getConnectorsByNamespace(t):J.mergeMultiChainConnectors(bt.allConnectors)},setFilterByNamespace(t){bt.filterByNamespace=t,bt.connectors=J.getConnectors(t),he.setFilterByNamespace(t)},setConnectorId(t,e){t&&(bt.activeConnectorIds={...bt.activeConnectorIds,[e]:t},re.setConnectedConnectorId(e,t))},removeConnectorId(t){bt.activeConnectorIds={...bt.activeConnectorIds,[t]:void 0},re.deleteConnectedConnectorId(t)},getConnectorId(t){if(t)return bt.activeConnectorIds[t]},isConnected(t){return t?!!bt.activeConnectorIds[t]:Object.values(bt.activeConnectorIds).some(e=>!!e)},resetConnectorIds(){bt.activeConnectorIds={...SN}},extendConnectorsWithExplorerWallets(t){bt.allConnectors.forEach(r=>{const i=t.find(s=>{var o;return s.id===r.id||s.rdns&&s.rdns===((o=r.info)==null?void 0:o.rdns)});i&&(r.explorerWallet=i)});const e=J.getEnabledNamespaces(),n=J.getEnabledConnectors(e);bt.connectors=J.mergeMultiChainConnectors(n)},async connect(t={}){const{namespace:e}=t;return J.setFilterByNamespace(e),Z.push("Connect",{addWalletForNamespace:e}),new Promise((n,r)=>{if(e){const i=v.subscribeChainProp("accountState",o=>{o!=null&&o.caipAddress&&(n({caipAddress:o==null?void 0:o.caipAddress}),i())},e),s=je.subscribeKey("open",o=>{o||(r(new Error("Modal closed")),s())})}else{const i=v.subscribeKey("activeCaipAddress",o=>{o&&(n({caipAddress:o}),i())}),s=je.subscribeKey("open",o=>{o||(r(new Error("Modal closed")),s())})}})}},J=_i(kH),$H=1e3,Eg={checkNamespaceConnectorId(t,e){return J.getConnectorId(t)===e},isSocialProvider(t){return We.DEFAULT_REMOTE_FEATURES.socials.includes(t)},connectWalletConnect({walletConnect:t,connector:e,closeModalOnConnect:n=!0,redirectViewOnModalClose:r="Connect",onOpen:i,onConnect:s}){return new Promise((o,a)=>{if(t&&J.setActiveConnector(e),i==null||i(ee.isMobile()&&t),r){const l=je.subscribeKey("open",u=>{u||(Z.state.view!==r&&Z.replace(r),l(),a(new Error("Modal closed")))})}const c=v.subscribeKey("activeCaipAddress",l=>{l&&(s==null||s(),n&&je.close(),c(),o(hn.parseCaipAddress(l)))})})},connectExternal(t){return new Promise((e,n)=>{const r=v.subscribeKey("activeCaipAddress",i=>{i&&(je.close(),r(),e(hn.parseCaipAddress(i)))});te.connectExternal(t,t.chain).catch(()=>{r(),n(new Error("Connection rejected"))})})},connectSocial({social:t,namespace:e,closeModalOnConnect:n=!0,onOpenFarcaster:r,onConnect:i}){let s,o=!1,a=null;const c=e||v.state.activeChain,l=v.subscribeKey("activeCaipAddress",u=>{u&&(n&&je.close(),l())});return new Promise((u,d)=>{async function h(g){var p;if((p=g.data)!=null&&p.resultUri)if(g.origin===H.SECURE_SITE_SDK_ORIGIN){window.removeEventListener("message",h,!1);try{const m=J.getAuthConnector(c);if(m&&!o){s&&s.close(),o=!0;const b=g.data.resultUri;we.sendEvent({type:"track",event:"SOCIAL_LOGIN_REQUEST_USER_DATA",properties:{provider:t}}),re.setConnectedSocialProvider(t),await te.connectExternal({id:m.id,type:m.type,socialUri:b},m.chain);const C=v.state.activeCaipAddress;if(!C){d(new Error("Failed to connect"));return}u(hn.parseCaipAddress(C)),we.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:t}})}}catch(m){we.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:ee.parseError(m)}}),d(new Error("Failed to connect"))}}else we.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:"Untrusted Origin"}})}async function f(){if(we.sendEvent({type:"track",event:"SOCIAL_LOGIN_STARTED",properties:{provider:t}}),t==="farcaster"){r==null||r();const g=je.subscribeKey("open",m=>{!m&&t==="farcaster"&&(d(new Error("Popup closed")),i==null||i(),g())}),p=J.getAuthConnector();if(p){const m=v.getAccountData(c);if(!(m!=null&&m.farcasterUrl))try{const{url:b}=await p.provider.getFarcasterUri();v.setAccountProp("farcasterUrl",b,c)}catch{d(new Error("Failed to connect to farcaster"))}}}else{const g=J.getAuthConnector();a=ee.returnOpenHref(`${H.SECURE_SITE_SDK_ORIGIN}/loading`,"popupWindow","width=600,height=800,scrollbars=yes");try{if(g){const{uri:p}=await g.provider.getSocialRedirectUri({provider:t});if(a&&p){a.location.href=p,s=a;const m=setInterval(()=>{s!=null&&s.closed&&!o&&(d(new Error("Popup closed")),clearInterval(m))},1e3);window.addEventListener("message",h,!1)}else a==null||a.close(),d(new Error("Failed to initiate social connection"))}}catch{d(new Error("Failed to initiate social connection")),a==null||a.close()}}}f()})},connectEmail({closeModalOnConnect:t=!0,redirectViewOnModalClose:e="Connect",onOpen:n,onConnect:r}){return new Promise((i,s)=>{if(n==null||n(),e){const a=je.subscribeKey("open",c=>{c||(Z.state.view!==e&&Z.replace(e),a(),s(new Error("Modal closed")))})}const o=v.subscribeKey("activeCaipAddress",a=>{a&&(r==null||r(),t&&je.close(),o(),i(hn.parseCaipAddress(a)))})})},async updateEmail(){const t=re.getConnectedConnectorId(v.state.activeChain),e=J.getAuthConnector();if(!e)throw new Error("No auth connector found");if(t!==H.CONNECTOR_ID.AUTH)throw new Error("Not connected to email or social");const n=e.provider.getEmail()??"";return await je.open({view:"UpdateEmailWallet",data:{email:n,redirectView:void 0}}),new Promise((r,i)=>{const s=setInterval(()=>{const a=e.provider.getEmail()??"";a!==n&&(je.close(),clearInterval(s),o(),r({email:a}))},$H),o=je.subscribeKey("open",a=>{a||(Z.state.view!=="Connect"&&Z.push("Connect"),clearInterval(s),o(),i(new Error("Modal closed")))})})},canSwitchToSmartAccount(t){return v.checkIfSmartAccountEnabled()&&rn(t)===$t.ACCOUNT_TYPES.EOA}};function Fm(){var r,i;const t=((r=v.state.activeCaipNetwork)==null?void 0:r.chainNamespace)||"eip155",e=((i=v.state.activeCaipNetwork)==null?void 0:i.id)||1,n=We.NATIVE_TOKEN_ADDRESS[t];return`${t}:${e}:${n}`}function DH(t){return We.NATIVE_TOKEN_ADDRESS[t]}function rn(t){var n;return(n=v.getAccountData(t))==null?void 0:n.preferredAccountType}function gf(t){var e,n;return t?(n=(e=v.state.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:v.state.activeCaipNetwork}const Vi={getConnectionStatus(t,e){const n=J.state.activeConnectorIds[e],r=te.getConnections(e);return!!n&&t.connectorId===n?"connected":r.some(o=>o.connectorId.toLowerCase()===t.connectorId.toLowerCase())?"active":"disconnected"},excludeConnectorAddressFromConnections({connections:t,connectorId:e,addresses:n}){return t.map(r=>{if((e?r.connectorId.toLowerCase()===e.toLowerCase():!1)&&n){const s=r.accounts.filter(o=>!n.some(c=>c.toLowerCase()===o.address.toLowerCase()));return{...r,accounts:s}}return r})},excludeExistingConnections(t,e){const n=new Set(t);return e.filter(r=>!n.has(r.connectorId))},getConnectionsByConnectorId(t,e){return t.filter(n=>n.connectorId.toLowerCase()===e.toLowerCase())},getConnectionsData(t){var a;const e=!!((a=V.state.remoteFeatures)!=null&&a.multiWallet),n=J.state.activeConnectorIds[t],r=te.getConnections(t),s=(te.state.recentConnections.get(t)??[]).filter(c=>J.getConnectorById(c.connectorId)),o=Vi.excludeExistingConnections([...r.map(c=>c.connectorId),...n?[n]:[]],s);return e?{connections:r,recentConnections:o}:{connections:r.filter(c=>c.connectorId.toLowerCase()===(n==null?void 0:n.toLowerCase())),recentConnections:[]}},onConnectMobile(t){const e=te.state.wcUri;if(t!=null&&t.mobile_link&&e)try{te.setWcError(!1);const{mobile_link:n,link_mode:r,name:i}=t,{redirect:s,redirectUniversalLink:o,href:a}=ee.formatNativeUrl(n,e,r),c=s,l=o,u=ee.isIframe()?"_top":"_self";te.setWcLinking({name:i,href:a}),te.setRecentWallet(t),V.state.experimental_preferUniversalLinks&&l?ee.openHref(l,u):ee.openHref(c,u)}catch(n){we.sendEvent({type:"track",event:"CONNECT_PROXY_ERROR",properties:{message:n instanceof Error?n.message:"Error parsing the deep link",uri:e,mobile_link:t.mobile_link,name:t.name}}),te.setWcError(!0)}}},qh=Lt({loading:!1,open:!1,selectedNetworkId:void 0,activeChain:void 0,initialized:!1,connectingWallet:void 0}),Ki={state:qh,subscribe(t){return fn(qh,()=>t(qh))},subscribeOpen(t){return xn(qh,"open",t)},set(t){Object.assign(qh,{...qh,...t})}},Xt=Lt({transactions:[],transactionsByYear:{},lastNetworkInView:void 0,loading:!1,empty:!1,next:void 0}),BH={state:Xt,subscribe(t){return fn(Xt,()=>t(Xt))},setLastNetworkInView(t){Xt.lastNetworkInView=t},async fetchTransactions(t){var e;if(!t)throw new Error("Transactions can't be fetched without an accountAddress");Xt.loading=!0;try{const n=await qe.fetchTransactions({account:t,cursor:Xt.next,chainId:(e=v.state.activeCaipNetwork)==null?void 0:e.caipNetworkId}),r=Fr.filterSpamTransactions(n.data),i=Fr.filterByConnectedChain(r),s=[...Xt.transactions,...i];Xt.loading=!1,Xt.transactions=s,Xt.transactionsByYear=Fr.groupTransactionsByYearAndMonth(Xt.transactionsByYear,i),Xt.empty=s.length===0,Xt.next=n.next?n.next:void 0}catch{const r=v.state.activeChain;we.sendEvent({type:"track",event:"ERROR_FETCH_TRANSACTIONS",properties:{address:t,projectId:V.state.projectId,cursor:Xt.next,isSmartAccount:rn(r)===$t.ACCOUNT_TYPES.SMART_ACCOUNT}}),nt.showError("Failed to fetch transactions"),Xt.loading=!1,Xt.empty=!0,Xt.next=void 0}},groupTransactionsByYearAndMonth(t={},e=[]){const n=t;return e.forEach(r=>{const i=new Date(r.metadata.minedAt).getFullYear(),s=new Date(r.metadata.minedAt).getMonth(),o=n[i]??{},c=(o[s]??[]).filter(l=>l.id!==r.id);n[i]={...o,[s]:[...c,r].sort((l,u)=>new Date(u.metadata.minedAt).getTime()-new Date(l.metadata.minedAt).getTime())}}),n},filterSpamTransactions(t){return t.filter(e=>{var r;return!((r=e.transfers)==null?void 0:r.every(i=>{var s;return((s=i.nft_info)==null?void 0:s.flags.is_spam)===!0}))})},filterByConnectedChain(t){var r;const e=(r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId;return t.filter(i=>i.metadata.chain===e)},clearCursor(){Xt.next=void 0},resetTransactions(){Xt.transactions=[],Xt.transactionsByYear={},Xt.lastNetworkInView=void 0,Xt.loading=!1,Xt.empty=!1,Xt.next=void 0}},Fr=_i(BH,"API_ERROR"),at=Lt({connections:new Map,recentConnections:new Map,isSwitchingConnection:!1,wcError:!1,wcFetchingUri:!1,buffering:!1,status:"disconnected"});let bu;const UH={state:at,subscribe(t){return fn(at,()=>t(at))},subscribeKey(t,e){return xn(at,t,e)},_getClient(){return at._client},setClient(t){at._client=jp(t)},initialize(t){const e=t.filter(n=>!!n.namespace).map(n=>n.namespace);te.syncStorageConnections(e)},syncStorageConnections(t){const e=re.getConnections(),n=t??Array.from(v.state.chains.keys());for(const r of n){const i=e[r]??[],s=new Map(at.recentConnections);s.set(r,i),at.recentConnections=s}},getConnections(t){return t?at.connections.get(t)??[]:[]},hasAnyConnection(t){const e=te.state.connections;return Array.from(e.values()).flatMap(n=>n).some(({connectorId:n})=>n===t)},async connectWalletConnect({cache:t="auto"}={}){var n,r,i,s;at.wcFetchingUri=!0;const e=ee.isTelegram()||ee.isSafari()&&ee.isIos();if(t==="always"||t==="auto"&&e){if(bu){await bu,bu=void 0;return}if(!ee.isPairingExpired(at==null?void 0:at.wcPairingExpiry)){const o=at.wcUri;at.wcUri=o;return}bu=(r=(n=te._getClient())==null?void 0:n.connectWalletConnect)==null?void 0:r.call(n).catch(()=>{}),te.state.status="connecting",await bu,bu=void 0,at.wcPairingExpiry=void 0,te.state.status="connected"}else await((s=(i=te._getClient())==null?void 0:i.connectWalletConnect)==null?void 0:s.call(i))},async connectExternal(t,e,n=!0){var o,a,c;const r=await((a=(o=te._getClient())==null?void 0:o.connectExternal)==null?void 0:a.call(o,t));n&&v.setActiveNamespace(e);const i=J.state.allConnectors.find(l=>l.id===(t==null?void 0:t.id)),s=t.type==="AUTH"?"email":"browser";return we.sendEvent({type:"track",event:"CONNECT_SUCCESS",properties:{method:s,name:(i==null?void 0:i.name)||"Unknown",view:Z.state.view,walletRank:(c=i==null?void 0:i.explorerWallet)==null?void 0:c.order}}),r},async reconnectExternal(t){var n,r;await((r=(n=te._getClient())==null?void 0:n.reconnectExternal)==null?void 0:r.call(n,t));const e=t.chain||v.state.activeChain;e&&J.setConnectorId(t.id,e)},async setPreferredAccountType(t,e){var r;if(!e)return;je.setLoading(!0,v.state.activeChain);const n=J.getAuthConnector();n&&(v.setAccountProp("preferredAccountType",t,e),await n.provider.setPreferredAccount(t),re.setPreferredAccountTypes(Object.entries(v.state.chains).reduce((i,[s,o])=>{const a=s,c=rn(a);return c!==void 0&&(i[a]=c),i},{})),await te.reconnectExternal(n),je.setLoading(!1,v.state.activeChain),we.sendEvent({type:"track",event:"SET_PREFERRED_ACCOUNT_TYPE",properties:{accountType:t,network:((r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}}))},async signMessage(t){var e;return(e=te._getClient())==null?void 0:e.signMessage(t)},parseUnits(t,e){var n;return(n=te._getClient())==null?void 0:n.parseUnits(t,e)},formatUnits(t,e){var n;return(n=te._getClient())==null?void 0:n.formatUnits(t,e)},updateBalance(t){var e;return(e=te._getClient())==null?void 0:e.updateBalance(t)},async sendTransaction(t){var e;return(e=te._getClient())==null?void 0:e.sendTransaction(t)},async getCapabilities(t){var e;return(e=te._getClient())==null?void 0:e.getCapabilities(t)},async grantPermissions(t){var e;return(e=te._getClient())==null?void 0:e.grantPermissions(t)},async walletGetAssets(t){var e;return((e=te._getClient())==null?void 0:e.walletGetAssets(t))??{}},async estimateGas(t){var e;return(e=te._getClient())==null?void 0:e.estimateGas(t)},async writeContract(t){var e;return(e=te._getClient())==null?void 0:e.writeContract(t)},async writeSolanaTransaction(t){var e;return(e=te._getClient())==null?void 0:e.writeSolanaTransaction(t)},async getEnsAddress(t){var e;return(e=te._getClient())==null?void 0:e.getEnsAddress(t)},async getEnsAvatar(t){var e;return(e=te._getClient())==null?void 0:e.getEnsAvatar(t)},checkInstalled(t){var e,n;return((n=(e=te._getClient())==null?void 0:e.checkInstalled)==null?void 0:n.call(e,t))||!1},resetWcConnection(){at.wcUri=void 0,at.wcPairingExpiry=void 0,at.wcLinking=void 0,at.recentWallet=void 0,at.wcFetchingUri=!1,at.status="disconnected",Fr.resetTransactions(),re.deleteWalletConnectDeepLink(),re.deleteRecentWallet(),Ki.set({connectingWallet:void 0})},resetUri(){at.wcUri=void 0,at.wcPairingExpiry=void 0,bu=void 0,at.wcFetchingUri=!1,Ki.set({connectingWallet:void 0})},finalizeWcConnection(t){var r,i;const{wcLinking:e,recentWallet:n}=te.state;e&&re.setWalletConnectDeepLink(e),n&&re.setAppKitRecent(n),t&&we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:t,properties:{method:e?"mobile":"qrcode",name:((i=(r=Z.state.data)==null?void 0:r.wallet)==null?void 0:i.name)||"Unknown",view:Z.state.view,walletRank:n==null?void 0:n.order}})},setWcBasic(t){at.wcBasic=t},setUri(t){at.wcUri=t,at.wcFetchingUri=!1,at.wcPairingExpiry=ee.getPairingExpiry()},setWcLinking(t){at.wcLinking=t},setWcError(t){at.wcError=t,at.wcFetchingUri=!1,at.buffering=!1},setRecentWallet(t){at.recentWallet=t},setBuffering(t){at.buffering=t},setStatus(t){at.status=t},setIsSwitchingConnection(t){at.isSwitchingConnection=t},async disconnect({id:t,namespace:e,initialDisconnect:n}={}){var r;try{await((r=te._getClient())==null?void 0:r.disconnect({id:t,chainNamespace:e,initialDisconnect:n}))}catch(i){throw new go("Failed to disconnect","INTERNAL_SDK_ERROR",i)}},async disconnectConnector({id:t,namespace:e}){var n;try{await((n=te._getClient())==null?void 0:n.disconnectConnector({id:t,namespace:e}))}catch(r){throw new go("Failed to disconnect connector","INTERNAL_SDK_ERROR",r)}},setConnections(t,e){const n=new Map(at.connections);n.set(e,t),at.connections=n},async handleAuthAccountSwitch({address:t,namespace:e}){var s,o;const n=v.getAccountData(e),r=(o=(s=n==null?void 0:n.user)==null?void 0:s.accounts)==null?void 0:o.find(a=>a.type==="smartAccount"),i=r&&r.address.toLowerCase()===t.toLowerCase()&&Eg.canSwitchToSmartAccount(e)?"smartAccount":"eoa";await te.setPreferredAccountType(i,e)},async handleActiveConnection({connection:t,namespace:e,address:n}){const r=J.getConnectorById(t.connectorId),i=t.connectorId===H.CONNECTOR_ID.AUTH;if(!r)throw new Error(`No connector found for connection: ${t.connectorId}`);if(i)n&&await te.handleAuthAccountSwitch({address:n,namespace:e});else{const s=await te.connectExternal({id:r.id,type:r.type,provider:r.provider,address:n,chain:e},e);return s==null?void 0:s.address}return n},async handleDisconnectedConnection({connection:t,namespace:e,address:n,closeModalOnConnect:r}){var l,u;const i=J.getConnectorById(t.connectorId),s=(u=(l=t.auth)==null?void 0:l.name)==null?void 0:u.toLowerCase(),o=t.connectorId===H.CONNECTOR_ID.AUTH,a=t.connectorId===H.CONNECTOR_ID.WALLET_CONNECT;if(!i)throw new Error(`No connector found for connection: ${t.connectorId}`);let c;if(o)if(s&&Eg.isSocialProvider(s)){const{address:d}=await Eg.connectSocial({social:s,closeModalOnConnect:r,onOpenFarcaster(){je.open({view:"ConnectingFarcaster"})},onConnect(){Z.replace("ProfileWallets")}});c=d}else{const{address:d}=await Eg.connectEmail({closeModalOnConnect:r,onOpen(){je.open({view:"EmailLogin"})},onConnect(){Z.replace("ProfileWallets")}});c=d}else if(a){const{address:d}=await Eg.connectWalletConnect({walletConnect:!0,connector:i,closeModalOnConnect:r,onOpen(h){const f=h?"AllWallets":"ConnectingWalletConnect";je.state.open?Z.push(f):je.open({view:f})},onConnect(){Z.replace("ProfileWallets")}});c=d}else{const d=await te.connectExternal({id:i.id,type:i.type,provider:i.provider,chain:e},e);d&&(c=d.address)}return o&&n&&await te.handleAuthAccountSwitch({address:n,namespace:e}),c},async switchConnection({connection:t,address:e,namespace:n,closeModalOnConnect:r,onChange:i}){var c;let s;const o=(c=v.getAccountData(n))==null?void 0:c.caipAddress;if(o){const{address:l}=hn.parseCaipAddress(o);s=l}const a=Vi.getConnectionStatus(t,n);switch(a){case"connected":case"active":{const l=await te.handleActiveConnection({connection:t,namespace:n,address:e});if(s&&l){const u=l.toLowerCase()!==s.toLowerCase();i==null||i({address:l,namespace:n,hasSwitchedAccount:u,hasSwitchedWallet:a==="active"})}break}case"disconnected":{const l=await te.handleDisconnectedConnection({connection:t,namespace:n,address:e,closeModalOnConnect:r});l&&(i==null||i({address:l,namespace:n,hasSwitchedAccount:!0,hasSwitchedWallet:!0}));break}default:throw new Error(`Invalid connection status: ${a}`)}}},te=_i(UH),px={createBalance(t,e){const n={name:t.metadata.name||"",symbol:t.metadata.symbol||"",decimals:t.metadata.decimals||0,value:t.metadata.value||0,price:t.metadata.price||0,iconUrl:t.metadata.iconUrl||""};return{name:n.name,symbol:n.symbol,chainId:e,address:t.address==="native"?void 0:this.convertAddressToCAIP10Address(t.address,e),value:n.value,price:n.price,quantity:{decimals:n.decimals.toString(),numeric:this.convertHexToBalance({hex:t.balance,decimals:n.decimals})},iconUrl:n.iconUrl}},convertHexToBalance({hex:t,decimals:e}){return K2(BigInt(t),e)},convertAddressToCAIP10Address(t,e){return`${e}:${t}`},createCAIP2ChainId(t,e){return`${e}:${parseInt(t,16)}`},getChainIdHexFromCAIP2ChainId(t){const e=t.split(":");if(e.length<2||!e[1])return"0x0";const n=e[1],r=parseInt(n,10);return isNaN(r)?"0x0":`0x${r.toString(16)}`},isWalletGetAssetsResponse(t){return typeof t!="object"||t===null?!1:Object.values(t).every(e=>Array.isArray(e)&&e.every(n=>this.isValidAsset(n)))},isValidAsset(t){return typeof t=="object"&&t!==null&&typeof t.address=="string"&&typeof t.balance=="string"&&(t.type==="ERC20"||t.type==="NATIVE")&&typeof t.metadata=="object"&&t.metadata!==null&&typeof t.metadata.name=="string"&&typeof t.metadata.symbol=="string"&&typeof t.metadata.decimals=="number"&&typeof t.metadata.price=="number"&&typeof t.metadata.iconUrl=="string"}};let gx;async function FA(){if(!gx){const{createPublicClient:t,http:e,defineChain:n}=await Promise.resolve().then(()=>require("./index-R_8iHUbU.js"));gx={createPublicClient:t,http:e,defineChain:n}}return gx}const Cv={getBlockchainApiRpcUrl(t,e){const n=new URL("https://rpc.walletconnect.org/v1/");return n.searchParams.set("chainId",t),n.searchParams.set("projectId",e),n.toString()},async getViemChain(t){const{defineChain:e}=await FA(),{chainId:n}=hn.parseCaipNetworkId(t.caipNetworkId);return e({...t,id:Number(n)})},async createViemPublicClient(t){const{createPublicClient:e,http:n}=await FA(),r=V.state.projectId,i=await Cv.getViemChain(t);if(!i)throw new Error(`Chain ${t.caipNetworkId} not found in viem/chains`);return e({chain:i,transport:n(Cv.getBlockchainApiRpcUrl(t.caipNetworkId,r))})}},J2={async getMyTokensWithBalance(t={forceUpdate:void 0,caipNetwork:v.state.activeCaipNetwork,address:(e=>(e=v.getAccountData())==null?void 0:e.address)()}){const{forceUpdate:n,caipNetwork:r,address:i}=t,s=J.getConnectorId("eip155")===H.CONNECTOR_ID.AUTH;if(!i)return[];const o=r?`${r.caipNetworkId}:${i}`:i,a=re.getBalanceCacheForCaipAddress(o);if(a)return a.balances;if(r&&r.chainNamespace===H.CHAIN.EVM&&s){const l=await this.getEIP155Balances(i,r);if(l)return this.filterLowQualityTokens(l)}const c=await qe.getBalance(i,r==null?void 0:r.caipNetworkId,n);return this.filterLowQualityTokens(c.balances)},async getEIP155Balances(t,e){var n,r;try{const i=px.getChainIdHexFromCAIP2ChainId(e.caipNetworkId),s=await te.getCapabilities(t);if(!((r=(n=s==null?void 0:s[i])==null?void 0:n.assetDiscovery)!=null&&r.supported))return null;const o=await te.walletGetAssets({account:t,chainFilter:[i]});if(!px.isWalletGetAssetsResponse(o))return null;const c=(o[i]||[]).map(l=>px.createBalance(l,e.caipNetworkId));return re.updateBalanceCache({caipAddress:`${e.caipNetworkId}:${t}`,balance:{balances:c},timestamp:Date.now()}),c}catch{return null}},filterLowQualityTokens(t){return t.filter(e=>e.quantity.decimals!=="0")},async fetchERC20Balance({caipAddress:t,assetAddress:e,caipNetwork:n}){const r=await Cv.createViemPublicClient(n),{address:i}=hn.parseCaipAddress(t),[{result:s},{result:o},{result:a},{result:c}]=await r.multicall({contracts:[{address:e,functionName:"name",args:[],abi:Vg},{address:e,functionName:"symbol",args:[],abi:Vg},{address:e,functionName:"balanceOf",args:[i],abi:Vg},{address:e,functionName:"decimals",args:[],abi:Vg}]});return{name:s,symbol:o,decimals:c,balance:a&&c?K2(a,c):"0"}}},mx={adapters:{}},pC={state:mx,initialize(t){mx.adapters={...t}},get(t){return mx.adapters[t]}},Sb={eip155:void 0,solana:void 0,polkadot:void 0,bip122:void 0,cosmos:void 0,sui:void 0,stacks:void 0,ton:void 0},Qr=Lt({providers:{...Sb},providerIds:{...Sb}}),dt={state:Qr,subscribeKey(t,e){return xn(Qr,t,e)},subscribe(t){return fn(Qr,()=>{t(Qr)})},subscribeProviders(t){return fn(Qr.providers,()=>t(Qr.providers))},setProvider(t,e){t&&e&&(Qr.providers[t]=jp(e))},getProvider(t){if(t)return Qr.providers[t]},setProviderId(t,e){e&&(Qr.providerIds[t]=e)},getProviderId(t){if(t)return Qr.providerIds[t]},reset(){Qr.providers={...Sb},Qr.providerIds={...Sb}},resetChain(t){Qr.providers[t]=void 0,Qr.providerIds[t]=void 0}},IN={async getTokenList(t){var r;const e=await qe.fetchSwapTokens({chainId:t});return((r=e==null?void 0:e.tokens)==null?void 0:r.map(i=>({...i,eip2612:!1,quantity:{decimals:"0",numeric:"0"},price:0,value:0})))||[]},async fetchGasPrice(){var e;const t=v.state.activeCaipNetwork;if(!t)return null;try{switch(t.chainNamespace){case"solana":const n=(e=await(te==null?void 0:te.estimateGas({chainNamespace:"solana"})))==null?void 0:e.toString();return{standard:n,fast:n,instant:n};case"eip155":default:return await qe.fetchGasPrice({chainId:t.caipNetworkId})}}catch{return null}},async fetchSwapAllowance({tokenAddress:t,userAddress:e,sourceTokenAmount:n,sourceTokenDecimals:r}){const i=await qe.fetchSwapAllowance({tokenAddress:t,userAddress:e});if(i!=null&&i.allowance&&n&&r){const s=te.parseUnits(n,r)||0;return BigInt(i.allowance)>=s}return!1},async getMyTokensWithBalance(t){var n;const e=await J2.getMyTokensWithBalance({forceUpdate:t,caipNetwork:v.state.activeCaipNetwork,address:(n=v.getAccountData())==null?void 0:n.address});return v.setAccountProp("tokenBalance",e,v.state.activeChain),this.mapBalancesToSwapTokens(e)},mapBalancesToSwapTokens(t){return(t==null?void 0:t.map(e=>({...e,address:e!=null&&e.address?e.address:Fm(),decimals:parseInt(e.quantity.decimals,10),logoUri:e.iconUrl,eip2612:!1})))||[]},async handleSwapError(t){var e,n;try{const r=t==null?void 0:t.cause;if(!(r!=null&&r.json))return;const i=await r.json(),s=(n=(e=i==null?void 0:i.reasons)==null?void 0:e[0])==null?void 0:n.description;return s!=null&&s.includes("insufficient liquidity")?"Insufficient liquidity":void 0}catch{return}}},xt=Lt({tokenBalances:[],loading:!1}),LH={state:xt,subscribe(t){return fn(xt,()=>t(xt))},subscribeKey(t,e){return xn(xt,t,e)},setToken(t){t&&(xt.token=jp(t))},setTokenAmount(t){xt.sendTokenAmount=t},setReceiverAddress(t){xt.receiverAddress=t},setReceiverProfileImageUrl(t){xt.receiverProfileImageUrl=t},setReceiverProfileName(t){xt.receiverProfileName=t},setNetworkBalanceInUsd(t){xt.networkBalanceInUSD=t},setLoading(t){xt.loading=t},getSdkEventProperties(t){var e,n;return{message:ee.parseError(t),isSmartAccount:rn(v.state.activeChain)===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:((e=xt.token)==null?void 0:e.symbol)||"",amount:xt.sendTokenAmount??0,network:((n=v.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||""}},async sendToken(){var t;try{switch(tt.setLoading(!0),(t=v.state.activeCaipNetwork)==null?void 0:t.chainNamespace){case"eip155":await tt.sendEvmToken();return;case"solana":await tt.sendSolanaToken();return;default:throw new Error("Unsupported chain")}}catch(e){throw fi.isUserRejectedRequestError(e)?new j4(e):e}finally{tt.setLoading(!1)}},async sendEvmToken(){var n,r,i;const t=v.state.activeChain;if(!t)throw new Error("SendController:sendEvmToken - activeChainNamespace is required");const e=rn(t);if(!tt.state.sendTokenAmount||!tt.state.receiverAddress)throw new Error("An amount and receiver address are required");if(!tt.state.token)throw new Error("A token is required");if((n=tt.state.token)!=null&&n.address){we.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:tt.state.token.address,amount:tt.state.sendTokenAmount,network:((r=v.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}});const{hash:s}=await tt.sendERC20Token({receiverAddress:tt.state.receiverAddress,tokenAddress:tt.state.token.address,sendTokenAmount:tt.state.sendTokenAmount,decimals:tt.state.token.quantity.decimals});s&&(xt.hash=s)}else{we.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:tt.state.token.symbol||"",amount:tt.state.sendTokenAmount,network:((i=v.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)||""}});const{hash:s}=await tt.sendNativeToken({receiverAddress:tt.state.receiverAddress,sendTokenAmount:tt.state.sendTokenAmount,decimals:tt.state.token.quantity.decimals});s&&(xt.hash=s)}},async fetchTokenBalance(t){var o,a,c;xt.loading=!0;const e=v.state.activeChain,n=(o=v.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,r=(a=v.state.activeCaipNetwork)==null?void 0:a.chainNamespace,i=((c=v.getAccountData(e))==null?void 0:c.caipAddress)??v.state.activeCaipAddress,s=i?ee.getPlainAddress(i):void 0;if(xt.lastRetry&&!ee.isAllowedRetry(xt.lastRetry,30*We.ONE_SEC_MS))return xt.loading=!1,[];try{if(s&&n&&r){const l=await J2.getMyTokensWithBalance();return xt.tokenBalances=l,xt.lastRetry=void 0,l}}catch(l){xt.lastRetry=Date.now(),t==null||t(l),nt.showError("Token Balance Unavailable")}finally{xt.loading=!1}return[]},fetchNetworkBalance(){if(xt.tokenBalances.length===0)return;const t=IN.mapBalancesToSwapTokens(xt.tokenBalances);if(!t)return;const e=t.find(n=>n.address===Fm());e&&(xt.networkBalanceInUSD=e?Bd.multiply(e.quantity.numeric,e.price).toString():"0")},async sendNativeToken(t){var o,a,c,l;Z.pushTransactionStack({});const e=t.receiverAddress,n=(o=v.getAccountData())==null?void 0:o.address,r=te.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),s=await te.sendTransaction({chainNamespace:H.CHAIN.EVM,to:e,address:n,data:"0x",value:r??BigInt(0)});return we.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:rn("eip155")===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:((a=tt.state.token)==null?void 0:a.symbol)||"",amount:t.sendTokenAmount,network:((c=v.state.activeCaipNetwork)==null?void 0:c.caipNetworkId)||"",hash:s||""}}),(l=te._getClient())==null||l.updateBalance("eip155"),tt.resetSend(),{hash:s}},async sendERC20Token(t){var r,i,s;Z.pushTransactionStack({onSuccess(){Z.replace("Account")}});const e=te.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),n=(r=v.getAccountData())==null?void 0:r.address;if(n&&t.sendTokenAmount&&t.receiverAddress&&t.tokenAddress){const o=ee.getPlainAddress(t.tokenAddress);if(!o)throw new Error("SendController:sendERC20Token - tokenAddress is required");const a=await te.writeContract({fromAddress:n,tokenAddress:o,args:[t.receiverAddress,e??BigInt(0)],method:"transfer",abi:FI.getERC20Abi(o),chainNamespace:H.CHAIN.EVM});return we.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:rn("eip155")===$t.ACCOUNT_TYPES.SMART_ACCOUNT,token:((i=tt.state.token)==null?void 0:i.symbol)||"",amount:t.sendTokenAmount,network:((s=v.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)||"",hash:a||""}}),tt.resetSend(),{hash:a}}return{hash:void 0}},async sendSolanaToken(){var n,r,i;if(!tt.state.sendTokenAmount||!tt.state.receiverAddress)throw new Error("An amount and receiver address are required");Z.pushTransactionStack({onSuccess(){Z.replace("Account")}});let t;tt.state.token&&tt.state.token.address!==We.SOLANA_NATIVE_TOKEN_ADDRESS&&(ee.isCaipAddress(tt.state.token.address)?t=ee.getPlainAddress(tt.state.token.address):t=tt.state.token.address);const e=await te.sendTransaction({chainNamespace:"solana",tokenMint:t,to:tt.state.receiverAddress,value:tt.state.sendTokenAmount});e&&(xt.hash=e),(n=te._getClient())==null||n.updateBalance("solana"),we.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:!1,token:((r=tt.state.token)==null?void 0:r.symbol)||"",amount:tt.state.sendTokenAmount,network:((i=v.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)||"",hash:e||""}}),tt.resetSend()},resetSend(){xt.token=void 0,xt.sendTokenAmount=void 0,xt.receiverAddress=void 0,xt.receiverProfileImageUrl=void 0,xt.receiverProfileName=void 0,xt.loading=!1,xt.tokenBalances=[]}},tt=_i(LH),wx={currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,user:void 0,preferredAccountType:void 0},Vw={caipNetwork:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]},ve=Lt({chains:UU(),activeCaipAddress:void 0,activeChain:void 0,activeCaipNetwork:void 0,noAdapters:!1,universalAdapter:{connectionControllerClient:void 0},isSwitchingNamespace:!1}),TN={state:ve,subscribe(t){return fn(ve,()=>{t(ve)})},subscribeKey(t,e){return xn(ve,t,e)},subscribeAccountStateProp(t,e,n){var i;const r=n||ve.activeChain;return r?xn(((i=ve.chains.get(r))==null?void 0:i.accountState)||{},t,e):()=>{}},subscribeChainProp(t,e,n){let r;return fn(ve.chains,()=>{var s;const i=n||ve.activeChain;if(i){const o=(s=ve.chains.get(i))==null?void 0:s[t];r!==o&&(r=o,e(o))}})},initialize(t,e,n){const{chainId:r,namespace:i}=re.getActiveNetworkProps(),s=e==null?void 0:e.find(u=>u.id.toString()===(r==null?void 0:r.toString())),a=t.find(u=>(u==null?void 0:u.namespace)===i)||(t==null?void 0:t[0]),c=t.map(u=>u.namespace).filter(u=>u!==void 0),l=V.state.enableEmbedded?new Set([...c]):new Set([...(e==null?void 0:e.map(u=>u.chainNamespace))??[]]);((t==null?void 0:t.length)===0||!a)&&(ve.noAdapters=!0),ve.noAdapters||(ve.activeChain=a==null?void 0:a.namespace,ve.activeCaipNetwork=s,v.setChainNetworkData(a==null?void 0:a.namespace,{caipNetwork:s}),ve.activeChain&&Ki.set({activeChain:a==null?void 0:a.namespace})),l.forEach(u=>{const d=e==null?void 0:e.filter(g=>g.chainNamespace===u),h=re.getPreferredAccountTypes()||{},f={...V.state.defaultAccountTypes,...h};v.state.chains.set(u,{namespace:u,networkState:Lt({...Vw,caipNetwork:d==null?void 0:d[0]}),accountState:Lt({...wx,preferredAccountType:f[u]}),caipNetworks:d??[],...n}),v.setRequestedCaipNetworks(d??[],u)})},removeAdapter(t){var e,n;if(ve.activeChain===t){const r=Array.from(ve.chains.entries()).find(([i])=>i!==t);if(r){const i=(n=(e=r[1])==null?void 0:e.caipNetworks)==null?void 0:n[0];i&&v.setActiveCaipNetwork(i)}}ve.chains.delete(t)},addAdapter(t,{connectionControllerClient:e},n){if(!t.namespace)throw new Error("ChainController:addAdapter - adapter must have a namespace");ve.chains.set(t.namespace,{namespace:t.namespace,networkState:{...Vw,caipNetwork:n[0]},accountState:{...wx},caipNetworks:n,connectionControllerClient:e}),v.setRequestedCaipNetworks((n==null?void 0:n.filter(r=>r.chainNamespace===t.namespace))??[],t.namespace)},addNetwork(t){var n;const e=ve.chains.get(t.chainNamespace);if(e){const r=[...e.caipNetworks||[]];(n=e.caipNetworks)!=null&&n.find(i=>i.id===t.id)||r.push(t),ve.chains.set(t.chainNamespace,{...e,caipNetworks:r}),v.setRequestedCaipNetworks(r,t.chainNamespace),J.filterByNamespace(t.chainNamespace,!0)}},removeNetwork(t,e){var r,i,s;const n=ve.chains.get(t);if(n){const o=((r=ve.activeCaipNetwork)==null?void 0:r.id)===e,a=[...((i=n.caipNetworks)==null?void 0:i.filter(c=>c.id!==e))||[]];o&&((s=n==null?void 0:n.caipNetworks)!=null&&s[0])&&v.setActiveCaipNetwork(n.caipNetworks[0]),ve.chains.set(t,{...n,caipNetworks:a}),v.setRequestedCaipNetworks(a||[],t),a.length===0&&J.filterByNamespace(t,!1)}},setAdapterNetworkState(t,e){const n=ve.chains.get(t);n&&(n.networkState={...n.networkState||Vw,...e},ve.chains.set(t,n))},setChainAccountData(t,e,n=!0){if(!t)throw new Error("Chain is required to update chain account data");const r=ve.chains.get(t);if(r){const i={...r.accountState||wx,...e};ve.chains.set(t,{...r,accountState:i}),(ve.chains.size===1||ve.activeChain===t)&&e.caipAddress&&(ve.activeCaipAddress=e.caipAddress)}},setChainNetworkData(t,e){if(!t)return;const n=ve.chains.get(t);if(n){const r={...n.networkState||Vw,...e};ve.chains.set(t,{...n,networkState:r})}},setAccountProp(t,e,n,r=!0){v.setChainAccountData(n,{[t]:e},r)},setActiveNamespace(t){var r,i;ve.activeChain=t;const e=t?ve.chains.get(t):void 0,n=(r=e==null?void 0:e.networkState)==null?void 0:r.caipNetwork;n!=null&&n.id&&t&&(ve.activeCaipAddress=(i=e==null?void 0:e.accountState)==null?void 0:i.caipAddress,ve.activeCaipNetwork=n,v.setChainNetworkData(t,{caipNetwork:n}),re.setActiveCaipNetworkId(n==null?void 0:n.caipNetworkId),Ki.set({activeChain:t,selectedNetworkId:n==null?void 0:n.caipNetworkId}))},setActiveCaipNetwork(t){var s,o;if(!t)return;const e=ve.activeChain===t.chainNamespace;e||v.setIsSwitchingNamespace(!0);const n=ve.chains.get(t.chainNamespace);ve.activeChain=t.chainNamespace,ve.activeCaipNetwork=t,v.setChainNetworkData(t.chainNamespace,{caipNetwork:t});let r=(s=n==null?void 0:n.accountState)==null?void 0:s.address;if(r)ve.activeCaipAddress=`${t.chainNamespace}:${t.id}:${r}`;else if(e&&ve.activeCaipAddress){const{address:a}=hn.parseCaipAddress(ve.activeCaipAddress);r=a,ve.activeCaipAddress=`${t.caipNetworkId}:${r}`}else ve.activeCaipAddress=void 0;v.setChainAccountData(t.chainNamespace,{address:r,caipAddress:ve.activeCaipAddress}),tt.resetSend(),Ki.set({activeChain:ve.activeChain,selectedNetworkId:(o=ve.activeCaipNetwork)==null?void 0:o.caipNetworkId}),re.setActiveCaipNetworkId(t.caipNetworkId),!v.checkIfSupportedNetwork(t.chainNamespace)&&V.state.enableNetworkSwitch&&!V.state.allowUnsupportedChain&&!te.state.wcBasic&&v.showUnsupportedChainUI()},addCaipNetwork(t){var n;if(!t)return;const e=ve.chains.get(t.chainNamespace);e&&((n=e==null?void 0:e.caipNetworks)==null||n.push(t))},async switchActiveNamespace(t){var i;if(!t)return;const e=t!==v.state.activeChain,n=(i=v.getNetworkData(t))==null?void 0:i.caipNetwork,r=v.getCaipNetworkByNamespace(t,n==null?void 0:n.id);e&&r&&await v.switchActiveNetwork(r)},async switchActiveNetwork(t,{throwOnFailure:e=!1}={}){var o;const n=v.state.activeChain;if(!n)throw new Error("ChainController:switchActiveNetwork - namespace is required");const r=dt.getProviderId(ve.activeChain)==="AUTH",i=(o=v.getAccountData(n))==null?void 0:o.address,s=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(t.chainNamespace);try{if(i&&t.chainNamespace===n||r&&s){const a=pC.get(t.chainNamespace);if(!a)throw new Error("Adapter not found");await a.switchNetwork({caipNetwork:t})}v.setActiveCaipNetwork(t)}catch(a){if(e)throw a}we.sendEvent({type:"track",event:"SWITCH_NETWORK",properties:{network:t.caipNetworkId}})},getConnectionControllerClient(t){const e=t||ve.activeChain;if(!e)throw new Error("Chain is required to get connection controller client");const n=ve.chains.get(e);if(!(n!=null&&n.connectionControllerClient))throw new Error("ConnectionController client not set");return n.connectionControllerClient},getNetworkProp(t,e){var r;const n=(r=ve.chains.get(e))==null?void 0:r.networkState;if(n)return n[t]},getRequestedCaipNetworks(t){const e=ve.chains.get(t),{approvedCaipNetworkIds:n=[],requestedCaipNetworks:r=[]}=(e==null?void 0:e.networkState)||{};return ee.sortRequestedNetworks(n,r).filter(o=>o==null?void 0:o.id)},getAllRequestedCaipNetworks(){const t=[];return ve.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllRequestedCaipNetworks - chainAdapter must have a namespace");const n=v.getRequestedCaipNetworks(e.namespace);t.push(...n)}),t},setRequestedCaipNetworks(t,e){v.setAdapterNetworkState(e,{requestedCaipNetworks:t});const r=v.getAllRequestedCaipNetworks().map(s=>s.chainNamespace),i=Array.from(new Set(r));J.filterByNamespaces(i)},getAllApprovedCaipNetworkIds(){const t=[];return ve.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllApprovedCaipNetworkIds - chainAdapter must have a namespace");const n=v.getApprovedCaipNetworkIds(e.namespace);t.push(...n)}),t},getActiveCaipNetwork(t){var e,n;return t?(n=(e=ve.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:ve.activeCaipNetwork},getActiveCaipAddress(){return ve.activeCaipAddress},getApprovedCaipNetworkIds(t){var r;const e=ve.chains.get(t);return((r=e==null?void 0:e.networkState)==null?void 0:r.approvedCaipNetworkIds)||[]},setApprovedCaipNetworksData(t,e){v.setAdapterNetworkState(t,e)},checkIfSupportedNetwork(t,e){var i;const n=e||((i=ve.activeCaipNetwork)==null?void 0:i.caipNetworkId),r=v.getRequestedCaipNetworks(t);return r.length?r==null?void 0:r.some(s=>s.caipNetworkId===n):!0},checkIfSupportedChainId(t){if(!ve.activeChain)return!0;const e=v.getRequestedCaipNetworks(ve.activeChain);return e==null?void 0:e.some(n=>n.id===t)},checkIfSmartAccountEnabled(){var r,i;const t=W4.caipNetworkIdToNumber((r=ve.activeCaipNetwork)==null?void 0:r.caipNetworkId);if(!ve.activeChain||!t)return!1;const n=((i=Cn.get(ke.SMART_ACCOUNT_ENABLED_NETWORKS))==null?void 0:i.split(","))||[];return!!(n!=null&&n.includes(t.toString()))},showUnsupportedChainUI(){je.open({view:"UnsupportedChain"})},checkIfNamesSupported(){const t=ve.activeCaipNetwork;return!!(t!=null&&t.chainNamespace&&We.NAMES_SUPPORTED_CHAIN_NAMESPACES.includes(t.chainNamespace))},resetNetwork(t){v.setAdapterNetworkState(t,{approvedCaipNetworkIds:void 0,supportsAllNetworks:!0})},resetAccount(t){var i,s;const e=t;if(!e)throw new Error("Chain is required to set account prop");const n=(s=(i=v.state.chains.get(e))==null?void 0:i.accountState)==null?void 0:s.preferredAccountType,r=V.state.defaultAccountTypes[e];ve.activeCaipAddress=void 0,v.setChainAccountData(e,{smartAccountDeployed:!1,currentTab:0,caipAddress:void 0,address:void 0,balance:void 0,balanceSymbol:void 0,profileName:void 0,profileImage:void 0,addressExplorerUrl:void 0,tokenBalance:[],connectedWalletInfo:void 0,preferredAccountType:r||n,socialProvider:void 0,socialWindow:void 0,farcasterUrl:void 0,user:void 0,status:"disconnected"}),J.removeConnectorId(e)},setIsSwitchingNamespace(t){ve.isSwitchingNamespace=t},getFirstCaipNetworkSupportsAuthConnector(){var n,r;const t=[];let e;if(ve.chains.forEach(i=>{H.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(s=>s===i.namespace)&&i.namespace&&t.push(i.namespace)}),t.length>0){const i=t[0];return e=i?(r=(n=ve.chains.get(i))==null?void 0:n.caipNetworks)==null?void 0:r[0]:void 0,e}},getAccountData(t){var n;const e=t||ve.activeChain;if(e)return(n=v.state.chains.get(e))==null?void 0:n.accountState},getNetworkData(t){var n;const e=t||ve.activeChain;if(e)return(n=v.state.chains.get(e))==null?void 0:n.networkState},getCaipNetworkByNamespace(t,e){var i,s,o;if(!t)return;const n=v.state.chains.get(t),r=(i=n==null?void 0:n.caipNetworks)==null?void 0:i.find(a=>a.id.toString()===(e==null?void 0:e.toString()));return r||((s=n==null?void 0:n.networkState)==null?void 0:s.caipNetwork)||((o=n==null?void 0:n.caipNetworks)==null?void 0:o[0])},getRequestedCaipNetworkIds(){const t=J.state.filterByNamespace;return(t?[ve.chains.get(t)]:Array.from(ve.chains.values())).flatMap(n=>(n==null?void 0:n.caipNetworks)||[]).map(n=>n.caipNetworkId)},getCaipNetworks(t){return t?v.getRequestedCaipNetworks(t):v.getAllRequestedCaipNetworks()},getCaipNetworkById(t,e){return TN.getCaipNetworks(e).find(n=>n.id.toString()===t.toString()||n.caipNetworkId.toString()===t.toString())},setLastConnectedSIWECaipNetwork(t){ve.lastConnectedSIWECaipNetwork=t},getLastConnectedSIWECaipNetwork(){return ve.lastConnectedSIWECaipNetwork},async fetchTokenBalance(t){var o,a;const e=v.getAccountData();if(!e)return[];const n=(o=v.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,r=(a=v.state.activeCaipNetwork)==null?void 0:a.chainNamespace,i=v.state.activeCaipAddress,s=i?ee.getPlainAddress(i):void 0;if(v.setAccountProp("balanceLoading",!0,r),e.lastRetry&&!ee.isAllowedRetry(e.lastRetry,30*We.ONE_SEC_MS))return v.setAccountProp("balanceLoading",!1,r),[];try{if(s&&n&&r){const c=await J2.getMyTokensWithBalance();return v.setAccountProp("tokenBalance",c,r),v.setAccountProp("lastRetry",void 0,r),v.setAccountProp("balanceLoading",!1,r),c}}catch(c){v.setAccountProp("lastRetry",Date.now(),r),t==null||t(c),nt.showError("Token Balance Unavailable")}finally{v.setAccountProp("balanceLoading",!1,r)}return[]},isCaipNetworkDisabled(t){var c;const e=t.chainNamespace,n=!!((c=v.getAccountData(e))!=null&&c.caipAddress),r=v.getAllApprovedCaipNetworkIds(),i=v.getNetworkProp("supportsAllNetworks",e)!==!1,s=J.getConnectorId(e),o=J.getAuthConnector(),a=s===H.CONNECTOR_ID.AUTH&&o;return!n||i||a?!1:!(r!=null&&r.includes(t.caipNetworkId))}},v=_i(TN),NN={onSwitchNetwork({network:t,ignoreSwitchConfirmation:e=!1}){var h,f;const n=v.state.activeCaipNetwork,r=v.state.activeChain,i=Z.state.data;if(t.id===(n==null?void 0:n.id))return;const o=!!((h=v.getAccountData(r))!=null&&h.address),a=!!((f=v.getAccountData(t.chainNamespace))!=null&&f.address),c=t.chainNamespace!==r,u=J.getConnectorId(r)===H.CONNECTOR_ID.AUTH,d=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(g=>g===t.chainNamespace);e||u&&d?Z.push("SwitchNetwork",{...i,network:t}):o&&c&&!a?Z.push("SwitchActiveChain",{switchToChain:t.chainNamespace,navigateTo:"Connect",navigateWithReplace:!0,network:t}):Z.push("SwitchNetwork",{...i,network:t})}},Xr=Lt({loading:!1,loadingNamespaceMap:new Map,open:!1,shake:!1,namespace:void 0}),MH={state:Xr,subscribe(t){return fn(Xr,()=>t(Xr))},subscribeKey(t,e){return xn(Xr,t,e)},async open(t){var o,a;const e=t==null?void 0:t.namespace,n=v.state.activeChain,r=e&&e!==n,i=(o=v.getAccountData(t==null?void 0:t.namespace))==null?void 0:o.caipAddress,s=v.state.noAdapters;if(te.state.wcBasic?he.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1}):await he.prefetch(),J.setFilterByNamespace(t==null?void 0:t.namespace),je.setLoading(!0,e),e&&r){const c=((a=v.getNetworkData(e))==null?void 0:a.caipNetwork)||v.getRequestedCaipNetworks(e)[0];c&&(s?(await v.switchActiveNetwork(c),Z.push("ConnectingWalletConnectBasic")):NN.onSwitchNetwork({network:c,ignoreSwitchConfirmation:!0}))}else V.state.manualWCControl||s&&!i?ee.isMobile()?Z.reset("AllWallets"):Z.reset("ConnectingWalletConnectBasic"):t!=null&&t.view?Z.reset(t.view,t.data):i?Z.reset("Account"):Z.reset("Connect");Xr.open=!0,Ki.set({open:!0}),we.sendEvent({type:"track",event:"MODAL_OPEN",properties:{connected:!!i}})},close(){const t=V.state.enableEmbedded,e=!!v.state.activeCaipAddress;Xr.open&&we.sendEvent({type:"track",event:"MODAL_CLOSE",properties:{connected:e}}),Xr.open=!1,Z.reset("Connect"),je.clearLoading(),t?e?Z.replace("Account"):Z.push("Connect"):Ki.set({open:!1}),te.resetUri()},setLoading(t,e){e&&Xr.loadingNamespaceMap.set(e,t),Xr.loading=t,Ki.set({loading:t})},clearLoading(){Xr.loadingNamespaceMap.clear(),Xr.loading=!1,Ki.set({loading:!1})},shake(){Xr.shake||(Xr.shake=!0,setTimeout(()=>{Xr.shake=!1},500))}},je=_i(MH),lm={id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"USD Coin",symbol:"USDC",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]},Av={id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},FH={providers:jI,selectedProvider:null,error:null,purchaseCurrency:lm,paymentCurrency:Av,purchaseCurrencies:[lm],paymentCurrencies:[],quotesLoading:!1},vt=Lt(FH),WH={state:vt,subscribe(t){return fn(vt,()=>t(vt))},subscribeKey(t,e){return xn(vt,t,e)},setSelectedProvider(t){var e,n;if(t&&t.name==="meld"){const r=v.state.activeChain,i=r===H.CHAIN.SOLANA?"SOL":"USDC",s=r?((n=(e=v.state.chains.get(r))==null?void 0:e.accountState)==null?void 0:n.address)??"":"",o=new URL(t.url);o.searchParams.append("publicKey",sL),o.searchParams.append("destinationCurrencyCode",i),o.searchParams.append("walletAddress",s),o.searchParams.append("externalCustomerId",V.state.projectId),vt.selectedProvider={...t,url:o.toString()}}else vt.selectedProvider=t},setOnrampProviders(t){if(Array.isArray(t)&&t.every(e=>typeof e=="string")){const e=t,n=jI.filter(r=>e.includes(r.name));vt.providers=n}else vt.providers=[]},setPurchaseCurrency(t){vt.purchaseCurrency=t},setPaymentCurrency(t){vt.paymentCurrency=t},setPurchaseAmount(t){Ib.state.purchaseAmount=t},setPaymentAmount(t){Ib.state.paymentAmount=t},async getAvailableCurrencies(){const t=await qe.getOnrampOptions();vt.purchaseCurrencies=t.purchaseCurrencies,vt.paymentCurrencies=t.paymentCurrencies,vt.paymentCurrency=t.paymentCurrencies[0]||Av,vt.purchaseCurrency=t.purchaseCurrencies[0]||lm,await he.fetchCurrencyImages(t.paymentCurrencies.map(e=>e.id)),await he.fetchTokenImages(t.purchaseCurrencies.map(e=>e.symbol))},async getQuote(){var t,e;vt.quotesLoading=!0;try{const n=await qe.getOnrampQuote({purchaseCurrency:vt.purchaseCurrency,paymentCurrency:vt.paymentCurrency,amount:((t=vt.paymentAmount)==null?void 0:t.toString())||"0",network:(e=vt.purchaseCurrency)==null?void 0:e.symbol});return vt.quotesLoading=!1,vt.purchaseAmount=Number(n==null?void 0:n.purchaseAmount.amount),n}catch(n){return vt.error=n.message,vt.quotesLoading=!1,null}finally{vt.quotesLoading=!1}},resetState(){vt.selectedProvider=null,vt.error=null,vt.purchaseCurrency=lm,vt.paymentCurrency=Av,vt.purchaseCurrencies=[lm],vt.paymentCurrencies=[],vt.paymentAmount=void 0,vt.purchaseAmount=void 0,vt.quotesLoading=!1}},Ib=_i(WH);var gC={exports:{}},Pf=typeof Reflect=="object"?Reflect:null,WA=Pf&&typeof Pf.apply=="function"?Pf.apply:function(e,n,r){return Function.prototype.apply.call(e,n,r)},By;Pf&&typeof Pf.ownKeys=="function"?By=Pf.ownKeys:Object.getOwnPropertySymbols?By=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:By=function(e){return Object.getOwnPropertyNames(e)};function jH(t){console&&console.warn&&console.warn(t)}var RN=Number.isNaN||function(e){return e!==e};function jt(){jt.init.call(this)}gC.exports=jt;gC.exports.once=qH;jt.EventEmitter=jt;jt.prototype._events=void 0;jt.prototype._eventsCount=0;jt.prototype._maxListeners=void 0;var jA=10;function Q2(t){if(typeof t!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}Object.defineProperty(jt,"defaultMaxListeners",{enumerable:!0,get:function(){return jA},set:function(t){if(typeof t!="number"||t<0||RN(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");jA=t}});jt.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};jt.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||RN(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this};function ON(t){return t._maxListeners===void 0?jt.defaultMaxListeners:t._maxListeners}jt.prototype.getMaxListeners=function(){return ON(this)};jt.prototype.emit=function(e){for(var n=[],r=1;r<arguments.length;r++)n.push(arguments[r]);var i=e==="error",s=this._events;if(s!==void 0)i=i&&s.error===void 0;else if(!i)return!1;if(i){var o;if(n.length>0&&(o=n[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var c=s[e];if(c===void 0)return!1;if(typeof c=="function")WA(c,this,n);else for(var l=c.length,u=BN(c,l),r=0;r<l;++r)WA(u[r],this,n);return!0};function PN(t,e,n,r){var i,s,o;if(Q2(n),s=t._events,s===void 0?(s=t._events=Object.create(null),t._eventsCount=0):(s.newListener!==void 0&&(t.emit("newListener",e,n.listener?n.listener:n),s=t._events),o=s[e]),o===void 0)o=s[e]=n,++t._eventsCount;else if(typeof o=="function"?o=s[e]=r?[n,o]:[o,n]:r?o.unshift(n):o.push(n),i=ON(t),i>0&&o.length>i&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,jH(a)}return t}jt.prototype.addListener=function(e,n){return PN(this,e,n,!1)};jt.prototype.on=jt.prototype.addListener;jt.prototype.prependListener=function(e,n){return PN(this,e,n,!0)};function HH(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function kN(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},i=HH.bind(r);return i.listener=n,r.wrapFn=i,i}jt.prototype.once=function(e,n){return Q2(n),this.on(e,kN(this,e,n)),this};jt.prototype.prependOnceListener=function(e,n){return Q2(n),this.prependListener(e,kN(this,e,n)),this};jt.prototype.removeListener=function(e,n){var r,i,s,o,a;if(Q2(n),i=this._events,i===void 0)return this;if(r=i[e],r===void 0)return this;if(r===n||r.listener===n)--this._eventsCount===0?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,r.listener||n));else if(typeof r!="function"){for(s=-1,o=r.length-1;o>=0;o--)if(r[o]===n||r[o].listener===n){a=r[o].listener,s=o;break}if(s<0)return this;s===0?r.shift():zH(r,s),r.length===1&&(i[e]=r[0]),i.removeListener!==void 0&&this.emit("removeListener",e,a||n)}return this};jt.prototype.off=jt.prototype.removeListener;jt.prototype.removeAllListeners=function(e){var n,r,i;if(r=this._events,r===void 0)return this;if(r.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):r[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete r[e]),this;if(arguments.length===0){var s=Object.keys(r),o;for(i=0;i<s.length;++i)o=s[i],o!=="removeListener"&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(n=r[e],typeof n=="function")this.removeListener(e,n);else if(n!==void 0)for(i=n.length-1;i>=0;i--)this.removeListener(e,n[i]);return this};function $N(t,e,n){var r=t._events;if(r===void 0)return[];var i=r[e];return i===void 0?[]:typeof i=="function"?n?[i.listener||i]:[i]:n?VH(i):BN(i,i.length)}jt.prototype.listeners=function(e){return $N(this,e,!0)};jt.prototype.rawListeners=function(e){return $N(this,e,!1)};jt.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):DN.call(t,e)};jt.prototype.listenerCount=DN;function DN(t){var e=this._events;if(e!==void 0){var n=e[t];if(typeof n=="function")return 1;if(n!==void 0)return n.length}return 0}jt.prototype.eventNames=function(){return this._eventsCount>0?By(this._events):[]};function BN(t,e){for(var n=new Array(e),r=0;r<e;++r)n[r]=t[r];return n}function zH(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function VH(t){for(var e=new Array(t.length),n=0;n<e.length;++n)e[n]=t[n].listener||t[n];return e}function qH(t,e){return new Promise(function(n,r){function i(o){t.removeListener(e,s),r(o)}function s(){typeof t.removeListener=="function"&&t.removeListener("error",i),n([].slice.call(arguments))}UN(t,e,s,{once:!0}),e!=="error"&&GH(t,i,{once:!0})})}function GH(t,e,n){typeof t.on=="function"&&UN(t,"error",e,n)}function UN(t,e,n,r){if(typeof t.on=="function")r.once?t.once(e,n):t.on(e,n);else if(typeof t.addEventListener=="function")t.addEventListener(e,function i(s){r.once&&t.removeEventListener(e,i),n(s)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t)}var Xi=gC.exports;const mC=su(Xi);var ge={};/*! *****************************************************************************
|
|
30
30
|
Copyright (c) Microsoft Corporation.
|
|
31
31
|
|
|
32
32
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
@@ -293,7 +293,7 @@ NPM Registry: https://www.npmjs.com/package/@reown/appkit`}},mk={NetworkImageIds
|
|
|
293
293
|
--local-color-4: ${c[3]};
|
|
294
294
|
--local-color-5: ${c[4]};
|
|
295
295
|
--local-radial-circle: ${a}
|
|
296
|
-
`},hexToRgb(t){const e=parseInt(t,16),n=e>>16&255,r=e>>8&255,i=e&255;return[n,r,i]},tintColor(t,e){const[n,r,i]=t,s=Math.round(n+(255-n)*e),o=Math.round(r+(255-r)*e),a=Math.round(i+(255-i)*e);return[s,o,a]},isNumber(t){return{number:/^[0-9]+$/u}.number.test(t)},getColorTheme(t){var e;return t||(typeof window<"u"&&window.matchMedia&&typeof window.matchMedia=="function"?(e=window.matchMedia("(prefers-color-scheme: dark)"))!=null&&e.matches?"dark":"light":"dark")},splitBalance(t){const e=t.split(".");return e.length===2?[e[0],e[1]]:["0","00"]},roundNumber(t,e,n){return t.toString().length>=e?Number(t).toFixed(n):t},cssDurationToNumber(t){return t.endsWith("s")?Number(t.replace("s",""))*1e3:t.endsWith("ms")?Number(t.replace("ms","")):0},maskInput({value:t,decimals:e,integers:n}){if(t=t.replace(",","."),t===py)return`0${py}`;const[r="",i]=t.split(py).map(u=>u.replace(/[^0-9]/gu,"")),s=n?r.substring(0,n):r,o=s.length===2?String(Number(s)):s,a=typeof e=="number"?i==null?void 0:i.substring(0,e):i,c=typeof e!="number"||e>0;return(typeof a=="string"&&c?[o,a].join(py):o)??""},capitalize(t){return t?t.charAt(0).toUpperCase()+t.slice(1):""}},cue=3,gy=.1,lue=["receive","deposit","borrow","claim"],uue=["withdraw","repay","burn"],xf={getTransactionGroupTitle(t,e){const n=ov.getYear(),r=ov.getMonthNameByIndex(e);return t===n?r:`${r} ${t}`},getTransactionImages(t){const[e]=t;return(t==null?void 0:t.length)>1?t.map(r=>this.getTransactionImage(r)):[this.getTransactionImage(e)]},getTransactionImage(t){return{type:xf.getTransactionTransferTokenType(t),url:xf.getTransactionImageURL(t)}},getTransactionImageURL(t){var i,s,o,a,c;let e;const n=!!(t!=null&&t.nft_info),r=!!(t!=null&&t.fungible_info);return t&&n?e=(o=(s=(i=t==null?void 0:t.nft_info)==null?void 0:i.content)==null?void 0:s.preview)==null?void 0:o.url:t&&r&&(e=(c=(a=t==null?void 0:t.fungible_info)==null?void 0:a.icon)==null?void 0:c.url),e},getTransactionTransferTokenType(t){if(t!=null&&t.fungible_info)return"FUNGIBLE";if(t!=null&&t.nft_info)return"NFT"},getTransactionDescriptions(t,e){var h;const n=(h=t==null?void 0:t.metadata)==null?void 0:h.operationType,r=e||(t==null?void 0:t.transfers),i=r&&r.length>0,s=r&&r.length>1,o=i&&r.every(f=>!!(f!=null&&f.fungible_info)),[a,c]=r||[];let l=this.getTransferDescription(a),u=this.getTransferDescription(c);if(!i)return(n==="send"||n==="receive")&&o?(l=zt.getTruncateString({string:t==null?void 0:t.metadata.sentFrom,charsStart:4,charsEnd:6,truncate:"middle"}),u=zt.getTruncateString({string:t==null?void 0:t.metadata.sentTo,charsStart:4,charsEnd:6,truncate:"middle"}),[l,u]):[t.metadata.status];if(s)return r==null?void 0:r.map(f=>this.getTransferDescription(f));let d="";return lue.includes(n)?d="+":uue.includes(n)&&(d="-"),l=d.concat(l),[l]},getTransferDescription(t){var n;let e="";return t&&(t!=null&&t.nft_info?e=((n=t==null?void 0:t.nft_info)==null?void 0:n.name)||"-":t!=null&&t.fungible_info&&(e=this.getFungibleTransferDescription(t)||"-")),e},getFungibleTransferDescription(t){var r;return t?[this.getQuantityFixedValue(t==null?void 0:t.quantity.numeric),(r=t==null?void 0:t.fungible_info)==null?void 0:r.symbol].join(" ").trim():null},mergeTransfers(t){if((t==null?void 0:t.length)<=1)return t;const n=this.filterGasFeeTransfers(t).reduce((i,s)=>{var c;const o=(c=s==null?void 0:s.fungible_info)==null?void 0:c.name,a=i.find(({fungible_info:l,direction:u})=>o&&o===(l==null?void 0:l.name)&&u===s.direction);if(a){const l=Number(a.quantity.numeric)+Number(s.quantity.numeric);a.quantity.numeric=l.toString(),a.value=(a.value||0)+(s.value||0)}else i.push(s);return i},[]);let r=n;return n.length>2&&(r=n.sort((i,s)=>(s.value||0)-(i.value||0)).slice(0,2)),r=r.sort((i,s)=>i.direction==="out"&&s.direction==="in"?-1:i.direction==="in"&&s.direction==="out"?1:0),r},filterGasFeeTransfers(t){const e=t==null?void 0:t.reduce((r,i)=>{var o;const s=(o=i==null?void 0:i.fungible_info)==null?void 0:o.name;return s&&(r[s]||(r[s]=[]),r[s].push(i)),r},{}),n=[];return Object.values(e??{}).forEach(r=>{if(r.length===1){const i=r[0];i&&n.push(i)}else{const i=r.filter(o=>o.direction==="in"),s=r.filter(o=>o.direction==="out");if(i.length===1&&s.length===1){const o=i[0],a=s[0];let c=!1;if(o&&a){const l=Number(o.quantity.numeric),u=Number(a.quantity.numeric);u<l*gy?(n.push(o),c=!0):l<u*gy&&(n.push(a),c=!0)}c||n.push(...r)}else{const o=this.filterGasFeesFromTokenGroup(r);n.push(...o)}}}),t==null||t.forEach(r=>{var i;(i=r==null?void 0:r.fungible_info)!=null&&i.name||n.push(r)}),n},filterGasFeesFromTokenGroup(t){if(t.length<=1)return t;const e=t==null?void 0:t.map(a=>Number(a.quantity.numeric)),n=Math.max(...e),r=Math.min(...e),i=.01;if(r<n*i)return t==null?void 0:t.filter(c=>Number(c.quantity.numeric)>=n*i);const s=t==null?void 0:t.filter(a=>a.direction==="in"),o=t==null?void 0:t.filter(a=>a.direction==="out");if(s.length===1&&o.length===1){const a=s[0],c=o[0];if(a&&c){const l=Number(a.quantity.numeric),u=Number(c.quantity.numeric);if(u<l*gy)return[a];if(l<u*gy)return[c]}}return t},getQuantityFixedValue(t){return t?parseFloat(t).toFixed(cue):null}};function due(t,e){const{kind:n,elements:r}=e;return{kind:n,elements:r,finisher(i){customElements.get(t)||customElements.define(t,i)}}}function hue(t,e){return customElements.get(t)||customElements.define(t,e),e}function se(t){return function(n){return typeof n=="function"?hue(t,n):due(t,n)}}function fue(t){if(t.length>=255)throw new TypeError("Alphabet too long");const e=new Uint8Array(256);for(let l=0;l<e.length;l++)e[l]=255;for(let l=0;l<t.length;l++){const u=t.charAt(l),d=u.charCodeAt(0);if(e[d]!==255)throw new TypeError(u+" is ambiguous");e[d]=l}const n=t.length,r=t.charAt(0),i=Math.log(n)/Math.log(256),s=Math.log(256)/Math.log(n);function o(l){if(l instanceof Uint8Array||(ArrayBuffer.isView(l)?l=new Uint8Array(l.buffer,l.byteOffset,l.byteLength):Array.isArray(l)&&(l=Uint8Array.from(l))),!(l instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(l.length===0)return"";let u=0,d=0,h=0;const f=l.length;for(;h!==f&&l[h]===0;)h++,u++;const g=(f-h)*s+1>>>0,p=new Uint8Array(g);for(;h!==f;){let C=l[h],x=0;for(let A=g-1;(C!==0||x<d)&&A!==-1;A--,x++)C+=256*p[A]>>>0,p[A]=C%n>>>0,C=C/n>>>0;if(C!==0)throw new Error("Non-zero carry");d=x,h++}let m=g-d;for(;m!==g&&p[m]===0;)m++;let b=r.repeat(u);for(;m<g;++m)b+=t.charAt(p[m]);return b}function a(l){if(typeof l!="string")throw new TypeError("Expected String");if(l.length===0)return new Uint8Array;let u=0,d=0,h=0;for(;l[u]===r;)d++,u++;const f=(l.length-u)*i+1>>>0,g=new Uint8Array(f);for(;u<l.length;){const C=l.charCodeAt(u);if(C>255)return;let x=e[C];if(x===255)return;let A=0;for(let I=f-1;(x!==0||A<h)&&I!==-1;I--,A++)x+=n*g[I]>>>0,g[I]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");h=A,u++}let p=f-h;for(;p!==f&&g[p]===0;)p++;const m=new Uint8Array(d+(f-p));let b=d;for(;p!==f;)m[b++]=g[p++];return m}function c(l){const u=a(l);if(u)return u;throw new Error("Non-base"+n+" character")}return{encode:o,decodeUnsafe:a,decode:c}}var pue="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";const gue=fue(pue),Bl={ERROR_CODE_UNRECOGNIZED_CHAIN_ID:4902,ERROR_CODE_DEFAULT:5e3,ERROR_INVALID_CHAIN_ID:32603};class mue extends dk{async setUniversalProvider(e){if(!this.namespace)throw new Error("UniversalAdapter:setUniversalProvider - namespace is required");return this.addConnector(new hk({provider:e,caipNetworks:this.getCaipNetworks(),namespace:this.namespace})),Promise.resolve()}async connect(e){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:Number(e.chainId),provider:this.provider,address:""})}async disconnect(){try{await this.getWalletConnectConnector().disconnect(),this.emit("disconnect")}catch(e){console.warn("UniversalAdapter:disconnect - error",e)}return{connections:[]}}syncConnections(){return Promise.resolve()}async writeSolanaTransaction(){return Promise.resolve({hash:""})}async getAccounts({namespace:e}){var i,s,o,a;const n=this.provider,r=((a=(o=(s=(i=n==null?void 0:n.session)==null?void 0:i.namespaces)==null?void 0:s[e])==null?void 0:o.accounts)==null?void 0:a.map(c=>{const[,,l]=c.split(":");return l}).filter((c,l,u)=>u.indexOf(c)===l))||[];return Promise.resolve({accounts:r.map(c=>ee.createAccount(e,c,e==="bip122"?"payment":"eoa"))})}async syncConnectors(){return Promise.resolve()}async getBalance(e){var o,a,c,l,u;if(!(e.caipNetwork&&We.BALANCE_SUPPORTED_CHAINS.includes((o=e.caipNetwork)==null?void 0:o.chainNamespace))||(a=e.caipNetwork)!=null&&a.testnet)return{balance:"0.00",symbol:((c=e.caipNetwork)==null?void 0:c.nativeCurrency.symbol)||""};const r=v.getAccountData();if(r!=null&&r.balanceLoading&&e.chainId===((l=v.state.activeCaipNetwork)==null?void 0:l.id))return{balance:(r==null?void 0:r.balance)||"0.00",symbol:(r==null?void 0:r.balanceSymbol)||""};const s=(await v.fetchTokenBalance()).find(d=>{var h,f;return d.chainId===`${(h=e.caipNetwork)==null?void 0:h.chainNamespace}:${e.chainId}`&&d.symbol===((f=e.caipNetwork)==null?void 0:f.nativeCurrency.symbol)});return{balance:(s==null?void 0:s.quantity.numeric)||"0.00",symbol:(s==null?void 0:s.symbol)||((u=e.caipNetwork)==null?void 0:u.nativeCurrency.symbol)||""}}async signMessage(e){var o,a,c;const{provider:n,message:r,address:i}=e;if(!n)throw new Error("UniversalAdapter:signMessage - provider is undefined");let s="";return((o=v.state.activeCaipNetwork)==null?void 0:o.chainNamespace)===H.CHAIN.SOLANA?s=(await n.request({method:"solana_signMessage",params:{message:gue.encode(new TextEncoder().encode(r)),pubkey:i}},(a=v.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)).signature:s=await n.request({method:"personal_sign",params:[r,i]},(c=v.state.activeCaipNetwork)==null?void 0:c.caipNetworkId),{signature:s}}async estimateGas(){return Promise.resolve({gas:BigInt(0)})}async sendTransaction(){return Promise.resolve({hash:""})}walletGetAssets(e){return Promise.resolve({})}async writeContract(){return Promise.resolve({hash:""})}emitFirstAvailableConnection(){}parseUnits(){return 0n}formatUnits(){return"0"}async getCapabilities(){return Promise.resolve({})}async grantPermissions(){return Promise.resolve({})}async revokePermissions(){return Promise.resolve("0x")}async syncConnection(){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:1,provider:this.provider,address:""})}async switchNetwork(e){var i,s,o,a,c,l;const{caipNetwork:n}=e,r=this.getWalletConnectConnector();if(n.chainNamespace===H.CHAIN.EVM)try{await((i=r.provider)==null?void 0:i.request({method:"wallet_switchEthereumChain",params:[{chainId:qp(n.id)}]}))}catch(u){if(u.code===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||u.code===Bl.ERROR_INVALID_CHAIN_ID||u.code===Bl.ERROR_CODE_DEFAULT||((o=(s=u==null?void 0:u.data)==null?void 0:s.originalError)==null?void 0:o.code)===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)try{await((l=r.provider)==null?void 0:l.request({method:"wallet_addEthereumChain",params:[{chainId:qp(n.id),rpcUrls:[(a=n==null?void 0:n.rpcUrls.chainDefault)==null?void 0:a.http],chainName:n.name,nativeCurrency:n.nativeCurrency,blockExplorerUrls:[(c=n.blockExplorers)==null?void 0:c.default.url]}]}))}catch{throw new Error("Chain is not supported")}}r.provider.setDefaultChain(n.caipNetworkId)}getWalletConnectProvider(){const e=this.connectors.find(r=>r.type==="WALLET_CONNECT");return e==null?void 0:e.provider}}const wue=["email","socials","swaps","onramp","activity","reownBranding","multiWallet","emailCapture","payWithExchange","payments","reownAuthentication","headless"],my={email:{apiFeatureName:"social_login",localFeatureName:"email",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return!!t.isEnabled&&e.includes("email")},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.email:!!t},socials:{apiFeatureName:"social_login",localFeatureName:"socials",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e.filter(n=>n!=="email"):!1},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.socials:typeof t=="boolean"?t?We.DEFAULT_REMOTE_FEATURES.socials:!1:t},swaps:{apiFeatureName:"swap",localFeatureName:"swaps",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e:!1},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.swaps:typeof t=="boolean"?t?We.DEFAULT_REMOTE_FEATURES.swaps:!1:t},onramp:{apiFeatureName:"onramp",localFeatureName:"onramp",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e:!1},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.onramp:typeof t=="boolean"?t?We.DEFAULT_REMOTE_FEATURES.onramp:!1:t},activity:{apiFeatureName:"activity",localFeatureName:"history",returnType:!1,isLegacy:!0,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.activity:!!t},reownBranding:{apiFeatureName:"reown_branding",localFeatureName:"reownBranding",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.reownBranding:!!t},emailCapture:{apiFeatureName:"email_capture",localFeatureName:"emailCapture",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>t.isEnabled&&(t.config??[]),processFallback:t=>!1},multiWallet:{apiFeatureName:"multi_wallet",localFeatureName:"multiWallet",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.multiWallet},payWithExchange:{apiFeatureName:"fund_from_exchange",localFeatureName:"payWithExchange",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.payWithExchange},payments:{apiFeatureName:"payments",localFeatureName:"payments",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.payments},reownAuthentication:{apiFeatureName:"reown_authentication",localFeatureName:"reownAuthentication",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>typeof t>"u"?We.DEFAULT_REMOTE_FEATURES.reownAuthentication:!!t},headless:{apiFeatureName:"headless",localFeatureName:"headless",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.headless}},yue={localSettingsOverridden:new Set,getApiConfig(t,e){return e==null?void 0:e.find(n=>n.id===t)},addWarning(t,e){if(t!==void 0){const n=my[e],r=n.isLegacy?`"features.${n.localFeatureName}" (now "${e}")`:`"features.${e}"`;this.localSettingsOverridden.add(r)}},processFeature(t,e,n,r,i){const s=my[t],o=e[s.localFeatureName];if(i&&!s.isAvailableOnBasic)return!1;if(r){const a=this.getApiConfig(s.apiFeatureName,n);return(a==null?void 0:a.config)===null?this.processFallbackFeature(t,o):a!=null&&a.config?(o!==void 0&&this.addWarning(o,t),this.processApiFeature(t,a)):!1}return this.processFallbackFeature(t,o)},processApiFeature(t,e){return my[t].processApi(e)},processFallbackFeature(t,e){return my[t].processFallback(e)},async fetchRemoteFeatures(t){const e=t.basic??!1,n=t.features||{};this.localSettingsOverridden.clear();let r=null,i=!1;try{r=await he.fetchProjectConfig(),i=r!=null}catch(o){console.warn("[Reown Config] Failed to fetch remote project configuration. Using local/default values.",o)}const s=i&&!e?We.DEFAULT_REMOTE_FEATURES:We.DEFAULT_REMOTE_FEATURES_DISABLED;try{for(const o of wue){const a=this.processFeature(o,n,r,i,e);Object.assign(s,{[o]:a})}}catch(o){return console.warn("[Reown Config] Failed to process the configuration from Cloud. Using default values.",o),We.DEFAULT_REMOTE_FEATURES}if(i&&this.localSettingsOverridden.size>0){const o=`Your local configuration for ${Array.from(this.localSettingsOverridden).join(", ")} was ignored because a remote configuration was successfully fetched. Please manage these features via your project dashboard on dashboard.reown.com.`;On.open({debugMessage:Fn.ALERT_WARNINGS.LOCAL_CONFIGURATION_IGNORED.debugMessage(o)},"warning")}return s}};class bue{constructor(e){this.chainNamespaces=[],this.features={},this.remoteFeatures={},this.reportedAlertErrors={},this.getCaipNetwork=(n,r)=>{var i,s,o;if(n){const a=(i=v.getCaipNetworks(n))==null?void 0:i.find(u=>u.id===r);if(a)return a;const c=(s=v.getNetworkData(n))==null?void 0:s.caipNetwork;return c||((o=v.getRequestedCaipNetworks(n).filter(u=>u.chainNamespace===n))==null?void 0:o[0])}return v.state.activeCaipNetwork||this.defaultCaipNetwork},this.getCaipNetworkId=()=>{const n=this.getCaipNetwork();if(n)return n.id},this.getCaipNetworks=n=>v.getCaipNetworks(n),this.getActiveChainNamespace=()=>v.state.activeChain,this.setRequestedCaipNetworks=(n,r)=>{v.setRequestedCaipNetworks(n,r)},this.getApprovedCaipNetworkIds=()=>v.getAllApprovedCaipNetworkIds(),this.getCaipAddress=n=>{var r,i;return v.state.activeChain===n||!n?v.state.activeCaipAddress:(i=(r=v.state.chains.get(n))==null?void 0:r.accountState)==null?void 0:i.caipAddress},this.setClientId=n=>{qe.setClientId(n)},this.getProvider=n=>dt.getProvider(n),this.getProviderType=n=>dt.getProviderId(n),this.getPreferredAccountType=n=>rn(n),this.setCaipAddress=(n,r,i=!1)=>{v.setAccountProp("caipAddress",n,r,i),v.setAccountProp("address",ee.getPlainAddress(n),r,i)},this.setBalance=(n,r,i)=>{v.setAccountProp("balance",n,i),v.setAccountProp("balanceSymbol",r,i)},this.setProfileName=(n,r)=>{v.setAccountProp("profileName",n,r)},this.setProfileImage=(n,r)=>{v.setAccountProp("profileImage",n,r)},this.setUser=(n,r)=>{v.setAccountProp("user",n,r)},this.resetAccount=n=>{v.resetAccount(n)},this.setCaipNetwork=n=>{v.setActiveCaipNetwork(n)},this.setCaipNetworkOfNamespace=(n,r)=>{v.setChainNetworkData(r,{caipNetwork:n})},this.setStatus=(n,r)=>{v.setAccountProp("status",n,r),J.isConnected()?re.setConnectionStatus("connected"):re.setConnectionStatus("disconnected")},this.getAddressByChainNamespace=n=>{var r;return(r=v.getAccountData(n))==null?void 0:r.address},this.setConnectors=n=>{const r=[...J.state.allConnectors,...n];J.setConnectors(r)},this.setConnections=(n,r)=>{re.setConnections(n,r),te.setConnections(n,r)},this.fetchIdentity=n=>qe.fetchIdentity(n),this.getReownName=n=>Lf.getNamesForAddress(n),this.getConnectors=()=>J.getConnectors(),this.getConnectorImage=n=>Nt.getConnectorImage(n),this.getConnections=n=>this.remoteFeatures.multiWallet?Vi.getConnectionsData(n).connections:(On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.getRecentConnections=n=>this.remoteFeatures.multiWallet?Vi.getConnectionsData(n).recentConnections:(On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.switchConnection=async n=>{if(!this.remoteFeatures.multiWallet){On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}await te.switchConnection(n)},this.deleteConnection=n=>{if(!this.remoteFeatures.multiWallet){On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}re.deleteAddressFromConnection(n),te.syncStorageConnections()},this.setConnectedWalletInfo=(n,r)=>{const i=dt.getProviderId(r),s=n?{...n,type:i}:void 0;v.setAccountProp("connectedWalletInfo",s,r)},this.getIsConnectedState=()=>!!v.state.activeCaipAddress,this.addAddressLabel=(n,r,i)=>{var o;const s=((o=v.getAccountData(i))==null?void 0:o.addressLabels)||{};v.setAccountProp("addressLabels",{...s,[n]:r},i)},this.removeAddressLabel=(n,r)=>{var s;const i=((s=v.getAccountData(r))==null?void 0:s.addressLabels)||{};v.setAccountProp("addressLabels",{...i,[n]:void 0},r)},this.getAddress=n=>{var i;const r=n||v.state.activeChain;return(i=v.getAccountData(r))==null?void 0:i.address},this.resetNetwork=n=>{v.resetNetwork(n)},this.addConnector=n=>{J.addConnector(n)},this.resetWcConnection=()=>{te.resetWcConnection()},this.setAddressExplorerUrl=(n,r)=>{v.setAccountProp("addressExplorerUrl",n,r)},this.setSmartAccountDeployed=(n,r)=>{v.setAccountProp("smartAccountDeployed",n,r)},this.setPreferredAccountType=(n,r)=>{v.setAccountProp("preferredAccountType",n,r)},this.setEIP6963Enabled=n=>{V.setEIP6963Enabled(n)},this.handleUnsafeRPCRequest=()=>{if(this.isOpen()){if(this.isTransactionStackEmpty())return;this.redirect("ApproveTransaction")}else this.open({view:"ApproveTransaction"})},this.options=e,this.version=e.sdkVersion,this.caipNetworks=this.extendCaipNetworks(e),this.chainNamespaces=this.getChainNamespacesSet(e.adapters,this.caipNetworks),this.defaultCaipNetwork=this.extendDefaultCaipNetwork(e),this.chainAdapters=this.createAdapters(e.adapters),this.readyPromise=this.initialize(e)}getChainNamespacesSet(e,n){const r=e==null?void 0:e.map(s=>s.namespace).filter(s=>!!s);if(r!=null&&r.length)return[...new Set(r)];const i=n==null?void 0:n.map(s=>s.chainNamespace);return[...new Set(i)]}async initialize(e){var n,r,i,s,o,a;if(this.initializeProjectSettings(e),this.initControllers(e),await this.initChainAdapters(),this.sendInitializeEvent(e),(n=e.features)!=null&&n.headless&&!Pn.hasInjectedConnectors()&&he.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1,fetchRecommendedWallets:!0}),V.state.enableReconnect?(await this.syncExistingConnection(),await this.syncAdapterConnections()):await this.unSyncExistingConnection(),!e.basic&&!e.manualWCControl&&(this.remoteFeatures=await yue.fetchRemoteFeatures(e)),await he.fetchUsage(),V.setRemoteFeatures(this.remoteFeatures),this.remoteFeatures.onramp&&Ib.setOnrampProviders(this.remoteFeatures.onramp),((r=V.state.remoteFeatures)!=null&&r.email||Array.isArray((i=V.state.remoteFeatures)==null?void 0:i.socials)&&((s=V.state.remoteFeatures)==null?void 0:s.socials.length)>0)&&await this.checkAllowedOrigins(),(o=V.state.features)!=null&&o.reownAuthentication||(a=V.state.remoteFeatures)!=null&&a.reownAuthentication){const{ReownAuthentication:c}=await Promise.resolve().then(()=>require("./features-3qQZVoJ9.js")),l=V.state.siwx;l instanceof c||(l&&console.warn("ReownAuthentication option is enabled, SIWX configuration will be overridden."),V.setSIWX(new c))}}async openSend(e){var s;const n=e.namespace||v.state.activeChain,r=this.getCaipAddress(n),i=(s=this.getCaipNetwork(n))==null?void 0:s.id;if(!r)throw new Error("openSend: caipAddress not found");if((i==null?void 0:i.toString())!==e.chainId.toString()){const o=v.getCaipNetworkById(e.chainId,n);if(!o)throw new Error(`openSend: caipNetwork with chainId ${e.chainId} not found`);await this.switchNetwork(o,{throwOnFailure:!0})}try{const o=wk.getTokenSymbolByAddress(e.assetAddress);o&&await he.fetchTokenImages([o])}catch{}return await je.open({view:"WalletSend",data:{send:e}}),new Promise((o,a)=>{const c=tt.subscribeKey("hash",d=>{d&&(u(),o({hash:d}))}),l=je.subscribe(d=>{d.open||(u(),a(new Error("Modal closed")))}),u=this.createCleanupHandler([c,l])})}toModalOptions(){function e(r){return(r==null?void 0:r.view)==="Swap"}function n(r){return(r==null?void 0:r.view)==="WalletSend"}return{isSwap:e,isSend:n}}async checkAllowedOrigins(){try{const e=await he.fetchAllowedOrigins();if(!ee.isClient())return;const n=window.location.origin;sa.isOriginAllowed(n,e,H.DEFAULT_ALLOWED_ANCESTORS)||On.open(Fn.ALERT_ERRORS.ORIGIN_NOT_ALLOWED,"error")}catch(e){if(!(e instanceof Error))return;switch(e.message){case"RATE_LIMITED":On.open(Fn.ALERT_ERRORS.RATE_LIMITED_APP_CONFIGURATION,"error");break;case"SERVER_ERROR":{const n=e.cause instanceof Error?e.cause:e;On.open({displayMessage:Fn.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.displayMessage,debugMessage:Fn.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.debugMessage(n.message)},"error");break}}}}createCleanupHandler(e){return()=>{e.forEach(n=>{try{n()}catch{}})}}sendInitializeEvent(e){var r;const{...n}=e;delete n.adapters,delete n.universalProvider,we.sendEvent({type:"track",event:"INITIALIZE",properties:{...n,networks:e.networks.map(i=>i.id),siweConfig:{options:((r=e.siweConfig)==null?void 0:r.options)||{}}}})}initControllers(e){this.initializeOptionsController(e),this.initializeChainController(e),this.initializeThemeController(e),this.initializeConnectionController(e),this.initializeConnectorController()}initAdapterController(){pC.initialize(this.chainAdapters)}initializeThemeController(e){e.themeMode&&kn.setThemeMode(e.themeMode),e.themeVariables&&kn.setThemeVariables(e.themeVariables)}initializeChainController(e){if(!this.connectionControllerClient)throw new Error("ConnectionControllerClient must be set");v.initialize(e.adapters??[],this.caipNetworks,{connectionControllerClient:this.connectionControllerClient});const n=this.getDefaultNetwork();n&&v.setActiveCaipNetwork(n)}initializeConnectionController(e){te.initialize(e.adapters??[]),te.setWcBasic(e.basic??!1)}initializeConnectorController(){J.initialize(this.chainNamespaces)}initializeProjectSettings(e){V.setProjectId(e.projectId),V.setSdkVersion(e.sdkVersion)}initializeOptionsController(e){var i;V.setDebug(e.debug!==!1),V.setEnableWalletGuide(e.enableWalletGuide!==!1),V.setEnableWallets(e.enableWallets!==!1),V.setEIP6963Enabled(e.enableEIP6963!==!1),V.setEnableNetworkSwitch(e.enableNetworkSwitch!==!1),V.setEnableReconnect(e.enableReconnect!==!1),V.setEnableMobileFullScreen(e.enableMobileFullScreen===!0),V.setCoinbasePreference(e.coinbasePreference),V.setEnableAuthLogger(e.enableAuthLogger!==!1),V.setCustomRpcUrls(e.customRpcUrls),V.setEnableEmbedded(e.enableEmbedded),V.setAllWallets(e.allWallets),V.setIncludeWalletIds(e.includeWalletIds),V.setExcludeWalletIds(e.excludeWalletIds),V.setFeaturedWalletIds(e.featuredWalletIds),V.setTokens(e.tokens),V.setTermsConditionsUrl(e.termsConditionsUrl),V.setPrivacyPolicyUrl(e.privacyPolicyUrl),V.setCustomWallets(e.customWallets),V.setFeatures(e.features),V.setAllowUnsupportedChain(e.allowUnsupportedChain),V.setUniversalProviderConfigOverride(e.universalProviderConfigOverride),V.setPreferUniversalLinks(e.experimental_preferUniversalLinks),V.setDefaultAccountTypes(e.defaultAccountTypes);const n=this.getDefaultMetaData();if(!e.metadata&&n&&(e.metadata=n),V.setMetadata(e.metadata),V.setDisableAppend(e.disableAppend),V.setEnableEmbedded(e.enableEmbedded),V.setSIWX(e.siwx),this.features=V.state.features??{},!e.projectId){On.open(Fn.ALERT_ERRORS.PROJECT_ID_NOT_CONFIGURED,"error");return}if(((i=e.adapters)==null?void 0:i.find(s=>s.namespace===H.CHAIN.EVM))&&e.siweConfig){if(e.siwx)throw new Error("Cannot set both `siweConfig` and `siwx` options");V.setSIWX(e.siweConfig.mapToSIWX())}}getDefaultMetaData(){var e,n,r,i;return ee.isClient()?{name:((n=(e=document.getElementsByTagName("title"))==null?void 0:e[0])==null?void 0:n.textContent)||"",description:((r=document.querySelector('meta[property="og:description"]'))==null?void 0:r.content)||"",url:window.location.origin,icons:[((i=document.querySelector('link[rel~="icon"]'))==null?void 0:i.href)||""]}:null}setUnsupportedNetwork(e){const n=this.getActiveChainNamespace();if(n){const r=Mu.getUnsupportedNetwork(`${n}:${e}`);v.setActiveCaipNetwork(r)}}getDefaultNetwork(){return Mu.getCaipNetworkFromStorage(this.defaultCaipNetwork)}extendCaipNetwork(e,n){return Mu.extendCaipNetwork(e,{customNetworkImageUrls:n.chainImages,projectId:n.projectId})}extendCaipNetworks(e){return Mu.extendCaipNetworks(e.networks,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId})}extendDefaultCaipNetwork(e){const n=e.networks.find(i=>{var s;return i.id===((s=e.defaultNetwork)==null?void 0:s.id)});return n?Mu.extendCaipNetwork(n,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId}):void 0}async disconnectConnector(e,n){var r,i;try{this.setLoading(!0,e);let s={connections:[]};const o=this.getAdapter(e);return(((i=(r=v.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:i.caipAddress)||!V.state.enableReconnect)&&(o!=null&&o.disconnect)&&(s=await o.disconnect({id:n})),this.setLoading(!1,e),s}catch(s){throw this.setLoading(!1,e),new Error(`Failed to disconnect chains: ${s.message}`)}}createClients(){this.connectionControllerClient={connectWalletConnect:async()=>{var l;const e=v.state.activeChain,n=this.getAdapter(e),r=(l=this.getCaipNetwork(e))==null?void 0:l.id,i=te.getConnections(e),s=this.remoteFeatures.multiWallet,o=i.length>0;if(!n)throw new Error("Adapter not found");const a=await n.connectWalletConnect(r);(!o||!s)&&this.close(),this.setClientId((a==null?void 0:a.clientId)||null),re.setConnectedNamespaces([...v.state.chains.keys()]),await this.syncWalletConnectAccount(),await Hn.initializeIfEnabled()},connectExternal:async e=>{const n=await this.onConnectExternal(e);return await this.connectInactiveNamespaces(e,n),n?{address:n.address}:void 0},reconnectExternal:async({id:e,info:n,type:r,provider:i})=>{var a;const s=v.state.activeChain,o=this.getAdapter(s);if(!s)throw new Error("reconnectExternal: namespace not found");if(!o)throw new Error("reconnectExternal: adapter not found");o!=null&&o.reconnect&&(await(o==null?void 0:o.reconnect({id:e,info:n,type:r,provider:i,chainId:(a=this.getCaipNetwork())==null?void 0:a.id})),re.addConnectedNamespace(s),this.syncConnectedWalletInfo(s))},disconnectConnector:async e=>{await this.disconnectConnector(e.namespace,e.id)},disconnect:async e=>{var l;const{id:n,chainNamespace:r,initialDisconnect:i}=e||{},s=r||v.state.activeChain,o=J.getConnectorId(s),a=n===H.CONNECTOR_ID.AUTH||o===H.CONNECTOR_ID.AUTH,c=n===H.CONNECTOR_ID.WALLET_CONNECT||o===H.CONNECTOR_ID.WALLET_CONNECT;try{const u=Array.from(v.state.chains.keys());let d=r?[r]:u;(c||a)&&(d=u);const h=d.map(async p=>{const m=J.getConnectorId(p),b=n||m,C=await this.disconnectConnector(p,b);C&&(a&&re.deleteConnectedSocialProvider(),C.connections.forEach(x=>{re.addDisconnectedConnectorId(x.connectorId,p)})),i&&this.onDisconnectNamespace({chainNamespace:p,closeModal:!1})}),f=await Promise.allSettled(h);tt.resetSend(),te.resetWcConnection(),(l=Hn.getSIWX())!=null&&l.signOutOnDisconnect&&await Hn.clearSessions(),J.setFilterByNamespace(void 0),te.syncStorageConnections();const g=f.filter(p=>p.status==="rejected");if(g.length>0)throw new Error(g.map(p=>p.reason.message).join(", "));we.sendEvent({type:"track",event:"DISCONNECT_SUCCESS",properties:{namespace:r||"all"}})}catch(u){throw new Error(`Failed to disconnect chains: ${u.message}`)}},checkInstalled:e=>e?e.some(n=>{var r;return!!((r=window.ethereum)!=null&&r[String(n)])}):!!window.ethereum,signMessage:async e=>{const n=v.state.activeChain,r=this.getAdapter(v.state.activeChain);if(!n)throw new Error("signMessage: namespace not found");if(!r)throw new Error("signMessage: adapter not found");const i=this.getAddress(n);if(!i)throw new Error("signMessage: address not found");const s=await(r==null?void 0:r.signMessage({message:e,address:i,provider:dt.getProvider(n)}));return(s==null?void 0:s.signature)||""},sendTransaction:async e=>{const n=e.chainNamespace;if(!n)throw new Error("sendTransaction: namespace not found");if(We.SEND_SUPPORTED_NAMESPACES.includes(n)){const r=this.getAdapter(n);if(!r)throw new Error("sendTransaction: adapter not found");const i=dt.getProvider(n),s=await(r==null?void 0:r.sendTransaction({...e,caipNetwork:this.getCaipNetwork(),provider:i}));return(s==null?void 0:s.hash)||""}return""},estimateGas:async e=>{const n=e.chainNamespace;if(n===H.CHAIN.EVM){const r=this.getAdapter(n);if(!r)throw new Error("estimateGas: adapter is required but got undefined");const i=dt.getProvider(n),s=this.getCaipNetwork();if(!s)throw new Error("estimateGas: caipNetwork is required but got undefined");const o=await(r==null?void 0:r.estimateGas({...e,provider:i,caipNetwork:s}));return(o==null?void 0:o.gas)||0n}return 0n},getEnsAvatar:async()=>{var i;const e=v.state.activeChain;if(!e)throw new Error("getEnsAvatar: namespace is required but got undefined");const n=this.getAddress(e);if(!n)throw new Error("getEnsAvatar: address not found");await this.syncIdentity({address:n,chainId:Number((i=this.getCaipNetwork())==null?void 0:i.id),chainNamespace:e});const r=v.getAccountData();return(r==null?void 0:r.profileImage)||!1},getEnsAddress:async e=>await sa.resolveReownName(e),writeContract:async e=>{const n=v.state.activeChain,r=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!r)throw new Error("writeContract: adapter is required but got undefined");const i=this.getCaipNetwork(),s=this.getCaipAddress(),o=dt.getProvider(n);if(!i||!s)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(r==null?void 0:r.writeContract({...e,caipNetwork:i,provider:o,caipAddress:s}));return a==null?void 0:a.hash},writeSolanaTransaction:async e=>{const n=v.state.activeChain,r=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!r)throw new Error("writeContract: adapter is required but got undefined");const i=this.getCaipNetwork(),s=this.getCaipAddress(),o=dt.getProvider(n);if(!i||!s)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(r==null?void 0:r.writeSolanaTransaction({...e,caipNetwork:i,provider:o,caipAddress:s}));return a==null?void 0:a.hash},parseUnits:(e,n)=>{const r=this.getAdapter(v.state.activeChain);if(!r)throw new Error("parseUnits: adapter is required but got undefined");return(r==null?void 0:r.parseUnits({value:e,decimals:n}))??0n},formatUnits:(e,n)=>{const r=this.getAdapter(v.state.activeChain);if(!r)throw new Error("formatUnits: adapter is required but got undefined");return(r==null?void 0:r.formatUnits({value:e,decimals:n}))??"0"},getCapabilities:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("getCapabilities: adapter is required but got undefined");return await(n==null?void 0:n.getCapabilities(e))},grantPermissions:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("grantPermissions: adapter is required but got undefined");return await(n==null?void 0:n.grantPermissions(e))},revokePermissions:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("revokePermissions: adapter is required but got undefined");return n!=null&&n.revokePermissions?await n.revokePermissions(e):"0x"},walletGetAssets:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("walletGetAssets: adapter is required but got undefined");return await(n==null?void 0:n.walletGetAssets(e))??{}},updateBalance:e=>{const n=this.getAddress(e),r=this.getCaipNetwork(e);!r||!n||this.updateNativeBalance(n,r==null?void 0:r.id,e)}},te.setClient(this.connectionControllerClient)}async onConnectExternal(e){var l,u,d,h,f,g,p,m;const n=v.state.activeChain,r=e.chain||n,i=this.getAdapter(r);let s=!0;if(e.type===ir.CONNECTOR_TYPE_AUTH&&H.AUTH_CONNECTOR_SUPPORTED_CHAINS.some(x=>J.getConnectorId(x)===H.CONNECTOR_ID.AUTH)&&e.chain!==n&&(s=!1),e.chain&&e.chain!==n&&!e.caipNetwork){const b=this.getCaipNetworks().find(C=>C.chainNamespace===e.chain);b&&s&&this.setCaipNetwork(b)}if(!r)throw new Error("connectExternal: namespace not found");if(!i)throw new Error("connectExternal: adapter not found");const o=this.getCaipNetwork(r),a=e.caipNetwork||o,c=await i.connect({id:e.id,address:e.address,info:e.info,type:e.type,provider:e.provider,socialUri:e.socialUri,chainId:((l=e.caipNetwork)==null?void 0:l.id)||(o==null?void 0:o.id),rpcUrl:((f=(h=(d=(u=e.caipNetwork)==null?void 0:u.rpcUrls)==null?void 0:d.default)==null?void 0:h.http)==null?void 0:f[0])||((m=(p=(g=o==null?void 0:o.rpcUrls)==null?void 0:g.default)==null?void 0:p.http)==null?void 0:m[0])});if(c)return re.addConnectedNamespace(r),this.syncProvider({...c,chainNamespace:r}),this.setStatus("connected",r),this.syncConnectedWalletInfo(r),re.removeDisconnectedConnectorId(e.id,r),{address:c.address,connectedCaipNetwork:a}}async connectInactiveNamespaces(e,n){var a;const r=e.type===ir.CONNECTOR_TYPE_AUTH,i=dn.getOtherAuthNamespaces((a=n==null?void 0:n.connectedCaipNetwork)==null?void 0:a.chainNamespace),s=v.state.activeCaipNetwork,o=this.getAdapter(s==null?void 0:s.chainNamespace);r&&(await Promise.all(i.map(async c=>{var l,u,d;try{const h=dt.getProvider(c),f=this.getCaipNetwork(c),g=this.getAdapter(c);await(g==null?void 0:g.connect({...e,provider:h,socialUri:void 0,chainId:f==null?void 0:f.id,rpcUrl:(d=(u=(l=f==null?void 0:f.rpcUrls)==null?void 0:l.default)==null?void 0:u.http)==null?void 0:d[0]}))&&(re.addConnectedNamespace(c),re.removeDisconnectedConnectorId(e.id,c),this.setStatus("connected",c),this.syncConnectedWalletInfo(c))}catch(h){On.warn(Fn.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.displayMessage,Fn.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.debugMessage(c,h instanceof Error?h.message:void 0),Fn.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.code)}})),s&&await(o==null?void 0:o.switchNetwork({caipNetwork:s})))}getApprovedCaipNetworksData(){var n,r,i,s,o;if(dt.getProviderId(v.state.activeChain)===ir.CONNECTOR_TYPE_WALLET_CONNECT){const a=(r=(n=this.universalProvider)==null?void 0:n.session)==null?void 0:r.namespaces;return{supportsAllNetworks:((o=(s=(i=this.universalProvider)==null?void 0:i.session)==null?void 0:s.peer)==null?void 0:o.metadata.name)==="MetaMask Wallet",approvedCaipNetworkIds:this.getChainsFromNamespaces(a)}}return{supportsAllNetworks:!0,approvedCaipNetworkIds:[]}}async switchCaipNetwork(e){const n=e.chainNamespace;if(this.getAddressByChainNamespace(e.chainNamespace)){const i=dt.getProviderId(n);if(e.chainNamespace===v.state.activeChain){const s=this.getAdapter(n);await(s==null?void 0:s.switchNetwork({caipNetwork:e}))}else if(this.setCaipNetwork(e),i===ir.CONNECTOR_TYPE_WALLET_CONNECT)this.syncWalletConnectAccount();else{const s=this.getAddressByChainNamespace(n);s&&this.syncAccount({address:s,chainId:e.id,chainNamespace:n})}}else this.setCaipNetwork(e)}getChainsFromNamespaces(e={}){return Object.values(e).flatMap(n=>{const r=n.chains||[],i=n.accounts.map(s=>{const{chainId:o,chainNamespace:a}=hn.parseCaipAddress(s);return`${a}:${o}`});return Array.from(new Set([...r,...i]))})}createAdapters(e){return this.createClients(),this.chainNamespaces.reduce((n,r)=>{var s,o;const i=e==null?void 0:e.find(a=>a.namespace===r);return i?(i.construct({namespace:r,projectId:(s=this.options)==null?void 0:s.projectId,networks:(o=this.caipNetworks)==null?void 0:o.filter(({chainNamespace:a})=>a===r)}),n[r]=i):n[r]=new mue({namespace:r,networks:this.getCaipNetworks()}),n},{})}async initChainAdapter(e){this.onConnectors(e),this.listenAdapter(e);const n=this.getAdapter(e);if(!n)throw new Error("adapter not found");await n.syncConnectors(),await this.createUniversalProviderForAdapter(e)}async initChainAdapters(){await Promise.all(this.chainNamespaces.map(async e=>{await this.initChainAdapter(e)})),this.initAdapterController()}onConnectors(e){const n=this.getAdapter(e);n==null||n.on("connectors",this.setConnectors.bind(this))}listenAdapter(e){const n=this.getAdapter(e);if(!n)return;const r=re.getConnectionStatus();V.state.enableReconnect===!1?this.setStatus("disconnected",e):r==="connected"?this.setStatus("connecting",e):r==="disconnected"?(re.clearAddressCache(),this.setStatus(r,e)):this.setStatus(r,e),n.on("switchNetwork",({address:i,chainId:s})=>{var l,u;const o=this.getCaipNetworks().find(d=>d.id.toString()===s.toString()||d.caipNetworkId.toString()===s.toString()),a=v.state.activeChain===e,c=(u=(l=v.state.chains.get(e))==null?void 0:l.accountState)==null?void 0:u.address;if(o){const d=a&&i?i:c;d&&this.syncAccount({address:d,chainId:o.id,chainNamespace:e})}else this.setUnsupportedNetwork(s)}),n.on("disconnect",()=>{const i=this.remoteFeatures.multiWallet,s=Array.from(te.state.connections.values()).flat();this.onDisconnectNamespace({chainNamespace:e,closeModal:!i||s.length===0})}),n.on("connections",i=>{this.setConnections(i,e)}),n.on("pendingTransactions",()=>{const i=this.getAddress(e),s=v.state.activeCaipNetwork;!i||!(s!=null&&s.id)||this.updateNativeBalance(i,s.id,s.chainNamespace)}),n.on("accountChanged",({address:i,chainId:s,connector:o})=>{var u,d;this.handlePreviousConnectorConnection(o);const a=v.state.activeChain===e;o!=null&&o.provider&&(this.syncProvider({id:o.id,type:o.type,provider:o==null?void 0:o.provider,chainNamespace:e}),this.syncConnectedWalletInfo(e));const c=(d=(u=v.getNetworkData(e))==null?void 0:u.caipNetwork)==null?void 0:d.id,l=s||c;a&&l?this.syncAccount({address:i,chainId:l,chainNamespace:e}):!a&&l?(this.syncAccountInfo(i,l,e),this.syncBalance({address:i,chainId:l,chainNamespace:e})):this.syncAccountInfo(i,s,e),re.addConnectedNamespace(e)})}async handlePreviousConnectorConnection(e){var c;const n=e==null?void 0:e.chain,r=e==null?void 0:e.id,i=J.getConnectorId(n),s=(c=V.state.remoteFeatures)==null?void 0:c.multiWallet,a=n&&r&&i&&i!==r&&!s;try{a&&await te.disconnect({id:i,namespace:n})}catch(l){console.warn("Error disconnecting previous connector",l)}}async createUniversalProviderForAdapter(e){var n,r,i;await this.getUniversalProvider(),this.universalProvider&&await((i=(r=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:r.setUniversalProvider)==null?void 0:i.call(r,this.universalProvider))}async syncExistingConnection(){await Promise.allSettled(this.chainNamespaces.map(e=>this.syncNamespaceConnection(e)))}async unSyncExistingConnection(){try{await Promise.allSettled(this.chainNamespaces.map(e=>te.disconnect({namespace:e,initialDisconnect:!0})))}catch(e){console.error("Error disconnecting existing connections:",e)}}async reconnectWalletConnect(){await this.syncWalletConnectAccount();const e=this.getAddress();this.getCaipAddress()||re.deleteRecentWallet();const n=re.getRecentWallet();we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:e,properties:{method:ee.isMobile()?"mobile":"qrcode",name:(n==null?void 0:n.name)||"Unknown",reconnect:!0,view:Z.state.view,walletRank:n==null?void 0:n.order}})}async syncNamespaceConnection(e){try{e===H.CHAIN.EVM&&ee.isSafeApp()&&J.setConnectorId(H.CONNECTOR_ID.SAFE,e);const n=J.getConnectorId(e);switch(this.setStatus("connecting",e),n){case H.CONNECTOR_ID.WALLET_CONNECT:await this.reconnectWalletConnect();break;case H.CONNECTOR_ID.AUTH:break;default:await this.syncAdapterConnection(e)}}catch(n){console.warn("AppKit couldn't sync existing connection",n),this.setStatus("disconnected",e)}}onDisconnectNamespace(e){const{chainNamespace:n,closeModal:r}=e||{};v.resetAccount(n),v.resetNetwork(n),re.removeConnectedNamespace(n);const i=Array.from(v.state.chains.keys());(n?[n]:i).forEach(o=>re.addDisconnectedConnectorId(J.getConnectorId(o)||"",o)),J.removeConnectorId(n),dt.resetChain(n),this.setUser(null,n),this.setStatus("disconnected",n),this.setConnectedWalletInfo(null,n),r!==!1&&je.close()}async syncAdapterConnections(){await Promise.allSettled(this.chainNamespaces.map(e=>{const n=this.getAdapter(e),r=this.getCaipAddress(e),i=this.getCaipNetwork(e);return n==null?void 0:n.syncConnections({connectToFirstConnector:!r,caipNetwork:i})}))}async syncAdapterConnection(e){var a,c,l,u,d;const n=this.getAdapter(e),r=this.getCaipNetwork(e),i=J.getConnectorId(e),o=J.getConnectors(e).find(h=>h.id===i);try{if(!n||!o)throw new Error(`Adapter or connector not found for namespace ${e}`);if(!(r!=null&&r.id))throw new Error("CaipNetwork not found");const h=await(n==null?void 0:n.syncConnection({namespace:e,id:o.id,chainId:r.id,rpcUrl:(l=(c=(a=r==null?void 0:r.rpcUrls)==null?void 0:a.default)==null?void 0:c.http)==null?void 0:l[0]}));h?(this.syncProvider({...h,chainNamespace:e}),await this.syncAccount({...h,chainNamespace:e}),this.setStatus("connected",e),we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:h.address,properties:{method:"browser",name:((u=o.info)==null?void 0:u.name)||o.name||"Unknown",reconnect:!0,view:Z.state.view,walletRank:(d=o==null?void 0:o.explorerWallet)==null?void 0:d.order}})):this.setStatus("disconnected",e)}catch{this.onDisconnectNamespace({chainNamespace:e,closeModal:!1})}}async syncWalletConnectAccount(){var r,i;const e=Object.keys(((i=(r=this.universalProvider)==null?void 0:r.session)==null?void 0:i.namespaces)||{}),n=this.chainNamespaces.map(async s=>{var d,h,f,g,p;const o=this.getAdapter(s);if(!o)return;const a=((g=(f=(h=(d=this.universalProvider)==null?void 0:d.session)==null?void 0:h.namespaces)==null?void 0:f[s])==null?void 0:g.accounts)||[],c=(p=v.state.activeCaipNetwork)==null?void 0:p.id,l=a.find(m=>{const{chainId:b}=hn.parseCaipAddress(m);return b===(c==null?void 0:c.toString())})||a[0];if(l){const m=hn.validateCaipAddress(l),{chainId:b,address:C}=hn.parseCaipAddress(m);if(dt.setProviderId(s,ir.CONNECTOR_TYPE_WALLET_CONNECT),this.caipNetworks&&v.state.activeCaipNetwork&&o.namespace!==H.CHAIN.EVM){const x=o.getWalletConnectProvider({caipNetworks:this.getCaipNetworks(),provider:this.universalProvider,activeCaipNetwork:v.state.activeCaipNetwork});dt.setProvider(s,x)}else dt.setProvider(s,this.universalProvider);J.setConnectorId(H.CONNECTOR_ID.WALLET_CONNECT,s),re.addConnectedNamespace(s),await this.syncAccount({address:C,chainId:b,chainNamespace:s})}else e.includes(s)&&this.setStatus("disconnected",s);const u=this.getApprovedCaipNetworksData();this.syncConnectedWalletInfo(s),v.setApprovedCaipNetworksData(s,{approvedCaipNetworkIds:u.approvedCaipNetworkIds,supportsAllNetworks:u.supportsAllNetworks})});await Promise.all(n)}syncProvider({type:e,provider:n,id:r,chainNamespace:i}){dt.setProviderId(i,e),dt.setProvider(i,n),J.setConnectorId(r,i)}async syncAccount(e){var d,h;const n=e.chainNamespace===v.state.activeChain,r=v.getCaipNetworkByNamespace(e.chainNamespace,e.chainId),{address:i,chainId:s,chainNamespace:o}=e,{chainId:a}=re.getActiveNetworkProps(),c=(r==null?void 0:r.id)||a,l=((d=v.state.activeCaipNetwork)==null?void 0:d.name)===H.UNSUPPORTED_NETWORK_NAME,u=v.getNetworkProp("supportsAllNetworks",o);if(this.setStatus("connected",o),!(l&&!u)&&c){let f=this.getCaipNetworks().find(b=>b.id.toString()===c.toString()),g=this.getCaipNetworks().find(b=>b.chainNamespace===o);if(!u&&!f&&!g){const b=this.getApprovedCaipNetworkIds()||[],C=b.find(A=>{var I;return((I=hn.parseCaipNetworkId(A))==null?void 0:I.chainId)===c.toString()}),x=b.find(A=>{var I;return((I=hn.parseCaipNetworkId(A))==null?void 0:I.chainNamespace)===o});f=this.getCaipNetworks().find(A=>A.caipNetworkId===C),g=this.getCaipNetworks().find(A=>A.caipNetworkId===x||"deprecatedCaipNetworkId"in A&&A.deprecatedCaipNetworkId===x)}const p=f||g;(p==null?void 0:p.chainNamespace)===v.state.activeChain?V.state.enableNetworkSwitch&&!V.state.allowUnsupportedChain&&((h=v.state.activeCaipNetwork)==null?void 0:h.name)===H.UNSUPPORTED_NETWORK_NAME?v.showUnsupportedChainUI():this.setCaipNetwork(p):n||r&&this.setCaipNetworkOfNamespace(r,o),this.syncConnectedWalletInfo(o);const m=this.getAddress(o);dn.isLowerCaseMatch(i,m)||this.syncAccountInfo(i,p==null?void 0:p.id,o),n?await this.syncBalance({address:i,chainId:p==null?void 0:p.id,chainNamespace:o}):await this.syncBalance({address:i,chainId:r==null?void 0:r.id,chainNamespace:o}),this.syncIdentity({address:i,chainId:s,chainNamespace:o})}}async syncAccountInfo(e,n,r){const i=this.getCaipAddress(r),s=n||(i==null?void 0:i.split(":")[1]);if(!s)return;const o=`${r}:${s}:${e}`;this.setCaipAddress(o,r,!0),await this.syncIdentity({address:e,chainId:s,chainNamespace:r})}async syncReownName(e,n){try{const r=await this.getReownName(e);if(r[0]){const i=r[0];this.setProfileName(i.name,n)}else this.setProfileName(null,n)}catch{this.setProfileName(null,n)}}syncConnectedWalletInfo(e){var i;const n=J.getConnectorId(e),r=dt.getProviderId(e);if(r===ir.CONNECTOR_TYPE_ANNOUNCED||r===ir.CONNECTOR_TYPE_INJECTED){if(n){const o=this.getConnectors().find(a=>{var d,h;const c=a.id===n,l=((d=a.info)==null?void 0:d.rdns)===n,u=(h=a.connectors)==null?void 0:h.some(f=>{var g;return f.id===n||((g=f.info)==null?void 0:g.rdns)===n});return c||l||!!u});if(o){const{info:a,name:c,imageUrl:l}=o,u=l||this.getConnectorImage(o);this.setConnectedWalletInfo({name:c,icon:u,...a},e)}}}else if(r===ir.CONNECTOR_TYPE_WALLET_CONNECT){const s=dt.getProvider(e);s!=null&&s.session&&this.setConnectedWalletInfo({...s.session.peer.metadata,name:s.session.peer.metadata.name,icon:(i=s.session.peer.metadata.icons)==null?void 0:i[0]},e)}else if(n&&(n===H.CONNECTOR_ID.COINBASE_SDK||n===H.CONNECTOR_ID.COINBASE)){const s=this.getConnectors().find(l=>l.id===n),o=(s==null?void 0:s.name)||"Coinbase Wallet",a=(s==null?void 0:s.imageUrl)||this.getConnectorImage(s),c=s==null?void 0:s.info;this.setConnectedWalletInfo({...c,name:o,icon:a},e)}}async syncBalance(e){!W4.getNetworksByNamespace(this.getCaipNetworks(),e.chainNamespace).find(r=>{var i;return r.id.toString()===((i=e.chainId)==null?void 0:i.toString())})||!e.chainId||await this.updateNativeBalance(e.address,e.chainId,e.chainNamespace)}async ready(){await this.readyPromise}async updateNativeBalance(e,n,r){const i=this.getAdapter(r),s=v.getCaipNetworkByNamespace(r,n);if(i){const o=await i.getBalance({address:e,chainId:n,caipNetwork:s,tokens:this.options.tokens});return this.setBalance(o.balance,o.symbol,r),o}}async initializeUniversalAdapter(){var i,s,o,a,c,l,u,d,h,f;const e=Ple.createLogger((g,...p)=>{g&&this.handleAlertError(g),console.error(...p)}),n={projectId:(i=this.options)==null?void 0:i.projectId,metadata:{name:(s=this.options)!=null&&s.metadata?(o=this.options)==null?void 0:o.metadata.name:"",description:(a=this.options)!=null&&a.metadata?(c=this.options)==null?void 0:c.metadata.description:"",url:(l=this.options)!=null&&l.metadata?(u=this.options)==null?void 0:u.metadata.url:"",icons:(d=this.options)!=null&&d.metadata?(h=this.options)==null?void 0:h.metadata.icons:[""]},logger:e};V.setManualWCControl(!!((f=this.options)!=null&&f.manualWCControl)),this.universalProvider=this.options.universalProvider??await Wce.init(n);const r=this.universalProvider.disconnect.bind(this.universalProvider);this.universalProvider.disconnect=async()=>{try{return await r()}catch(g){if(g instanceof Error&&g.message.includes("Missing or invalid. Record was recently deleted"))return;throw g}},V.state.enableReconnect===!1&&this.universalProvider.session&&await this.universalProvider.disconnect(),this.listenWalletConnect()}listenWalletConnect(){this.universalProvider&&this.chainNamespaces.forEach(e=>{sa.listenWcProvider({universalProvider:this.universalProvider,namespace:e,onDisplayUri:n=>{te.setUri(n)},onConnect:n=>{const{address:r}=ee.getAccount(n[0]);for(const i of this.chainNamespaces)re.removeDisconnectedConnectorId(H.CONNECTOR_ID.WALLET_CONNECT,i);te.finalizeWcConnection(r)},onDisconnect:()=>{v.state.noAdapters&&this.resetAccount(e),te.resetWcConnection()},onChainChanged:n=>{const r=v.state.activeChain,i=r&&J.state.activeConnectorIds[r]===H.CONNECTOR_ID.WALLET_CONNECT;if(r===e&&(v.state.noAdapters||i)){const s=this.getCaipNetworks().find(a=>a.id.toString()===n.toString()||a.caipNetworkId.toString()===n.toString()),o=this.getCaipNetwork();if(!s){this.setUnsupportedNetwork(n);return}(o==null?void 0:o.id.toString())!==(s==null?void 0:s.id.toString())&&(o==null?void 0:o.chainNamespace)===(s==null?void 0:s.chainNamespace)&&this.setCaipNetwork(s)}},onAccountsChanged:n=>{const r=v.state.activeChain,i=r&&J.state.activeConnectorIds[r]===H.CONNECTOR_ID.WALLET_CONNECT;if(r===e&&(v.state.noAdapters||i)){const s=n==null?void 0:n[0];s&&this.syncAccount({address:s.address,chainId:s.chainId,chainNamespace:s.chainNamespace})}}})})}createUniversalProvider(){var e;return!this.universalProviderInitPromise&&ee.isClient()&&((e=this.options)!=null&&e.projectId)&&(this.universalProviderInitPromise=this.initializeUniversalAdapter()),this.universalProviderInitPromise}async getUniversalProvider(){if(!this.universalProvider)try{await this.createUniversalProvider()}catch(e){we.sendEvent({type:"error",event:"INTERNAL_SDK_ERROR",properties:{errorType:"UniversalProviderInitError",errorMessage:e instanceof Error?e.message:"Unknown",uncaught:!1}}),console.error("AppKit:getUniversalProvider - Cannot create provider",e)}return this.universalProvider}getDisabledCaipNetworks(){const e=v.getAllApprovedCaipNetworkIds(),n=v.getAllRequestedCaipNetworks();return ee.sortRequestedNetworks(e,n).filter(i=>v.isCaipNetworkDisabled(i))}handleAlertError(e){const n=Object.entries(Fn.UniversalProviderErrors).find(([,{message:a}])=>e.message.includes(a)),[r,i]=n??[],{message:s,alertErrorKey:o}=i??{};if(r&&s&&!this.reportedAlertErrors[r]){const a=Fn.ALERT_ERRORS[o];a&&(On.open(a,"error"),this.reportedAlertErrors[r]=!0)}}getAdapter(e){var n;if(e)return(n=this.chainAdapters)==null?void 0:n[e]}createAdapter(e){var i,s;if(!e)return;const n=e.namespace;if(!n)return;this.createClients();const r=e;r.namespace=n,r.construct({namespace:n,projectId:(i=this.options)==null?void 0:i.projectId,networks:(s=this.caipNetworks)==null?void 0:s.filter(({chainNamespace:o})=>o===n)}),this.chainNamespaces.includes(n)||this.chainNamespaces.push(n),this.chainAdapters&&(this.chainAdapters[n]=r)}async open(e){await this.injectModalUi(),e!=null&&e.uri&&te.setUri(e.uri);const{isSwap:n,isSend:r}=this.toModalOptions();return n(e)?je.open({...e,data:{swap:e.arguments}}):r(e)&&e.arguments?this.openSend(e.arguments):je.open(e)}async close(){await this.injectModalUi(),je.close()}setLoading(e,n){je.setLoading(e,n)}async disconnect(e){await te.disconnect({namespace:e})}getSIWX(){return V.state.siwx}getError(){return""}getChainId(){var e;return(e=v.state.activeCaipNetwork)==null?void 0:e.id}async switchNetwork(e,{throwOnFailure:n=!1}={}){const r=this.getCaipNetworks().find(i=>i.id===e.id);if(!r){On.open(Fn.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND,"error");return}await v.switchActiveNetwork(r,{throwOnFailure:n})}getWalletProvider(){return v.state.activeChain?dt.state.providers[v.state.activeChain]:null}getWalletProviderType(){return dt.getProviderId(v.state.activeChain)}subscribeProviders(e){return dt.subscribeProviders(e)}getThemeMode(){return kn.state.themeMode}getThemeVariables(){return kn.state.themeVariables}setThemeMode(e){kn.setThemeMode(e),A5(kn.state.themeMode)}setTermsConditionsUrl(e){V.setTermsConditionsUrl(e)}setPrivacyPolicyUrl(e){V.setPrivacyPolicyUrl(e)}setThemeVariables(e){kn.setThemeVariables(e),aue(kn.state.themeVariables)}subscribeTheme(e){return kn.subscribe(e)}subscribeConnections(e){return this.remoteFeatures.multiWallet?te.subscribe(e):(On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),()=>{})}getWalletInfo(e){var r,i;if(e)return(i=(r=v.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:i.connectedWalletInfo;const n=v.getAccountData();return n==null?void 0:n.connectedWalletInfo}getAccount(e){const n=e||v.state.activeChain,r=J.getAuthConnector(n),i=v.getAccountData(n),s=re.getConnectedConnectorId(v.state.activeChain),o=te.getConnections(n);if(!n)throw new Error("AppKit:getAccount - namespace is required");const a=o.flatMap(c=>c.accounts.map(({address:l,type:u,publicKey:d})=>ee.createAccount(n,l,u||"eoa",d)));if(i)return{allAccounts:a,caipAddress:i.caipAddress,address:ee.getPlainAddress(i.caipAddress),isConnected:!!i.caipAddress,status:i.status,embeddedWalletInfo:r&&s===H.CONNECTOR_ID.AUTH?{user:i.user?{...i.user,username:re.getConnectedSocialUsername()}:void 0,authProvider:i.socialProvider||"email",accountType:rn(n),isSmartAccountDeployed:!!i.smartAccountDeployed}:void 0}}subscribeAccount(e,n){const r=()=>{const i=this.getAccount(n);i&&e(i)};n?v.subscribeChainProp("accountState",r,n):v.subscribe(r),J.subscribe(r)}subscribeNetwork(e){return v.subscribe(({activeCaipNetwork:n})=>{e({caipNetwork:n,chainId:n==null?void 0:n.id,caipNetworkId:n==null?void 0:n.caipNetworkId})})}subscribeWalletInfo(e,n){return n?v.subscribeChainProp("accountState",r=>e(r==null?void 0:r.connectedWalletInfo),n):v.subscribeChainProp("accountState",r=>e(r==null?void 0:r.connectedWalletInfo))}subscribeShouldUpdateToAddress(e){v.subscribeChainProp("accountState",n=>e(n==null?void 0:n.shouldUpdateToAddress))}subscribeCaipNetworkChange(e){v.subscribeKey("activeCaipNetwork",e)}getState(){return Ki.state}getRemoteFeatures(){return V.state.remoteFeatures}subscribeState(e){return Ki.subscribe(e)}subscribeRemoteFeatures(e){return V.subscribeKey("remoteFeatures",e)}showErrorMessage(e){nt.showError(e)}showSuccessMessage(e){nt.showSuccess(e)}getEvent(){return{...we.state}}subscribeEvents(e){return we.subscribe(e)}replace(e){Z.replace(e)}redirect(e){Z.push(e)}popTransactionStack(e){Z.popTransactionStack(e)}isOpen(){return je.state.open}isTransactionStackEmpty(){return Z.state.transactionStack.length===0}static getInstance(){return this.instance}updateFeatures(e){V.setFeatures(e)}updateRemoteFeatures(e){V.setRemoteFeatures(e)}updateOptions(e){const r={...V.state||{},...e};V.setOptions(r)}setConnectMethodsOrder(e){V.setConnectMethodsOrder(e)}setWalletFeaturesOrder(e){V.setWalletFeaturesOrder(e)}setCollapseWallets(e){V.setCollapseWallets(e)}setSocialsOrder(e){V.setSocialsOrder(e)}getConnectMethodsOrder(){return Gi.getConnectOrderMethod(V.state.features,J.getConnectors())}addNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);const r=this.extendCaipNetwork(n,this.options);this.getCaipNetworks().find(i=>i.id===r.id)||v.addNetwork(r)}removeNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);this.getCaipNetworks().find(i=>i.id===n)&&v.removeNetwork(e,n)}}let d7=!1;class xue extends bue{async onAuthProviderConnected(e){const n=dn.userChainIdToChainNamespace(e==null?void 0:e.chainId);if(e.message&&e.signature&&e.siwxMessage&&await Hn.addEmbeddedWalletSession({chainId:e.siwxMessage.chainId,accountAddress:e.address,notBefore:e.siwxMessage.notBefore,statement:e.siwxMessage.statement,resources:e.siwxMessage.resources,requestId:e.siwxMessage.requestId,issuedAt:e.siwxMessage.issuedAt,domain:e.siwxMessage.domain,uri:e.siwxMessage.uri,version:e.siwxMessage.version,nonce:e.siwxMessage.nonce},e.message,e.signature),!n)throw new Error("AppKit:onAuthProviderConnected - namespace is required");const r=n===H.CHAIN.EVM?`eip155:${e.chainId}:${e.address}`:`${e.chainId}:${e.address}`,i=V.state.defaultAccountTypes[n],s=rn(n),o=e.preferredAccountType||s||i;this.setCaipAddress(r,n);const{signature:a,siwxMessage:c,message:l,...u}=e,d=v.getAccountData(n);this.setUser({...(d==null?void 0:d.user)||{},...u},n),this.setSmartAccountDeployed(!!e.smartAccountDeployed,n),this.setPreferredAccountType(o,n),await Promise.all([this.syncAuthConnectorTheme(this.authProvider),this.syncAccount({address:e.address,chainId:e.chainId,chainNamespace:n})]),this.setLoading(!1,n)}setupAuthConnectorListeners(e){e.onRpcRequest(n=>{di.checkIfRequestExists(n)?di.checkIfRequestIsSafe(n)||this.handleUnsafeRPCRequest():(this.open(),console.error($t.RPC_METHOD_NOT_ALLOWED_MESSAGE,{method:n.method}),setTimeout(()=>{this.showErrorMessage($t.RPC_METHOD_NOT_ALLOWED_UI_MESSAGE)},300),e.rejectRpcRequests())}),e.onRpcError(()=>{this.isOpen()&&(this.isTransactionStackEmpty()?this.close():this.popTransactionStack("error"))}),e.onRpcSuccess((n,r)=>{const i=di.checkIfRequestIsSafe(r),s=this.getAddress(),o=v.state.activeCaipNetwork;i||(s&&(o!=null&&o.id)&&this.updateNativeBalance(s,o.id,o.chainNamespace),this.isTransactionStackEmpty()?this.close():this.popTransactionStack("success"))}),e.onNotConnected(()=>{const n=v.state.activeChain;if(!n)throw new Error("AppKit:onNotConnected - namespace is required");J.getConnectorId(n)===H.CONNECTOR_ID.AUTH&&(this.setCaipAddress(null,n),this.setLoading(!1,n))}),e.onConnect(this.onAuthProviderConnected.bind(this)),e.onSocialConnected(this.onAuthProviderConnected.bind(this)),e.onSetPreferredAccount(({address:n,type:r})=>{const i=v.state.activeChain;if(!i)throw new Error("AppKit:onSetPreferredAccount - namespace is required");n&&this.setPreferredAccountType(r,i)})}async syncAuthConnectorTheme(e){if(!e)return;const n=kn.getSnapshot();await e.syncTheme({themeMode:n.themeMode,themeVariables:n.themeVariables,w3mThemeVariables:Hp(n.themeVariables,n.themeMode)})}async syncAuthConnector(e,n){var u,d,h,f,g,p,m,b,C;const r=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(n),i=n===v.state.activeChain;if(!r)return;this.setLoading(!0,n);const s=e.getLoginEmailUsed();this.setLoading(s,n),s&&this.setStatus("connecting",n);const o=e.getEmail(),a=e.getUsername(),c=((u=v.getAccountData(n))==null?void 0:u.user)||{};this.setUser({...c,username:a,email:o},n),this.setupAuthConnectorListeners(e);const{isConnected:l}=await e.isConnected();if(n&&r&&i)if(l&&((d=this.connectionControllerClient)!=null&&d.connectExternal)){await e.init(),await this.syncAuthConnectorTheme(e),await((g=this.connectionControllerClient)==null?void 0:g.connectExternal({id:H.CONNECTOR_ID.AUTH,info:{name:H.CONNECTOR_ID.AUTH},type:ir.CONNECTOR_TYPE_AUTH,provider:e,chainId:(f=(h=v.getNetworkData(n))==null?void 0:h.caipNetwork)==null?void 0:f.id,chain:n})),this.setStatus("connected",n);const x=re.getConnectedSocialProvider();x?we.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",address:this.getAddress(),properties:{provider:x,reconnect:!0}}):we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:this.getAddress(),properties:{method:"email",name:((C=(b=(m=(p=this.universalProvider)==null?void 0:p.session)==null?void 0:m.peer)==null?void 0:b.metadata)==null?void 0:C.name)||"Unknown",reconnect:!0,view:Z.state.view,walletRank:void 0}})}else J.getConnectorId(n)===H.CONNECTOR_ID.AUTH&&(this.setStatus("disconnected",n),re.removeConnectedNamespace(n));this.setLoading(!1,n)}async checkExistingTelegramSocialConnection(e){var n;try{if(!ee.isTelegram())return;const r=re.getTelegramSocialProvider();if(!r||!ee.isClient())return;const s=new URL(window.location.href).searchParams.get("result_uri");if(!s)return;r&&v.setAccountProp("socialProvider",r,e),await((n=this.authProvider)==null?void 0:n.init());const o=J.getAuthConnector();r&&o&&(this.setLoading(!0,e),await te.connectExternal({id:o.id,type:o.type,socialUri:s},o.chain),re.setConnectedSocialProvider(r),re.removeTelegramSocialProvider(),we.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:r}}))}catch(r){this.setLoading(!1,e),console.error("checkExistingSTelegramocialConnection error",r)}try{const r=new URL(window.location.href);r.searchParams.delete("result_uri"),window.history.replaceState({},document.title,r.toString())}catch(r){console.error("tma social login failed",r)}}createAuthProvider(e){var l,u,d,h;if(!H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(e))return;const r=(l=this.remoteFeatures)==null?void 0:l.email,i=Array.isArray((u=this.remoteFeatures)==null?void 0:u.socials)&&this.remoteFeatures.socials.length>0,s=r||i,a=dn.getActiveNamespaceConnectedToAuth()||e;!this.authProvider&&((d=this.options)!=null&&d.projectId)&&s&&(this.authProvider=mm.getInstance({projectId:this.options.projectId,enableLogger:this.options.enableAuthLogger,chainId:(h=this.getCaipNetwork(a))==null?void 0:h.caipNetworkId,abortController:Fn.EmbeddedWalletAbortController,onTimeout:f=>{f==="iframe_load_failed"?On.open(Fn.ALERT_ERRORS.IFRAME_LOAD_FAILED,"error"):f==="iframe_request_timeout"?On.open(Fn.ALERT_ERRORS.IFRAME_REQUEST_TIMEOUT,"error"):f==="unverified_domain"&&On.open(Fn.ALERT_ERRORS.UNVERIFIED_DOMAIN,"error")},getActiveCaipNetwork:f=>gf(f),getCaipNetworks:f=>v.getCaipNetworks(f)}),Ki.subscribeOpen(f=>{var g;!f&&this.isTransactionStackEmpty()&&((g=this.authProvider)==null||g.rejectRpcRequests())}));const c=e===v.state.activeChain&&V.state.enableReconnect;V.state.enableReconnect===!1?this.syncAuthConnectorTheme(this.authProvider):this.authProvider&&c&&(this.syncAuthConnector(this.authProvider,e),this.checkExistingTelegramSocialConnection(e))}createAuthProviderForAdapter(e){var n,r,i;this.createAuthProvider(e),this.authProvider&&((i=(r=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:r.setAuthProvider)==null||i.call(r,this.authProvider))}initControllers(e){super.initControllers(e),this.options.excludeWalletIds&&he.initializeExcludedWallets({ids:this.options.excludeWalletIds})}async switchCaipNetwork(e){var o,a,c;if(!e)return;const n=v.state.activeChain,r=e.chainNamespace,i=this.getAddressByChainNamespace(r);if(r===n&&((o=v.getAccountData(r))!=null&&o.caipAddress)){const l=this.getAdapter(r);await(l==null?void 0:l.switchNetwork({caipNetwork:e})),this.setCaipNetwork(e)}else{const u=dt.getProviderId(n)===ir.CONNECTOR_TYPE_AUTH,d=dt.getProviderId(r),h=d===ir.CONNECTOR_TYPE_AUTH,f=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(r);if(!r)throw new Error("AppKit:switchCaipNetwork - networkNamespace is required");if((u&&d===void 0||h)&&f)try{if(v.state.activeChain=e.chainNamespace,i){const g=this.getAdapter(r);await(g==null?void 0:g.switchNetwork({caipNetwork:e}))}else await((c=(a=this.connectionControllerClient)==null?void 0:a.connectExternal)==null?void 0:c.call(a,{id:H.CONNECTOR_ID.AUTH,provider:this.authProvider,chain:r,chainId:e.id,type:ir.CONNECTOR_TYPE_AUTH,caipNetwork:e}));this.setCaipNetwork(e)}catch{const p=this.getAdapter(r);await(p==null?void 0:p.switchNetwork({caipNetwork:e}))}else if(d===ir.CONNECTOR_TYPE_WALLET_CONNECT){if(!v.state.noAdapters){const g=this.getAdapter(r);await(g==null?void 0:g.switchNetwork({caipNetwork:e}))}this.setCaipNetwork(e),this.syncWalletConnectAccount()}else this.setCaipNetwork(e),i&&this.syncAccount({address:i,chainId:e.id,chainNamespace:r})}}async initialize(e){var n;await super.initialize(e),(n=this.chainNamespaces)==null||n.forEach(r=>{this.createAuthProviderForAdapter(r)}),await this.injectModalUi(),Ki.set({initialized:!0})}async syncIdentity({address:e,chainId:n,chainNamespace:r}){var a;const i=`${r}:${n}`,s=(a=this.caipNetworks)==null?void 0:a.find(c=>c.caipNetworkId===i);if(s!=null&&s.testnet){this.setProfileName(null,r),this.setProfileImage(null,r);return}const o=J.getConnectorId(r)===H.CONNECTOR_ID.AUTH;try{const{name:c,avatar:l}=await this.fetchIdentity({address:e});!c&&o?await this.syncReownName(e,r):(this.setProfileName(c,r),this.setProfileImage(l,r))}catch{n!==1&&this.setProfileImage(null,r)}}syncConnectedWalletInfo(e){const n=dt.getProviderId(e);if(n===ir.CONNECTOR_TYPE_AUTH){const r=this.authProvider;if(r){const i=re.getConnectedSocialProvider()??"email",s=r.getEmail()??r.getUsername();this.setConnectedWalletInfo({name:n,identifier:s,social:i},e)}}else super.syncConnectedWalletInfo(e)}async injectModalUi(){if(ee.isClient()&&!d7)try{const e={...We.DEFAULT_FEATURES,...this.options.features},n=this.remoteFeatures;if(await this.loadModalComponents(e,n),ee.isClient()&&!document.querySelector("w3m-modal")){const i=document.createElement("w3m-modal");!V.state.disableAppend&&!V.state.enableEmbedded&&document.body.insertAdjacentElement("beforeend",i)}d7=!0}catch(e){console.error("Error injecting modal UI:",e)}}async loadModalComponents(e,n){if(!ee.isClient())return;const r=[];(n.email||n.socials&&n.socials.length>0)&&r.push(Promise.resolve().then(()=>require("./embedded-wallet-Do1h12oF.js"))),n.email&&r.push(Promise.resolve().then(()=>require("./email-Bb8TiksZ.js"))),n.socials&&r.push(Promise.resolve().then(()=>require("./socials-Cu_B8mCk.js"))),n.swaps&&n.swaps.length>0&&r.push(Promise.resolve().then(()=>require("./swaps-C9PoDZOv.js"))),e.send&&r.push(Promise.resolve().then(()=>require("./send-B3h0xUoI.js"))),e.receive&&r.push(Promise.resolve().then(()=>require("./receive-DI_BR-Kp.js"))),n.onramp&&n.onramp.length>0&&r.push(Promise.resolve().then(()=>require("./onramp-B6w59Uog.js"))),n.payWithExchange&&r.push(Promise.resolve().then(()=>require("./pay-with-exchange-CU_wbxzI.js"))),n.activity&&r.push(Promise.resolve().then(()=>require("./transactions-Clw8oIVh.js"))),(e.pay||n.payments)&&r.push(Promise.resolve().then(()=>require("./index-1uaRGfNG.js"))),n.emailCapture&&r.push(Promise.resolve().then(()=>require("./data-capture-plL1YmV9.js"))),await Promise.all([...r,Promise.resolve().then(()=>require("./index-BF0RE6hb.js")),Promise.resolve().then(()=>require("./w3m-modal-DagyNV6w.js"))])}}let rl;function Eue(t){t&&(rl=t)}function vue(){if(!rl)throw new Error('Please call "createAppKit" before using "useAppKit" hook');async function t(n){return rl==null?void 0:rl.open(n)}async function e(){await(rl==null?void 0:rl.close())}return{open:t,close:e}}const Cue="1.8.16";/**
|
|
296
|
+
`},hexToRgb(t){const e=parseInt(t,16),n=e>>16&255,r=e>>8&255,i=e&255;return[n,r,i]},tintColor(t,e){const[n,r,i]=t,s=Math.round(n+(255-n)*e),o=Math.round(r+(255-r)*e),a=Math.round(i+(255-i)*e);return[s,o,a]},isNumber(t){return{number:/^[0-9]+$/u}.number.test(t)},getColorTheme(t){var e;return t||(typeof window<"u"&&window.matchMedia&&typeof window.matchMedia=="function"?(e=window.matchMedia("(prefers-color-scheme: dark)"))!=null&&e.matches?"dark":"light":"dark")},splitBalance(t){const e=t.split(".");return e.length===2?[e[0],e[1]]:["0","00"]},roundNumber(t,e,n){return t.toString().length>=e?Number(t).toFixed(n):t},cssDurationToNumber(t){return t.endsWith("s")?Number(t.replace("s",""))*1e3:t.endsWith("ms")?Number(t.replace("ms","")):0},maskInput({value:t,decimals:e,integers:n}){if(t=t.replace(",","."),t===py)return`0${py}`;const[r="",i]=t.split(py).map(u=>u.replace(/[^0-9]/gu,"")),s=n?r.substring(0,n):r,o=s.length===2?String(Number(s)):s,a=typeof e=="number"?i==null?void 0:i.substring(0,e):i,c=typeof e!="number"||e>0;return(typeof a=="string"&&c?[o,a].join(py):o)??""},capitalize(t){return t?t.charAt(0).toUpperCase()+t.slice(1):""}},cue=3,gy=.1,lue=["receive","deposit","borrow","claim"],uue=["withdraw","repay","burn"],xf={getTransactionGroupTitle(t,e){const n=ov.getYear(),r=ov.getMonthNameByIndex(e);return t===n?r:`${r} ${t}`},getTransactionImages(t){const[e]=t;return(t==null?void 0:t.length)>1?t.map(r=>this.getTransactionImage(r)):[this.getTransactionImage(e)]},getTransactionImage(t){return{type:xf.getTransactionTransferTokenType(t),url:xf.getTransactionImageURL(t)}},getTransactionImageURL(t){var i,s,o,a,c;let e;const n=!!(t!=null&&t.nft_info),r=!!(t!=null&&t.fungible_info);return t&&n?e=(o=(s=(i=t==null?void 0:t.nft_info)==null?void 0:i.content)==null?void 0:s.preview)==null?void 0:o.url:t&&r&&(e=(c=(a=t==null?void 0:t.fungible_info)==null?void 0:a.icon)==null?void 0:c.url),e},getTransactionTransferTokenType(t){if(t!=null&&t.fungible_info)return"FUNGIBLE";if(t!=null&&t.nft_info)return"NFT"},getTransactionDescriptions(t,e){var h;const n=(h=t==null?void 0:t.metadata)==null?void 0:h.operationType,r=e||(t==null?void 0:t.transfers),i=r&&r.length>0,s=r&&r.length>1,o=i&&r.every(f=>!!(f!=null&&f.fungible_info)),[a,c]=r||[];let l=this.getTransferDescription(a),u=this.getTransferDescription(c);if(!i)return(n==="send"||n==="receive")&&o?(l=zt.getTruncateString({string:t==null?void 0:t.metadata.sentFrom,charsStart:4,charsEnd:6,truncate:"middle"}),u=zt.getTruncateString({string:t==null?void 0:t.metadata.sentTo,charsStart:4,charsEnd:6,truncate:"middle"}),[l,u]):[t.metadata.status];if(s)return r==null?void 0:r.map(f=>this.getTransferDescription(f));let d="";return lue.includes(n)?d="+":uue.includes(n)&&(d="-"),l=d.concat(l),[l]},getTransferDescription(t){var n;let e="";return t&&(t!=null&&t.nft_info?e=((n=t==null?void 0:t.nft_info)==null?void 0:n.name)||"-":t!=null&&t.fungible_info&&(e=this.getFungibleTransferDescription(t)||"-")),e},getFungibleTransferDescription(t){var r;return t?[this.getQuantityFixedValue(t==null?void 0:t.quantity.numeric),(r=t==null?void 0:t.fungible_info)==null?void 0:r.symbol].join(" ").trim():null},mergeTransfers(t){if((t==null?void 0:t.length)<=1)return t;const n=this.filterGasFeeTransfers(t).reduce((i,s)=>{var c;const o=(c=s==null?void 0:s.fungible_info)==null?void 0:c.name,a=i.find(({fungible_info:l,direction:u})=>o&&o===(l==null?void 0:l.name)&&u===s.direction);if(a){const l=Number(a.quantity.numeric)+Number(s.quantity.numeric);a.quantity.numeric=l.toString(),a.value=(a.value||0)+(s.value||0)}else i.push(s);return i},[]);let r=n;return n.length>2&&(r=n.sort((i,s)=>(s.value||0)-(i.value||0)).slice(0,2)),r=r.sort((i,s)=>i.direction==="out"&&s.direction==="in"?-1:i.direction==="in"&&s.direction==="out"?1:0),r},filterGasFeeTransfers(t){const e=t==null?void 0:t.reduce((r,i)=>{var o;const s=(o=i==null?void 0:i.fungible_info)==null?void 0:o.name;return s&&(r[s]||(r[s]=[]),r[s].push(i)),r},{}),n=[];return Object.values(e??{}).forEach(r=>{if(r.length===1){const i=r[0];i&&n.push(i)}else{const i=r.filter(o=>o.direction==="in"),s=r.filter(o=>o.direction==="out");if(i.length===1&&s.length===1){const o=i[0],a=s[0];let c=!1;if(o&&a){const l=Number(o.quantity.numeric),u=Number(a.quantity.numeric);u<l*gy?(n.push(o),c=!0):l<u*gy&&(n.push(a),c=!0)}c||n.push(...r)}else{const o=this.filterGasFeesFromTokenGroup(r);n.push(...o)}}}),t==null||t.forEach(r=>{var i;(i=r==null?void 0:r.fungible_info)!=null&&i.name||n.push(r)}),n},filterGasFeesFromTokenGroup(t){if(t.length<=1)return t;const e=t==null?void 0:t.map(a=>Number(a.quantity.numeric)),n=Math.max(...e),r=Math.min(...e),i=.01;if(r<n*i)return t==null?void 0:t.filter(c=>Number(c.quantity.numeric)>=n*i);const s=t==null?void 0:t.filter(a=>a.direction==="in"),o=t==null?void 0:t.filter(a=>a.direction==="out");if(s.length===1&&o.length===1){const a=s[0],c=o[0];if(a&&c){const l=Number(a.quantity.numeric),u=Number(c.quantity.numeric);if(u<l*gy)return[a];if(l<u*gy)return[c]}}return t},getQuantityFixedValue(t){return t?parseFloat(t).toFixed(cue):null}};function due(t,e){const{kind:n,elements:r}=e;return{kind:n,elements:r,finisher(i){customElements.get(t)||customElements.define(t,i)}}}function hue(t,e){return customElements.get(t)||customElements.define(t,e),e}function se(t){return function(n){return typeof n=="function"?hue(t,n):due(t,n)}}function fue(t){if(t.length>=255)throw new TypeError("Alphabet too long");const e=new Uint8Array(256);for(let l=0;l<e.length;l++)e[l]=255;for(let l=0;l<t.length;l++){const u=t.charAt(l),d=u.charCodeAt(0);if(e[d]!==255)throw new TypeError(u+" is ambiguous");e[d]=l}const n=t.length,r=t.charAt(0),i=Math.log(n)/Math.log(256),s=Math.log(256)/Math.log(n);function o(l){if(l instanceof Uint8Array||(ArrayBuffer.isView(l)?l=new Uint8Array(l.buffer,l.byteOffset,l.byteLength):Array.isArray(l)&&(l=Uint8Array.from(l))),!(l instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(l.length===0)return"";let u=0,d=0,h=0;const f=l.length;for(;h!==f&&l[h]===0;)h++,u++;const g=(f-h)*s+1>>>0,p=new Uint8Array(g);for(;h!==f;){let C=l[h],x=0;for(let A=g-1;(C!==0||x<d)&&A!==-1;A--,x++)C+=256*p[A]>>>0,p[A]=C%n>>>0,C=C/n>>>0;if(C!==0)throw new Error("Non-zero carry");d=x,h++}let m=g-d;for(;m!==g&&p[m]===0;)m++;let b=r.repeat(u);for(;m<g;++m)b+=t.charAt(p[m]);return b}function a(l){if(typeof l!="string")throw new TypeError("Expected String");if(l.length===0)return new Uint8Array;let u=0,d=0,h=0;for(;l[u]===r;)d++,u++;const f=(l.length-u)*i+1>>>0,g=new Uint8Array(f);for(;u<l.length;){const C=l.charCodeAt(u);if(C>255)return;let x=e[C];if(x===255)return;let A=0;for(let I=f-1;(x!==0||A<h)&&I!==-1;I--,A++)x+=n*g[I]>>>0,g[I]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");h=A,u++}let p=f-h;for(;p!==f&&g[p]===0;)p++;const m=new Uint8Array(d+(f-p));let b=d;for(;p!==f;)m[b++]=g[p++];return m}function c(l){const u=a(l);if(u)return u;throw new Error("Non-base"+n+" character")}return{encode:o,decodeUnsafe:a,decode:c}}var pue="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";const gue=fue(pue),Bl={ERROR_CODE_UNRECOGNIZED_CHAIN_ID:4902,ERROR_CODE_DEFAULT:5e3,ERROR_INVALID_CHAIN_ID:32603};class mue extends dk{async setUniversalProvider(e){if(!this.namespace)throw new Error("UniversalAdapter:setUniversalProvider - namespace is required");return this.addConnector(new hk({provider:e,caipNetworks:this.getCaipNetworks(),namespace:this.namespace})),Promise.resolve()}async connect(e){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:Number(e.chainId),provider:this.provider,address:""})}async disconnect(){try{await this.getWalletConnectConnector().disconnect(),this.emit("disconnect")}catch(e){console.warn("UniversalAdapter:disconnect - error",e)}return{connections:[]}}syncConnections(){return Promise.resolve()}async writeSolanaTransaction(){return Promise.resolve({hash:""})}async getAccounts({namespace:e}){var i,s,o,a;const n=this.provider,r=((a=(o=(s=(i=n==null?void 0:n.session)==null?void 0:i.namespaces)==null?void 0:s[e])==null?void 0:o.accounts)==null?void 0:a.map(c=>{const[,,l]=c.split(":");return l}).filter((c,l,u)=>u.indexOf(c)===l))||[];return Promise.resolve({accounts:r.map(c=>ee.createAccount(e,c,e==="bip122"?"payment":"eoa"))})}async syncConnectors(){return Promise.resolve()}async getBalance(e){var o,a,c,l,u;if(!(e.caipNetwork&&We.BALANCE_SUPPORTED_CHAINS.includes((o=e.caipNetwork)==null?void 0:o.chainNamespace))||(a=e.caipNetwork)!=null&&a.testnet)return{balance:"0.00",symbol:((c=e.caipNetwork)==null?void 0:c.nativeCurrency.symbol)||""};const r=v.getAccountData();if(r!=null&&r.balanceLoading&&e.chainId===((l=v.state.activeCaipNetwork)==null?void 0:l.id))return{balance:(r==null?void 0:r.balance)||"0.00",symbol:(r==null?void 0:r.balanceSymbol)||""};const s=(await v.fetchTokenBalance()).find(d=>{var h,f;return d.chainId===`${(h=e.caipNetwork)==null?void 0:h.chainNamespace}:${e.chainId}`&&d.symbol===((f=e.caipNetwork)==null?void 0:f.nativeCurrency.symbol)});return{balance:(s==null?void 0:s.quantity.numeric)||"0.00",symbol:(s==null?void 0:s.symbol)||((u=e.caipNetwork)==null?void 0:u.nativeCurrency.symbol)||""}}async signMessage(e){var o,a,c;const{provider:n,message:r,address:i}=e;if(!n)throw new Error("UniversalAdapter:signMessage - provider is undefined");let s="";return((o=v.state.activeCaipNetwork)==null?void 0:o.chainNamespace)===H.CHAIN.SOLANA?s=(await n.request({method:"solana_signMessage",params:{message:gue.encode(new TextEncoder().encode(r)),pubkey:i}},(a=v.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)).signature:s=await n.request({method:"personal_sign",params:[r,i]},(c=v.state.activeCaipNetwork)==null?void 0:c.caipNetworkId),{signature:s}}async estimateGas(){return Promise.resolve({gas:BigInt(0)})}async sendTransaction(){return Promise.resolve({hash:""})}walletGetAssets(e){return Promise.resolve({})}async writeContract(){return Promise.resolve({hash:""})}emitFirstAvailableConnection(){}parseUnits(){return 0n}formatUnits(){return"0"}async getCapabilities(){return Promise.resolve({})}async grantPermissions(){return Promise.resolve({})}async revokePermissions(){return Promise.resolve("0x")}async syncConnection(){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:1,provider:this.provider,address:""})}async switchNetwork(e){var i,s,o,a,c,l;const{caipNetwork:n}=e,r=this.getWalletConnectConnector();if(n.chainNamespace===H.CHAIN.EVM)try{await((i=r.provider)==null?void 0:i.request({method:"wallet_switchEthereumChain",params:[{chainId:qp(n.id)}]}))}catch(u){if(u.code===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||u.code===Bl.ERROR_INVALID_CHAIN_ID||u.code===Bl.ERROR_CODE_DEFAULT||((o=(s=u==null?void 0:u.data)==null?void 0:s.originalError)==null?void 0:o.code)===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)try{await((l=r.provider)==null?void 0:l.request({method:"wallet_addEthereumChain",params:[{chainId:qp(n.id),rpcUrls:[(a=n==null?void 0:n.rpcUrls.chainDefault)==null?void 0:a.http],chainName:n.name,nativeCurrency:n.nativeCurrency,blockExplorerUrls:[(c=n.blockExplorers)==null?void 0:c.default.url]}]}))}catch{throw new Error("Chain is not supported")}}r.provider.setDefaultChain(n.caipNetworkId)}getWalletConnectProvider(){const e=this.connectors.find(r=>r.type==="WALLET_CONNECT");return e==null?void 0:e.provider}}const wue=["email","socials","swaps","onramp","activity","reownBranding","multiWallet","emailCapture","payWithExchange","payments","reownAuthentication","headless"],my={email:{apiFeatureName:"social_login",localFeatureName:"email",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return!!t.isEnabled&&e.includes("email")},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.email:!!t},socials:{apiFeatureName:"social_login",localFeatureName:"socials",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e.filter(n=>n!=="email"):!1},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.socials:typeof t=="boolean"?t?We.DEFAULT_REMOTE_FEATURES.socials:!1:t},swaps:{apiFeatureName:"swap",localFeatureName:"swaps",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e:!1},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.swaps:typeof t=="boolean"?t?We.DEFAULT_REMOTE_FEATURES.swaps:!1:t},onramp:{apiFeatureName:"onramp",localFeatureName:"onramp",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e:!1},processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.onramp:typeof t=="boolean"?t?We.DEFAULT_REMOTE_FEATURES.onramp:!1:t},activity:{apiFeatureName:"activity",localFeatureName:"history",returnType:!1,isLegacy:!0,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.activity:!!t},reownBranding:{apiFeatureName:"reown_branding",localFeatureName:"reownBranding",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>t===void 0?We.DEFAULT_REMOTE_FEATURES.reownBranding:!!t},emailCapture:{apiFeatureName:"email_capture",localFeatureName:"emailCapture",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>t.isEnabled&&(t.config??[]),processFallback:t=>!1},multiWallet:{apiFeatureName:"multi_wallet",localFeatureName:"multiWallet",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.multiWallet},payWithExchange:{apiFeatureName:"fund_from_exchange",localFeatureName:"payWithExchange",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.payWithExchange},payments:{apiFeatureName:"payments",localFeatureName:"payments",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.payments},reownAuthentication:{apiFeatureName:"reown_authentication",localFeatureName:"reownAuthentication",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>typeof t>"u"?We.DEFAULT_REMOTE_FEATURES.reownAuthentication:!!t},headless:{apiFeatureName:"headless",localFeatureName:"headless",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>We.DEFAULT_REMOTE_FEATURES.headless}},yue={localSettingsOverridden:new Set,getApiConfig(t,e){return e==null?void 0:e.find(n=>n.id===t)},addWarning(t,e){if(t!==void 0){const n=my[e],r=n.isLegacy?`"features.${n.localFeatureName}" (now "${e}")`:`"features.${e}"`;this.localSettingsOverridden.add(r)}},processFeature(t,e,n,r,i){const s=my[t],o=e[s.localFeatureName];if(i&&!s.isAvailableOnBasic)return!1;if(r){const a=this.getApiConfig(s.apiFeatureName,n);return(a==null?void 0:a.config)===null?this.processFallbackFeature(t,o):a!=null&&a.config?(o!==void 0&&this.addWarning(o,t),this.processApiFeature(t,a)):!1}return this.processFallbackFeature(t,o)},processApiFeature(t,e){return my[t].processApi(e)},processFallbackFeature(t,e){return my[t].processFallback(e)},async fetchRemoteFeatures(t){const e=t.basic??!1,n=t.features||{};this.localSettingsOverridden.clear();let r=null,i=!1;try{r=await he.fetchProjectConfig(),i=r!=null}catch(o){console.warn("[Reown Config] Failed to fetch remote project configuration. Using local/default values.",o)}const s=i&&!e?We.DEFAULT_REMOTE_FEATURES:We.DEFAULT_REMOTE_FEATURES_DISABLED;try{for(const o of wue){const a=this.processFeature(o,n,r,i,e);Object.assign(s,{[o]:a})}}catch(o){return console.warn("[Reown Config] Failed to process the configuration from Cloud. Using default values.",o),We.DEFAULT_REMOTE_FEATURES}if(i&&this.localSettingsOverridden.size>0){const o=`Your local configuration for ${Array.from(this.localSettingsOverridden).join(", ")} was ignored because a remote configuration was successfully fetched. Please manage these features via your project dashboard on dashboard.reown.com.`;On.open({debugMessage:Fn.ALERT_WARNINGS.LOCAL_CONFIGURATION_IGNORED.debugMessage(o)},"warning")}return s}};class bue{constructor(e){this.chainNamespaces=[],this.features={},this.remoteFeatures={},this.reportedAlertErrors={},this.getCaipNetwork=(n,r)=>{var i,s,o;if(n){const a=(i=v.getCaipNetworks(n))==null?void 0:i.find(u=>u.id===r);if(a)return a;const c=(s=v.getNetworkData(n))==null?void 0:s.caipNetwork;return c||((o=v.getRequestedCaipNetworks(n).filter(u=>u.chainNamespace===n))==null?void 0:o[0])}return v.state.activeCaipNetwork||this.defaultCaipNetwork},this.getCaipNetworkId=()=>{const n=this.getCaipNetwork();if(n)return n.id},this.getCaipNetworks=n=>v.getCaipNetworks(n),this.getActiveChainNamespace=()=>v.state.activeChain,this.setRequestedCaipNetworks=(n,r)=>{v.setRequestedCaipNetworks(n,r)},this.getApprovedCaipNetworkIds=()=>v.getAllApprovedCaipNetworkIds(),this.getCaipAddress=n=>{var r,i;return v.state.activeChain===n||!n?v.state.activeCaipAddress:(i=(r=v.state.chains.get(n))==null?void 0:r.accountState)==null?void 0:i.caipAddress},this.setClientId=n=>{qe.setClientId(n)},this.getProvider=n=>dt.getProvider(n),this.getProviderType=n=>dt.getProviderId(n),this.getPreferredAccountType=n=>rn(n),this.setCaipAddress=(n,r,i=!1)=>{v.setAccountProp("caipAddress",n,r,i),v.setAccountProp("address",ee.getPlainAddress(n),r,i)},this.setBalance=(n,r,i)=>{v.setAccountProp("balance",n,i),v.setAccountProp("balanceSymbol",r,i)},this.setProfileName=(n,r)=>{v.setAccountProp("profileName",n,r)},this.setProfileImage=(n,r)=>{v.setAccountProp("profileImage",n,r)},this.setUser=(n,r)=>{v.setAccountProp("user",n,r)},this.resetAccount=n=>{v.resetAccount(n)},this.setCaipNetwork=n=>{v.setActiveCaipNetwork(n)},this.setCaipNetworkOfNamespace=(n,r)=>{v.setChainNetworkData(r,{caipNetwork:n})},this.setStatus=(n,r)=>{v.setAccountProp("status",n,r),J.isConnected()?re.setConnectionStatus("connected"):re.setConnectionStatus("disconnected")},this.getAddressByChainNamespace=n=>{var r;return(r=v.getAccountData(n))==null?void 0:r.address},this.setConnectors=n=>{const r=[...J.state.allConnectors,...n];J.setConnectors(r)},this.setConnections=(n,r)=>{re.setConnections(n,r),te.setConnections(n,r)},this.fetchIdentity=n=>qe.fetchIdentity(n),this.getReownName=n=>Lf.getNamesForAddress(n),this.getConnectors=()=>J.getConnectors(),this.getConnectorImage=n=>Nt.getConnectorImage(n),this.getConnections=n=>this.remoteFeatures.multiWallet?Vi.getConnectionsData(n).connections:(On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.getRecentConnections=n=>this.remoteFeatures.multiWallet?Vi.getConnectionsData(n).recentConnections:(On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.switchConnection=async n=>{if(!this.remoteFeatures.multiWallet){On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}await te.switchConnection(n)},this.deleteConnection=n=>{if(!this.remoteFeatures.multiWallet){On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}re.deleteAddressFromConnection(n),te.syncStorageConnections()},this.setConnectedWalletInfo=(n,r)=>{const i=dt.getProviderId(r),s=n?{...n,type:i}:void 0;v.setAccountProp("connectedWalletInfo",s,r)},this.getIsConnectedState=()=>!!v.state.activeCaipAddress,this.addAddressLabel=(n,r,i)=>{var o;const s=((o=v.getAccountData(i))==null?void 0:o.addressLabels)||{};v.setAccountProp("addressLabels",{...s,[n]:r},i)},this.removeAddressLabel=(n,r)=>{var s;const i=((s=v.getAccountData(r))==null?void 0:s.addressLabels)||{};v.setAccountProp("addressLabels",{...i,[n]:void 0},r)},this.getAddress=n=>{var i;const r=n||v.state.activeChain;return(i=v.getAccountData(r))==null?void 0:i.address},this.resetNetwork=n=>{v.resetNetwork(n)},this.addConnector=n=>{J.addConnector(n)},this.resetWcConnection=()=>{te.resetWcConnection()},this.setAddressExplorerUrl=(n,r)=>{v.setAccountProp("addressExplorerUrl",n,r)},this.setSmartAccountDeployed=(n,r)=>{v.setAccountProp("smartAccountDeployed",n,r)},this.setPreferredAccountType=(n,r)=>{v.setAccountProp("preferredAccountType",n,r)},this.setEIP6963Enabled=n=>{V.setEIP6963Enabled(n)},this.handleUnsafeRPCRequest=()=>{if(this.isOpen()){if(this.isTransactionStackEmpty())return;this.redirect("ApproveTransaction")}else this.open({view:"ApproveTransaction"})},this.options=e,this.version=e.sdkVersion,this.caipNetworks=this.extendCaipNetworks(e),this.chainNamespaces=this.getChainNamespacesSet(e.adapters,this.caipNetworks),this.defaultCaipNetwork=this.extendDefaultCaipNetwork(e),this.chainAdapters=this.createAdapters(e.adapters),this.readyPromise=this.initialize(e)}getChainNamespacesSet(e,n){const r=e==null?void 0:e.map(s=>s.namespace).filter(s=>!!s);if(r!=null&&r.length)return[...new Set(r)];const i=n==null?void 0:n.map(s=>s.chainNamespace);return[...new Set(i)]}async initialize(e){var n,r,i,s,o,a;if(this.initializeProjectSettings(e),this.initControllers(e),await this.initChainAdapters(),this.sendInitializeEvent(e),(n=e.features)!=null&&n.headless&&!Pn.hasInjectedConnectors()&&he.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1,fetchRecommendedWallets:!0}),V.state.enableReconnect?(await this.syncExistingConnection(),await this.syncAdapterConnections()):await this.unSyncExistingConnection(),!e.basic&&!e.manualWCControl&&(this.remoteFeatures=await yue.fetchRemoteFeatures(e)),await he.fetchUsage(),V.setRemoteFeatures(this.remoteFeatures),this.remoteFeatures.onramp&&Ib.setOnrampProviders(this.remoteFeatures.onramp),((r=V.state.remoteFeatures)!=null&&r.email||Array.isArray((i=V.state.remoteFeatures)==null?void 0:i.socials)&&((s=V.state.remoteFeatures)==null?void 0:s.socials.length)>0)&&await this.checkAllowedOrigins(),(o=V.state.features)!=null&&o.reownAuthentication||(a=V.state.remoteFeatures)!=null&&a.reownAuthentication){const{ReownAuthentication:c}=await Promise.resolve().then(()=>require("./features-B1ezv71b.js")),l=V.state.siwx;l instanceof c||(l&&console.warn("ReownAuthentication option is enabled, SIWX configuration will be overridden."),V.setSIWX(new c))}}async openSend(e){var s;const n=e.namespace||v.state.activeChain,r=this.getCaipAddress(n),i=(s=this.getCaipNetwork(n))==null?void 0:s.id;if(!r)throw new Error("openSend: caipAddress not found");if((i==null?void 0:i.toString())!==e.chainId.toString()){const o=v.getCaipNetworkById(e.chainId,n);if(!o)throw new Error(`openSend: caipNetwork with chainId ${e.chainId} not found`);await this.switchNetwork(o,{throwOnFailure:!0})}try{const o=wk.getTokenSymbolByAddress(e.assetAddress);o&&await he.fetchTokenImages([o])}catch{}return await je.open({view:"WalletSend",data:{send:e}}),new Promise((o,a)=>{const c=tt.subscribeKey("hash",d=>{d&&(u(),o({hash:d}))}),l=je.subscribe(d=>{d.open||(u(),a(new Error("Modal closed")))}),u=this.createCleanupHandler([c,l])})}toModalOptions(){function e(r){return(r==null?void 0:r.view)==="Swap"}function n(r){return(r==null?void 0:r.view)==="WalletSend"}return{isSwap:e,isSend:n}}async checkAllowedOrigins(){try{const e=await he.fetchAllowedOrigins();if(!ee.isClient())return;const n=window.location.origin;sa.isOriginAllowed(n,e,H.DEFAULT_ALLOWED_ANCESTORS)||On.open(Fn.ALERT_ERRORS.ORIGIN_NOT_ALLOWED,"error")}catch(e){if(!(e instanceof Error))return;switch(e.message){case"RATE_LIMITED":On.open(Fn.ALERT_ERRORS.RATE_LIMITED_APP_CONFIGURATION,"error");break;case"SERVER_ERROR":{const n=e.cause instanceof Error?e.cause:e;On.open({displayMessage:Fn.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.displayMessage,debugMessage:Fn.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.debugMessage(n.message)},"error");break}}}}createCleanupHandler(e){return()=>{e.forEach(n=>{try{n()}catch{}})}}sendInitializeEvent(e){var r;const{...n}=e;delete n.adapters,delete n.universalProvider,we.sendEvent({type:"track",event:"INITIALIZE",properties:{...n,networks:e.networks.map(i=>i.id),siweConfig:{options:((r=e.siweConfig)==null?void 0:r.options)||{}}}})}initControllers(e){this.initializeOptionsController(e),this.initializeChainController(e),this.initializeThemeController(e),this.initializeConnectionController(e),this.initializeConnectorController()}initAdapterController(){pC.initialize(this.chainAdapters)}initializeThemeController(e){e.themeMode&&kn.setThemeMode(e.themeMode),e.themeVariables&&kn.setThemeVariables(e.themeVariables)}initializeChainController(e){if(!this.connectionControllerClient)throw new Error("ConnectionControllerClient must be set");v.initialize(e.adapters??[],this.caipNetworks,{connectionControllerClient:this.connectionControllerClient});const n=this.getDefaultNetwork();n&&v.setActiveCaipNetwork(n)}initializeConnectionController(e){te.initialize(e.adapters??[]),te.setWcBasic(e.basic??!1)}initializeConnectorController(){J.initialize(this.chainNamespaces)}initializeProjectSettings(e){V.setProjectId(e.projectId),V.setSdkVersion(e.sdkVersion)}initializeOptionsController(e){var i;V.setDebug(e.debug!==!1),V.setEnableWalletGuide(e.enableWalletGuide!==!1),V.setEnableWallets(e.enableWallets!==!1),V.setEIP6963Enabled(e.enableEIP6963!==!1),V.setEnableNetworkSwitch(e.enableNetworkSwitch!==!1),V.setEnableReconnect(e.enableReconnect!==!1),V.setEnableMobileFullScreen(e.enableMobileFullScreen===!0),V.setCoinbasePreference(e.coinbasePreference),V.setEnableAuthLogger(e.enableAuthLogger!==!1),V.setCustomRpcUrls(e.customRpcUrls),V.setEnableEmbedded(e.enableEmbedded),V.setAllWallets(e.allWallets),V.setIncludeWalletIds(e.includeWalletIds),V.setExcludeWalletIds(e.excludeWalletIds),V.setFeaturedWalletIds(e.featuredWalletIds),V.setTokens(e.tokens),V.setTermsConditionsUrl(e.termsConditionsUrl),V.setPrivacyPolicyUrl(e.privacyPolicyUrl),V.setCustomWallets(e.customWallets),V.setFeatures(e.features),V.setAllowUnsupportedChain(e.allowUnsupportedChain),V.setUniversalProviderConfigOverride(e.universalProviderConfigOverride),V.setPreferUniversalLinks(e.experimental_preferUniversalLinks),V.setDefaultAccountTypes(e.defaultAccountTypes);const n=this.getDefaultMetaData();if(!e.metadata&&n&&(e.metadata=n),V.setMetadata(e.metadata),V.setDisableAppend(e.disableAppend),V.setEnableEmbedded(e.enableEmbedded),V.setSIWX(e.siwx),this.features=V.state.features??{},!e.projectId){On.open(Fn.ALERT_ERRORS.PROJECT_ID_NOT_CONFIGURED,"error");return}if(((i=e.adapters)==null?void 0:i.find(s=>s.namespace===H.CHAIN.EVM))&&e.siweConfig){if(e.siwx)throw new Error("Cannot set both `siweConfig` and `siwx` options");V.setSIWX(e.siweConfig.mapToSIWX())}}getDefaultMetaData(){var e,n,r,i;return ee.isClient()?{name:((n=(e=document.getElementsByTagName("title"))==null?void 0:e[0])==null?void 0:n.textContent)||"",description:((r=document.querySelector('meta[property="og:description"]'))==null?void 0:r.content)||"",url:window.location.origin,icons:[((i=document.querySelector('link[rel~="icon"]'))==null?void 0:i.href)||""]}:null}setUnsupportedNetwork(e){const n=this.getActiveChainNamespace();if(n){const r=Mu.getUnsupportedNetwork(`${n}:${e}`);v.setActiveCaipNetwork(r)}}getDefaultNetwork(){return Mu.getCaipNetworkFromStorage(this.defaultCaipNetwork)}extendCaipNetwork(e,n){return Mu.extendCaipNetwork(e,{customNetworkImageUrls:n.chainImages,projectId:n.projectId})}extendCaipNetworks(e){return Mu.extendCaipNetworks(e.networks,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId})}extendDefaultCaipNetwork(e){const n=e.networks.find(i=>{var s;return i.id===((s=e.defaultNetwork)==null?void 0:s.id)});return n?Mu.extendCaipNetwork(n,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId}):void 0}async disconnectConnector(e,n){var r,i;try{this.setLoading(!0,e);let s={connections:[]};const o=this.getAdapter(e);return(((i=(r=v.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:i.caipAddress)||!V.state.enableReconnect)&&(o!=null&&o.disconnect)&&(s=await o.disconnect({id:n})),this.setLoading(!1,e),s}catch(s){throw this.setLoading(!1,e),new Error(`Failed to disconnect chains: ${s.message}`)}}createClients(){this.connectionControllerClient={connectWalletConnect:async()=>{var l;const e=v.state.activeChain,n=this.getAdapter(e),r=(l=this.getCaipNetwork(e))==null?void 0:l.id,i=te.getConnections(e),s=this.remoteFeatures.multiWallet,o=i.length>0;if(!n)throw new Error("Adapter not found");const a=await n.connectWalletConnect(r);(!o||!s)&&this.close(),this.setClientId((a==null?void 0:a.clientId)||null),re.setConnectedNamespaces([...v.state.chains.keys()]),await this.syncWalletConnectAccount(),await Hn.initializeIfEnabled()},connectExternal:async e=>{const n=await this.onConnectExternal(e);return await this.connectInactiveNamespaces(e,n),n?{address:n.address}:void 0},reconnectExternal:async({id:e,info:n,type:r,provider:i})=>{var a;const s=v.state.activeChain,o=this.getAdapter(s);if(!s)throw new Error("reconnectExternal: namespace not found");if(!o)throw new Error("reconnectExternal: adapter not found");o!=null&&o.reconnect&&(await(o==null?void 0:o.reconnect({id:e,info:n,type:r,provider:i,chainId:(a=this.getCaipNetwork())==null?void 0:a.id})),re.addConnectedNamespace(s),this.syncConnectedWalletInfo(s))},disconnectConnector:async e=>{await this.disconnectConnector(e.namespace,e.id)},disconnect:async e=>{var l;const{id:n,chainNamespace:r,initialDisconnect:i}=e||{},s=r||v.state.activeChain,o=J.getConnectorId(s),a=n===H.CONNECTOR_ID.AUTH||o===H.CONNECTOR_ID.AUTH,c=n===H.CONNECTOR_ID.WALLET_CONNECT||o===H.CONNECTOR_ID.WALLET_CONNECT;try{const u=Array.from(v.state.chains.keys());let d=r?[r]:u;(c||a)&&(d=u);const h=d.map(async p=>{const m=J.getConnectorId(p),b=n||m,C=await this.disconnectConnector(p,b);C&&(a&&re.deleteConnectedSocialProvider(),C.connections.forEach(x=>{re.addDisconnectedConnectorId(x.connectorId,p)})),i&&this.onDisconnectNamespace({chainNamespace:p,closeModal:!1})}),f=await Promise.allSettled(h);tt.resetSend(),te.resetWcConnection(),(l=Hn.getSIWX())!=null&&l.signOutOnDisconnect&&await Hn.clearSessions(),J.setFilterByNamespace(void 0),te.syncStorageConnections();const g=f.filter(p=>p.status==="rejected");if(g.length>0)throw new Error(g.map(p=>p.reason.message).join(", "));we.sendEvent({type:"track",event:"DISCONNECT_SUCCESS",properties:{namespace:r||"all"}})}catch(u){throw new Error(`Failed to disconnect chains: ${u.message}`)}},checkInstalled:e=>e?e.some(n=>{var r;return!!((r=window.ethereum)!=null&&r[String(n)])}):!!window.ethereum,signMessage:async e=>{const n=v.state.activeChain,r=this.getAdapter(v.state.activeChain);if(!n)throw new Error("signMessage: namespace not found");if(!r)throw new Error("signMessage: adapter not found");const i=this.getAddress(n);if(!i)throw new Error("signMessage: address not found");const s=await(r==null?void 0:r.signMessage({message:e,address:i,provider:dt.getProvider(n)}));return(s==null?void 0:s.signature)||""},sendTransaction:async e=>{const n=e.chainNamespace;if(!n)throw new Error("sendTransaction: namespace not found");if(We.SEND_SUPPORTED_NAMESPACES.includes(n)){const r=this.getAdapter(n);if(!r)throw new Error("sendTransaction: adapter not found");const i=dt.getProvider(n),s=await(r==null?void 0:r.sendTransaction({...e,caipNetwork:this.getCaipNetwork(),provider:i}));return(s==null?void 0:s.hash)||""}return""},estimateGas:async e=>{const n=e.chainNamespace;if(n===H.CHAIN.EVM){const r=this.getAdapter(n);if(!r)throw new Error("estimateGas: adapter is required but got undefined");const i=dt.getProvider(n),s=this.getCaipNetwork();if(!s)throw new Error("estimateGas: caipNetwork is required but got undefined");const o=await(r==null?void 0:r.estimateGas({...e,provider:i,caipNetwork:s}));return(o==null?void 0:o.gas)||0n}return 0n},getEnsAvatar:async()=>{var i;const e=v.state.activeChain;if(!e)throw new Error("getEnsAvatar: namespace is required but got undefined");const n=this.getAddress(e);if(!n)throw new Error("getEnsAvatar: address not found");await this.syncIdentity({address:n,chainId:Number((i=this.getCaipNetwork())==null?void 0:i.id),chainNamespace:e});const r=v.getAccountData();return(r==null?void 0:r.profileImage)||!1},getEnsAddress:async e=>await sa.resolveReownName(e),writeContract:async e=>{const n=v.state.activeChain,r=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!r)throw new Error("writeContract: adapter is required but got undefined");const i=this.getCaipNetwork(),s=this.getCaipAddress(),o=dt.getProvider(n);if(!i||!s)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(r==null?void 0:r.writeContract({...e,caipNetwork:i,provider:o,caipAddress:s}));return a==null?void 0:a.hash},writeSolanaTransaction:async e=>{const n=v.state.activeChain,r=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!r)throw new Error("writeContract: adapter is required but got undefined");const i=this.getCaipNetwork(),s=this.getCaipAddress(),o=dt.getProvider(n);if(!i||!s)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(r==null?void 0:r.writeSolanaTransaction({...e,caipNetwork:i,provider:o,caipAddress:s}));return a==null?void 0:a.hash},parseUnits:(e,n)=>{const r=this.getAdapter(v.state.activeChain);if(!r)throw new Error("parseUnits: adapter is required but got undefined");return(r==null?void 0:r.parseUnits({value:e,decimals:n}))??0n},formatUnits:(e,n)=>{const r=this.getAdapter(v.state.activeChain);if(!r)throw new Error("formatUnits: adapter is required but got undefined");return(r==null?void 0:r.formatUnits({value:e,decimals:n}))??"0"},getCapabilities:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("getCapabilities: adapter is required but got undefined");return await(n==null?void 0:n.getCapabilities(e))},grantPermissions:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("grantPermissions: adapter is required but got undefined");return await(n==null?void 0:n.grantPermissions(e))},revokePermissions:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("revokePermissions: adapter is required but got undefined");return n!=null&&n.revokePermissions?await n.revokePermissions(e):"0x"},walletGetAssets:async e=>{const n=this.getAdapter(v.state.activeChain);if(!n)throw new Error("walletGetAssets: adapter is required but got undefined");return await(n==null?void 0:n.walletGetAssets(e))??{}},updateBalance:e=>{const n=this.getAddress(e),r=this.getCaipNetwork(e);!r||!n||this.updateNativeBalance(n,r==null?void 0:r.id,e)}},te.setClient(this.connectionControllerClient)}async onConnectExternal(e){var l,u,d,h,f,g,p,m;const n=v.state.activeChain,r=e.chain||n,i=this.getAdapter(r);let s=!0;if(e.type===ir.CONNECTOR_TYPE_AUTH&&H.AUTH_CONNECTOR_SUPPORTED_CHAINS.some(x=>J.getConnectorId(x)===H.CONNECTOR_ID.AUTH)&&e.chain!==n&&(s=!1),e.chain&&e.chain!==n&&!e.caipNetwork){const b=this.getCaipNetworks().find(C=>C.chainNamespace===e.chain);b&&s&&this.setCaipNetwork(b)}if(!r)throw new Error("connectExternal: namespace not found");if(!i)throw new Error("connectExternal: adapter not found");const o=this.getCaipNetwork(r),a=e.caipNetwork||o,c=await i.connect({id:e.id,address:e.address,info:e.info,type:e.type,provider:e.provider,socialUri:e.socialUri,chainId:((l=e.caipNetwork)==null?void 0:l.id)||(o==null?void 0:o.id),rpcUrl:((f=(h=(d=(u=e.caipNetwork)==null?void 0:u.rpcUrls)==null?void 0:d.default)==null?void 0:h.http)==null?void 0:f[0])||((m=(p=(g=o==null?void 0:o.rpcUrls)==null?void 0:g.default)==null?void 0:p.http)==null?void 0:m[0])});if(c)return re.addConnectedNamespace(r),this.syncProvider({...c,chainNamespace:r}),this.setStatus("connected",r),this.syncConnectedWalletInfo(r),re.removeDisconnectedConnectorId(e.id,r),{address:c.address,connectedCaipNetwork:a}}async connectInactiveNamespaces(e,n){var a;const r=e.type===ir.CONNECTOR_TYPE_AUTH,i=dn.getOtherAuthNamespaces((a=n==null?void 0:n.connectedCaipNetwork)==null?void 0:a.chainNamespace),s=v.state.activeCaipNetwork,o=this.getAdapter(s==null?void 0:s.chainNamespace);r&&(await Promise.all(i.map(async c=>{var l,u,d;try{const h=dt.getProvider(c),f=this.getCaipNetwork(c),g=this.getAdapter(c);await(g==null?void 0:g.connect({...e,provider:h,socialUri:void 0,chainId:f==null?void 0:f.id,rpcUrl:(d=(u=(l=f==null?void 0:f.rpcUrls)==null?void 0:l.default)==null?void 0:u.http)==null?void 0:d[0]}))&&(re.addConnectedNamespace(c),re.removeDisconnectedConnectorId(e.id,c),this.setStatus("connected",c),this.syncConnectedWalletInfo(c))}catch(h){On.warn(Fn.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.displayMessage,Fn.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.debugMessage(c,h instanceof Error?h.message:void 0),Fn.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.code)}})),s&&await(o==null?void 0:o.switchNetwork({caipNetwork:s})))}getApprovedCaipNetworksData(){var n,r,i,s,o;if(dt.getProviderId(v.state.activeChain)===ir.CONNECTOR_TYPE_WALLET_CONNECT){const a=(r=(n=this.universalProvider)==null?void 0:n.session)==null?void 0:r.namespaces;return{supportsAllNetworks:((o=(s=(i=this.universalProvider)==null?void 0:i.session)==null?void 0:s.peer)==null?void 0:o.metadata.name)==="MetaMask Wallet",approvedCaipNetworkIds:this.getChainsFromNamespaces(a)}}return{supportsAllNetworks:!0,approvedCaipNetworkIds:[]}}async switchCaipNetwork(e){const n=e.chainNamespace;if(this.getAddressByChainNamespace(e.chainNamespace)){const i=dt.getProviderId(n);if(e.chainNamespace===v.state.activeChain){const s=this.getAdapter(n);await(s==null?void 0:s.switchNetwork({caipNetwork:e}))}else if(this.setCaipNetwork(e),i===ir.CONNECTOR_TYPE_WALLET_CONNECT)this.syncWalletConnectAccount();else{const s=this.getAddressByChainNamespace(n);s&&this.syncAccount({address:s,chainId:e.id,chainNamespace:n})}}else this.setCaipNetwork(e)}getChainsFromNamespaces(e={}){return Object.values(e).flatMap(n=>{const r=n.chains||[],i=n.accounts.map(s=>{const{chainId:o,chainNamespace:a}=hn.parseCaipAddress(s);return`${a}:${o}`});return Array.from(new Set([...r,...i]))})}createAdapters(e){return this.createClients(),this.chainNamespaces.reduce((n,r)=>{var s,o;const i=e==null?void 0:e.find(a=>a.namespace===r);return i?(i.construct({namespace:r,projectId:(s=this.options)==null?void 0:s.projectId,networks:(o=this.caipNetworks)==null?void 0:o.filter(({chainNamespace:a})=>a===r)}),n[r]=i):n[r]=new mue({namespace:r,networks:this.getCaipNetworks()}),n},{})}async initChainAdapter(e){this.onConnectors(e),this.listenAdapter(e);const n=this.getAdapter(e);if(!n)throw new Error("adapter not found");await n.syncConnectors(),await this.createUniversalProviderForAdapter(e)}async initChainAdapters(){await Promise.all(this.chainNamespaces.map(async e=>{await this.initChainAdapter(e)})),this.initAdapterController()}onConnectors(e){const n=this.getAdapter(e);n==null||n.on("connectors",this.setConnectors.bind(this))}listenAdapter(e){const n=this.getAdapter(e);if(!n)return;const r=re.getConnectionStatus();V.state.enableReconnect===!1?this.setStatus("disconnected",e):r==="connected"?this.setStatus("connecting",e):r==="disconnected"?(re.clearAddressCache(),this.setStatus(r,e)):this.setStatus(r,e),n.on("switchNetwork",({address:i,chainId:s})=>{var l,u;const o=this.getCaipNetworks().find(d=>d.id.toString()===s.toString()||d.caipNetworkId.toString()===s.toString()),a=v.state.activeChain===e,c=(u=(l=v.state.chains.get(e))==null?void 0:l.accountState)==null?void 0:u.address;if(o){const d=a&&i?i:c;d&&this.syncAccount({address:d,chainId:o.id,chainNamespace:e})}else this.setUnsupportedNetwork(s)}),n.on("disconnect",()=>{const i=this.remoteFeatures.multiWallet,s=Array.from(te.state.connections.values()).flat();this.onDisconnectNamespace({chainNamespace:e,closeModal:!i||s.length===0})}),n.on("connections",i=>{this.setConnections(i,e)}),n.on("pendingTransactions",()=>{const i=this.getAddress(e),s=v.state.activeCaipNetwork;!i||!(s!=null&&s.id)||this.updateNativeBalance(i,s.id,s.chainNamespace)}),n.on("accountChanged",({address:i,chainId:s,connector:o})=>{var u,d;this.handlePreviousConnectorConnection(o);const a=v.state.activeChain===e;o!=null&&o.provider&&(this.syncProvider({id:o.id,type:o.type,provider:o==null?void 0:o.provider,chainNamespace:e}),this.syncConnectedWalletInfo(e));const c=(d=(u=v.getNetworkData(e))==null?void 0:u.caipNetwork)==null?void 0:d.id,l=s||c;a&&l?this.syncAccount({address:i,chainId:l,chainNamespace:e}):!a&&l?(this.syncAccountInfo(i,l,e),this.syncBalance({address:i,chainId:l,chainNamespace:e})):this.syncAccountInfo(i,s,e),re.addConnectedNamespace(e)})}async handlePreviousConnectorConnection(e){var c;const n=e==null?void 0:e.chain,r=e==null?void 0:e.id,i=J.getConnectorId(n),s=(c=V.state.remoteFeatures)==null?void 0:c.multiWallet,a=n&&r&&i&&i!==r&&!s;try{a&&await te.disconnect({id:i,namespace:n})}catch(l){console.warn("Error disconnecting previous connector",l)}}async createUniversalProviderForAdapter(e){var n,r,i;await this.getUniversalProvider(),this.universalProvider&&await((i=(r=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:r.setUniversalProvider)==null?void 0:i.call(r,this.universalProvider))}async syncExistingConnection(){await Promise.allSettled(this.chainNamespaces.map(e=>this.syncNamespaceConnection(e)))}async unSyncExistingConnection(){try{await Promise.allSettled(this.chainNamespaces.map(e=>te.disconnect({namespace:e,initialDisconnect:!0})))}catch(e){console.error("Error disconnecting existing connections:",e)}}async reconnectWalletConnect(){await this.syncWalletConnectAccount();const e=this.getAddress();this.getCaipAddress()||re.deleteRecentWallet();const n=re.getRecentWallet();we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:e,properties:{method:ee.isMobile()?"mobile":"qrcode",name:(n==null?void 0:n.name)||"Unknown",reconnect:!0,view:Z.state.view,walletRank:n==null?void 0:n.order}})}async syncNamespaceConnection(e){try{e===H.CHAIN.EVM&&ee.isSafeApp()&&J.setConnectorId(H.CONNECTOR_ID.SAFE,e);const n=J.getConnectorId(e);switch(this.setStatus("connecting",e),n){case H.CONNECTOR_ID.WALLET_CONNECT:await this.reconnectWalletConnect();break;case H.CONNECTOR_ID.AUTH:break;default:await this.syncAdapterConnection(e)}}catch(n){console.warn("AppKit couldn't sync existing connection",n),this.setStatus("disconnected",e)}}onDisconnectNamespace(e){const{chainNamespace:n,closeModal:r}=e||{};v.resetAccount(n),v.resetNetwork(n),re.removeConnectedNamespace(n);const i=Array.from(v.state.chains.keys());(n?[n]:i).forEach(o=>re.addDisconnectedConnectorId(J.getConnectorId(o)||"",o)),J.removeConnectorId(n),dt.resetChain(n),this.setUser(null,n),this.setStatus("disconnected",n),this.setConnectedWalletInfo(null,n),r!==!1&&je.close()}async syncAdapterConnections(){await Promise.allSettled(this.chainNamespaces.map(e=>{const n=this.getAdapter(e),r=this.getCaipAddress(e),i=this.getCaipNetwork(e);return n==null?void 0:n.syncConnections({connectToFirstConnector:!r,caipNetwork:i})}))}async syncAdapterConnection(e){var a,c,l,u,d;const n=this.getAdapter(e),r=this.getCaipNetwork(e),i=J.getConnectorId(e),o=J.getConnectors(e).find(h=>h.id===i);try{if(!n||!o)throw new Error(`Adapter or connector not found for namespace ${e}`);if(!(r!=null&&r.id))throw new Error("CaipNetwork not found");const h=await(n==null?void 0:n.syncConnection({namespace:e,id:o.id,chainId:r.id,rpcUrl:(l=(c=(a=r==null?void 0:r.rpcUrls)==null?void 0:a.default)==null?void 0:c.http)==null?void 0:l[0]}));h?(this.syncProvider({...h,chainNamespace:e}),await this.syncAccount({...h,chainNamespace:e}),this.setStatus("connected",e),we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:h.address,properties:{method:"browser",name:((u=o.info)==null?void 0:u.name)||o.name||"Unknown",reconnect:!0,view:Z.state.view,walletRank:(d=o==null?void 0:o.explorerWallet)==null?void 0:d.order}})):this.setStatus("disconnected",e)}catch{this.onDisconnectNamespace({chainNamespace:e,closeModal:!1})}}async syncWalletConnectAccount(){var r,i;const e=Object.keys(((i=(r=this.universalProvider)==null?void 0:r.session)==null?void 0:i.namespaces)||{}),n=this.chainNamespaces.map(async s=>{var d,h,f,g,p;const o=this.getAdapter(s);if(!o)return;const a=((g=(f=(h=(d=this.universalProvider)==null?void 0:d.session)==null?void 0:h.namespaces)==null?void 0:f[s])==null?void 0:g.accounts)||[],c=(p=v.state.activeCaipNetwork)==null?void 0:p.id,l=a.find(m=>{const{chainId:b}=hn.parseCaipAddress(m);return b===(c==null?void 0:c.toString())})||a[0];if(l){const m=hn.validateCaipAddress(l),{chainId:b,address:C}=hn.parseCaipAddress(m);if(dt.setProviderId(s,ir.CONNECTOR_TYPE_WALLET_CONNECT),this.caipNetworks&&v.state.activeCaipNetwork&&o.namespace!==H.CHAIN.EVM){const x=o.getWalletConnectProvider({caipNetworks:this.getCaipNetworks(),provider:this.universalProvider,activeCaipNetwork:v.state.activeCaipNetwork});dt.setProvider(s,x)}else dt.setProvider(s,this.universalProvider);J.setConnectorId(H.CONNECTOR_ID.WALLET_CONNECT,s),re.addConnectedNamespace(s),await this.syncAccount({address:C,chainId:b,chainNamespace:s})}else e.includes(s)&&this.setStatus("disconnected",s);const u=this.getApprovedCaipNetworksData();this.syncConnectedWalletInfo(s),v.setApprovedCaipNetworksData(s,{approvedCaipNetworkIds:u.approvedCaipNetworkIds,supportsAllNetworks:u.supportsAllNetworks})});await Promise.all(n)}syncProvider({type:e,provider:n,id:r,chainNamespace:i}){dt.setProviderId(i,e),dt.setProvider(i,n),J.setConnectorId(r,i)}async syncAccount(e){var d,h;const n=e.chainNamespace===v.state.activeChain,r=v.getCaipNetworkByNamespace(e.chainNamespace,e.chainId),{address:i,chainId:s,chainNamespace:o}=e,{chainId:a}=re.getActiveNetworkProps(),c=(r==null?void 0:r.id)||a,l=((d=v.state.activeCaipNetwork)==null?void 0:d.name)===H.UNSUPPORTED_NETWORK_NAME,u=v.getNetworkProp("supportsAllNetworks",o);if(this.setStatus("connected",o),!(l&&!u)&&c){let f=this.getCaipNetworks().find(b=>b.id.toString()===c.toString()),g=this.getCaipNetworks().find(b=>b.chainNamespace===o);if(!u&&!f&&!g){const b=this.getApprovedCaipNetworkIds()||[],C=b.find(A=>{var I;return((I=hn.parseCaipNetworkId(A))==null?void 0:I.chainId)===c.toString()}),x=b.find(A=>{var I;return((I=hn.parseCaipNetworkId(A))==null?void 0:I.chainNamespace)===o});f=this.getCaipNetworks().find(A=>A.caipNetworkId===C),g=this.getCaipNetworks().find(A=>A.caipNetworkId===x||"deprecatedCaipNetworkId"in A&&A.deprecatedCaipNetworkId===x)}const p=f||g;(p==null?void 0:p.chainNamespace)===v.state.activeChain?V.state.enableNetworkSwitch&&!V.state.allowUnsupportedChain&&((h=v.state.activeCaipNetwork)==null?void 0:h.name)===H.UNSUPPORTED_NETWORK_NAME?v.showUnsupportedChainUI():this.setCaipNetwork(p):n||r&&this.setCaipNetworkOfNamespace(r,o),this.syncConnectedWalletInfo(o);const m=this.getAddress(o);dn.isLowerCaseMatch(i,m)||this.syncAccountInfo(i,p==null?void 0:p.id,o),n?await this.syncBalance({address:i,chainId:p==null?void 0:p.id,chainNamespace:o}):await this.syncBalance({address:i,chainId:r==null?void 0:r.id,chainNamespace:o}),this.syncIdentity({address:i,chainId:s,chainNamespace:o})}}async syncAccountInfo(e,n,r){const i=this.getCaipAddress(r),s=n||(i==null?void 0:i.split(":")[1]);if(!s)return;const o=`${r}:${s}:${e}`;this.setCaipAddress(o,r,!0),await this.syncIdentity({address:e,chainId:s,chainNamespace:r})}async syncReownName(e,n){try{const r=await this.getReownName(e);if(r[0]){const i=r[0];this.setProfileName(i.name,n)}else this.setProfileName(null,n)}catch{this.setProfileName(null,n)}}syncConnectedWalletInfo(e){var i;const n=J.getConnectorId(e),r=dt.getProviderId(e);if(r===ir.CONNECTOR_TYPE_ANNOUNCED||r===ir.CONNECTOR_TYPE_INJECTED){if(n){const o=this.getConnectors().find(a=>{var d,h;const c=a.id===n,l=((d=a.info)==null?void 0:d.rdns)===n,u=(h=a.connectors)==null?void 0:h.some(f=>{var g;return f.id===n||((g=f.info)==null?void 0:g.rdns)===n});return c||l||!!u});if(o){const{info:a,name:c,imageUrl:l}=o,u=l||this.getConnectorImage(o);this.setConnectedWalletInfo({name:c,icon:u,...a},e)}}}else if(r===ir.CONNECTOR_TYPE_WALLET_CONNECT){const s=dt.getProvider(e);s!=null&&s.session&&this.setConnectedWalletInfo({...s.session.peer.metadata,name:s.session.peer.metadata.name,icon:(i=s.session.peer.metadata.icons)==null?void 0:i[0]},e)}else if(n&&(n===H.CONNECTOR_ID.COINBASE_SDK||n===H.CONNECTOR_ID.COINBASE)){const s=this.getConnectors().find(l=>l.id===n),o=(s==null?void 0:s.name)||"Coinbase Wallet",a=(s==null?void 0:s.imageUrl)||this.getConnectorImage(s),c=s==null?void 0:s.info;this.setConnectedWalletInfo({...c,name:o,icon:a},e)}}async syncBalance(e){!W4.getNetworksByNamespace(this.getCaipNetworks(),e.chainNamespace).find(r=>{var i;return r.id.toString()===((i=e.chainId)==null?void 0:i.toString())})||!e.chainId||await this.updateNativeBalance(e.address,e.chainId,e.chainNamespace)}async ready(){await this.readyPromise}async updateNativeBalance(e,n,r){const i=this.getAdapter(r),s=v.getCaipNetworkByNamespace(r,n);if(i){const o=await i.getBalance({address:e,chainId:n,caipNetwork:s,tokens:this.options.tokens});return this.setBalance(o.balance,o.symbol,r),o}}async initializeUniversalAdapter(){var i,s,o,a,c,l,u,d,h,f;const e=Ple.createLogger((g,...p)=>{g&&this.handleAlertError(g),console.error(...p)}),n={projectId:(i=this.options)==null?void 0:i.projectId,metadata:{name:(s=this.options)!=null&&s.metadata?(o=this.options)==null?void 0:o.metadata.name:"",description:(a=this.options)!=null&&a.metadata?(c=this.options)==null?void 0:c.metadata.description:"",url:(l=this.options)!=null&&l.metadata?(u=this.options)==null?void 0:u.metadata.url:"",icons:(d=this.options)!=null&&d.metadata?(h=this.options)==null?void 0:h.metadata.icons:[""]},logger:e};V.setManualWCControl(!!((f=this.options)!=null&&f.manualWCControl)),this.universalProvider=this.options.universalProvider??await Wce.init(n);const r=this.universalProvider.disconnect.bind(this.universalProvider);this.universalProvider.disconnect=async()=>{try{return await r()}catch(g){if(g instanceof Error&&g.message.includes("Missing or invalid. Record was recently deleted"))return;throw g}},V.state.enableReconnect===!1&&this.universalProvider.session&&await this.universalProvider.disconnect(),this.listenWalletConnect()}listenWalletConnect(){this.universalProvider&&this.chainNamespaces.forEach(e=>{sa.listenWcProvider({universalProvider:this.universalProvider,namespace:e,onDisplayUri:n=>{te.setUri(n)},onConnect:n=>{const{address:r}=ee.getAccount(n[0]);for(const i of this.chainNamespaces)re.removeDisconnectedConnectorId(H.CONNECTOR_ID.WALLET_CONNECT,i);te.finalizeWcConnection(r)},onDisconnect:()=>{v.state.noAdapters&&this.resetAccount(e),te.resetWcConnection()},onChainChanged:n=>{const r=v.state.activeChain,i=r&&J.state.activeConnectorIds[r]===H.CONNECTOR_ID.WALLET_CONNECT;if(r===e&&(v.state.noAdapters||i)){const s=this.getCaipNetworks().find(a=>a.id.toString()===n.toString()||a.caipNetworkId.toString()===n.toString()),o=this.getCaipNetwork();if(!s){this.setUnsupportedNetwork(n);return}(o==null?void 0:o.id.toString())!==(s==null?void 0:s.id.toString())&&(o==null?void 0:o.chainNamespace)===(s==null?void 0:s.chainNamespace)&&this.setCaipNetwork(s)}},onAccountsChanged:n=>{const r=v.state.activeChain,i=r&&J.state.activeConnectorIds[r]===H.CONNECTOR_ID.WALLET_CONNECT;if(r===e&&(v.state.noAdapters||i)){const s=n==null?void 0:n[0];s&&this.syncAccount({address:s.address,chainId:s.chainId,chainNamespace:s.chainNamespace})}}})})}createUniversalProvider(){var e;return!this.universalProviderInitPromise&&ee.isClient()&&((e=this.options)!=null&&e.projectId)&&(this.universalProviderInitPromise=this.initializeUniversalAdapter()),this.universalProviderInitPromise}async getUniversalProvider(){if(!this.universalProvider)try{await this.createUniversalProvider()}catch(e){we.sendEvent({type:"error",event:"INTERNAL_SDK_ERROR",properties:{errorType:"UniversalProviderInitError",errorMessage:e instanceof Error?e.message:"Unknown",uncaught:!1}}),console.error("AppKit:getUniversalProvider - Cannot create provider",e)}return this.universalProvider}getDisabledCaipNetworks(){const e=v.getAllApprovedCaipNetworkIds(),n=v.getAllRequestedCaipNetworks();return ee.sortRequestedNetworks(e,n).filter(i=>v.isCaipNetworkDisabled(i))}handleAlertError(e){const n=Object.entries(Fn.UniversalProviderErrors).find(([,{message:a}])=>e.message.includes(a)),[r,i]=n??[],{message:s,alertErrorKey:o}=i??{};if(r&&s&&!this.reportedAlertErrors[r]){const a=Fn.ALERT_ERRORS[o];a&&(On.open(a,"error"),this.reportedAlertErrors[r]=!0)}}getAdapter(e){var n;if(e)return(n=this.chainAdapters)==null?void 0:n[e]}createAdapter(e){var i,s;if(!e)return;const n=e.namespace;if(!n)return;this.createClients();const r=e;r.namespace=n,r.construct({namespace:n,projectId:(i=this.options)==null?void 0:i.projectId,networks:(s=this.caipNetworks)==null?void 0:s.filter(({chainNamespace:o})=>o===n)}),this.chainNamespaces.includes(n)||this.chainNamespaces.push(n),this.chainAdapters&&(this.chainAdapters[n]=r)}async open(e){await this.injectModalUi(),e!=null&&e.uri&&te.setUri(e.uri);const{isSwap:n,isSend:r}=this.toModalOptions();return n(e)?je.open({...e,data:{swap:e.arguments}}):r(e)&&e.arguments?this.openSend(e.arguments):je.open(e)}async close(){await this.injectModalUi(),je.close()}setLoading(e,n){je.setLoading(e,n)}async disconnect(e){await te.disconnect({namespace:e})}getSIWX(){return V.state.siwx}getError(){return""}getChainId(){var e;return(e=v.state.activeCaipNetwork)==null?void 0:e.id}async switchNetwork(e,{throwOnFailure:n=!1}={}){const r=this.getCaipNetworks().find(i=>i.id===e.id);if(!r){On.open(Fn.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND,"error");return}await v.switchActiveNetwork(r,{throwOnFailure:n})}getWalletProvider(){return v.state.activeChain?dt.state.providers[v.state.activeChain]:null}getWalletProviderType(){return dt.getProviderId(v.state.activeChain)}subscribeProviders(e){return dt.subscribeProviders(e)}getThemeMode(){return kn.state.themeMode}getThemeVariables(){return kn.state.themeVariables}setThemeMode(e){kn.setThemeMode(e),A5(kn.state.themeMode)}setTermsConditionsUrl(e){V.setTermsConditionsUrl(e)}setPrivacyPolicyUrl(e){V.setPrivacyPolicyUrl(e)}setThemeVariables(e){kn.setThemeVariables(e),aue(kn.state.themeVariables)}subscribeTheme(e){return kn.subscribe(e)}subscribeConnections(e){return this.remoteFeatures.multiWallet?te.subscribe(e):(On.open(H.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),()=>{})}getWalletInfo(e){var r,i;if(e)return(i=(r=v.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:i.connectedWalletInfo;const n=v.getAccountData();return n==null?void 0:n.connectedWalletInfo}getAccount(e){const n=e||v.state.activeChain,r=J.getAuthConnector(n),i=v.getAccountData(n),s=re.getConnectedConnectorId(v.state.activeChain),o=te.getConnections(n);if(!n)throw new Error("AppKit:getAccount - namespace is required");const a=o.flatMap(c=>c.accounts.map(({address:l,type:u,publicKey:d})=>ee.createAccount(n,l,u||"eoa",d)));if(i)return{allAccounts:a,caipAddress:i.caipAddress,address:ee.getPlainAddress(i.caipAddress),isConnected:!!i.caipAddress,status:i.status,embeddedWalletInfo:r&&s===H.CONNECTOR_ID.AUTH?{user:i.user?{...i.user,username:re.getConnectedSocialUsername()}:void 0,authProvider:i.socialProvider||"email",accountType:rn(n),isSmartAccountDeployed:!!i.smartAccountDeployed}:void 0}}subscribeAccount(e,n){const r=()=>{const i=this.getAccount(n);i&&e(i)};n?v.subscribeChainProp("accountState",r,n):v.subscribe(r),J.subscribe(r)}subscribeNetwork(e){return v.subscribe(({activeCaipNetwork:n})=>{e({caipNetwork:n,chainId:n==null?void 0:n.id,caipNetworkId:n==null?void 0:n.caipNetworkId})})}subscribeWalletInfo(e,n){return n?v.subscribeChainProp("accountState",r=>e(r==null?void 0:r.connectedWalletInfo),n):v.subscribeChainProp("accountState",r=>e(r==null?void 0:r.connectedWalletInfo))}subscribeShouldUpdateToAddress(e){v.subscribeChainProp("accountState",n=>e(n==null?void 0:n.shouldUpdateToAddress))}subscribeCaipNetworkChange(e){v.subscribeKey("activeCaipNetwork",e)}getState(){return Ki.state}getRemoteFeatures(){return V.state.remoteFeatures}subscribeState(e){return Ki.subscribe(e)}subscribeRemoteFeatures(e){return V.subscribeKey("remoteFeatures",e)}showErrorMessage(e){nt.showError(e)}showSuccessMessage(e){nt.showSuccess(e)}getEvent(){return{...we.state}}subscribeEvents(e){return we.subscribe(e)}replace(e){Z.replace(e)}redirect(e){Z.push(e)}popTransactionStack(e){Z.popTransactionStack(e)}isOpen(){return je.state.open}isTransactionStackEmpty(){return Z.state.transactionStack.length===0}static getInstance(){return this.instance}updateFeatures(e){V.setFeatures(e)}updateRemoteFeatures(e){V.setRemoteFeatures(e)}updateOptions(e){const r={...V.state||{},...e};V.setOptions(r)}setConnectMethodsOrder(e){V.setConnectMethodsOrder(e)}setWalletFeaturesOrder(e){V.setWalletFeaturesOrder(e)}setCollapseWallets(e){V.setCollapseWallets(e)}setSocialsOrder(e){V.setSocialsOrder(e)}getConnectMethodsOrder(){return Gi.getConnectOrderMethod(V.state.features,J.getConnectors())}addNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);const r=this.extendCaipNetwork(n,this.options);this.getCaipNetworks().find(i=>i.id===r.id)||v.addNetwork(r)}removeNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);this.getCaipNetworks().find(i=>i.id===n)&&v.removeNetwork(e,n)}}let d7=!1;class xue extends bue{async onAuthProviderConnected(e){const n=dn.userChainIdToChainNamespace(e==null?void 0:e.chainId);if(e.message&&e.signature&&e.siwxMessage&&await Hn.addEmbeddedWalletSession({chainId:e.siwxMessage.chainId,accountAddress:e.address,notBefore:e.siwxMessage.notBefore,statement:e.siwxMessage.statement,resources:e.siwxMessage.resources,requestId:e.siwxMessage.requestId,issuedAt:e.siwxMessage.issuedAt,domain:e.siwxMessage.domain,uri:e.siwxMessage.uri,version:e.siwxMessage.version,nonce:e.siwxMessage.nonce},e.message,e.signature),!n)throw new Error("AppKit:onAuthProviderConnected - namespace is required");const r=n===H.CHAIN.EVM?`eip155:${e.chainId}:${e.address}`:`${e.chainId}:${e.address}`,i=V.state.defaultAccountTypes[n],s=rn(n),o=e.preferredAccountType||s||i;this.setCaipAddress(r,n);const{signature:a,siwxMessage:c,message:l,...u}=e,d=v.getAccountData(n);this.setUser({...(d==null?void 0:d.user)||{},...u},n),this.setSmartAccountDeployed(!!e.smartAccountDeployed,n),this.setPreferredAccountType(o,n),await Promise.all([this.syncAuthConnectorTheme(this.authProvider),this.syncAccount({address:e.address,chainId:e.chainId,chainNamespace:n})]),this.setLoading(!1,n)}setupAuthConnectorListeners(e){e.onRpcRequest(n=>{di.checkIfRequestExists(n)?di.checkIfRequestIsSafe(n)||this.handleUnsafeRPCRequest():(this.open(),console.error($t.RPC_METHOD_NOT_ALLOWED_MESSAGE,{method:n.method}),setTimeout(()=>{this.showErrorMessage($t.RPC_METHOD_NOT_ALLOWED_UI_MESSAGE)},300),e.rejectRpcRequests())}),e.onRpcError(()=>{this.isOpen()&&(this.isTransactionStackEmpty()?this.close():this.popTransactionStack("error"))}),e.onRpcSuccess((n,r)=>{const i=di.checkIfRequestIsSafe(r),s=this.getAddress(),o=v.state.activeCaipNetwork;i||(s&&(o!=null&&o.id)&&this.updateNativeBalance(s,o.id,o.chainNamespace),this.isTransactionStackEmpty()?this.close():this.popTransactionStack("success"))}),e.onNotConnected(()=>{const n=v.state.activeChain;if(!n)throw new Error("AppKit:onNotConnected - namespace is required");J.getConnectorId(n)===H.CONNECTOR_ID.AUTH&&(this.setCaipAddress(null,n),this.setLoading(!1,n))}),e.onConnect(this.onAuthProviderConnected.bind(this)),e.onSocialConnected(this.onAuthProviderConnected.bind(this)),e.onSetPreferredAccount(({address:n,type:r})=>{const i=v.state.activeChain;if(!i)throw new Error("AppKit:onSetPreferredAccount - namespace is required");n&&this.setPreferredAccountType(r,i)})}async syncAuthConnectorTheme(e){if(!e)return;const n=kn.getSnapshot();await e.syncTheme({themeMode:n.themeMode,themeVariables:n.themeVariables,w3mThemeVariables:Hp(n.themeVariables,n.themeMode)})}async syncAuthConnector(e,n){var u,d,h,f,g,p,m,b,C;const r=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(n),i=n===v.state.activeChain;if(!r)return;this.setLoading(!0,n);const s=e.getLoginEmailUsed();this.setLoading(s,n),s&&this.setStatus("connecting",n);const o=e.getEmail(),a=e.getUsername(),c=((u=v.getAccountData(n))==null?void 0:u.user)||{};this.setUser({...c,username:a,email:o},n),this.setupAuthConnectorListeners(e);const{isConnected:l}=await e.isConnected();if(n&&r&&i)if(l&&((d=this.connectionControllerClient)!=null&&d.connectExternal)){await e.init(),await this.syncAuthConnectorTheme(e),await((g=this.connectionControllerClient)==null?void 0:g.connectExternal({id:H.CONNECTOR_ID.AUTH,info:{name:H.CONNECTOR_ID.AUTH},type:ir.CONNECTOR_TYPE_AUTH,provider:e,chainId:(f=(h=v.getNetworkData(n))==null?void 0:h.caipNetwork)==null?void 0:f.id,chain:n})),this.setStatus("connected",n);const x=re.getConnectedSocialProvider();x?we.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",address:this.getAddress(),properties:{provider:x,reconnect:!0}}):we.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:this.getAddress(),properties:{method:"email",name:((C=(b=(m=(p=this.universalProvider)==null?void 0:p.session)==null?void 0:m.peer)==null?void 0:b.metadata)==null?void 0:C.name)||"Unknown",reconnect:!0,view:Z.state.view,walletRank:void 0}})}else J.getConnectorId(n)===H.CONNECTOR_ID.AUTH&&(this.setStatus("disconnected",n),re.removeConnectedNamespace(n));this.setLoading(!1,n)}async checkExistingTelegramSocialConnection(e){var n;try{if(!ee.isTelegram())return;const r=re.getTelegramSocialProvider();if(!r||!ee.isClient())return;const s=new URL(window.location.href).searchParams.get("result_uri");if(!s)return;r&&v.setAccountProp("socialProvider",r,e),await((n=this.authProvider)==null?void 0:n.init());const o=J.getAuthConnector();r&&o&&(this.setLoading(!0,e),await te.connectExternal({id:o.id,type:o.type,socialUri:s},o.chain),re.setConnectedSocialProvider(r),re.removeTelegramSocialProvider(),we.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:r}}))}catch(r){this.setLoading(!1,e),console.error("checkExistingSTelegramocialConnection error",r)}try{const r=new URL(window.location.href);r.searchParams.delete("result_uri"),window.history.replaceState({},document.title,r.toString())}catch(r){console.error("tma social login failed",r)}}createAuthProvider(e){var l,u,d,h;if(!H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(e))return;const r=(l=this.remoteFeatures)==null?void 0:l.email,i=Array.isArray((u=this.remoteFeatures)==null?void 0:u.socials)&&this.remoteFeatures.socials.length>0,s=r||i,a=dn.getActiveNamespaceConnectedToAuth()||e;!this.authProvider&&((d=this.options)!=null&&d.projectId)&&s&&(this.authProvider=mm.getInstance({projectId:this.options.projectId,enableLogger:this.options.enableAuthLogger,chainId:(h=this.getCaipNetwork(a))==null?void 0:h.caipNetworkId,abortController:Fn.EmbeddedWalletAbortController,onTimeout:f=>{f==="iframe_load_failed"?On.open(Fn.ALERT_ERRORS.IFRAME_LOAD_FAILED,"error"):f==="iframe_request_timeout"?On.open(Fn.ALERT_ERRORS.IFRAME_REQUEST_TIMEOUT,"error"):f==="unverified_domain"&&On.open(Fn.ALERT_ERRORS.UNVERIFIED_DOMAIN,"error")},getActiveCaipNetwork:f=>gf(f),getCaipNetworks:f=>v.getCaipNetworks(f)}),Ki.subscribeOpen(f=>{var g;!f&&this.isTransactionStackEmpty()&&((g=this.authProvider)==null||g.rejectRpcRequests())}));const c=e===v.state.activeChain&&V.state.enableReconnect;V.state.enableReconnect===!1?this.syncAuthConnectorTheme(this.authProvider):this.authProvider&&c&&(this.syncAuthConnector(this.authProvider,e),this.checkExistingTelegramSocialConnection(e))}createAuthProviderForAdapter(e){var n,r,i;this.createAuthProvider(e),this.authProvider&&((i=(r=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:r.setAuthProvider)==null||i.call(r,this.authProvider))}initControllers(e){super.initControllers(e),this.options.excludeWalletIds&&he.initializeExcludedWallets({ids:this.options.excludeWalletIds})}async switchCaipNetwork(e){var o,a,c;if(!e)return;const n=v.state.activeChain,r=e.chainNamespace,i=this.getAddressByChainNamespace(r);if(r===n&&((o=v.getAccountData(r))!=null&&o.caipAddress)){const l=this.getAdapter(r);await(l==null?void 0:l.switchNetwork({caipNetwork:e})),this.setCaipNetwork(e)}else{const u=dt.getProviderId(n)===ir.CONNECTOR_TYPE_AUTH,d=dt.getProviderId(r),h=d===ir.CONNECTOR_TYPE_AUTH,f=H.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(r);if(!r)throw new Error("AppKit:switchCaipNetwork - networkNamespace is required");if((u&&d===void 0||h)&&f)try{if(v.state.activeChain=e.chainNamespace,i){const g=this.getAdapter(r);await(g==null?void 0:g.switchNetwork({caipNetwork:e}))}else await((c=(a=this.connectionControllerClient)==null?void 0:a.connectExternal)==null?void 0:c.call(a,{id:H.CONNECTOR_ID.AUTH,provider:this.authProvider,chain:r,chainId:e.id,type:ir.CONNECTOR_TYPE_AUTH,caipNetwork:e}));this.setCaipNetwork(e)}catch{const p=this.getAdapter(r);await(p==null?void 0:p.switchNetwork({caipNetwork:e}))}else if(d===ir.CONNECTOR_TYPE_WALLET_CONNECT){if(!v.state.noAdapters){const g=this.getAdapter(r);await(g==null?void 0:g.switchNetwork({caipNetwork:e}))}this.setCaipNetwork(e),this.syncWalletConnectAccount()}else this.setCaipNetwork(e),i&&this.syncAccount({address:i,chainId:e.id,chainNamespace:r})}}async initialize(e){var n;await super.initialize(e),(n=this.chainNamespaces)==null||n.forEach(r=>{this.createAuthProviderForAdapter(r)}),await this.injectModalUi(),Ki.set({initialized:!0})}async syncIdentity({address:e,chainId:n,chainNamespace:r}){var a;const i=`${r}:${n}`,s=(a=this.caipNetworks)==null?void 0:a.find(c=>c.caipNetworkId===i);if(s!=null&&s.testnet){this.setProfileName(null,r),this.setProfileImage(null,r);return}const o=J.getConnectorId(r)===H.CONNECTOR_ID.AUTH;try{const{name:c,avatar:l}=await this.fetchIdentity({address:e});!c&&o?await this.syncReownName(e,r):(this.setProfileName(c,r),this.setProfileImage(l,r))}catch{n!==1&&this.setProfileImage(null,r)}}syncConnectedWalletInfo(e){const n=dt.getProviderId(e);if(n===ir.CONNECTOR_TYPE_AUTH){const r=this.authProvider;if(r){const i=re.getConnectedSocialProvider()??"email",s=r.getEmail()??r.getUsername();this.setConnectedWalletInfo({name:n,identifier:s,social:i},e)}}else super.syncConnectedWalletInfo(e)}async injectModalUi(){if(ee.isClient()&&!d7)try{const e={...We.DEFAULT_FEATURES,...this.options.features},n=this.remoteFeatures;if(await this.loadModalComponents(e,n),ee.isClient()&&!document.querySelector("w3m-modal")){const i=document.createElement("w3m-modal");!V.state.disableAppend&&!V.state.enableEmbedded&&document.body.insertAdjacentElement("beforeend",i)}d7=!0}catch(e){console.error("Error injecting modal UI:",e)}}async loadModalComponents(e,n){if(!ee.isClient())return;const r=[];(n.email||n.socials&&n.socials.length>0)&&r.push(Promise.resolve().then(()=>require("./embedded-wallet-t_Jd_LFV.js"))),n.email&&r.push(Promise.resolve().then(()=>require("./email-CYJMBkHW.js"))),n.socials&&r.push(Promise.resolve().then(()=>require("./socials-BXz_VcPl.js"))),n.swaps&&n.swaps.length>0&&r.push(Promise.resolve().then(()=>require("./swaps-C9W-NxLv.js"))),e.send&&r.push(Promise.resolve().then(()=>require("./send-tFHrHPh4.js"))),e.receive&&r.push(Promise.resolve().then(()=>require("./receive-eP1MrUw6.js"))),n.onramp&&n.onramp.length>0&&r.push(Promise.resolve().then(()=>require("./onramp-BMMneL8g.js"))),n.payWithExchange&&r.push(Promise.resolve().then(()=>require("./pay-with-exchange-CgjKtyDu.js"))),n.activity&&r.push(Promise.resolve().then(()=>require("./transactions-CHNmwPaw.js"))),(e.pay||n.payments)&&r.push(Promise.resolve().then(()=>require("./index-BCZXGGtc.js"))),n.emailCapture&&r.push(Promise.resolve().then(()=>require("./data-capture-DbbP8JDT.js"))),await Promise.all([...r,Promise.resolve().then(()=>require("./index-VrnBQez9.js")),Promise.resolve().then(()=>require("./w3m-modal-CaxvJDN5.js"))])}}let rl;function Eue(t){t&&(rl=t)}function vue(){if(!rl)throw new Error('Please call "createAppKit" before using "useAppKit" hook');async function t(n){return rl==null?void 0:rl.open(n)}async function e(){await(rl==null?void 0:rl.close())}return{open:t,close:e}}const Cue="1.8.16";/**
|
|
297
297
|
* @license
|
|
298
298
|
* Copyright 2018 Google LLC
|
|
299
299
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
@@ -7195,9 +7195,9 @@ Minimum version required to store current data is: `+s+`.
|
|
|
7195
7195
|
`}async onSign(){this.isSigning=!0;try{await Hn.requestSignMessage()}catch(e){if(e instanceof Error&&e.message.includes("OTP is required")){nt.showError({message:"Something went wrong. We need to verify your account again."}),Z.replace("DataCapture");return}throw e}finally{this.isSigning=!1}}async onCancel(){this.isCancelling=!0,await Hn.cancelSignMessage().finally(()=>this.isCancelling=!1)}};I6([Q()],exports.W3mSIWXSignMessageView.prototype,"isCancelling",void 0);I6([Q()],exports.W3mSIWXSignMessageView.prototype,"isSigning",void 0);exports.W3mSIWXSignMessageView=I6([se("w3m-siwx-sign-message-view")],exports.W3mSIWXSignMessageView);x3({tagName:"appkit-button",elementClass:exports.AppKitButton,react:Et});x3({tagName:"appkit-network-button",elementClass:exports.AppKitNetworkButton,react:Et});x3({tagName:"appkit-connect-button",elementClass:exports.AppKitConnectButton,react:Et});x3({tagName:"appkit-account-button",elementClass:exports.AppKitAccountButton,react:Et});let OE=null;function Hpe(t){return OE||(OE=f$(t)),OE}function zpe({children:t,...e}){return Hpe(e),t}let by;function f$(t){return by||(by=new xue({...t,sdkVersion:ee.generateSdkVersion(t.adapters??[],"react",Cue)}),Eue(by)),by}const p$="6.16.0";function Vpe(t,e,n){const r=e.split("|").map(s=>s.trim());for(let s=0;s<r.length;s++)switch(e){case"any":return;case"bigint":case"boolean":case"number":case"string":if(typeof t===e)return}const i=new Error(`invalid value for type ${e}`);throw i.code="INVALID_ARGUMENT",i.argument=`value.${n}`,i.value=t,i}async function _r(t){const e=Object.keys(t);return(await Promise.all(e.map(r=>Promise.resolve(t[r])))).reduce((r,i,s)=>(r[e[s]]=i,r),{})}function Me(t,e,n){for(let r in e){let i=e[r];const s=n?n[r]:null;s&&Vpe(i,s,r),Object.defineProperty(t,r,{enumerable:!0,value:i,writable:!1})}}function vf(t,e){if(t==null)return"null";if(e==null&&(e=new Set),typeof t=="object"){if(e.has(t))return"[Circular]";e.add(t)}if(Array.isArray(t))return"[ "+t.map(n=>vf(n,e)).join(", ")+" ]";if(t instanceof Uint8Array){const n="0123456789abcdef";let r="0x";for(let i=0;i<t.length;i++)r+=n[t[i]>>4],r+=n[t[i]&15];return r}if(typeof t=="object"&&typeof t.toJSON=="function")return vf(t.toJSON(),e);switch(typeof t){case"boolean":case"number":case"symbol":return t.toString();case"bigint":return BigInt(t).toString();case"string":return JSON.stringify(t);case"object":{const n=Object.keys(t);return n.sort(),"{ "+n.map(r=>`${vf(r,e)}: ${vf(t[r],e)}`).join(", ")+" }"}}return"[ COULD NOT SERIALIZE ]"}function or(t,e){return t&&t.code===e}function T6(t){return or(t,"CALL_EXCEPTION")}function en(t,e,n){let r=t;{const s=[];if(n){if("message"in n||"code"in n||"name"in n)throw new Error(`value will overwrite populated values: ${vf(n)}`);for(const o in n){if(o==="shortMessage")continue;const a=n[o];s.push(o+"="+vf(a))}}s.push(`code=${e}`),s.push(`version=${p$}`),s.length&&(t+=" ("+s.join(", ")+")")}let i;switch(e){case"INVALID_ARGUMENT":i=new TypeError(t);break;case"NUMERIC_FAULT":case"BUFFER_OVERRUN":i=new RangeError(t);break;default:i=new Error(t)}return Me(i,{code:e}),n&&Object.assign(i,n),i.shortMessage==null&&Me(i,{shortMessage:r}),i}function ie(t,e,n,r){if(!t)throw en(e,n,r)}function M(t,e,n,r){ie(t,e,"INVALID_ARGUMENT",{argument:n,value:r})}function g$(t,e,n){n==null&&(n=""),n&&(n=": "+n),ie(t>=e,"missing argument"+n,"MISSING_ARGUMENT",{count:t,expectedCount:e}),ie(t<=e,"too many arguments"+n,"UNEXPECTED_ARGUMENT",{count:t,expectedCount:e})}const qpe=["NFD","NFC","NFKD","NFKC"].reduce((t,e)=>{try{if("test".normalize(e)!=="test")throw new Error("bad");if(e==="NFD"&&"é".normalize("NFD")!=="é")throw new Error("broken");t.push(e)}catch{}return t},[]);function m$(t){ie(qpe.indexOf(t)>=0,"platform missing String.prototype.normalize","UNSUPPORTED_OPERATION",{operation:"String.prototype.normalize",info:{form:t}})}function gu(t,e,n){if(n==null&&(n=""),t!==e){let r=n,i="new";n&&(r+=".",i+=" "+n),ie(!1,`private constructor; use ${r}from* methods`,"UNSUPPORTED_OPERATION",{operation:i})}}function w$(t,e,n){if(t instanceof Uint8Array)return n?new Uint8Array(t):t;if(typeof t=="string"&&t.length%2===0&&t.match(/^0x[0-9a-f]*$/i)){const r=new Uint8Array((t.length-2)/2);let i=2;for(let s=0;s<r.length;s++)r[s]=parseInt(t.substring(i,i+2),16),i+=2;return r}M(!1,"invalid BytesLike value",e||"value",t)}function Ae(t,e){return w$(t,e,!1)}function ar(t,e){return w$(t,e,!0)}function Vt(t,e){return!(typeof t!="string"||!t.match(/^0x[0-9A-Fa-f]*$/)||typeof e=="number"&&t.length!==2+2*e||e===!0&&t.length%2!==0)}function $3(t){return Vt(t,!0)||t instanceof Uint8Array}const T7="0123456789abcdef";function de(t){const e=Ae(t);let n="0x";for(let r=0;r<e.length;r++){const i=e[r];n+=T7[(i&240)>>4]+T7[i&15]}return n}function Rt(t){return"0x"+t.map(e=>de(e).substring(2)).join("")}function Ff(t){return Vt(t,!0)?(t.length-2)/2:Ae(t).length}function Yt(t,e,n){const r=Ae(t);return n!=null&&n>r.length&&ie(!1,"cannot slice beyond data bounds","BUFFER_OVERRUN",{buffer:r,length:r.length,offset:n}),de(r.slice(e??0,n??r.length))}function y$(t,e,n){const r=Ae(t);ie(e>=r.length,"padding exceeds data length","BUFFER_OVERRUN",{buffer:new Uint8Array(r),length:e,offset:e+1});const i=new Uint8Array(e);return i.fill(0),n?i.set(r,e-r.length):i.set(r,0),de(i)}function Tc(t,e){return y$(t,e,!0)}function Gpe(t,e){return y$(t,e,!1)}const bw=BigInt(0),ao=BigInt(1),Cf=9007199254740991;function u2(t,e){const n=D3(t,"value"),r=BigInt(Je(e,"width"));if(ie(n>>r===bw,"overflow","NUMERIC_FAULT",{operation:"fromTwos",fault:"overflow",value:t}),n>>r-ao){const i=(ao<<r)-ao;return-((~n&i)+ao)}return n}function b$(t,e){let n=Re(t,"value");const r=BigInt(Je(e,"width")),i=ao<<r-ao;if(n<bw){n=-n,ie(n<=i,"too low","NUMERIC_FAULT",{operation:"toTwos",fault:"overflow",value:t});const s=(ao<<r)-ao;return(~n&s)+ao}else ie(n<i,"too high","NUMERIC_FAULT",{operation:"toTwos",fault:"overflow",value:t});return n}function Xu(t,e){const n=D3(t,"value"),r=BigInt(Je(e,"bits"));return n&(ao<<r)-ao}function Re(t,e){switch(typeof t){case"bigint":return t;case"number":return M(Number.isInteger(t),"underflow",e||"value",t),M(t>=-Cf&&t<=Cf,"overflow",e||"value",t),BigInt(t);case"string":try{if(t==="")throw new Error("empty string");return t[0]==="-"&&t[1]!=="-"?-BigInt(t.substring(1)):BigInt(t)}catch(n){M(!1,`invalid BigNumberish string: ${n.message}`,e||"value",t)}}M(!1,"invalid BigNumberish value",e||"value",t)}function D3(t,e){const n=Re(t,e);return ie(n>=bw,"unsigned value cannot be negative","NUMERIC_FAULT",{fault:"overflow",operation:"getUint",value:t}),n}const N7="0123456789abcdef";function xw(t){if(t instanceof Uint8Array){let e="0x0";for(const n of t)e+=N7[n>>4],e+=N7[n&15];return BigInt(e)}return Re(t)}function Je(t,e){switch(typeof t){case"bigint":return M(t>=-Cf&&t<=Cf,"overflow",e||"value",t),Number(t);case"number":return M(Number.isInteger(t),"underflow",e||"value",t),M(t>=-Cf&&t<=Cf,"overflow",e||"value",t),t;case"string":try{if(t==="")throw new Error("empty string");return Je(BigInt(t),e)}catch(n){M(!1,`invalid numeric string: ${n.message}`,e||"value",t)}}M(!1,"invalid numeric value",e||"value",t)}function Kpe(t){return Je(xw(t))}function Nc(t,e){const n=D3(t,"value");let r=n.toString(16);if(e==null)r.length%2&&(r="0"+r);else{const i=Je(e,"width");if(i===0&&n===bw)return"0x";for(ie(i*2>=r.length,`value exceeds width (${i} bytes)`,"NUMERIC_FAULT",{operation:"toBeHex",fault:"overflow",value:t});r.length<i*2;)r="0"+r}return"0x"+r}function cn(t,e){const n=D3(t,"value");if(n===bw)return new Uint8Array(0);let r=n.toString(16);r.length%2&&(r="0"+r);const i=new Uint8Array(r.length/2);for(let s=0;s<i.length;s++){const o=s*2;i[s]=parseInt(r.substring(o,o+2),16)}return i}function oo(t){let e=de($3(t)?t:cn(t)).substring(2);for(;e.startsWith("0");)e=e.substring(1);return e===""&&(e="0"),"0x"+e}const d2="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";let xy=null;function Zpe(t){if(xy==null){xy={};for(let n=0;n<d2.length;n++)xy[d2[n]]=BigInt(n)}const e=xy[t];return M(e!=null,"invalid base58 value","letter",t),e}const Ype=BigInt(0),F5=BigInt(58);function x$(t){const e=Ae(t);let n=xw(e),r="";for(;n;)r=d2[Number(n%F5)]+r,n/=F5;for(let i=0;i<e.length&&!e[i];i++)r=d2[0]+r;return r}function Jpe(t){let e=Ype;for(let n=0;n<t.length;n++)e*=F5,e+=Zpe(t[n]);return e}function Qpe(t){t=atob(t);const e=new Uint8Array(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return Ae(e)}function Xpe(t){const e=Ae(t);let n="";for(let r=0;r<e.length;r++)n+=String.fromCharCode(e[r]);return btoa(n)}var Kf;class E${constructor(e,n,r){G(this,"filter");G(this,"emitter");K(this,Kf);k(this,Kf,n),Me(this,{emitter:e,filter:r})}async removeListener(){y(this,Kf)!=null&&await this.emitter.off(this.filter,y(this,Kf))}}Kf=new WeakMap;function e0e(t,e,n,r,i){M(!1,`invalid codepoint at offset ${e}; ${t}`,"bytes",n)}function v$(t,e,n,r,i){if(t==="BAD_PREFIX"||t==="UNEXPECTED_CONTINUE"){let s=0;for(let o=e+1;o<n.length&&n[o]>>6===2;o++)s++;return s}return t==="OVERRUN"?n.length-e-1:0}function t0e(t,e,n,r,i){return t==="OVERLONG"?(M(typeof i=="number","invalid bad code point for replacement","badCodepoint",i),r.push(i),0):(r.push(65533),v$(t,e,n))}const n0e=Object.freeze({error:e0e,ignore:v$,replace:t0e});function r0e(t,e){e==null&&(e=n0e.error);const n=Ae(t,"bytes"),r=[];let i=0;for(;i<n.length;){const s=n[i++];if(!(s>>7)){r.push(s);continue}let o=null,a=null;if((s&224)===192)o=1,a=127;else if((s&240)===224)o=2,a=2047;else if((s&248)===240)o=3,a=65535;else{(s&192)===128?i+=e("UNEXPECTED_CONTINUE",i-1,n,r):i+=e("BAD_PREFIX",i-1,n,r);continue}if(i-1+o>=n.length){i+=e("OVERRUN",i-1,n,r);continue}let c=s&(1<<8-o-1)-1;for(let l=0;l<o;l++){let u=n[i];if((u&192)!=128){i+=e("MISSING_CONTINUE",i,n,r),c=null;break}c=c<<6|u&63,i++}if(c!==null){if(c>1114111){i+=e("OUT_OF_RANGE",i-1-o,n,r,c);continue}if(c>=55296&&c<=57343){i+=e("UTF16_SURROGATE",i-1-o,n,r,c);continue}if(c<=a){i+=e("OVERLONG",i-1-o,n,r,c);continue}r.push(c)}}return r}function Sr(t,e){M(typeof t=="string","invalid string value","str",t),e!=null&&(m$(e),t=t.normalize(e));let n=[];for(let r=0;r<t.length;r++){const i=t.charCodeAt(r);if(i<128)n.push(i);else if(i<2048)n.push(i>>6|192),n.push(i&63|128);else if((i&64512)==55296){r++;const s=t.charCodeAt(r);M(r<t.length&&(s&64512)===56320,"invalid surrogate pair","str",t);const o=65536+((i&1023)<<10)+(s&1023);n.push(o>>18|240),n.push(o>>12&63|128),n.push(o>>6&63|128),n.push(o&63|128)}else n.push(i>>12|224),n.push(i>>6&63|128),n.push(i&63|128)}return new Uint8Array(n)}function i0e(t){return t.map(e=>e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10&1023)+55296,(e&1023)+56320))).join("")}function h2(t,e){return i0e(r0e(t,e))}function C$(t){async function e(n,r){ie(r==null||!r.cancelled,"request cancelled before sending","CANCELLED");const i=n.url.split(":")[0].toLowerCase();ie(i==="http"||i==="https",`unsupported protocol ${i}`,"UNSUPPORTED_OPERATION",{info:{protocol:i},operation:"request"}),ie(i==="https"||!n.credentials||n.allowInsecureAuthentication,"insecure authorized connections unsupported","UNSUPPORTED_OPERATION",{operation:"request"});let s=null;const o=new AbortController,a=setTimeout(()=>{s=en("request timeout","TIMEOUT"),o.abort()},n.timeout);r&&r.addListener(()=>{s=en("request cancelled","CANCELLED"),o.abort()});const c=Object.assign({},t,{method:n.method,headers:new Headers(Array.from(n)),body:n.body||void 0,signal:o.signal});let l;try{l=await fetch(n.url,c)}catch(f){throw clearTimeout(a),s||f}clearTimeout(a);const u={};l.headers.forEach((f,g)=>{u[g.toLowerCase()]=f});const d=await l.arrayBuffer(),h=d==null?null:new Uint8Array(d);return{statusCode:l.status,statusMessage:l.statusText,headers:u,body:h}}return e}const s0e=12,o0e=250;let R7=C$();const a0e=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i"),c0e=new RegExp("^ipfs://(ipfs/)?(.*)$","i");let PE=!1;async function A$(t,e){try{const n=t.match(a0e);if(!n)throw new Error("invalid data");return new jl(200,"OK",{"content-type":n[1]||"text/plain"},n[2]?Qpe(n[3]):u0e(n[3]))}catch{return new jl(599,"BAD REQUEST (invalid data: URI)",{},null,new Rc(t))}}function _$(t){async function e(n,r){try{const i=n.match(c0e);if(!i)throw new Error("invalid link");return new Rc(`${t}${i[2]}`)}catch{return new jl(599,"BAD REQUEST (invalid IPFS URI)",{},null,new Rc(n))}}return e}const Ey={data:A$,ipfs:_$("https://gateway.ipfs.io/ipfs/")},S$=new WeakMap;var rd,pl;class l0e{constructor(e){K(this,rd);K(this,pl);k(this,rd,[]),k(this,pl,!1),S$.set(e,()=>{if(!y(this,pl)){k(this,pl,!0);for(const n of y(this,rd))setTimeout(()=>{n()},0);k(this,rd,[])}})}addListener(e){ie(!y(this,pl),"singal already cancelled","UNSUPPORTED_OPERATION",{operation:"fetchCancelSignal.addCancelListener"}),y(this,rd).push(e)}get cancelled(){return y(this,pl)}checkSignal(){ie(!this.cancelled,"cancelled","CANCELLED",{})}}rd=new WeakMap,pl=new WeakMap;function vy(t){if(t==null)throw new Error("missing signal; should not happen");return t.checkSignal(),t}var Zf,Yf,Js,qa,Jf,Qf,Ln,Ui,Ga,id,sd,od,Uo,Qs,gl,ad,Qg;const S2=class S2{constructor(e){K(this,ad);K(this,Zf);K(this,Yf);K(this,Js);K(this,qa);K(this,Jf);K(this,Qf);K(this,Ln);K(this,Ui);K(this,Ga);K(this,id);K(this,sd);K(this,od);K(this,Uo);K(this,Qs);K(this,gl);k(this,Qf,String(e)),k(this,Zf,!1),k(this,Yf,!0),k(this,Js,{}),k(this,qa,""),k(this,Jf,3e5),k(this,Qs,{slotInterval:o0e,maxAttempts:s0e}),k(this,gl,null)}get url(){return y(this,Qf)}set url(e){k(this,Qf,String(e))}get body(){return y(this,Ln)==null?null:new Uint8Array(y(this,Ln))}set body(e){if(e==null)k(this,Ln,void 0),k(this,Ui,void 0);else if(typeof e=="string")k(this,Ln,Sr(e)),k(this,Ui,"text/plain");else if(e instanceof Uint8Array)k(this,Ln,e),k(this,Ui,"application/octet-stream");else if(typeof e=="object")k(this,Ln,Sr(JSON.stringify(e))),k(this,Ui,"application/json");else throw new Error("invalid body")}hasBody(){return y(this,Ln)!=null}get method(){return y(this,qa)?y(this,qa):this.hasBody()?"POST":"GET"}set method(e){e==null&&(e=""),k(this,qa,String(e).toUpperCase())}get headers(){const e=Object.assign({},y(this,Js));return y(this,Ga)&&(e.authorization=`Basic ${Xpe(Sr(y(this,Ga)))}`),this.allowGzip&&(e["accept-encoding"]="gzip"),e["content-type"]==null&&y(this,Ui)&&(e["content-type"]=y(this,Ui)),this.body&&(e["content-length"]=String(this.body.length)),e}getHeader(e){return this.headers[e.toLowerCase()]}setHeader(e,n){y(this,Js)[String(e).toLowerCase()]=String(n)}clearHeaders(){k(this,Js,{})}[Symbol.iterator](){const e=this.headers,n=Object.keys(e);let r=0;return{next:()=>{if(r<n.length){const i=n[r++];return{value:[i,e[i]],done:!1}}return{value:void 0,done:!0}}}}get credentials(){return y(this,Ga)||null}setCredentials(e,n){M(!e.match(/:/),"invalid basic authentication username","username","[REDACTED]"),k(this,Ga,`${e}:${n}`)}get allowGzip(){return y(this,Yf)}set allowGzip(e){k(this,Yf,!!e)}get allowInsecureAuthentication(){return!!y(this,Zf)}set allowInsecureAuthentication(e){k(this,Zf,!!e)}get timeout(){return y(this,Jf)}set timeout(e){M(e>=0,"timeout must be non-zero","timeout",e),k(this,Jf,e)}get preflightFunc(){return y(this,id)||null}set preflightFunc(e){k(this,id,e)}get processFunc(){return y(this,sd)||null}set processFunc(e){k(this,sd,e)}get retryFunc(){return y(this,od)||null}set retryFunc(e){k(this,od,e)}get getUrlFunc(){return y(this,gl)||R7}set getUrlFunc(e){k(this,gl,e)}toString(){return`<FetchRequest method=${JSON.stringify(this.method)} url=${JSON.stringify(this.url)} headers=${JSON.stringify(this.headers)} body=${y(this,Ln)?de(y(this,Ln)):"null"}>`}setThrottleParams(e){e.slotInterval!=null&&(y(this,Qs).slotInterval=e.slotInterval),e.maxAttempts!=null&&(y(this,Qs).maxAttempts=e.maxAttempts)}send(){return ie(y(this,Uo)==null,"request already sent","UNSUPPORTED_OPERATION",{operation:"fetchRequest.send"}),k(this,Uo,new l0e(this)),X(this,ad,Qg).call(this,0,O7()+this.timeout,0,this,new jl(0,"",{},null,this))}cancel(){ie(y(this,Uo)!=null,"request has not been sent","UNSUPPORTED_OPERATION",{operation:"fetchRequest.cancel"});const e=S$.get(this);if(!e)throw new Error("missing signal; should not happen");e()}redirect(e){const n=this.url.split(":")[0].toLowerCase(),r=e.split(":")[0].toLowerCase();ie(this.method==="GET"&&(n!=="https"||r!=="http")&&e.match(/^https?:/),"unsupported redirect","UNSUPPORTED_OPERATION",{operation:`redirect(${this.method} ${JSON.stringify(this.url)} => ${JSON.stringify(e)})`});const i=new S2(e);return i.method="GET",i.allowGzip=this.allowGzip,i.timeout=this.timeout,k(i,Js,Object.assign({},y(this,Js))),y(this,Ln)&&k(i,Ln,new Uint8Array(y(this,Ln))),k(i,Ui,y(this,Ui)),i}clone(){const e=new S2(this.url);return k(e,qa,y(this,qa)),y(this,Ln)&&k(e,Ln,y(this,Ln)),k(e,Ui,y(this,Ui)),k(e,Js,Object.assign({},y(this,Js))),k(e,Ga,y(this,Ga)),this.allowGzip&&(e.allowGzip=!0),e.timeout=this.timeout,this.allowInsecureAuthentication&&(e.allowInsecureAuthentication=!0),k(e,id,y(this,id)),k(e,sd,y(this,sd)),k(e,od,y(this,od)),k(e,Qs,Object.assign({},y(this,Qs))),k(e,gl,y(this,gl)),e}static lockConfig(){PE=!0}static getGateway(e){return Ey[e.toLowerCase()]||null}static registerGateway(e,n){if(e=e.toLowerCase(),e==="http"||e==="https")throw new Error(`cannot intercept ${e}; use registerGetUrl`);if(PE)throw new Error("gateways locked");Ey[e]=n}static registerGetUrl(e){if(PE)throw new Error("gateways locked");R7=e}static createGetUrlFunc(e){return C$(e)}static createDataGateway(){return A$}static createIpfsGatewayFunc(e){return _$(e)}};Zf=new WeakMap,Yf=new WeakMap,Js=new WeakMap,qa=new WeakMap,Jf=new WeakMap,Qf=new WeakMap,Ln=new WeakMap,Ui=new WeakMap,Ga=new WeakMap,id=new WeakMap,sd=new WeakMap,od=new WeakMap,Uo=new WeakMap,Qs=new WeakMap,gl=new WeakMap,ad=new WeakSet,Qg=async function(e,n,r,i,s){var u,d,h;if(e>=y(this,Qs).maxAttempts)return s.makeServerError("exceeded maximum retry limit");ie(O7()<=n,"timeout","TIMEOUT",{operation:"request.send",reason:"timeout",request:i}),r>0&&await d0e(r);let o=this.clone();const a=(o.url.split(":")[0]||"").toLowerCase();if(a in Ey){const f=await Ey[a](o.url,vy(y(i,Uo)));if(f instanceof jl){let g=f;if(this.processFunc){vy(y(i,Uo));try{g=await this.processFunc(o,g)}catch(p){(p.throttle==null||typeof p.stall!="number")&&g.makeServerError("error in post-processing function",p).assertOk()}}return g}o=f}this.preflightFunc&&(o=await this.preflightFunc(o));const c=await this.getUrlFunc(o,vy(y(i,Uo)));let l=new jl(c.statusCode,c.statusMessage,c.headers,c.body,i);if(l.statusCode===301||l.statusCode===302){try{const f=l.headers.location||"";return X(u=o.redirect(f),ad,Qg).call(u,e+1,n,0,i,l)}catch{}return l}else if(l.statusCode===429&&(this.retryFunc==null||await this.retryFunc(o,l,e))){const f=l.headers["retry-after"];let g=y(this,Qs).slotInterval*Math.trunc(Math.random()*Math.pow(2,e));return typeof f=="string"&&f.match(/^[1-9][0-9]*$/)&&(g=parseInt(f)),X(d=o.clone(),ad,Qg).call(d,e+1,n,g,i,l)}if(this.processFunc){vy(y(i,Uo));try{l=await this.processFunc(o,l)}catch(f){(f.throttle==null||typeof f.stall!="number")&&l.makeServerError("error in post-processing function",f).assertOk();let g=y(this,Qs).slotInterval*Math.trunc(Math.random()*Math.pow(2,e));return f.stall>=0&&(g=f.stall),X(h=o.clone(),ad,Qg).call(h,e+1,n,g,i,l)}}return l};let Rc=S2;var y1,b1,x1,Li,Xf,cd;const rA=class rA{constructor(e,n,r,i,s){K(this,y1);K(this,b1);K(this,x1);K(this,Li);K(this,Xf);K(this,cd);k(this,y1,e),k(this,b1,n),k(this,x1,Object.keys(r).reduce((o,a)=>(o[a.toLowerCase()]=String(r[a]),o),{})),k(this,Li,i==null?null:new Uint8Array(i)),k(this,Xf,s||null),k(this,cd,{message:""})}toString(){return`<FetchResponse status=${this.statusCode} body=${y(this,Li)?de(y(this,Li)):"null"}>`}get statusCode(){return y(this,y1)}get statusMessage(){return y(this,b1)}get headers(){return Object.assign({},y(this,x1))}get body(){return y(this,Li)==null?null:new Uint8Array(y(this,Li))}get bodyText(){try{return y(this,Li)==null?"":h2(y(this,Li))}catch{ie(!1,"response body is not valid UTF-8 data","UNSUPPORTED_OPERATION",{operation:"bodyText",info:{response:this}})}}get bodyJson(){try{return JSON.parse(this.bodyText)}catch{ie(!1,"response body is not valid JSON","UNSUPPORTED_OPERATION",{operation:"bodyJson",info:{response:this}})}}[Symbol.iterator](){const e=this.headers,n=Object.keys(e);let r=0;return{next:()=>{if(r<n.length){const i=n[r++];return{value:[i,e[i]],done:!1}}return{value:void 0,done:!0}}}}makeServerError(e,n){let r;e?r=`CLIENT ESCALATED SERVER ERROR (${this.statusCode} ${this.statusMessage}; ${e})`:(e=`${this.statusCode} ${this.statusMessage}`,r=`CLIENT ESCALATED SERVER ERROR (${e})`);const i=new rA(599,r,this.headers,this.body,y(this,Xf)||void 0);return k(i,cd,{message:e,error:n}),i}throwThrottleError(e,n){n==null?n=-1:M(Number.isInteger(n)&&n>=0,"invalid stall timeout","stall",n);const r=new Error(e||"throttling requests");throw Me(r,{stall:n,throttle:!0}),r}getHeader(e){return this.headers[e.toLowerCase()]}hasBody(){return y(this,Li)!=null}get request(){return y(this,Xf)}ok(){return y(this,cd).message===""&&this.statusCode>=200&&this.statusCode<300}assertOk(){if(this.ok())return;let{message:e,error:n}=y(this,cd);e===""&&(e=`server response ${this.statusCode} ${this.statusMessage}`);let r=null;this.request&&(r=this.request.url);let i=null;try{y(this,Li)&&(i=h2(y(this,Li)))}catch{}ie(!1,e,"SERVER_ERROR",{request:this.request||"unknown request",response:this,error:n,info:{requestUrl:r,responseBody:i,responseStatus:`${this.statusCode} ${this.statusMessage}`}})}};y1=new WeakMap,b1=new WeakMap,x1=new WeakMap,Li=new WeakMap,Xf=new WeakMap,cd=new WeakMap;let jl=rA;function O7(){return new Date().getTime()}function u0e(t){return Sr(t.replace(/%([0-9a-f][0-9a-f])/gi,(e,n)=>String.fromCharCode(parseInt(n,16))))}function d0e(t){return new Promise(e=>setTimeout(e,t))}const h0e=BigInt(-1),Gs=BigInt(0),Af=BigInt(1),f0e=BigInt(5),tf={};let Wf="0000";for(;Wf.length<80;)Wf+=Wf;function Iu(t){let e=Wf;for(;e.length<t;)e+=e;return BigInt("1"+e.substring(0,t))}function Mg(t,e,n){const r=BigInt(e.width);if(e.signed){const i=Af<<r-Af;ie(n==null||t>=-i&&t<i,"overflow","NUMERIC_FAULT",{operation:n,fault:"overflow",value:t}),t>Gs?t=u2(Xu(t,r),r):t=-u2(Xu(-t,r),r)}else{const i=Af<<r;ie(n==null||t>=0&&t<i,"overflow","NUMERIC_FAULT",{operation:n,fault:"overflow",value:t}),t=(t%i+i)%i&i-Af}return t}function kE(t){typeof t=="number"&&(t=`fixed128x${t}`);let e=!0,n=128,r=18;if(typeof t=="string"){if(t!=="fixed")if(t==="ufixed")e=!1;else{const s=t.match(/^(u?)fixed([0-9]+)x([0-9]+)$/);M(s,"invalid fixed format","format",t),e=s[1]!=="u",n=parseInt(s[2]),r=parseInt(s[3])}}else if(t){const s=t,o=(a,c,l)=>s[a]==null?l:(M(typeof s[a]===c,"invalid fixed format ("+a+" not "+c+")","format."+a,s[a]),s[a]);e=o("signed","boolean",e),n=o("width","number",n),r=o("decimals","number",r)}M(n%8===0,"invalid FixedNumber width (not byte aligned)","format.width",n),M(r<=80,"invalid FixedNumber decimals (too large)","format.decimals",r);const i=(e?"":"u")+"fixed"+String(n)+"x"+String(r);return{signed:e,width:n,decimals:r,name:i}}function p0e(t,e){let n="";t<Gs&&(n="-",t*=h0e);let r=t.toString();if(e===0)return n+r;for(;r.length<=e;)r=Wf+r;const i=r.length-e;for(r=r.substring(0,i)+"."+r.substring(i);r[0]==="0"&&r[1]!==".";)r=r.substring(1);for(;r[r.length-1]==="0"&&r[r.length-2]!==".";)r=r.substring(0,r.length-1);return n+r}var Xs,Mt,Ur,kt,Pu,Ua,W5,j5,H5,z5;const cl=class cl{constructor(e,n,r){K(this,kt);G(this,"format");K(this,Xs);K(this,Mt);K(this,Ur);G(this,"_value");gu(e,tf,"FixedNumber"),k(this,Mt,n),k(this,Xs,r);const i=p0e(n,r.decimals);Me(this,{format:r.name,_value:i}),k(this,Ur,Iu(r.decimals))}get signed(){return y(this,Xs).signed}get width(){return y(this,Xs).width}get decimals(){return y(this,Xs).decimals}get value(){return y(this,Mt)}addUnsafe(e){return X(this,kt,W5).call(this,e)}add(e){return X(this,kt,W5).call(this,e,"add")}subUnsafe(e){return X(this,kt,j5).call(this,e)}sub(e){return X(this,kt,j5).call(this,e,"sub")}mulUnsafe(e){return X(this,kt,H5).call(this,e)}mul(e){return X(this,kt,H5).call(this,e,"mul")}mulSignal(e){X(this,kt,Pu).call(this,e);const n=y(this,Mt)*y(e,Mt);return ie(n%y(this,Ur)===Gs,"precision lost during signalling mul","NUMERIC_FAULT",{operation:"mulSignal",fault:"underflow",value:this}),X(this,kt,Ua).call(this,n/y(this,Ur),"mulSignal")}divUnsafe(e){return X(this,kt,z5).call(this,e)}div(e){return X(this,kt,z5).call(this,e,"div")}divSignal(e){ie(y(e,Mt)!==Gs,"division by zero","NUMERIC_FAULT",{operation:"div",fault:"divide-by-zero",value:this}),X(this,kt,Pu).call(this,e);const n=y(this,Mt)*y(this,Ur);return ie(n%y(e,Mt)===Gs,"precision lost during signalling div","NUMERIC_FAULT",{operation:"divSignal",fault:"underflow",value:this}),X(this,kt,Ua).call(this,n/y(e,Mt),"divSignal")}cmp(e){let n=this.value,r=e.value;const i=this.decimals-e.decimals;return i>0?r*=Iu(i):i<0&&(n*=Iu(-i)),n<r?-1:n>r?1:0}eq(e){return this.cmp(e)===0}lt(e){return this.cmp(e)<0}lte(e){return this.cmp(e)<=0}gt(e){return this.cmp(e)>0}gte(e){return this.cmp(e)>=0}floor(){let e=y(this,Mt);return y(this,Mt)<Gs&&(e-=y(this,Ur)-Af),e=y(this,Mt)/y(this,Ur)*y(this,Ur),X(this,kt,Ua).call(this,e,"floor")}ceiling(){let e=y(this,Mt);return y(this,Mt)>Gs&&(e+=y(this,Ur)-Af),e=y(this,Mt)/y(this,Ur)*y(this,Ur),X(this,kt,Ua).call(this,e,"ceiling")}round(e){if(e==null&&(e=0),e>=this.decimals)return this;const n=this.decimals-e,r=f0e*Iu(n-1);let i=this.value+r;const s=Iu(n);return i=i/s*s,Mg(i,y(this,Xs),"round"),new cl(tf,i,y(this,Xs))}isZero(){return y(this,Mt)===Gs}isNegative(){return y(this,Mt)<Gs}toString(){return this._value}toUnsafeFloat(){return parseFloat(this.toString())}toFormat(e){return cl.fromString(this.toString(),e)}static fromValue(e,n,r){const i=n==null?0:Je(n),s=kE(r);let o=Re(e,"value");const a=i-s.decimals;if(a>0){const c=Iu(a);ie(o%c===Gs,"value loses precision for format","NUMERIC_FAULT",{operation:"fromValue",fault:"underflow",value:e}),o/=c}else a<0&&(o*=Iu(-a));return Mg(o,s,"fromValue"),new cl(tf,o,s)}static fromString(e,n){const r=e.match(/^(-?)([0-9]*)\.?([0-9]*)$/);M(r&&r[2].length+r[3].length>0,"invalid FixedNumber string value","value",e);const i=kE(n);let s=r[2]||"0",o=r[3]||"";for(;o.length<i.decimals;)o+=Wf;ie(o.substring(i.decimals).match(/^0*$/),"too many decimals for format","NUMERIC_FAULT",{operation:"fromString",fault:"underflow",value:e}),o=o.substring(0,i.decimals);const a=BigInt(r[1]+s+o);return Mg(a,i,"fromString"),new cl(tf,a,i)}static fromBytes(e,n){let r=xw(Ae(e,"value"));const i=kE(n);return i.signed&&(r=u2(r,i.width)),Mg(r,i,"fromBytes"),new cl(tf,r,i)}};Xs=new WeakMap,Mt=new WeakMap,Ur=new WeakMap,kt=new WeakSet,Pu=function(e){M(this.format===e.format,"incompatible format; use fixedNumber.toFormat","other",e)},Ua=function(e,n){return e=Mg(e,y(this,Xs),n),new cl(tf,e,y(this,Xs))},W5=function(e,n){return X(this,kt,Pu).call(this,e),X(this,kt,Ua).call(this,y(this,Mt)+y(e,Mt),n)},j5=function(e,n){return X(this,kt,Pu).call(this,e),X(this,kt,Ua).call(this,y(this,Mt)-y(e,Mt),n)},H5=function(e,n){return X(this,kt,Pu).call(this,e),X(this,kt,Ua).call(this,y(this,Mt)*y(e,Mt)/y(this,Ur),n)},z5=function(e,n){return ie(y(e,Mt)!==Gs,"division by zero","NUMERIC_FAULT",{operation:"div",fault:"divide-by-zero",value:this}),X(this,kt,Pu).call(this,e),X(this,kt,Ua).call(this,y(this,Mt)*y(this,Ur)/y(e,Mt),n)};let f2=cl;function g0e(t){let e=t.toString(16);for(;e.length<2;)e="0"+e;return"0x"+e}function P7(t,e,n){let r=0;for(let i=0;i<n;i++)r=r*256+t[e+i];return r}function k7(t,e,n,r){const i=[];for(;n<e+1+r;){const s=I$(t,n);i.push(s.result),n+=s.consumed,ie(n<=e+1+r,"child data too short","BUFFER_OVERRUN",{buffer:t,length:r,offset:e})}return{consumed:1+r,result:i}}function I$(t,e){ie(t.length!==0,"data too short","BUFFER_OVERRUN",{buffer:t,length:0,offset:1});const n=r=>{ie(r<=t.length,"data short segment too short","BUFFER_OVERRUN",{buffer:t,length:t.length,offset:r})};if(t[e]>=248){const r=t[e]-247;n(e+1+r);const i=P7(t,e+1,r);return n(e+1+r+i),k7(t,e,e+1+r,r+i)}else if(t[e]>=192){const r=t[e]-192;return n(e+1+r),k7(t,e,e+1,r)}else if(t[e]>=184){const r=t[e]-183;n(e+1+r);const i=P7(t,e+1,r);n(e+1+r+i);const s=de(t.slice(e+1+r,e+1+r+i));return{consumed:1+r+i,result:s}}else if(t[e]>=128){const r=t[e]-128;n(e+1+r);const i=de(t.slice(e+1,e+1+r));return{consumed:1+r,result:i}}return{consumed:1,result:g0e(t[e])}}function Ew(t){const e=Ae(t,"data"),n=I$(e,0);return M(n.consumed===e.length,"unexpected junk after rlp payload","data",t),n.result}function $7(t){const e=[];for(;t;)e.unshift(t&255),t>>=8;return e}function T$(t){if(Array.isArray(t)){let r=[];if(t.forEach(function(s){r=r.concat(T$(s))}),r.length<=55)return r.unshift(192+r.length),r;const i=$7(r.length);return i.unshift(247+i.length),i.concat(r)}const e=Array.prototype.slice.call(Ae(t,"object"));if(e.length===1&&e[0]<=127)return e;if(e.length<=55)return e.unshift(128+e.length),e;const n=$7(e.length);return n.unshift(183+n.length),n.concat(e)}const D7="0123456789abcdef";function oa(t){let e="0x";for(const n of T$(t))e+=D7[n>>4],e+=D7[n&15];return e}const N$=["wei","kwei","mwei","gwei","szabo","finney","ether"];function R$(t,e){let n=18;if(typeof e=="string"){const r=N$.indexOf(e);M(r>=0,"invalid unit","unit",e),n=3*r}else e!=null&&(n=Je(e,"unit"));return f2.fromValue(t,n,{decimals:n,width:512}).toString()}function m0e(t,e){M(typeof t=="string","value must be a string","value",t);let n=18;if(typeof e=="string"){const r=N$.indexOf(e);M(r>=0,"invalid unit","unit",e),n=3*r}else e!=null&&(n=Je(e,"unit"));return f2.fromString(t,{decimals:n,width:512}).value}function w0e(t){return R$(t,18)}function y0e(t){const e=Ae(t,"randomBytes");e[6]=e[6]&15|64,e[8]=e[8]&63|128;const n=de(e);return[n.substring(2,10),n.substring(10,14),n.substring(14,18),n.substring(18,22),n.substring(22,34)].join("-")}const Wr=32,V5=new Uint8Array(Wr),b0e=["then"],Cy={},O$=new WeakMap;function Wu(t){return O$.get(t)}function B7(t,e){O$.set(t,e)}function Fg(t,e){const n=new Error(`deferred error during ABI decoding triggered accessing ${t}`);throw n.error=e,n}function q5(t,e,n){return t.indexOf(null)>=0?e.map((r,i)=>r instanceof O0?q5(Wu(r),r,n):r):t.reduce((r,i,s)=>{let o=e.getValue(i);return i in r||(n&&o instanceof O0&&(o=q5(Wu(o),o,n)),r[i]=o),r},{})}var ep;const _f=class _f extends Array{constructor(...n){const r=n[0];let i=n[1],s=(n[2]||[]).slice(),o=!0;r!==Cy&&(i=n,s=[],o=!1);super(i.length);K(this,ep);i.forEach((l,u)=>{this[u]=l});const a=s.reduce((l,u)=>(typeof u=="string"&&l.set(u,(l.get(u)||0)+1),l),new Map);if(B7(this,Object.freeze(i.map((l,u)=>{const d=s[u];return d!=null&&a.get(d)===1?d:null}))),k(this,ep,[]),y(this,ep)==null&&y(this,ep),!o)return;Object.freeze(this);const c=new Proxy(this,{get:(l,u,d)=>{if(typeof u=="string"){if(u.match(/^[0-9]+$/)){const f=Je(u,"%index");if(f<0||f>=this.length)throw new RangeError("out of result range");const g=l[f];return g instanceof Error&&Fg(`index ${f}`,g),g}if(b0e.indexOf(u)>=0)return Reflect.get(l,u,d);const h=l[u];if(h instanceof Function)return function(...f){return h.apply(this===d?l:this,f)};if(!(u in l))return l.getValue.apply(this===d?l:this,[u])}return Reflect.get(l,u,d)}});return B7(c,Wu(this)),c}toArray(n){const r=[];return this.forEach((i,s)=>{i instanceof Error&&Fg(`index ${s}`,i),n&&i instanceof _f&&(i=i.toArray(n)),r.push(i)}),r}toObject(n){const r=Wu(this);return r.reduce((i,s,o)=>(ie(s!=null,`value at index ${o} unnamed`,"UNSUPPORTED_OPERATION",{operation:"toObject()"}),q5(r,this,n)),{})}slice(n,r){n==null&&(n=0),n<0&&(n+=this.length,n<0&&(n=0)),r==null&&(r=this.length),r<0&&(r+=this.length,r<0&&(r=0)),r>this.length&&(r=this.length);const i=Wu(this),s=[],o=[];for(let a=n;a<r;a++)s.push(this[a]),o.push(i[a]);return new _f(Cy,s,o)}filter(n,r){const i=Wu(this),s=[],o=[];for(let a=0;a<this.length;a++){const c=this[a];c instanceof Error&&Fg(`index ${a}`,c),n.call(r,c,a,this)&&(s.push(c),o.push(i[a]))}return new _f(Cy,s,o)}map(n,r){const i=[];for(let s=0;s<this.length;s++){const o=this[s];o instanceof Error&&Fg(`index ${s}`,o),i.push(n.call(r,o,s,this))}return i}getValue(n){const r=Wu(this).indexOf(n);if(r===-1)return;const i=this[r];return i instanceof Error&&Fg(`property ${JSON.stringify(n)}`,i.error),i}static fromItems(n,r){return new _f(Cy,n,r)}};ep=new WeakMap;let O0=_f;function U7(t){let e=cn(t);return ie(e.length<=Wr,"value out-of-bounds","BUFFER_OVERRUN",{buffer:e,length:Wr,offset:e.length}),e.length!==Wr&&(e=ar(Rt([V5.slice(e.length%Wr),e]))),e}class Bc{constructor(e,n,r,i){G(this,"name");G(this,"type");G(this,"localName");G(this,"dynamic");Me(this,{name:e,type:n,localName:r,dynamic:i},{name:"string",type:"string",localName:"string",dynamic:"boolean"})}_throwError(e,n){M(!1,e,this.localName,n)}}var Ka,ld,tp,qy;class G5{constructor(){K(this,tp);K(this,Ka);K(this,ld);k(this,Ka,[]),k(this,ld,0)}get data(){return Rt(y(this,Ka))}get length(){return y(this,ld)}appendWriter(e){return X(this,tp,qy).call(this,ar(e.data))}writeBytes(e){let n=ar(e);const r=n.length%Wr;return r&&(n=ar(Rt([n,V5.slice(r)]))),X(this,tp,qy).call(this,n)}writeValue(e){return X(this,tp,qy).call(this,U7(e))}writeUpdatableValue(){const e=y(this,Ka).length;return y(this,Ka).push(V5),k(this,ld,y(this,ld)+Wr),n=>{y(this,Ka)[e]=U7(n)}}}Ka=new WeakMap,ld=new WeakMap,tp=new WeakSet,qy=function(e){return y(this,Ka).push(e),k(this,ld,y(this,ld)+e.length),e.length};var ii,Mi,ud,dd,ml,Eh,Z5,P$;const iA=class iA{constructor(e,n,r){K(this,Eh);G(this,"allowLoose");K(this,ii);K(this,Mi);K(this,ud);K(this,dd);K(this,ml);Me(this,{allowLoose:!!n}),k(this,ii,ar(e)),k(this,ud,0),k(this,dd,null),k(this,ml,r??1024),k(this,Mi,0)}get data(){return de(y(this,ii))}get dataLength(){return y(this,ii).length}get consumed(){return y(this,Mi)}get bytes(){return new Uint8Array(y(this,ii))}subReader(e){const n=new iA(y(this,ii).slice(y(this,Mi)+e),this.allowLoose,y(this,ml));return k(n,dd,this),n}readBytes(e,n){let r=X(this,Eh,P$).call(this,0,e,!!n);return X(this,Eh,Z5).call(this,e),k(this,Mi,y(this,Mi)+r.length),r.slice(0,e)}readValue(){return xw(this.readBytes(Wr))}readIndex(){return Kpe(this.readBytes(Wr))}};ii=new WeakMap,Mi=new WeakMap,ud=new WeakMap,dd=new WeakMap,ml=new WeakMap,Eh=new WeakSet,Z5=function(e){var n;if(y(this,dd))return X(n=y(this,dd),Eh,Z5).call(n,e);k(this,ud,y(this,ud)+e),ie(y(this,ml)<1||y(this,ud)<=y(this,ml)*this.dataLength,`compressed ABI data exceeds inflation ratio of ${y(this,ml)} ( see: https://github.com/ethers-io/ethers.js/issues/4537 )`,"BUFFER_OVERRUN",{buffer:ar(y(this,ii)),offset:y(this,Mi),length:e,info:{bytesRead:y(this,ud),dataLength:this.dataLength}})},P$=function(e,n,r){let i=Math.ceil(n/Wr)*Wr;return y(this,Mi)+i>y(this,ii).length&&(this.allowLoose&&r&&y(this,Mi)+n<=y(this,ii).length?i=n:ie(!1,"data out-of-bounds","BUFFER_OVERRUN",{buffer:ar(y(this,ii)),length:y(this,ii).length,offset:y(this,Mi)+i})),y(this,ii).slice(y(this,Mi),y(this,Mi)+i)};let K5=iA;function qi(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function N6(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function k$(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");qi(t.outputLen),qi(t.blockLen)}function P0(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function $$(t,e){N6(t);const n=e.outputLen;if(t.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}const $E=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const D$=t=>t instanceof Uint8Array,Gy=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),Ky=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Ro=(t,e)=>t<<32-e|t>>>e,x0e=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!x0e)throw new Error("Non little-endian hardware is not supported");const E0e=async()=>{};async function L7(t,e,n){let r=Date.now();for(let i=0;i<t;i++){n(i);const s=Date.now()-r;s>=0&&s<e||(await E0e(),r+=s)}}function v0e(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function k0(t){if(typeof t=="string"&&(t=v0e(t)),!D$(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function C0e(...t){const e=new Uint8Array(t.reduce((r,i)=>r+i.length,0));let n=0;return t.forEach(r=>{if(!D$(r))throw new Error("Uint8Array expected");e.set(r,n),n+=r.length}),e}class R6{clone(){return this._cloneInto()}}const A0e={}.toString;function B$(t,e){if(e!==void 0&&A0e.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(t,e)}function B3(t){const e=r=>t().update(k0(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function _0e(t=32){if($E&&typeof $E.getRandomValues=="function")return $E.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}class U$ extends R6{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,k$(e);const r=k0(n);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const i=this.blockLen,s=new Uint8Array(i);s.set(r.length>i?e.create().update(r).digest():r);for(let o=0;o<s.length;o++)s[o]^=54;this.iHash.update(s),this.oHash=e.create();for(let o=0;o<s.length;o++)s[o]^=106;this.oHash.update(s),s.fill(0)}update(e){return P0(this),this.iHash.update(e),this}digestInto(e){P0(this),N6(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:i,destroyed:s,blockLen:o,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=s,e.blockLen=o,e.outputLen=a,e.oHash=n._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const U3=(t,e,n)=>new U$(t,e).update(n).digest();U3.create=(t,e)=>new U$(t,e);function S0e(t,e,n,r){k$(t);const i=B$({dkLen:32,asyncTick:10},r),{c:s,dkLen:o,asyncTick:a}=i;if(qi(s),qi(o),qi(a),s<1)throw new Error("PBKDF2: iterations (c) should be >= 1");const c=k0(e),l=k0(n),u=new Uint8Array(o),d=U3.create(t,c),h=d._cloneInto().update(l);return{c:s,dkLen:o,asyncTick:a,DK:u,PRF:d,PRFSalt:h}}function I0e(t,e,n,r,i){return t.destroy(),e.destroy(),r&&r.destroy(),i.fill(0),n}function O6(t,e,n,r){const{c:i,dkLen:s,DK:o,PRF:a,PRFSalt:c}=S0e(t,e,n,r);let l;const u=new Uint8Array(4),d=Ky(u),h=new Uint8Array(a.outputLen);for(let f=1,g=0;g<s;f++,g+=a.outputLen){const p=o.subarray(g,g+a.outputLen);d.setInt32(0,f,!1),(l=c._cloneInto(l)).update(u).digestInto(h),p.set(h.subarray(0,p.length));for(let m=1;m<i;m++){a._cloneInto(l).update(h).digestInto(h);for(let b=0;b<p.length;b++)p[b]^=h[b]}}return I0e(a,c,o,l,h)}function T0e(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const i=BigInt(32),s=BigInt(4294967295),o=Number(n>>i&s),a=Number(n&s),c=r?4:0,l=r?0:4;t.setUint32(e+c,o,r),t.setUint32(e+l,a,r)}class P6 extends R6{constructor(e,n,r,i){super(),this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Ky(this.buffer)}update(e){P0(this);const{view:n,buffer:r,blockLen:i}=this;e=k0(e);const s=e.length;for(let o=0;o<s;){const a=Math.min(i-this.pos,s-o);if(a===i){const c=Ky(e);for(;i<=s-o;o+=i)this.process(c,o);continue}r.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){P0(this),$$(e,this),this.finished=!0;const{buffer:n,view:r,blockLen:i,isLE:s}=this;let{pos:o}=this;n[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(r,0),o=0);for(let d=o;d<i;d++)n[d]=0;T0e(r,i-8,BigInt(this.length*8),s),this.process(r,0);const a=Ky(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=c/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d<l;d++)a.setUint32(4*d,u[d],s)}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:r,length:i,finished:s,destroyed:o,pos:a}=this;return e.length=i,e.pos=a,e.finished=s,e.destroyed=o,i%n&&e.buffer.set(r),e}}const N0e=(t,e,n)=>t&e^~t&n,R0e=(t,e,n)=>t&e^t&n^e&n,O0e=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Xc=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),el=new Uint32Array(64);class P0e extends P6{constructor(){super(64,32,8,!1),this.A=Xc[0]|0,this.B=Xc[1]|0,this.C=Xc[2]|0,this.D=Xc[3]|0,this.E=Xc[4]|0,this.F=Xc[5]|0,this.G=Xc[6]|0,this.H=Xc[7]|0}get(){const{A:e,B:n,C:r,D:i,E:s,F:o,G:a,H:c}=this;return[e,n,r,i,s,o,a,c]}set(e,n,r,i,s,o,a,c){this.A=e|0,this.B=n|0,this.C=r|0,this.D=i|0,this.E=s|0,this.F=o|0,this.G=a|0,this.H=c|0}process(e,n){for(let d=0;d<16;d++,n+=4)el[d]=e.getUint32(n,!1);for(let d=16;d<64;d++){const h=el[d-15],f=el[d-2],g=Ro(h,7)^Ro(h,18)^h>>>3,p=Ro(f,17)^Ro(f,19)^f>>>10;el[d]=p+el[d-7]+g+el[d-16]|0}let{A:r,B:i,C:s,D:o,E:a,F:c,G:l,H:u}=this;for(let d=0;d<64;d++){const h=Ro(a,6)^Ro(a,11)^Ro(a,25),f=u+h+N0e(a,c,l)+O0e[d]+el[d]|0,p=(Ro(r,2)^Ro(r,13)^Ro(r,22))+R0e(r,i,s)|0;u=l,l=c,c=a,a=o+f|0,o=s,s=i,i=r,r=f+p|0}r=r+this.A|0,i=i+this.B|0,s=s+this.C|0,o=o+this.D|0,a=a+this.E|0,c=c+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(r,i,s,o,a,c,l,u)}roundClean(){el.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const cg=B3(()=>new P0e),Ay=BigInt(2**32-1),Y5=BigInt(32);function L$(t,e=!1){return e?{h:Number(t&Ay),l:Number(t>>Y5&Ay)}:{h:Number(t>>Y5&Ay)|0,l:Number(t&Ay)|0}}function M$(t,e=!1){let n=new Uint32Array(t.length),r=new Uint32Array(t.length);for(let i=0;i<t.length;i++){const{h:s,l:o}=L$(t[i],e);[n[i],r[i]]=[s,o]}return[n,r]}const k0e=(t,e)=>BigInt(t>>>0)<<Y5|BigInt(e>>>0),$0e=(t,e,n)=>t>>>n,D0e=(t,e,n)=>t<<32-n|e>>>n,B0e=(t,e,n)=>t>>>n|e<<32-n,U0e=(t,e,n)=>t<<32-n|e>>>n,L0e=(t,e,n)=>t<<64-n|e>>>n-32,M0e=(t,e,n)=>t>>>n-32|e<<64-n,F0e=(t,e)=>e,W0e=(t,e)=>t,F$=(t,e,n)=>t<<n|e>>>32-n,W$=(t,e,n)=>e<<n|t>>>32-n,j$=(t,e,n)=>e<<n-32|t>>>64-n,H$=(t,e,n)=>t<<n-32|e>>>64-n;function j0e(t,e,n,r){const i=(e>>>0)+(r>>>0);return{h:t+n+(i/2**32|0)|0,l:i|0}}const H0e=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),z0e=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,V0e=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),q0e=(t,e,n,r,i)=>e+n+r+i+(t/2**32|0)|0,G0e=(t,e,n,r,i)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(i>>>0),K0e=(t,e,n,r,i,s)=>e+n+r+i+s+(t/2**32|0)|0,it={fromBig:L$,split:M$,toBig:k0e,shrSH:$0e,shrSL:D0e,rotrSH:B0e,rotrSL:U0e,rotrBH:L0e,rotrBL:M0e,rotr32H:F0e,rotr32L:W0e,rotlSH:F$,rotlSL:W$,rotlBH:j$,rotlBL:H$,add:j0e,add3L:H0e,add3H:z0e,add4L:V0e,add4H:q0e,add5H:K0e,add5L:G0e},[Z0e,Y0e]=it.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),tl=new Uint32Array(80),nl=new Uint32Array(80);class J0e extends P6{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:n,Bh:r,Bl:i,Ch:s,Cl:o,Dh:a,Dl:c,Eh:l,El:u,Fh:d,Fl:h,Gh:f,Gl:g,Hh:p,Hl:m}=this;return[e,n,r,i,s,o,a,c,l,u,d,h,f,g,p,m]}set(e,n,r,i,s,o,a,c,l,u,d,h,f,g,p,m){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=i|0,this.Ch=s|0,this.Cl=o|0,this.Dh=a|0,this.Dl=c|0,this.Eh=l|0,this.El=u|0,this.Fh=d|0,this.Fl=h|0,this.Gh=f|0,this.Gl=g|0,this.Hh=p|0,this.Hl=m|0}process(e,n){for(let x=0;x<16;x++,n+=4)tl[x]=e.getUint32(n),nl[x]=e.getUint32(n+=4);for(let x=16;x<80;x++){const A=tl[x-15]|0,I=nl[x-15]|0,P=it.rotrSH(A,I,1)^it.rotrSH(A,I,8)^it.shrSH(A,I,7),B=it.rotrSL(A,I,1)^it.rotrSL(A,I,8)^it.shrSL(A,I,7),F=tl[x-2]|0,L=nl[x-2]|0,j=it.rotrSH(F,L,19)^it.rotrBH(F,L,61)^it.shrSH(F,L,6),z=it.rotrSL(F,L,19)^it.rotrBL(F,L,61)^it.shrSL(F,L,6),W=it.add4L(B,z,nl[x-7],nl[x-16]),D=it.add4H(W,P,j,tl[x-7],tl[x-16]);tl[x]=D|0,nl[x]=W|0}let{Ah:r,Al:i,Bh:s,Bl:o,Ch:a,Cl:c,Dh:l,Dl:u,Eh:d,El:h,Fh:f,Fl:g,Gh:p,Gl:m,Hh:b,Hl:C}=this;for(let x=0;x<80;x++){const A=it.rotrSH(d,h,14)^it.rotrSH(d,h,18)^it.rotrBH(d,h,41),I=it.rotrSL(d,h,14)^it.rotrSL(d,h,18)^it.rotrBL(d,h,41),P=d&f^~d&p,B=h&g^~h&m,F=it.add5L(C,I,B,Y0e[x],nl[x]),L=it.add5H(F,b,A,P,Z0e[x],tl[x]),j=F|0,z=it.rotrSH(r,i,28)^it.rotrBH(r,i,34)^it.rotrBH(r,i,39),W=it.rotrSL(r,i,28)^it.rotrBL(r,i,34)^it.rotrBL(r,i,39),D=r&s^r&a^s&a,U=i&o^i&c^o&c;b=p|0,C=m|0,p=f|0,m=g|0,f=d|0,g=h|0,{h:d,l:h}=it.add(l|0,u|0,L|0,j|0),l=a|0,u=c|0,a=s|0,c=o|0,s=r|0,o=i|0;const w=it.add3L(j,W,U);r=it.add3H(w,L,z,D),i=w|0}({h:r,l:i}=it.add(this.Ah|0,this.Al|0,r|0,i|0)),{h:s,l:o}=it.add(this.Bh|0,this.Bl|0,s|0,o|0),{h:a,l:c}=it.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:l,l:u}=it.add(this.Dh|0,this.Dl|0,l|0,u|0),{h:d,l:h}=it.add(this.Eh|0,this.El|0,d|0,h|0),{h:f,l:g}=it.add(this.Fh|0,this.Fl|0,f|0,g|0),{h:p,l:m}=it.add(this.Gh|0,this.Gl|0,p|0,m|0),{h:b,l:C}=it.add(this.Hh|0,this.Hl|0,b|0,C|0),this.set(r,i,s,o,a,c,l,u,d,h,f,g,p,m,b,C)}roundClean(){tl.fill(0),nl.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}const k6=B3(()=>new J0e);function Q0e(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")}const M7=Q0e(),F7=M7.crypto||M7.msCrypto;function X0e(t){switch(t){case"sha256":return cg.create();case"sha512":return k6.create()}M(!1,"invalid hashing algorithm name","algorithm",t)}function ege(t,e){const n={sha256:cg,sha512:k6}[t];return M(n!=null,"invalid hmac algorithm","algorithm",t),U3.create(n,e)}function tge(t,e,n,r,i){const s={sha256:cg,sha512:k6}[i];return M(s!=null,"invalid pbkdf2 algorithm","algorithm",i),O6(s,t,e,{c:n,dkLen:r})}function nge(t){ie(F7!=null,"platform does not support secure random numbers","UNSUPPORTED_OPERATION",{operation:"randomBytes"}),M(Number.isInteger(t)&&t>0&&t<=1024,"invalid length","length",t);const e=new Uint8Array(t);return F7.getRandomValues(e),e}let z$=!1;const V$=function(t,e,n){return ege(t,e).update(n).digest()};let q$=V$;function lg(t,e,n){const r=Ae(e,"key"),i=Ae(n,"data");return de(q$(t,r,i))}lg._=V$;lg.lock=function(){z$=!0};lg.register=function(t){if(z$)throw new Error("computeHmac is locked");q$=t};Object.freeze(lg);const[G$,K$,Z$]=[[],[],[]],rge=BigInt(0),Wg=BigInt(1),ige=BigInt(2),sge=BigInt(7),oge=BigInt(256),age=BigInt(113);for(let t=0,e=Wg,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],G$.push(2*(5*r+n)),K$.push((t+1)*(t+2)/2%64);let i=rge;for(let s=0;s<7;s++)e=(e<<Wg^(e>>sge)*age)%oge,e&ige&&(i^=Wg<<(Wg<<BigInt(s))-Wg);Z$.push(i)}const[cge,lge]=M$(Z$,!0),W7=(t,e,n)=>n>32?j$(t,e,n):F$(t,e,n),j7=(t,e,n)=>n>32?H$(t,e,n):W$(t,e,n);function uge(t,e=24){const n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let o=0;o<10;o++)n[o]=t[o]^t[o+10]^t[o+20]^t[o+30]^t[o+40];for(let o=0;o<10;o+=2){const a=(o+8)%10,c=(o+2)%10,l=n[c],u=n[c+1],d=W7(l,u,1)^n[a],h=j7(l,u,1)^n[a+1];for(let f=0;f<50;f+=10)t[o+f]^=d,t[o+f+1]^=h}let i=t[2],s=t[3];for(let o=0;o<24;o++){const a=K$[o],c=W7(i,s,a),l=j7(i,s,a),u=G$[o];i=t[u],s=t[u+1],t[u]=c,t[u+1]=l}for(let o=0;o<50;o+=10){for(let a=0;a<10;a++)n[a]=t[o+a];for(let a=0;a<10;a++)t[o+a]^=~n[(a+2)%10]&n[(a+4)%10]}t[0]^=cge[r],t[1]^=lge[r]}n.fill(0)}class $6 extends R6{constructor(e,n,r,i=!1,s=24){if(super(),this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=i,this.rounds=s,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,qi(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Gy(this.state)}keccak(){uge(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){P0(this);const{blockLen:n,state:r}=this;e=k0(e);const i=e.length;for(let s=0;s<i;){const o=Math.min(n-this.pos,i-s);for(let a=0;a<o;a++)r[this.pos++]^=e[s++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:n,pos:r,blockLen:i}=this;e[r]^=n,n&128&&r===i-1&&this.keccak(),e[i-1]^=128,this.keccak()}writeInto(e){P0(this,!1),N6(e),this.finish();const n=this.state,{blockLen:r}=this;for(let i=0,s=e.length;i<s;){this.posOut>=r&&this.keccak();const o=Math.min(r-this.posOut,s-i);e.set(n.subarray(this.posOut,this.posOut+o),i),this.posOut+=o,i+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return qi(e),this.xofInto(new Uint8Array(e))}digestInto(e){if($$(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:n,suffix:r,outputLen:i,rounds:s,enableXOF:o}=this;return e||(e=new $6(n,r,i,o,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=r,e.outputLen=i,e.enableXOF=o,e.destroyed=this.destroyed,e}}const dge=(t,e,n)=>B3(()=>new $6(e,t,n)),hge=dge(1,136,256/8);let Y$=!1;const J$=function(t){return hge(t)};let Q$=J$;function nn(t){const e=Ae(t,"data");return de(Q$(e))}nn._=J$;nn.lock=function(){Y$=!0};nn.register=function(t){if(Y$)throw new TypeError("keccak256 is locked");Q$=t};Object.freeze(nn);const fge=new Uint8Array([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),X$=Uint8Array.from({length:16},(t,e)=>e),pge=X$.map(t=>(9*t+5)%16);let D6=[X$],B6=[pge];for(let t=0;t<4;t++)for(let e of[D6,B6])e.push(e[t].map(n=>fge[n]));const eD=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(t=>new Uint8Array(t)),gge=D6.map((t,e)=>t.map(n=>eD[e][n])),mge=B6.map((t,e)=>t.map(n=>eD[e][n])),wge=new Uint32Array([0,1518500249,1859775393,2400959708,2840853838]),yge=new Uint32Array([1352829926,1548603684,1836072691,2053994217,0]),_y=(t,e)=>t<<e|t>>>32-e;function H7(t,e,n,r){return t===0?e^n^r:t===1?e&n|~e&r:t===2?(e|~n)^r:t===3?e&r|n&~r:e^(n|~r)}const Sy=new Uint32Array(16);class bge extends P6{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){const{h0:e,h1:n,h2:r,h3:i,h4:s}=this;return[e,n,r,i,s]}set(e,n,r,i,s){this.h0=e|0,this.h1=n|0,this.h2=r|0,this.h3=i|0,this.h4=s|0}process(e,n){for(let f=0;f<16;f++,n+=4)Sy[f]=e.getUint32(n,!0);let r=this.h0|0,i=r,s=this.h1|0,o=s,a=this.h2|0,c=a,l=this.h3|0,u=l,d=this.h4|0,h=d;for(let f=0;f<5;f++){const g=4-f,p=wge[f],m=yge[f],b=D6[f],C=B6[f],x=gge[f],A=mge[f];for(let I=0;I<16;I++){const P=_y(r+H7(f,s,a,l)+Sy[b[I]]+p,x[I])+d|0;r=d,d=l,l=_y(a,10)|0,a=s,s=P}for(let I=0;I<16;I++){const P=_y(i+H7(g,o,c,u)+Sy[C[I]]+m,A[I])+h|0;i=h,h=u,u=_y(c,10)|0,c=o,o=P}}this.set(this.h1+a+u|0,this.h2+l+h|0,this.h3+d+i|0,this.h4+r+o|0,this.h0+s+c|0)}roundClean(){Sy.fill(0)}destroy(){this.destroyed=!0,this.buffer.fill(0),this.set(0,0,0,0,0)}}const xge=B3(()=>new bge);let tD=!1;const nD=function(t){return xge(t)};let rD=nD;function ug(t){const e=Ae(t,"data");return de(rD(e))}ug._=nD;ug.lock=function(){tD=!0};ug.register=function(t){if(tD)throw new TypeError("ripemd160 is locked");rD=t};Object.freeze(ug);let iD=!1;const sD=function(t,e,n,r,i){return tge(t,e,n,r,i)};let oD=sD;function mu(t,e,n,r,i){const s=Ae(t,"password"),o=Ae(e,"salt");return de(oD(s,o,n,r,i))}mu._=sD;mu.lock=function(){iD=!0};mu.register=function(t){if(iD)throw new Error("pbkdf2 is locked");oD=t};Object.freeze(mu);let aD=!1;const cD=function(t){return new Uint8Array(nge(t))};let lD=cD;function mc(t){return lD(t)}mc._=cD;mc.lock=function(){aD=!0};mc.register=function(t){if(aD)throw new Error("randomBytes is locked");lD=t};Object.freeze(mc);const _t=(t,e)=>t<<e|t>>>32-e;function z7(t,e,n,r,i,s){let o=t[e++]^n[r++],a=t[e++]^n[r++],c=t[e++]^n[r++],l=t[e++]^n[r++],u=t[e++]^n[r++],d=t[e++]^n[r++],h=t[e++]^n[r++],f=t[e++]^n[r++],g=t[e++]^n[r++],p=t[e++]^n[r++],m=t[e++]^n[r++],b=t[e++]^n[r++],C=t[e++]^n[r++],x=t[e++]^n[r++],A=t[e++]^n[r++],I=t[e++]^n[r++],P=o,B=a,F=c,L=l,j=u,z=d,W=h,D=f,U=g,w=p,E=m,T=b,O=C,R=x,$=A,q=I;for(let Y=0;Y<8;Y+=2)j^=_t(P+O|0,7),U^=_t(j+P|0,9),O^=_t(U+j|0,13),P^=_t(O+U|0,18),w^=_t(z+B|0,7),R^=_t(w+z|0,9),B^=_t(R+w|0,13),z^=_t(B+R|0,18),$^=_t(E+W|0,7),F^=_t($+E|0,9),W^=_t(F+$|0,13),E^=_t(W+F|0,18),L^=_t(q+T|0,7),D^=_t(L+q|0,9),T^=_t(D+L|0,13),q^=_t(T+D|0,18),B^=_t(P+L|0,7),F^=_t(B+P|0,9),L^=_t(F+B|0,13),P^=_t(L+F|0,18),W^=_t(z+j|0,7),D^=_t(W+z|0,9),j^=_t(D+W|0,13),z^=_t(j+D|0,18),T^=_t(E+w|0,7),U^=_t(T+E|0,9),w^=_t(U+T|0,13),E^=_t(w+U|0,18),O^=_t(q+$|0,7),R^=_t(O+q|0,9),$^=_t(R+O|0,13),q^=_t($+R|0,18);i[s++]=o+P|0,i[s++]=a+B|0,i[s++]=c+F|0,i[s++]=l+L|0,i[s++]=u+j|0,i[s++]=d+z|0,i[s++]=h+W|0,i[s++]=f+D|0,i[s++]=g+U|0,i[s++]=p+w|0,i[s++]=m+E|0,i[s++]=b+T|0,i[s++]=C+O|0,i[s++]=x+R|0,i[s++]=A+$|0,i[s++]=I+q|0}function jf(t,e,n,r,i){let s=r+0,o=r+16*i;for(let a=0;a<16;a++)n[o+a]=t[e+(2*i-1)*16+a];for(let a=0;a<i;a++,s+=16,e+=16)z7(n,o,t,e,n,s),a>0&&(o+=16),z7(n,s,t,e+=16,n,o)}function uD(t,e,n){const r=B$({dkLen:32,asyncTick:10,maxmem:1073742848},n),{N:i,r:s,p:o,dkLen:a,asyncTick:c,maxmem:l,onProgress:u}=r;if(qi(i),qi(s),qi(o),qi(a),qi(c),qi(l),u!==void 0&&typeof u!="function")throw new Error("progressCb should be function");const d=128*s,h=d/4;if(i<=1||i&i-1||i>=2**(d/8)||i>2**32)throw new Error("Scrypt: N must be larger than 1, a power of 2, less than 2^(128 * r / 8) and less than 2^32");if(o<0||o>(2**32-1)*32/d)throw new Error("Scrypt: p must be a positive integer less than or equal to ((2^32 - 1) * 32) / (128 * r)");if(a<0||a>(2**32-1)*32)throw new Error("Scrypt: dkLen should be positive integer less than or equal to (2^32 - 1) * 32");const f=d*(i+o);if(f>l)throw new Error(`Scrypt: parameters too large, ${f} (128 * r * (N + p)) > ${l} (maxmem)`);const g=O6(cg,t,e,{c:1,dkLen:d*o}),p=Gy(g),m=Gy(new Uint8Array(d*i)),b=Gy(new Uint8Array(d));let C=()=>{};if(u){const x=2*i*o,A=Math.max(Math.floor(x/1e4),1);let I=0;C=()=>{I++,u&&(!(I%A)||I===x)&&u(I/x)}}return{N:i,r:s,p:o,dkLen:a,blockSize32:h,V:m,B32:p,B:g,tmp:b,blockMixCb:C,asyncTick:c}}function dD(t,e,n,r,i){const s=O6(cg,t,n,{c:1,dkLen:e});return n.fill(0),r.fill(0),i.fill(0),s}function Ege(t,e,n){const{N:r,r:i,p:s,dkLen:o,blockSize32:a,V:c,B32:l,B:u,tmp:d,blockMixCb:h}=uD(t,e,n);for(let f=0;f<s;f++){const g=a*f;for(let p=0;p<a;p++)c[p]=l[g+p];for(let p=0,m=0;p<r-1;p++)jf(c,m,c,m+=a,i),h();jf(c,(r-1)*a,l,g,i),h();for(let p=0;p<r;p++){const m=l[g+a-16]%r;for(let b=0;b<a;b++)d[b]=l[g+b]^c[m*a+b];jf(d,0,l,g,i),h()}}return dD(t,o,u,c,d)}async function vge(t,e,n){const{N:r,r:i,p:s,dkLen:o,blockSize32:a,V:c,B32:l,B:u,tmp:d,blockMixCb:h,asyncTick:f}=uD(t,e,n);for(let g=0;g<s;g++){const p=a*g;for(let b=0;b<a;b++)c[b]=l[p+b];let m=0;await L7(r-1,f,()=>{jf(c,m,c,m+=a,i),h()}),jf(c,(r-1)*a,l,p,i),h(),await L7(r,f,()=>{const b=l[p+a-16]%r;for(let C=0;C<a;C++)d[C]=l[p+C]^c[b*a+C];jf(d,0,l,p,i),h()})}return dD(t,o,u,c,d)}let hD=!1,fD=!1;const pD=async function(t,e,n,r,i,s,o){return await vge(t,e,{N:n,r,p:i,dkLen:s,onProgress:o})},gD=function(t,e,n,r,i,s){return Ege(t,e,{N:n,r,p:i,dkLen:s})};let mD=pD,wD=gD;async function dg(t,e,n,r,i,s,o){const a=Ae(t,"passwd"),c=Ae(e,"salt");return de(await mD(a,c,n,r,i,s,o))}dg._=pD;dg.lock=function(){fD=!0};dg.register=function(t){if(fD)throw new Error("scrypt is locked");mD=t};Object.freeze(dg);function hg(t,e,n,r,i,s){const o=Ae(t,"passwd"),a=Ae(e,"salt");return de(wD(o,a,n,r,i,s))}hg._=gD;hg.lock=function(){hD=!0};hg.register=function(t){if(hD)throw new Error("scryptSync is locked");wD=t};Object.freeze(hg);const yD=function(t){return X0e("sha256").update(t).digest()};let bD=yD,xD=!1;function ks(t){const e=Ae(t,"data");return de(bD(e))}ks._=yD;ks.lock=function(){xD=!0};ks.register=function(t){if(xD)throw new Error("sha256 is locked");bD=t};Object.freeze(ks);Object.freeze(ks);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const ED=BigInt(0),L3=BigInt(1),Cge=BigInt(2),M3=t=>t instanceof Uint8Array,Age=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function $0(t){if(!M3(t))throw new Error("Uint8Array expected");let e="";for(let n=0;n<t.length;n++)e+=Age[t[n]];return e}function vD(t){const e=t.toString(16);return e.length&1?`0${e}`:e}function U6(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function D0(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);const e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);const n=new Uint8Array(e/2);for(let r=0;r<n.length;r++){const i=r*2,s=t.slice(i,i+2),o=Number.parseInt(s,16);if(Number.isNaN(o)||o<0)throw new Error("Invalid byte sequence");n[r]=o}return n}function Od(t){return U6($0(t))}function L6(t){if(!M3(t))throw new Error("Uint8Array expected");return U6($0(Uint8Array.from(t).reverse()))}function B0(t,e){return D0(t.toString(16).padStart(e*2,"0"))}function M6(t,e){return B0(t,e).reverse()}function _ge(t){return D0(vD(t))}function Ys(t,e,n){let r;if(typeof e=="string")try{r=D0(e)}catch(s){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${s}`)}else if(M3(e))r=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);const i=r.length;if(typeof n=="number"&&i!==n)throw new Error(`${t} expected ${n} bytes, got ${i}`);return r}function i1(...t){const e=new Uint8Array(t.reduce((r,i)=>r+i.length,0));let n=0;return t.forEach(r=>{if(!M3(r))throw new Error("Uint8Array expected");e.set(r,n),n+=r.length}),e}function Sge(t,e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}function Ige(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Tge(t){let e;for(e=0;t>ED;t>>=L3,e+=1);return e}function Nge(t,e){return t>>BigInt(e)&L3}const Rge=(t,e,n)=>t|(n?L3:ED)<<BigInt(e),F6=t=>(Cge<<BigInt(t-1))-L3,DE=t=>new Uint8Array(t),V7=t=>Uint8Array.from(t);function CD(t,e,n){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");let r=DE(t),i=DE(t),s=0;const o=()=>{r.fill(1),i.fill(0),s=0},a=(...d)=>n(i,r,...d),c=(d=DE())=>{i=a(V7([0]),d),r=a(),d.length!==0&&(i=a(V7([1]),d),r=a())},l=()=>{if(s++>=1e3)throw new Error("drbg: tried 1000 values");let d=0;const h=[];for(;d<e;){r=a();const f=r.slice();h.push(f),d+=r.length}return i1(...h)};return(d,h)=>{o(),c(d);let f;for(;!(f=h(l()));)c();return o(),f}}const Oge={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function vw(t,e,n={}){const r=(i,s,o)=>{const a=Oge[s];if(typeof a!="function")throw new Error(`Invalid validator "${s}", expected function`);const c=t[i];if(!(o&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${s}`)};for(const[i,s]of Object.entries(e))r(i,s,!1);for(const[i,s]of Object.entries(n))r(i,s,!0);return t}const Pge=Object.freeze(Object.defineProperty({__proto__:null,bitGet:Nge,bitLen:Tge,bitMask:F6,bitSet:Rge,bytesToHex:$0,bytesToNumberBE:Od,bytesToNumberLE:L6,concatBytes:i1,createHmacDrbg:CD,ensureBytes:Ys,equalBytes:Sge,hexToBytes:D0,hexToNumber:U6,numberToBytesBE:B0,numberToBytesLE:M6,numberToHexUnpadded:vD,numberToVarBytesBE:_ge,utf8ToBytes:Ige,validateObject:vw},Symbol.toStringTag,{value:"Module"}));/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const qn=BigInt(0),bn=BigInt(1),ju=BigInt(2),kge=BigInt(3),J5=BigInt(4),q7=BigInt(5),G7=BigInt(8);BigInt(9);BigInt(16);function ui(t,e){const n=t%e;return n>=qn?n:e+n}function $ge(t,e,n){if(n<=qn||e<qn)throw new Error("Expected power/modulo > 0");if(n===bn)return qn;let r=bn;for(;e>qn;)e&bn&&(r=r*t%n),t=t*t%n,e>>=bn;return r}function as(t,e,n){let r=t;for(;e-- >qn;)r*=r,r%=n;return r}function Q5(t,e){if(t===qn||e<=qn)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let n=ui(t,e),r=e,i=qn,s=bn;for(;n!==qn;){const a=r/n,c=r%n,l=i-s*a;r=n,n=c,i=s,s=l}if(r!==bn)throw new Error("invert: does not exist");return ui(i,e)}function Dge(t){const e=(t-bn)/ju;let n,r,i;for(n=t-bn,r=0;n%ju===qn;n/=ju,r++);for(i=ju;i<t&&$ge(i,e,t)!==t-bn;i++);if(r===1){const o=(t+bn)/J5;return function(c,l){const u=c.pow(l,o);if(!c.eql(c.sqr(u),l))throw new Error("Cannot find square root");return u}}const s=(n+bn)/ju;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let l=r,u=a.pow(a.mul(a.ONE,i),n),d=a.pow(c,s),h=a.pow(c,n);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let f=1;for(let p=a.sqr(h);f<l&&!a.eql(p,a.ONE);f++)p=a.sqr(p);const g=a.pow(u,bn<<BigInt(l-f-1));u=a.sqr(g),d=a.mul(d,g),h=a.mul(h,u),l=f}return d}}function Bge(t){if(t%J5===kge){const e=(t+bn)/J5;return function(r,i){const s=r.pow(i,e);if(!r.eql(r.sqr(s),i))throw new Error("Cannot find square root");return s}}if(t%G7===q7){const e=(t-q7)/G7;return function(r,i){const s=r.mul(i,ju),o=r.pow(s,e),a=r.mul(i,o),c=r.mul(r.mul(a,ju),o),l=r.mul(a,r.sub(c,r.ONE));if(!r.eql(r.sqr(l),i))throw new Error("Cannot find square root");return l}}return Dge(t)}const Uge=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Lge(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=Uge.reduce((r,i)=>(r[i]="function",r),e);return vw(t,n)}function Mge(t,e,n){if(n<qn)throw new Error("Expected power > 0");if(n===qn)return t.ONE;if(n===bn)return e;let r=t.ONE,i=e;for(;n>qn;)n&bn&&(r=t.mul(r,i)),i=t.sqr(i),n>>=bn;return r}function Fge(t,e){const n=new Array(e.length),r=e.reduce((s,o,a)=>t.is0(o)?s:(n[a]=s,t.mul(s,o)),t.ONE),i=t.inv(r);return e.reduceRight((s,o,a)=>t.is0(o)?s:(n[a]=t.mul(s,n[a]),t.mul(s,o)),i),n}function AD(t,e){const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Wge(t,e,n=!1,r={}){if(t<=qn)throw new Error(`Expected Field ORDER > 0, got ${t}`);const{nBitLength:i,nByteLength:s}=AD(t,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");const o=Bge(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:s,MASK:F6(i),ZERO:qn,ONE:bn,create:c=>ui(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return qn<=c&&c<t},is0:c=>c===qn,isOdd:c=>(c&bn)===bn,neg:c=>ui(-c,t),eql:(c,l)=>c===l,sqr:c=>ui(c*c,t),add:(c,l)=>ui(c+l,t),sub:(c,l)=>ui(c-l,t),mul:(c,l)=>ui(c*l,t),pow:(c,l)=>Mge(a,c,l),div:(c,l)=>ui(c*Q5(l,t),t),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>Q5(c,t),sqrt:r.sqrt||(c=>o(a,c)),invertBatch:c=>Fge(a,c),cmov:(c,l,u)=>u?l:c,toBytes:c=>n?M6(c,s):B0(c,s),fromBytes:c=>{if(c.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${c.length}`);return n?L6(c):Od(c)}});return Object.freeze(a)}function _D(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const e=t.toString(2).length;return Math.ceil(e/8)}function SD(t){const e=_D(t);return e+Math.ceil(e/2)}function jge(t,e,n=!1){const r=t.length,i=_D(e),s=SD(e);if(r<16||r<s||r>1024)throw new Error(`expected ${s}-1024 bytes of input, got ${r}`);const o=n?Od(t):L6(t),a=ui(o,e-bn)+bn;return n?M6(a,i):B0(a,i)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Hge=BigInt(0),BE=BigInt(1);function zge(t,e){const n=(i,s)=>{const o=s.negate();return i?o:s},r=i=>{const s=Math.ceil(e/i)+1,o=2**(i-1);return{windows:s,windowSize:o}};return{constTimeNegate:n,unsafeLadder(i,s){let o=t.ZERO,a=i;for(;s>Hge;)s&BE&&(o=o.add(a)),a=a.double(),s>>=BE;return o},precomputeWindow(i,s){const{windows:o,windowSize:a}=r(s),c=[];let l=i,u=l;for(let d=0;d<o;d++){u=l,c.push(u);for(let h=1;h<a;h++)u=u.add(l),c.push(u);l=u.double()}return c},wNAF(i,s,o){const{windows:a,windowSize:c}=r(i);let l=t.ZERO,u=t.BASE;const d=BigInt(2**i-1),h=2**i,f=BigInt(i);for(let g=0;g<a;g++){const p=g*c;let m=Number(o&d);o>>=f,m>c&&(m-=h,o+=BE);const b=p,C=p+Math.abs(m)-1,x=g%2!==0,A=m<0;m===0?u=u.add(n(x,s[b])):l=l.add(n(A,s[C]))}return{p:l,f:u}},wNAFCached(i,s,o,a){const c=i._WINDOW_SIZE||1;let l=s.get(i);return l||(l=this.precomputeWindow(i,c),c!==1&&s.set(i,a(l))),this.wNAF(c,l,o)}}}function ID(t){return Lge(t.Fp),vw(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...AD(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Vge(t){const e=ID(t);vw(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:r,a:i}=e;if(n){if(!r.eql(i,r.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}const{bytesToNumberBE:qge,hexToBytes:Gge}=Pge,ed={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){const{Err:e}=ed;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");const n=t[1],r=t.subarray(2,n+2);if(!n||r.length!==n)throw new e("Invalid signature integer: wrong length");if(r[0]&128)throw new e("Invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:qge(r),l:t.subarray(n+2)}},toSig(t){const{Err:e}=ed,n=typeof t=="string"?Gge(t):t;if(!(n instanceof Uint8Array))throw new Error("ui8a expected");let r=n.length;if(r<2||n[0]!=48)throw new e("Invalid signature tag");if(n[1]!==r-2)throw new e("Invalid signature: incorrect length");const{d:i,l:s}=ed._parseInt(n.subarray(2)),{d:o,l:a}=ed._parseInt(s);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s:o}},hexFromSig(t){const e=l=>Number.parseInt(l[0],16)&8?"00"+l:l,n=l=>{const u=l.toString(16);return u.length&1?`0${u}`:u},r=e(n(t.s)),i=e(n(t.r)),s=r.length/2,o=i.length/2,a=n(s),c=n(o);return`30${n(o+s+4)}02${c}${i}02${a}${r}`}},oc=BigInt(0),Is=BigInt(1);BigInt(2);const K7=BigInt(3);BigInt(4);function Kge(t){const e=Vge(t),{Fp:n}=e,r=e.toBytes||((g,p,m)=>{const b=p.toAffine();return i1(Uint8Array.from([4]),n.toBytes(b.x),n.toBytes(b.y))}),i=e.fromBytes||(g=>{const p=g.subarray(1),m=n.fromBytes(p.subarray(0,n.BYTES)),b=n.fromBytes(p.subarray(n.BYTES,2*n.BYTES));return{x:m,y:b}});function s(g){const{a:p,b:m}=e,b=n.sqr(g),C=n.mul(b,g);return n.add(n.add(C,n.mul(g,p)),m)}if(!n.eql(n.sqr(e.Gy),s(e.Gx)))throw new Error("bad generator point: equation left != right");function o(g){return typeof g=="bigint"&&oc<g&&g<e.n}function a(g){if(!o(g))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(g){const{allowedPrivateKeyLengths:p,nByteLength:m,wrapPrivateKey:b,n:C}=e;if(p&&typeof g!="bigint"){if(g instanceof Uint8Array&&(g=$0(g)),typeof g!="string"||!p.includes(g.length))throw new Error("Invalid key");g=g.padStart(m*2,"0")}let x;try{x=typeof g=="bigint"?g:Od(Ys("private key",g,m))}catch{throw new Error(`private key must be ${m} bytes, hex or bigint, not ${typeof g}`)}return b&&(x=ui(x,C)),a(x),x}const l=new Map;function u(g){if(!(g instanceof d))throw new Error("ProjectivePoint expected")}class d{constructor(p,m,b){if(this.px=p,this.py=m,this.pz=b,p==null||!n.isValid(p))throw new Error("x required");if(m==null||!n.isValid(m))throw new Error("y required");if(b==null||!n.isValid(b))throw new Error("z required")}static fromAffine(p){const{x:m,y:b}=p||{};if(!p||!n.isValid(m)||!n.isValid(b))throw new Error("invalid affine point");if(p instanceof d)throw new Error("projective point not allowed");const C=x=>n.eql(x,n.ZERO);return C(m)&&C(b)?d.ZERO:new d(m,b,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){const m=n.invertBatch(p.map(b=>b.pz));return p.map((b,C)=>b.toAffine(m[C])).map(d.fromAffine)}static fromHex(p){const m=d.fromAffine(i(Ys("pointHex",p)));return m.assertValidity(),m}static fromPrivateKey(p){return d.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,l.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!n.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:p,y:m}=this.toAffine();if(!n.isValid(p)||!n.isValid(m))throw new Error("bad point: x or y not FE");const b=n.sqr(m),C=s(p);if(!n.eql(b,C))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}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:m,py:b,pz:C}=this,{px:x,py:A,pz:I}=p,P=n.eql(n.mul(m,I),n.mul(x,C)),B=n.eql(n.mul(b,I),n.mul(A,C));return P&&B}negate(){return new d(this.px,n.neg(this.py),this.pz)}double(){const{a:p,b:m}=e,b=n.mul(m,K7),{px:C,py:x,pz:A}=this;let I=n.ZERO,P=n.ZERO,B=n.ZERO,F=n.mul(C,C),L=n.mul(x,x),j=n.mul(A,A),z=n.mul(C,x);return z=n.add(z,z),B=n.mul(C,A),B=n.add(B,B),I=n.mul(p,B),P=n.mul(b,j),P=n.add(I,P),I=n.sub(L,P),P=n.add(L,P),P=n.mul(I,P),I=n.mul(z,I),B=n.mul(b,B),j=n.mul(p,j),z=n.sub(F,j),z=n.mul(p,z),z=n.add(z,B),B=n.add(F,F),F=n.add(B,F),F=n.add(F,j),F=n.mul(F,z),P=n.add(P,F),j=n.mul(x,A),j=n.add(j,j),F=n.mul(j,z),I=n.sub(I,F),B=n.mul(j,L),B=n.add(B,B),B=n.add(B,B),new d(I,P,B)}add(p){u(p);const{px:m,py:b,pz:C}=this,{px:x,py:A,pz:I}=p;let P=n.ZERO,B=n.ZERO,F=n.ZERO;const L=e.a,j=n.mul(e.b,K7);let z=n.mul(m,x),W=n.mul(b,A),D=n.mul(C,I),U=n.add(m,b),w=n.add(x,A);U=n.mul(U,w),w=n.add(z,W),U=n.sub(U,w),w=n.add(m,C);let E=n.add(x,I);return w=n.mul(w,E),E=n.add(z,D),w=n.sub(w,E),E=n.add(b,C),P=n.add(A,I),E=n.mul(E,P),P=n.add(W,D),E=n.sub(E,P),F=n.mul(L,w),P=n.mul(j,D),F=n.add(P,F),P=n.sub(W,F),F=n.add(W,F),B=n.mul(P,F),W=n.add(z,z),W=n.add(W,z),D=n.mul(L,D),w=n.mul(j,w),W=n.add(W,D),D=n.sub(z,D),D=n.mul(L,D),w=n.add(w,D),z=n.mul(W,w),B=n.add(B,z),z=n.mul(E,w),P=n.mul(U,P),P=n.sub(P,z),z=n.mul(U,W),F=n.mul(E,F),F=n.add(F,z),new d(P,B,F)}subtract(p){return this.add(p.negate())}is0(){return this.equals(d.ZERO)}wNAF(p){return f.wNAFCached(this,l,p,m=>{const b=n.invertBatch(m.map(C=>C.pz));return m.map((C,x)=>C.toAffine(b[x])).map(d.fromAffine)})}multiplyUnsafe(p){const m=d.ZERO;if(p===oc)return m;if(a(p),p===Is)return this;const{endo:b}=e;if(!b)return f.unsafeLadder(this,p);let{k1neg:C,k1:x,k2neg:A,k2:I}=b.splitScalar(p),P=m,B=m,F=this;for(;x>oc||I>oc;)x&Is&&(P=P.add(F)),I&Is&&(B=B.add(F)),F=F.double(),x>>=Is,I>>=Is;return C&&(P=P.negate()),A&&(B=B.negate()),B=new d(n.mul(B.px,b.beta),B.py,B.pz),P.add(B)}multiply(p){a(p);let m=p,b,C;const{endo:x}=e;if(x){const{k1neg:A,k1:I,k2neg:P,k2:B}=x.splitScalar(m);let{p:F,f:L}=this.wNAF(I),{p:j,f:z}=this.wNAF(B);F=f.constTimeNegate(A,F),j=f.constTimeNegate(P,j),j=new d(n.mul(j.px,x.beta),j.py,j.pz),b=F.add(j),C=L.add(z)}else{const{p:A,f:I}=this.wNAF(m);b=A,C=I}return d.normalizeZ([b,C])[0]}multiplyAndAddUnsafe(p,m,b){const C=d.BASE,x=(I,P)=>P===oc||P===Is||!I.equals(C)?I.multiplyUnsafe(P):I.multiply(P),A=x(this,m).add(x(p,b));return A.is0()?void 0:A}toAffine(p){const{px:m,py:b,pz:C}=this,x=this.is0();p==null&&(p=x?n.ONE:n.inv(C));const A=n.mul(m,p),I=n.mul(b,p),P=n.mul(C,p);if(x)return{x:n.ZERO,y:n.ZERO};if(!n.eql(P,n.ONE))throw new Error("invZ was invalid");return{x:A,y:I}}isTorsionFree(){const{h:p,isTorsionFree:m}=e;if(p===Is)return!0;if(m)return m(d,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:p,clearCofactor:m}=e;return p===Is?this:m?m(d,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),r(d,this,p)}toHex(p=!0){return $0(this.toRawBytes(p))}}d.BASE=new d(e.Gx,e.Gy,n.ONE),d.ZERO=new d(n.ZERO,n.ONE,n.ZERO);const h=e.nBitLength,f=zge(d,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:d,normPrivateKeyToScalar:c,weierstrassEquation:s,isWithinCurveOrder:o}}function Zge(t){const e=ID(t);return vw(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Yge(t){const e=Zge(t),{Fp:n,n:r}=e,i=n.BYTES+1,s=2*n.BYTES+1;function o(w){return oc<w&&w<n.ORDER}function a(w){return ui(w,r)}function c(w){return Q5(w,r)}const{ProjectivePoint:l,normPrivateKeyToScalar:u,weierstrassEquation:d,isWithinCurveOrder:h}=Kge({...e,toBytes(w,E,T){const O=E.toAffine(),R=n.toBytes(O.x),$=i1;return T?$(Uint8Array.from([E.hasEvenY()?2:3]),R):$(Uint8Array.from([4]),R,n.toBytes(O.y))},fromBytes(w){const E=w.length,T=w[0],O=w.subarray(1);if(E===i&&(T===2||T===3)){const R=Od(O);if(!o(R))throw new Error("Point is not on curve");const $=d(R);let q=n.sqrt($);const Y=(q&Is)===Is;return(T&1)===1!==Y&&(q=n.neg(q)),{x:R,y:q}}else if(E===s&&T===4){const R=n.fromBytes(O.subarray(0,n.BYTES)),$=n.fromBytes(O.subarray(n.BYTES,2*n.BYTES));return{x:R,y:$}}else throw new Error(`Point of length ${E} was invalid. Expected ${i} compressed bytes or ${s} uncompressed bytes`)}}),f=w=>$0(B0(w,e.nByteLength));function g(w){const E=r>>Is;return w>E}function p(w){return g(w)?a(-w):w}const m=(w,E,T)=>Od(w.slice(E,T));class b{constructor(E,T,O){this.r=E,this.s=T,this.recovery=O,this.assertValidity()}static fromCompact(E){const T=e.nByteLength;return E=Ys("compactSignature",E,T*2),new b(m(E,0,T),m(E,T,2*T))}static fromDER(E){const{r:T,s:O}=ed.toSig(Ys("DER",E));return new b(T,O)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(E){return new b(this.r,this.s,E)}recoverPublicKey(E){const{r:T,s:O,recovery:R}=this,$=B(Ys("msgHash",E));if(R==null||![0,1,2,3].includes(R))throw new Error("recovery id invalid");const q=R===2||R===3?T+e.n:T;if(q>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const Y=R&1?"03":"02",le=l.fromHex(Y+f(q)),ne=c(q),ce=a(-$*ne),be=a(O*ne),xe=l.BASE.multiplyAndAddUnsafe(le,ce,be);if(!xe)throw new Error("point at infinify");return xe.assertValidity(),xe}hasHighS(){return g(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return D0(this.toDERHex())}toDERHex(){return ed.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return D0(this.toCompactHex())}toCompactHex(){return f(this.r)+f(this.s)}}const C={isValidPrivateKey(w){try{return u(w),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{const w=SD(e.n);return jge(e.randomBytes(w),e.n)},precompute(w=8,E=l.BASE){return E._setWindowSize(w),E.multiply(BigInt(3)),E}};function x(w,E=!0){return l.fromPrivateKey(w).toRawBytes(E)}function A(w){const E=w instanceof Uint8Array,T=typeof w=="string",O=(E||T)&&w.length;return E?O===i||O===s:T?O===2*i||O===2*s:w instanceof l}function I(w,E,T=!0){if(A(w))throw new Error("first arg must be private key");if(!A(E))throw new Error("second arg must be public key");return l.fromHex(E).multiply(u(w)).toRawBytes(T)}const P=e.bits2int||function(w){const E=Od(w),T=w.length*8-e.nBitLength;return T>0?E>>BigInt(T):E},B=e.bits2int_modN||function(w){return a(P(w))},F=F6(e.nBitLength);function L(w){if(typeof w!="bigint")throw new Error("bigint expected");if(!(oc<=w&&w<F))throw new Error(`bigint expected < 2^${e.nBitLength}`);return B0(w,e.nByteLength)}function j(w,E,T=z){if(["recovered","canonical"].some(Ee=>Ee in T))throw new Error("sign() legacy options not supported");const{hash:O,randomBytes:R}=e;let{lowS:$,prehash:q,extraEntropy:Y}=T;$==null&&($=!0),w=Ys("msgHash",w),q&&(w=Ys("prehashed msgHash",O(w)));const le=B(w),ne=u(E),ce=[L(ne),L(le)];if(Y!=null){const Ee=Y===!0?R(n.BYTES):Y;ce.push(Ys("extraEntropy",Ee))}const be=i1(...ce),xe=le;function Ke(Ee){const Ue=P(Ee);if(!h(Ue))return;const lt=c(Ue),yt=l.BASE.multiply(Ue).toAffine(),ut=a(yt.x);if(ut===oc)return;const Qt=a(lt*a(xe+ut*ne));if(Qt===oc)return;let Yr=(yt.x===ut?0:2)|Number(yt.y&Is),Ri=Qt;return $&&g(Qt)&&(Ri=p(Qt),Yr^=1),new b(ut,Ri,Yr)}return{seed:be,k2sig:Ke}}const z={lowS:e.lowS,prehash:!1},W={lowS:e.lowS,prehash:!1};function D(w,E,T=z){const{seed:O,k2sig:R}=j(w,E,T),$=e;return CD($.hash.outputLen,$.nByteLength,$.hmac)(O,R)}l.BASE._setWindowSize(8);function U(w,E,T,O=W){var yt;const R=w;if(E=Ys("msgHash",E),T=Ys("publicKey",T),"strict"in O)throw new Error("options.strict was renamed to lowS");const{lowS:$,prehash:q}=O;let Y,le;try{if(typeof R=="string"||R instanceof Uint8Array)try{Y=b.fromDER(R)}catch(ut){if(!(ut instanceof ed.Err))throw ut;Y=b.fromCompact(R)}else if(typeof R=="object"&&typeof R.r=="bigint"&&typeof R.s=="bigint"){const{r:ut,s:Qt}=R;Y=new b(ut,Qt)}else throw new Error("PARSE");le=l.fromHex(T)}catch(ut){if(ut.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if($&&Y.hasHighS())return!1;q&&(E=e.hash(E));const{r:ne,s:ce}=Y,be=B(E),xe=c(ce),Ke=a(be*xe),Ee=a(ne*xe),Ue=(yt=l.BASE.multiplyAndAddUnsafe(le,Ke,Ee))==null?void 0:yt.toAffine();return Ue?a(Ue.x)===ne:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:I,sign:D,verify:U,ProjectivePoint:l,Signature:b,utils:C}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Jge(t){return{hash:t,hmac:(e,...n)=>U3(t,e,C0e(...n)),randomBytes:_0e}}function Qge(t,e){const n=r=>Yge({...t,...Jge(r)});return Object.freeze({...n(e),create:n})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const TD=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Z7=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Xge=BigInt(1),X5=BigInt(2),Y7=(t,e)=>(t+e/X5)/e;function eme(t){const e=TD,n=BigInt(3),r=BigInt(6),i=BigInt(11),s=BigInt(22),o=BigInt(23),a=BigInt(44),c=BigInt(88),l=t*t*t%e,u=l*l*t%e,d=as(u,n,e)*u%e,h=as(d,n,e)*u%e,f=as(h,X5,e)*l%e,g=as(f,i,e)*f%e,p=as(g,s,e)*g%e,m=as(p,a,e)*p%e,b=as(m,c,e)*m%e,C=as(b,a,e)*p%e,x=as(C,n,e)*u%e,A=as(x,o,e)*g%e,I=as(A,r,e)*l%e,P=as(I,X5,e);if(!e4.eql(e4.sqr(P),t))throw new Error("Cannot find square root");return P}const e4=Wge(TD,void 0,void 0,{sqrt:eme}),il=Qge({a:BigInt(0),b:BigInt(7),Fp:e4,n:Z7,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=Z7,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-Xge*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=n,o=BigInt("0x100000000000000000000000000000000"),a=Y7(s*t,e),c=Y7(-r*t,e);let l=ui(t-a*n-c*i,e),u=ui(-a*r-c*s,e);const d=l>o,h=u>o;if(d&&(l=e-l),h&&(u=e-u),l>o||u>o)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:d,k1:l,k2neg:h,k2:u}}}},cg);BigInt(0);il.ProjectivePoint;const s1="0x0000000000000000000000000000000000000000",J7="0x0000000000000000000000000000000000000000000000000000000000000000",tme=`Ethereum Signed Message:
|
|
7196
7196
|
`,Q7=BigInt(0),X7=BigInt(1),t4=BigInt(2),eS=BigInt(27),tS=BigInt(28),Iy=BigInt(35),ND=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),nme=ND/t4,rme=Symbol.for("nodejs.util.inspect.custom"),Tu={};function UE(t){return Tc(cn(t),32)}var np,Lo,rp,wl;const gs=class gs{constructor(e,n,r,i){K(this,np);K(this,Lo);K(this,rp);K(this,wl);gu(e,Tu,"Signature"),k(this,np,n),k(this,Lo,r),k(this,rp,i),k(this,wl,null)}get r(){return y(this,np)}set r(e){M(Ff(e)===32,"invalid r","value",e),k(this,np,de(e))}get s(){return M(parseInt(y(this,Lo).substring(0,3))<8,"non-canonical s; use ._s","s",y(this,Lo)),y(this,Lo)}set s(e){M(Ff(e)===32,"invalid s","value",e),k(this,Lo,de(e))}get _s(){return y(this,Lo)}isValid(){return BigInt(y(this,Lo))<=nme}get v(){return y(this,rp)}set v(e){const n=Je(e,"value");M(n===27||n===28,"invalid v","v",e),k(this,rp,n)}get networkV(){return y(this,wl)}get legacyChainId(){const e=this.networkV;return e==null?null:gs.getChainId(e)}get yParity(){return this.v===27?0:1}get yParityAndS(){const e=Ae(this.s);return this.yParity&&(e[0]|=128),de(e)}get compactSerialized(){return Rt([this.r,this.yParityAndS])}get serialized(){return Rt([this.r,this.s,this.yParity?"0x1c":"0x1b"])}getCanonical(){if(this.isValid())return this;const e=ND-BigInt(this._s),n=55-this.v,r=new gs(Tu,this.r,UE(e),n);return this.networkV&&k(r,wl,this.networkV),r}clone(){const e=new gs(Tu,this.r,this._s,this.v);return this.networkV&&k(e,wl,this.networkV),e}toJSON(){const e=this.networkV;return{_type:"signature",networkV:e!=null?e.toString():null,r:this.r,s:this._s,v:this.v}}[rme](){return this.toString()}toString(){return this.isValid()?`Signature { r: ${this.r}, s: ${this._s}, v: ${this.v} }`:`Signature { r: ${this.r}, s: ${this._s}, v: ${this.v}, valid: false }`}static getChainId(e){const n=Re(e,"v");return n==eS||n==tS?Q7:(M(n>=Iy,"invalid EIP-155 v","v",e),(n-Iy)/t4)}static getChainIdV(e,n){return Re(e)*t4+BigInt(35+n-27)}static getNormalizedV(e){const n=Re(e);return n===Q7||n===eS?27:n===X7||n===tS?28:(M(n>=Iy,"invalid v","v",e),n&X7?27:28)}static from(e){function n(l,u){M(l,u,"signature",e)}if(e==null)return new gs(Tu,J7,J7,27);if(typeof e=="string"){const l=Ae(e,"signature");if(l.length===64){const u=de(l.slice(0,32)),d=l.slice(32,64),h=d[0]&128?28:27;return d[0]&=127,new gs(Tu,u,de(d),h)}if(l.length===65){const u=de(l.slice(0,32)),d=de(l.slice(32,64)),h=gs.getNormalizedV(l[64]);return new gs(Tu,u,d,h)}n(!1,"invalid raw signature length")}if(e instanceof gs)return e.clone();const r=e.r;n(r!=null,"missing r");const i=UE(r),s=function(l,u){if(l!=null)return UE(l);if(u!=null){n(Vt(u,32),"invalid yParityAndS");const d=Ae(u);return d[0]&=127,de(d)}n(!1,"missing s")}(e.s,e.yParityAndS),{networkV:o,v:a}=function(l,u,d){if(l!=null){const h=Re(l);return{networkV:h>=Iy?h:void 0,v:gs.getNormalizedV(h)}}if(u!=null)return n(Vt(u,32),"invalid yParityAndS"),{v:Ae(u)[0]&128?28:27};if(d!=null){switch(Je(d,"sig.yParity")){case 0:return{v:27};case 1:return{v:28}}n(!1,"invalid yParity")}n(!1,"missing v")}(e.v,e.yParityAndS,e.yParity),c=new gs(Tu,i,s,a);return o&&k(c,wl,o),n(e.yParity==null||Je(e.yParity,"sig.yParity")===c.yParity,"yParity mismatch"),n(e.yParityAndS==null||e.yParityAndS===c.yParityAndS,"yParityAndS mismatch"),c}};np=new WeakMap,Lo=new WeakMap,rp=new WeakMap,wl=new WeakMap;let wi=gs;var Za;const Hu=class Hu{constructor(e){K(this,Za);M(Ff(e)===32,"invalid private key","privateKey","[REDACTED]"),k(this,Za,de(e))}get privateKey(){return y(this,Za)}get publicKey(){return Hu.computePublicKey(y(this,Za))}get compressedPublicKey(){return Hu.computePublicKey(y(this,Za),!0)}sign(e){M(Ff(e)===32,"invalid digest length","digest",e);const n=il.sign(ar(e),ar(y(this,Za)),{lowS:!0});return wi.from({r:Nc(n.r,32),s:Nc(n.s,32),v:n.recovery?28:27})}computeSharedSecret(e){const n=Hu.computePublicKey(e);return de(il.getSharedSecret(ar(y(this,Za)),Ae(n),!1))}static computePublicKey(e,n){let r=Ae(e,"key");if(r.length===32){const s=il.getPublicKey(r,!!n);return de(s)}if(r.length===64){const s=new Uint8Array(65);s[0]=4,s.set(r,1),r=s}const i=il.ProjectivePoint.fromHex(r);return de(i.toRawBytes(n))}static recoverPublicKey(e,n){M(Ff(e)===32,"invalid digest length","digest",e);const r=wi.from(n);let i=il.Signature.fromCompact(ar(Rt([r.r,r.s])));i=i.addRecoveryBit(r.yParity);const s=i.recoverPublicKey(ar(e));return M(s!=null,"invalid signature for digest","signature",n),"0x"+s.toHex(!1)}static addPoints(e,n,r){const i=il.ProjectivePoint.fromHex(Hu.computePublicKey(e).substring(2)),s=il.ProjectivePoint.fromHex(Hu.computePublicKey(n).substring(2));return"0x"+i.add(s).toHex(!!r)}};Za=new WeakMap;let aa=Hu;const ime=BigInt(0),sme=BigInt(36);function nS(t){t=t.toLowerCase();const e=t.substring(2).split(""),n=new Uint8Array(40);for(let i=0;i<40;i++)n[i]=e[i].charCodeAt(0);const r=Ae(nn(n));for(let i=0;i<40;i+=2)r[i>>1]>>4>=8&&(e[i]=e[i].toUpperCase()),(r[i>>1]&15)>=8&&(e[i+1]=e[i+1].toUpperCase());return"0x"+e.join("")}const W6={};for(let t=0;t<10;t++)W6[String(t)]=String(t);for(let t=0;t<26;t++)W6[String.fromCharCode(65+t)]=String(10+t);const rS=15;function ome(t){t=t.toUpperCase(),t=t.substring(4)+t.substring(0,2)+"00";let e=t.split("").map(r=>W6[r]).join("");for(;e.length>=rS;){let r=e.substring(0,rS);e=parseInt(r,10)%97+e.substring(r.length)}let n=String(98-parseInt(e,10)%97);for(;n.length<2;)n="0"+n;return n}const ame=function(){const t={};for(let e=0;e<36;e++){const n="0123456789abcdefghijklmnopqrstuvwxyz"[e];t[n]=BigInt(e)}return t}();function cme(t){t=t.toLowerCase();let e=ime;for(let n=0;n<t.length;n++)e=e*sme+ame[t[n]];return e}function ft(t){if(M(typeof t=="string","invalid address","address",t),t.match(/^(0x)?[0-9a-fA-F]{40}$/)){t.startsWith("0x")||(t="0x"+t);const e=nS(t);return M(!t.match(/([A-F].*[a-f])|([a-f].*[A-F])/)||e===t,"bad address checksum","address",t),e}if(t.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){M(t.substring(2,4)===ome(t),"bad icap checksum","address",t);let e=cme(t.substring(4)).toString(16);for(;e.length<40;)e="0"+e;return nS("0x"+e)}M(!1,"invalid address","address",t)}function lme(t){const e=ft(t.from);let r=Re(t.nonce,"tx.nonce").toString(16);return r==="0"?r="0x":r.length%2?r="0x0"+r:r="0x"+r,ft(Yt(nn(oa([e,r])),12))}function RD(t){return t&&typeof t.getAddress=="function"}async function LE(t,e){const n=await e;return(n==null||n==="0x0000000000000000000000000000000000000000")&&(ie(typeof t!="string","unconfigured name","UNCONFIGURED_NAME",{value:t}),M(!1,"invalid AddressLike value; did not resolve to a value address","target",t)),ft(n)}function Gn(t,e){if(typeof t=="string")return t.match(/^0x[0-9a-f]{40}$/i)?ft(t):(ie(e!=null,"ENS resolution requires a provider","UNSUPPORTED_OPERATION",{operation:"resolveName"}),LE(t,e.resolveName(t)));if(RD(t))return LE(t,t.getAddress());if(t&&typeof t.then=="function")return LE(t,t);M(!1,"unsupported addressable value","target",t)}const Wa={};function Pe(t,e){let n=!1;return e<0&&(n=!0,e*=-1),new Ir(Wa,`${n?"":"u"}int${e}`,t,{signed:n,width:e})}function St(t,e){return new Ir(Wa,`bytes${e||""}`,t,{size:e})}const iS=Symbol.for("_ethers_typed");var hd;const ja=class ja{constructor(e,n,r,i){G(this,"type");G(this,"value");K(this,hd);G(this,"_typedSymbol");i==null&&(i=null),gu(Wa,e,"Typed"),Me(this,{_typedSymbol:iS,type:n,value:r}),k(this,hd,i),this.format()}format(){if(this.type==="array")throw new Error("");if(this.type==="dynamicArray")throw new Error("");return this.type==="tuple"?`tuple(${this.value.map(e=>e.format()).join(",")})`:this.type}defaultValue(){return 0}minValue(){return 0}maxValue(){return 0}isBigInt(){return!!this.type.match(/^u?int[0-9]+$/)}isData(){return this.type.startsWith("bytes")}isString(){return this.type==="string"}get tupleName(){if(this.type!=="tuple")throw TypeError("not a tuple");return y(this,hd)}get arrayLength(){if(this.type!=="array")throw TypeError("not an array");return y(this,hd)===!0?-1:y(this,hd)===!1?this.value.length:null}static from(e,n){return new ja(Wa,e,n)}static uint8(e){return Pe(e,8)}static uint16(e){return Pe(e,16)}static uint24(e){return Pe(e,24)}static uint32(e){return Pe(e,32)}static uint40(e){return Pe(e,40)}static uint48(e){return Pe(e,48)}static uint56(e){return Pe(e,56)}static uint64(e){return Pe(e,64)}static uint72(e){return Pe(e,72)}static uint80(e){return Pe(e,80)}static uint88(e){return Pe(e,88)}static uint96(e){return Pe(e,96)}static uint104(e){return Pe(e,104)}static uint112(e){return Pe(e,112)}static uint120(e){return Pe(e,120)}static uint128(e){return Pe(e,128)}static uint136(e){return Pe(e,136)}static uint144(e){return Pe(e,144)}static uint152(e){return Pe(e,152)}static uint160(e){return Pe(e,160)}static uint168(e){return Pe(e,168)}static uint176(e){return Pe(e,176)}static uint184(e){return Pe(e,184)}static uint192(e){return Pe(e,192)}static uint200(e){return Pe(e,200)}static uint208(e){return Pe(e,208)}static uint216(e){return Pe(e,216)}static uint224(e){return Pe(e,224)}static uint232(e){return Pe(e,232)}static uint240(e){return Pe(e,240)}static uint248(e){return Pe(e,248)}static uint256(e){return Pe(e,256)}static uint(e){return Pe(e,256)}static int8(e){return Pe(e,-8)}static int16(e){return Pe(e,-16)}static int24(e){return Pe(e,-24)}static int32(e){return Pe(e,-32)}static int40(e){return Pe(e,-40)}static int48(e){return Pe(e,-48)}static int56(e){return Pe(e,-56)}static int64(e){return Pe(e,-64)}static int72(e){return Pe(e,-72)}static int80(e){return Pe(e,-80)}static int88(e){return Pe(e,-88)}static int96(e){return Pe(e,-96)}static int104(e){return Pe(e,-104)}static int112(e){return Pe(e,-112)}static int120(e){return Pe(e,-120)}static int128(e){return Pe(e,-128)}static int136(e){return Pe(e,-136)}static int144(e){return Pe(e,-144)}static int152(e){return Pe(e,-152)}static int160(e){return Pe(e,-160)}static int168(e){return Pe(e,-168)}static int176(e){return Pe(e,-176)}static int184(e){return Pe(e,-184)}static int192(e){return Pe(e,-192)}static int200(e){return Pe(e,-200)}static int208(e){return Pe(e,-208)}static int216(e){return Pe(e,-216)}static int224(e){return Pe(e,-224)}static int232(e){return Pe(e,-232)}static int240(e){return Pe(e,-240)}static int248(e){return Pe(e,-248)}static int256(e){return Pe(e,-256)}static int(e){return Pe(e,-256)}static bytes1(e){return St(e,1)}static bytes2(e){return St(e,2)}static bytes3(e){return St(e,3)}static bytes4(e){return St(e,4)}static bytes5(e){return St(e,5)}static bytes6(e){return St(e,6)}static bytes7(e){return St(e,7)}static bytes8(e){return St(e,8)}static bytes9(e){return St(e,9)}static bytes10(e){return St(e,10)}static bytes11(e){return St(e,11)}static bytes12(e){return St(e,12)}static bytes13(e){return St(e,13)}static bytes14(e){return St(e,14)}static bytes15(e){return St(e,15)}static bytes16(e){return St(e,16)}static bytes17(e){return St(e,17)}static bytes18(e){return St(e,18)}static bytes19(e){return St(e,19)}static bytes20(e){return St(e,20)}static bytes21(e){return St(e,21)}static bytes22(e){return St(e,22)}static bytes23(e){return St(e,23)}static bytes24(e){return St(e,24)}static bytes25(e){return St(e,25)}static bytes26(e){return St(e,26)}static bytes27(e){return St(e,27)}static bytes28(e){return St(e,28)}static bytes29(e){return St(e,29)}static bytes30(e){return St(e,30)}static bytes31(e){return St(e,31)}static bytes32(e){return St(e,32)}static address(e){return new ja(Wa,"address",e)}static bool(e){return new ja(Wa,"bool",!!e)}static bytes(e){return new ja(Wa,"bytes",e)}static string(e){return new ja(Wa,"string",e)}static array(e,n){throw new Error("not implemented yet")}static tuple(e,n){throw new Error("not implemented yet")}static overrides(e){return new ja(Wa,"overrides",Object.assign({},e))}static isTyped(e){return e&&typeof e=="object"&&"_typedSymbol"in e&&e._typedSymbol===iS}static dereference(e,n){if(ja.isTyped(e)){if(e.type!==n)throw new Error(`invalid type: expecetd ${n}, got ${e.type}`);return e.value}return e}};hd=new WeakMap;let Ir=ja;class ume extends Bc{constructor(e){super("address","address",e,!1)}defaultValue(){return"0x0000000000000000000000000000000000000000"}encode(e,n){let r=Ir.dereference(n,"string");try{r=ft(r)}catch(i){return this._throwError(i.message,n)}return e.writeValue(r)}decode(e){return ft(Nc(e.readValue(),20))}}class dme extends Bc{constructor(n){super(n.name,n.type,"_",n.dynamic);G(this,"coder");this.coder=n}defaultValue(){return this.coder.defaultValue()}encode(n,r){return this.coder.encode(n,r)}decode(n){return this.coder.decode(n)}}function OD(t,e,n){let r=[];if(Array.isArray(n))r=n;else if(n&&typeof n=="object"){let c={};r=e.map(l=>{const u=l.localName;return ie(u,"cannot encode object for signature with missing names","INVALID_ARGUMENT",{argument:"values",info:{coder:l},value:n}),ie(!c[u],"cannot encode object for signature with duplicate names","INVALID_ARGUMENT",{argument:"values",info:{coder:l},value:n}),c[u]=!0,n[u]})}else M(!1,"invalid tuple value","tuple",n);M(e.length===r.length,"types/value length mismatch","tuple",n);let i=new G5,s=new G5,o=[];e.forEach((c,l)=>{let u=r[l];if(c.dynamic){let d=s.length;c.encode(s,u);let h=i.writeUpdatableValue();o.push(f=>{h(f+d)})}else c.encode(i,u)}),o.forEach(c=>{c(i.length)});let a=t.appendWriter(i);return a+=t.appendWriter(s),a}function PD(t,e){let n=[],r=[],i=t.subReader(0);return e.forEach(s=>{let o=null;if(s.dynamic){let a=t.readIndex(),c=i.subReader(a);try{o=s.decode(c)}catch(l){if(or(l,"BUFFER_OVERRUN"))throw l;o=l,o.baseType=s.name,o.name=s.localName,o.type=s.type}}else try{o=s.decode(t)}catch(a){if(or(a,"BUFFER_OVERRUN"))throw a;o=a,o.baseType=s.name,o.name=s.localName,o.type=s.type}if(o==null)throw new Error("investigate");n.push(o),r.push(s.localName||null)}),O0.fromItems(n,r)}class hme extends Bc{constructor(n,r,i){const s=n.type+"["+(r>=0?r:"")+"]",o=r===-1||n.dynamic;super("array",s,i,o);G(this,"coder");G(this,"length");Me(this,{coder:n,length:r})}defaultValue(){const n=this.coder.defaultValue(),r=[];for(let i=0;i<this.length;i++)r.push(n);return r}encode(n,r){const i=Ir.dereference(r,"array");Array.isArray(i)||this._throwError("expected array value",i);let s=this.length;s===-1&&(s=i.length,n.writeValue(i.length)),g$(i.length,s,"coder array"+(this.localName?" "+this.localName:""));let o=[];for(let a=0;a<i.length;a++)o.push(this.coder);return OD(n,o,i)}decode(n){let r=this.length;r===-1&&(r=n.readIndex(),ie(r*Wr<=n.dataLength,"insufficient data length","BUFFER_OVERRUN",{buffer:n.bytes,offset:r*Wr,length:n.dataLength}));let i=[];for(let s=0;s<r;s++)i.push(new dme(this.coder));return PD(n,i)}}class fme extends Bc{constructor(e){super("bool","bool",e,!1)}defaultValue(){return!1}encode(e,n){const r=Ir.dereference(n,"bool");return e.writeValue(r?1:0)}decode(e){return!!e.readValue()}}class kD extends Bc{constructor(e,n){super(e,e,n,!0)}defaultValue(){return"0x"}encode(e,n){n=ar(n);let r=e.writeValue(n.length);return r+=e.writeBytes(n),r}decode(e){return e.readBytes(e.readIndex(),!0)}}class pme extends kD{constructor(e){super("bytes",e)}decode(e){return de(super.decode(e))}}class gme extends Bc{constructor(n,r){let i="bytes"+String(n);super(i,i,r,!1);G(this,"size");Me(this,{size:n},{size:"number"})}defaultValue(){return"0x0000000000000000000000000000000000000000000000000000000000000000".substring(0,2+this.size*2)}encode(n,r){let i=ar(Ir.dereference(r,this.type));return i.length!==this.size&&this._throwError("incorrect data length",r),n.writeBytes(i)}decode(n){return de(n.readBytes(this.size))}}const mme=new Uint8Array([]);class wme extends Bc{constructor(e){super("null","",e,!1)}defaultValue(){return null}encode(e,n){return n!=null&&this._throwError("not null",n),e.writeBytes(mme)}decode(e){return e.readBytes(0),null}}const yme=BigInt(0),bme=BigInt(1),xme=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");class Eme extends Bc{constructor(n,r,i){const s=(r?"int":"uint")+n*8;super(s,s,i,!1);G(this,"size");G(this,"signed");Me(this,{size:n,signed:r},{size:"number",signed:"boolean"})}defaultValue(){return 0}encode(n,r){let i=Re(Ir.dereference(r,this.type)),s=Xu(xme,Wr*8);if(this.signed){let o=Xu(s,this.size*8-1);(i>o||i<-(o+bme))&&this._throwError("value out-of-bounds",r),i=b$(i,8*Wr)}else(i<yme||i>Xu(s,this.size*8))&&this._throwError("value out-of-bounds",r);return n.writeValue(i)}decode(n){let r=Xu(n.readValue(),this.size*8);return this.signed&&(r=u2(r,this.size*8)),r}}class vme extends kD{constructor(e){super("string",e)}defaultValue(){return""}encode(e,n){return super.encode(e,Sr(Ir.dereference(n,"string")))}decode(e){return h2(super.decode(e))}}class Ty extends Bc{constructor(n,r){let i=!1;const s=[];n.forEach(a=>{a.dynamic&&(i=!0),s.push(a.type)});const o="tuple("+s.join(",")+")";super("tuple",o,r,i);G(this,"coders");Me(this,{coders:Object.freeze(n.slice())})}defaultValue(){const n=[];this.coders.forEach(i=>{n.push(i.defaultValue())});const r=this.coders.reduce((i,s)=>{const o=s.localName;return o&&(i[o]||(i[o]=0),i[o]++),i},{});return this.coders.forEach((i,s)=>{let o=i.localName;!o||r[o]!==1||(o==="length"&&(o="_length"),n[o]==null&&(n[o]=n[s]))}),Object.freeze(n)}encode(n,r){const i=Ir.dereference(r,"tuple");return OD(n,this.coders,i)}decode(n){return PD(n,this.coders)}}function ME(t,e){return{address:ft(t),storageKeys:e.map((n,r)=>(M(Vt(n,32),"invalid slot",`storageKeys[${r}]`,n),n.toLowerCase()))}}function Fh(t){if(Array.isArray(t))return t.map((n,r)=>Array.isArray(n)?(M(n.length===2,"invalid slot set",`value[${r}]`,n),ME(n[0],n[1])):(M(n!=null&&typeof n=="object","invalid address-slot set","value",t),ME(n.address,n.storageKeys)));M(t!=null&&typeof t=="object","invalid access list","value",t);const e=Object.keys(t).map(n=>{const r=t[n].reduce((i,s)=>(i[s]=!0,i),{});return ME(n,Object.keys(r).sort())});return e.sort((n,r)=>n.address.localeCompare(r.address)),e}function $D(t){return{address:ft(t.address),nonce:Re(t.nonce!=null?t.nonce:0),chainId:Re(t.chainId!=null?t.chainId:0),signature:wi.from(t.signature)}}function Cw(t){let e;return typeof t=="string"?e=aa.computePublicKey(t,!1):e=t.publicKey,ft(nn("0x"+e.substring(4)).substring(26))}function Cme(t,e){return Cw(aa.recoverPublicKey(t,e))}const zn=BigInt(0),Ame=BigInt(2),_me=BigInt(27),Sme=BigInt(28),Ime=BigInt(35),Tme=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),Nme=Symbol.for("nodejs.util.inspect.custom"),FE=4096*32,Zy=128;function Rme(t){return{blobToKzgCommitment:r=>{if("computeBlobProof"in t){if("blobToKzgCommitment"in t&&typeof t.blobToKzgCommitment=="function")return Ae(t.blobToKzgCommitment(de(r)))}else if("blobToKzgCommitment"in t&&typeof t.blobToKzgCommitment=="function")return Ae(t.blobToKzgCommitment(r));if("blobToKZGCommitment"in t&&typeof t.blobToKZGCommitment=="function")return Ae(t.blobToKZGCommitment(de(r)));M(!1,"unsupported KZG library","kzg",t)},computeBlobKzgProof:(r,i)=>{if("computeBlobProof"in t&&typeof t.computeBlobProof=="function")return Ae(t.computeBlobProof(de(r),de(i)));if("computeBlobKzgProof"in t&&typeof t.computeBlobKzgProof=="function")return t.computeBlobKzgProof(r,i);if("computeBlobKZGProof"in t&&typeof t.computeBlobKZGProof=="function")return Ae(t.computeBlobKZGProof(de(r),de(i)));M(!1,"unsupported KZG library","kzg",t)}}}function sS(t,e){let n=t.toString(16);for(;n.length<2;)n="0"+n;return n+=ks(e).substring(4),"0x"+n}function fg(t){return t==="0x"?null:ft(t)}function F3(t,e){try{return Fh(t)}catch(n){M(!1,n.message,e,t)}}function Ome(t,e){try{if(!Array.isArray(t))throw new Error("authorizationList: invalid array");const n=[];for(let r=0;r<t.length;r++){const i=t[r];if(!Array.isArray(i))throw new Error(`authorization[${r}]: invalid array`);if(i.length!==6)throw new Error(`authorization[${r}]: wrong length`);if(!i[1])throw new Error(`authorization[${r}]: null address`);n.push({address:fg(i[1]),nonce:Ft(i[2],"nonce"),chainId:Ft(i[0],"chainId"),signature:wi.from({yParity:Wh(i[3],"yParity"),r:Tc(i[4],32),s:Tc(i[5],32)})})}return n}catch(n){M(!1,n.message,e,t)}}function Wh(t,e){return t==="0x"?0:Je(t,e)}function Ft(t,e){if(t==="0x")return zn;const n=Re(t,e);return M(n<=Tme,"value exceeds uint size",e,n),n}function wt(t,e){const n=Re(t,"value"),r=cn(n);return M(r.length<=32,"value too large",`tx.${e}`,n),r}function W3(t){return Fh(t).map(e=>[e.address,e.storageKeys])}function Pme(t){return t.map(e=>[wt(e.chainId,"chainId"),e.address,wt(e.nonce,"nonce"),wt(e.signature.yParity,"yParity"),cn(e.signature.r),cn(e.signature._s)])}function kme(t,e){M(Array.isArray(t),`invalid ${e}`,"value",t);for(let n=0;n<t.length;n++)M(Vt(t[n],32),"invalid ${ param } hash",`value[${n}]`,t[n]);return t}function $me(t){const e=Ew(t);M(Array.isArray(e)&&(e.length===9||e.length===6),"invalid field count for legacy transaction","data",t);const n={type:0,nonce:Wh(e[0],"nonce"),gasPrice:Ft(e[1],"gasPrice"),gasLimit:Ft(e[2],"gasLimit"),to:fg(e[3]),value:Ft(e[4],"value"),data:de(e[5]),chainId:zn};if(e.length===6)return n;const r=Ft(e[6],"v"),i=Ft(e[7],"r"),s=Ft(e[8],"s");if(i===zn&&s===zn)n.chainId=r;else{let o=(r-Ime)/Ame;o<zn&&(o=zn),n.chainId=o,M(o!==zn||r===_me||r===Sme,"non-canonical legacy v","v",e[6]),n.signature=wi.from({r:Tc(e[7],32),s:Tc(e[8],32),v:r})}return n}function Dme(t,e){const n=[wt(t.nonce,"nonce"),wt(t.gasPrice||0,"gasPrice"),wt(t.gasLimit,"gasLimit"),t.to||"0x",wt(t.value,"value"),t.data];let r=zn;if(t.chainId!=zn)r=Re(t.chainId,"tx.chainId"),M(!e||e.networkV==null||e.legacyChainId===r,"tx.chainId/sig.v mismatch","sig",e);else if(t.signature){const s=t.signature.legacyChainId;s!=null&&(r=s)}if(!e)return r!==zn&&(n.push(cn(r)),n.push("0x"),n.push("0x")),oa(n);let i=BigInt(27+e.yParity);return r!==zn?i=wi.getChainIdV(r,e.v):BigInt(e.v)!==i&&M(!1,"tx.chainId/sig.v mismatch","sig",e),n.push(cn(i)),n.push(cn(e.r)),n.push(cn(e._s)),oa(n)}function j3(t,e){let n;try{if(n=Wh(e[0],"yParity"),n!==0&&n!==1)throw new Error("bad yParity")}catch{M(!1,"invalid yParity","yParity",e[0])}const r=Tc(e[1],32),i=Tc(e[2],32),s=wi.from({r,s:i,yParity:n});t.signature=s}function Bme(t){const e=Ew(Ae(t).slice(1));M(Array.isArray(e)&&(e.length===9||e.length===12),"invalid field count for transaction type: 2","data",de(t));const n={type:2,chainId:Ft(e[0],"chainId"),nonce:Wh(e[1],"nonce"),maxPriorityFeePerGas:Ft(e[2],"maxPriorityFeePerGas"),maxFeePerGas:Ft(e[3],"maxFeePerGas"),gasPrice:null,gasLimit:Ft(e[4],"gasLimit"),to:fg(e[5]),value:Ft(e[6],"value"),data:de(e[7]),accessList:F3(e[8],"accessList")};return e.length===9||j3(n,e.slice(9)),n}function Ume(t,e){const n=[wt(t.chainId,"chainId"),wt(t.nonce,"nonce"),wt(t.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),wt(t.maxFeePerGas||0,"maxFeePerGas"),wt(t.gasLimit,"gasLimit"),t.to||"0x",wt(t.value,"value"),t.data,W3(t.accessList||[])];return e&&(n.push(wt(e.yParity,"yParity")),n.push(cn(e.r)),n.push(cn(e.s))),Rt(["0x02",oa(n)])}function Lme(t){const e=Ew(Ae(t).slice(1));M(Array.isArray(e)&&(e.length===8||e.length===11),"invalid field count for transaction type: 1","data",de(t));const n={type:1,chainId:Ft(e[0],"chainId"),nonce:Wh(e[1],"nonce"),gasPrice:Ft(e[2],"gasPrice"),gasLimit:Ft(e[3],"gasLimit"),to:fg(e[4]),value:Ft(e[5],"value"),data:de(e[6]),accessList:F3(e[7],"accessList")};return e.length===8||j3(n,e.slice(8)),n}function Mme(t,e){const n=[wt(t.chainId,"chainId"),wt(t.nonce,"nonce"),wt(t.gasPrice||0,"gasPrice"),wt(t.gasLimit,"gasLimit"),t.to||"0x",wt(t.value,"value"),t.data,W3(t.accessList||[])];return e&&(n.push(wt(e.yParity,"recoveryParam")),n.push(cn(e.r)),n.push(cn(e.s))),Rt(["0x01",oa(n)])}function Fme(t){let e=Ew(Ae(t).slice(1)),n="3",r=null,i=null;if(e.length===4&&Array.isArray(e[0])){n="3 (network format)";const o=e[1],a=e[2],c=e[3];M(Array.isArray(o),"invalid network format: blobs not an array","fields[1]",o),M(Array.isArray(a),"invalid network format: commitments not an array","fields[2]",a),M(Array.isArray(c),"invalid network format: proofs not an array","fields[3]",c),M(o.length===a.length,"invalid network format: blobs/commitments length mismatch","fields",e),M(o.length===c.length,"invalid network format: blobs/proofs length mismatch","fields",e),i=[];for(let l=0;l<e[1].length;l++)i.push({data:o[l],commitment:a[l],proof:c[l]});e=e[0]}else if(e.length===5&&Array.isArray(e[0])){n="3 (EIP-7594 network format)",r=Je(e[1]);const o=e[2],a=e[3],c=e[4];M(r===1,`unsupported EIP-7594 network format version: ${r}`,"fields[1]",r),M(Array.isArray(o),"invalid EIP-7594 network format: blobs not an array","fields[2]",o),M(Array.isArray(a),"invalid EIP-7594 network format: commitments not an array","fields[3]",a),M(Array.isArray(c),"invalid EIP-7594 network format: proofs not an array","fields[4]",c),M(o.length===a.length,"invalid network format: blobs/commitments length mismatch","fields",e),M(o.length*Zy===c.length,"invalid network format: blobs/proofs length mismatch","fields",e),i=[];for(let l=0;l<o.length;l++){const u=[];for(let d=0;d<Zy;d++)u.push(c[l*Zy+d]);i.push({data:o[l],commitment:a[l],proof:Rt(u)})}e=e[0]}M(Array.isArray(e)&&(e.length===11||e.length===14),`invalid field count for transaction type: ${n}`,"data",de(t));const s={type:3,chainId:Ft(e[0],"chainId"),nonce:Wh(e[1],"nonce"),maxPriorityFeePerGas:Ft(e[2],"maxPriorityFeePerGas"),maxFeePerGas:Ft(e[3],"maxFeePerGas"),gasPrice:null,gasLimit:Ft(e[4],"gasLimit"),to:fg(e[5]),value:Ft(e[6],"value"),data:de(e[7]),accessList:F3(e[8],"accessList"),maxFeePerBlobGas:Ft(e[9],"maxFeePerBlobGas"),blobVersionedHashes:e[10],blobWrapperVersion:r};i&&(s.blobs=i),M(s.to!=null,`invalid address for transaction type: ${n}`,"data",t),M(Array.isArray(s.blobVersionedHashes),"invalid blobVersionedHashes: must be an array","data",t);for(let o=0;o<s.blobVersionedHashes.length;o++)M(Vt(s.blobVersionedHashes[o],32),`invalid blobVersionedHash at index ${o}: must be length 32`,"data",t);return e.length===11||j3(s,e.slice(11)),s}function Wme(t,e,n){const r=[wt(t.chainId,"chainId"),wt(t.nonce,"nonce"),wt(t.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),wt(t.maxFeePerGas||0,"maxFeePerGas"),wt(t.gasLimit,"gasLimit"),t.to||s1,wt(t.value,"value"),t.data,W3(t.accessList||[]),wt(t.maxFeePerBlobGas||0,"maxFeePerBlobGas"),kme(t.blobVersionedHashes||[],"blobVersionedHashes")];if(e&&(r.push(wt(e.yParity,"yParity")),r.push(cn(e.r)),r.push(cn(e.s)),n)){if(t.blobWrapperVersion!=null){const i=cn(t.blobWrapperVersion),s=[];for(const{proof:o}of n){const a=Ae(o),c=a.length/Zy;for(let l=0;l<a.length;l+=c)s.push(a.subarray(l,l+c))}return Rt(["0x03",oa([r,i,n.map(o=>o.data),n.map(o=>o.commitment),s])])}return Rt(["0x03",oa([r,n.map(i=>i.data),n.map(i=>i.commitment),n.map(i=>i.proof)])])}return Rt(["0x03",oa(r)])}function jme(t){const e=Ew(Ae(t).slice(1));M(Array.isArray(e)&&(e.length===10||e.length===13),"invalid field count for transaction type: 4","data",de(t));const n={type:4,chainId:Ft(e[0],"chainId"),nonce:Wh(e[1],"nonce"),maxPriorityFeePerGas:Ft(e[2],"maxPriorityFeePerGas"),maxFeePerGas:Ft(e[3],"maxFeePerGas"),gasPrice:null,gasLimit:Ft(e[4],"gasLimit"),to:fg(e[5]),value:Ft(e[6],"value"),data:de(e[7]),accessList:F3(e[8],"accessList"),authorizationList:Ome(e[9],"authorizationList")};return e.length===10||j3(n,e.slice(10)),n}function Hme(t,e){const n=[wt(t.chainId,"chainId"),wt(t.nonce,"nonce"),wt(t.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),wt(t.maxFeePerGas||0,"maxFeePerGas"),wt(t.gasLimit,"gasLimit"),t.to||"0x",wt(t.value,"value"),t.data,W3(t.accessList||[]),Pme(t.authorizationList||[])];return e&&(n.push(wt(e.yParity,"yParity")),n.push(cn(e.r)),n.push(cn(e.s))),Rt(["0x04",oa(n)])}var eo,ip,sp,op,ap,cp,lp,up,dp,hp,fp,pp,fd,yl,Mo,bl,gp,mp,wp,Yy;const Do=class Do{constructor(){K(this,wp);K(this,eo);K(this,ip);K(this,sp);K(this,op);K(this,ap);K(this,cp);K(this,lp);K(this,up);K(this,dp);K(this,hp);K(this,fp);K(this,pp);K(this,fd);K(this,yl);K(this,Mo);K(this,bl);K(this,gp);K(this,mp);k(this,eo,null),k(this,ip,null),k(this,op,0),k(this,ap,zn),k(this,cp,null),k(this,lp,null),k(this,up,null),k(this,sp,"0x"),k(this,dp,zn),k(this,hp,zn),k(this,fp,null),k(this,pp,null),k(this,fd,null),k(this,yl,null),k(this,Mo,null),k(this,bl,null),k(this,gp,null),k(this,mp,null)}get type(){return y(this,eo)}set type(e){switch(e){case null:k(this,eo,null);break;case 0:case"legacy":k(this,eo,0);break;case 1:case"berlin":case"eip-2930":k(this,eo,1);break;case 2:case"london":case"eip-1559":k(this,eo,2);break;case 3:case"cancun":case"eip-4844":k(this,eo,3);break;case 4:case"pectra":case"eip-7702":k(this,eo,4);break;default:M(!1,"unsupported transaction type","type",e)}}get typeName(){switch(this.type){case 0:return"legacy";case 1:return"eip-2930";case 2:return"eip-1559";case 3:return"eip-4844";case 4:return"eip-7702"}return null}get to(){const e=y(this,ip);return e==null&&this.type===3?s1:e}set to(e){k(this,ip,e==null?null:ft(e))}get nonce(){return y(this,op)}set nonce(e){k(this,op,Je(e,"value"))}get gasLimit(){return y(this,ap)}set gasLimit(e){k(this,ap,Re(e))}get gasPrice(){const e=y(this,cp);return e==null&&(this.type===0||this.type===1)?zn:e}set gasPrice(e){k(this,cp,e==null?null:Re(e,"gasPrice"))}get maxPriorityFeePerGas(){const e=y(this,lp);return e??(this.type===2||this.type===3?zn:null)}set maxPriorityFeePerGas(e){k(this,lp,e==null?null:Re(e,"maxPriorityFeePerGas"))}get maxFeePerGas(){const e=y(this,up);return e??(this.type===2||this.type===3?zn:null)}set maxFeePerGas(e){k(this,up,e==null?null:Re(e,"maxFeePerGas"))}get data(){return y(this,sp)}set data(e){k(this,sp,de(e))}get value(){return y(this,dp)}set value(e){k(this,dp,Re(e,"value"))}get chainId(){return y(this,hp)}set chainId(e){k(this,hp,Re(e))}get signature(){return y(this,fp)||null}set signature(e){k(this,fp,e==null?null:wi.from(e))}isValid(){const e=this.signature;if(e&&!e.isValid())return!1;const n=this.authorizationList;if(n){for(const r of n)if(!r.signature.isValid())return!1}return!0}get accessList(){const e=y(this,pp)||null;return e??(this.type===1||this.type===2||this.type===3?[]:null)}set accessList(e){k(this,pp,e==null?null:Fh(e))}get authorizationList(){const e=y(this,gp)||null;return e==null&&this.type===4?[]:e}set authorizationList(e){k(this,gp,e==null?null:e.map(n=>$D(n)))}get maxFeePerBlobGas(){const e=y(this,fd);return e==null&&this.type===3?zn:e}set maxFeePerBlobGas(e){k(this,fd,e==null?null:Re(e,"maxFeePerBlobGas"))}get blobVersionedHashes(){let e=y(this,yl);return e==null&&this.type===3?[]:e}set blobVersionedHashes(e){if(e!=null){M(Array.isArray(e),"blobVersionedHashes must be an Array","value",e),e=e.slice();for(let n=0;n<e.length;n++)M(Vt(e[n],32),"invalid blobVersionedHash",`value[${n}]`,e[n])}k(this,yl,e)}get blobs(){return y(this,bl)==null?null:y(this,bl).map(e=>Object.assign({},e))}set blobs(e){if(e==null){k(this,bl,null);return}const n=[],r=[];for(let i=0;i<e.length;i++){const s=e[i];if($3(s)){ie(y(this,Mo),"adding a raw blob requires a KZG library","UNSUPPORTED_OPERATION",{operation:"set blobs()"});let o=Ae(s);if(M(o.length<=FE,"blob is too large",`blobs[${i}]`,s),o.length!==FE){const l=new Uint8Array(FE);l.set(o),o=l}const a=y(this,Mo).blobToKzgCommitment(o),c=de(y(this,Mo).computeBlobKzgProof(o,a));n.push({data:de(o),commitment:de(a),proof:c}),r.push(sS(1,a))}else{const o=de(s.data),a=de(s.commitment),c=de(s.proof);n.push({data:o,commitment:a,proof:c}),r.push(sS(1,a))}}k(this,bl,n),k(this,yl,r)}get kzg(){return y(this,Mo)}set kzg(e){e==null?k(this,Mo,null):k(this,Mo,Rme(e))}get blobWrapperVersion(){return y(this,mp)}set blobWrapperVersion(e){k(this,mp,e)}get hash(){return this.signature==null?null:nn(X(this,wp,Yy).call(this,!0,!1))}get unsignedHash(){return nn(this.unsignedSerialized)}get from(){return this.signature==null?null:Cme(this.unsignedHash,this.signature.getCanonical())}get fromPublicKey(){return this.signature==null?null:aa.recoverPublicKey(this.unsignedHash,this.signature.getCanonical())}isSigned(){return this.signature!=null}get serialized(){return X(this,wp,Yy).call(this,!0,!0)}get unsignedSerialized(){return X(this,wp,Yy).call(this,!1,!1)}inferType(){const e=this.inferTypes();return e.indexOf(2)>=0?2:e.pop()}inferTypes(){const e=this.gasPrice!=null,n=this.maxFeePerGas!=null||this.maxPriorityFeePerGas!=null,r=this.accessList!=null,i=y(this,fd)!=null||y(this,yl);this.maxFeePerGas!=null&&this.maxPriorityFeePerGas!=null&&ie(this.maxFeePerGas>=this.maxPriorityFeePerGas,"priorityFee cannot be more than maxFee","BAD_DATA",{value:this}),ie(!n||this.type!==0&&this.type!==1,"transaction type cannot have maxFeePerGas or maxPriorityFeePerGas","BAD_DATA",{value:this}),ie(this.type!==0||!r,"legacy transaction cannot have accessList","BAD_DATA",{value:this});const s=[];return this.type!=null?s.push(this.type):this.authorizationList&&this.authorizationList.length?s.push(4):n?s.push(2):e?(s.push(1),r||s.push(0)):r?(s.push(1),s.push(2)):(i&&this.to||(s.push(0),s.push(1),s.push(2)),s.push(3)),s.sort(),s}isLegacy(){return this.type===0}isBerlin(){return this.type===1}isLondon(){return this.type===2}isCancun(){return this.type===3}clone(){return Do.from(this)}toJSON(){const e=n=>n==null?null:n.toString();return{type:this.type,to:this.to,data:this.data,nonce:this.nonce,gasLimit:e(this.gasLimit),gasPrice:e(this.gasPrice),maxPriorityFeePerGas:e(this.maxPriorityFeePerGas),maxFeePerGas:e(this.maxFeePerGas),value:e(this.value),chainId:e(this.chainId),sig:this.signature?this.signature.toJSON():null,accessList:this.accessList}}[Nme](){return this.toString()}toString(){const e=[],n=i=>{let s=this[i];typeof s=="string"&&(s=JSON.stringify(s)),e.push(`${i}: ${s}`)};this.type&&n("type"),n("to"),n("data"),n("nonce"),n("gasLimit"),n("value"),this.chainId!=null&&n("chainId"),this.signature&&(n("from"),e.push(`signature: ${this.signature.toString()}`));const r=this.authorizationList;if(r){const i=[];for(const s of r){const o=[];o.push(`address: ${JSON.stringify(s.address)}`),s.nonce!=null&&o.push(`nonce: ${s.nonce}`),s.chainId!=null&&o.push(`chainId: ${s.chainId}`),s.signature&&o.push(`signature: ${s.signature.toString()}`),i.push(`Authorization { ${o.join(", ")} }`)}e.push(`authorizations: [ ${i.join(", ")} ]`)}return`Transaction { ${e.join(", ")} }`}static from(e){if(e==null)return new Do;if(typeof e=="string"){const r=Ae(e);if(r[0]>=127)return Do.from($me(r));switch(r[0]){case 1:return Do.from(Lme(r));case 2:return Do.from(Bme(r));case 3:return Do.from(Fme(r));case 4:return Do.from(jme(r))}ie(!1,"unsupported transaction type","UNSUPPORTED_OPERATION",{operation:"from"})}const n=new Do;return e.type!=null&&(n.type=e.type),e.to!=null&&(n.to=e.to),e.nonce!=null&&(n.nonce=e.nonce),e.gasLimit!=null&&(n.gasLimit=e.gasLimit),e.gasPrice!=null&&(n.gasPrice=e.gasPrice),e.maxPriorityFeePerGas!=null&&(n.maxPriorityFeePerGas=e.maxPriorityFeePerGas),e.maxFeePerGas!=null&&(n.maxFeePerGas=e.maxFeePerGas),e.maxFeePerBlobGas!=null&&(n.maxFeePerBlobGas=e.maxFeePerBlobGas),e.data!=null&&(n.data=e.data),e.value!=null&&(n.value=e.value),e.chainId!=null&&(n.chainId=e.chainId),e.signature!=null&&(n.signature=wi.from(e.signature)),e.accessList!=null&&(n.accessList=e.accessList),e.authorizationList!=null&&(n.authorizationList=e.authorizationList),e.blobVersionedHashes!=null&&(n.blobVersionedHashes=e.blobVersionedHashes),e.kzg!=null&&(n.kzg=e.kzg),e.blobWrapperVersion!=null&&(n.blobWrapperVersion=e.blobWrapperVersion),e.blobs!=null&&(n.blobs=e.blobs),e.hash!=null&&(M(n.isSigned(),"unsigned transaction cannot define '.hash'","tx",e),M(n.hash===e.hash,"hash mismatch","tx",e)),e.from!=null&&(M(n.isSigned(),"unsigned transaction cannot define '.from'","tx",e),M(n.from.toLowerCase()===(e.from||"").toLowerCase(),"from mismatch","tx",e)),n}};eo=new WeakMap,ip=new WeakMap,sp=new WeakMap,op=new WeakMap,ap=new WeakMap,cp=new WeakMap,lp=new WeakMap,up=new WeakMap,dp=new WeakMap,hp=new WeakMap,fp=new WeakMap,pp=new WeakMap,fd=new WeakMap,yl=new WeakMap,Mo=new WeakMap,bl=new WeakMap,gp=new WeakMap,mp=new WeakMap,wp=new WeakSet,Yy=function(e,n){ie(!e||this.signature!=null,"cannot serialize unsigned transaction; maybe you meant .unsignedSerialized","UNSUPPORTED_OPERATION",{operation:".serialized"});const r=e?this.signature:null;switch(this.inferType()){case 0:return Dme(this,r);case 1:return Mme(this,r);case 2:return Ume(this,r);case 3:return Wme(this,r,n?this.blobs:null);case 4:return Hme(this,r)}ie(!1,"unsupported transaction type","UNSUPPORTED_OPERATION",{operation:".serialized"})};let o1=Do;function zme(t){return M(typeof t.address=="string","invalid address for hashAuthorization","auth.address",t),nn(Rt(["0x05",oa([t.chainId!=null?cn(t.chainId):"0x",ft(t.address),t.nonce!=null?cn(t.nonce):"0x"])]))}function Oc(t){return nn(Sr(t))}var Vme="AEEUdwmgDS8BxQKKAP4BOgDjATAAngDUAIMAoABoAOAAagCOAEQAhABMAHIAOwA9ACsANgAmAGIAHgAuACgAJwAXAC0AGgAjAB8ALwAUACkAEgAeAAkAGwARABkAFgA5ACgALQArADcAFQApABAAHgAiABAAGgAeABMAGAUhBe8BFxREN8sF2wC5AK5HAW8ArQkDzQCuhzc3NzcBP68NEfMABQdHBuw5BV8FYAA9MzkI9r4ZBg7QyQAWA9CeOwLNCjcCjqkChuA/lm+RAsXTAoP6ASfnEQDytQFJAjWVCkeXAOsA6godAB/cwdAUE0WlBCN/AQUCQRjFD/MRBjHxDQSJbw0jBzUAswBxme+tnIcAYwabAysG8QAjAEMMmxcDqgPKQyDXCMMxA7kUQwD3NXOrAKmFIAAfBC0D3x4BJQDBGdUFAhEgVD8JnwmQJiNWYUzrg0oAGwAUAB0AFnNcACkAFgBP9h3gPfsDOWDKneY2ChglX1UDYD30ABsAFAAdABZzIGRAnwDD8wAjAEEMzRbDqgMB2sAFYwXqAtCnAsS4AwpUJKRtFHsadUz9AMMVbwLpABM1NJEX0ZkCgYMBEyMAxRVvAukAEzUBUFAtmUwSAy4DBTER33EftQHfSwB5MxJ/AjkWKQLzL8E/cwBB6QH9LQDPDtO9ASNriQC5DQANAwCK21EFI91zHwCoL9kBqQcHBwcHKzUDowBvAQohPvU3fAQgHwCyAc8CKQMA5zMSezr7ULgFmDp/LzVQBgEGAi8FYQVgt8AFcTtlQhpCWEmfe5tmZ6IAExsDzQ8t+X8rBKtTAltbAn0jsy8Bl6utPWMDTR8Ei2kRANkDBrNHNysDBzECQWUAcwFpJ3kAiyUhAJ0BUb8AL3EfAbfNAz81KUsFWwF3YQZtAm0A+VEfAzEJDQBRSQCzAQBlAHsAM70GD/v3IZWHBwARKQAxALsjTwHZAeMPEzmXgIHwABIAGQA8AEUAQDt3gdvIEGcQZAkGTRFMdEIVEwK0D64L7REdDNkq09PgADSxB/MDWwfzA1sDWwfzB/MDWwfzA1sDWwNbA1scEvAi28gQZw9QBHUFlgWTBN4IiyZREYkHMAjaVBV0JhxPA00BBCMtSSQ7mzMTJUpMFE0LCAQ2SmyvfUADTzGzVP2QqgPTMlc5dAkGHnkSqAAyD3skNb1OhnpPcagKU0+2tYdJak5vAsY6sEAACikJm2/Dd1YGRRAfJ6kQ+ww3AbkBPw3xS9wE9QY/BM0fgRkdD9GVoAipLeEM8SbnLqWAXiP5KocF8Uv4POELUVFsD10LaQnnOmeBUgMlAREijwrhDT0IcRD3Cs1vDekRSQc9A9lJngCpBwULFR05FbkmFGKwCw05ewb/GvoLkyazEy17AAXXGiUGUQEtGwMA0y7rhbRaNVwgT2MGBwspI8sUrFAkDSlAu3hMGh8HGSWtApVDdEqLUToelyH6PEENai4XUYAH+TwJGVMLhTyiRq9FEhHWPpE9TCJNTDAEOYMsMyePCdMPiQy9fHYBXQklCbUMdRM1ERs3yQg9Bx0xlygnGQglRplgngT7owP3E9UDDwVDCUUHFwO5HDETMhUtBRGBKNsC9zbZLrcCk1aEARsFzw8pH+MQVEfkDu0InwJpA4cl7wAxFSUAGyKfCEdnAGOP3FMJLs8Iy2pwI3gDaxTrZRF3B5UOWwerHDcVwxzlcMxeD4YMKKezCV8BeQmdAWME5wgNNV+MpCBFZ1eLXBifIGVBQ14AAjUMaRWjRMGHfAKPD28SHwE5AXcHPQ0FAnsR8RFvEJkI74YINbkz/DopBFMhhyAVCisDU2zSCysm/Qz8bQGnEmYDEDRBd/Jnr2C6KBgBBx0yyUFkIfULlk/RDKAaxRhGVDIZ6AfDA/ca9yfuQVsGAwOnBxc6UTPyBMELbQiPCUMATQ6nGwfbGG4KdYzUATWPAbudA1uVhwJzkwY7Bw8Aaw+LBX3pACECqwinAAkA0wNbAD0CsQehAB0AiUUBQQMrMwEl6QKTA5cINc8BmTMB9y0EH8cMGQD7O25OAsO1AoBuZqYF4VwCkgJNOQFRKQQJUktVA7N15QDfAE8GF+NLARmvTs8e50cB43MvAMsA/wAJOQcJRQHRAfdxALsBYws1Caa3uQFR7S0AhwAZbwHbAo0A4QA5AIP1AVcAUQVd/QXXAlNNARU1HC9bZQG/AyMBNwERAH0Gz5GpzQsjBHEH1wIQHxXlAu8yB7kFAyLjE9FCyQK94lkAMhoKPAqrCqpgX2Q3CjV2PVQAEh+sPss/UgVVO1c7XDtXO1w7VztcO1c7XDtXO1wDm8Pmw+YKcF9JYe8Mqg3YRMw6TRPfYFVgNhPMLbsUxRXSJVoZQRrAJwkl6FUNDwgt12Y0CDA0eRfAAEMpbINFY4oeNApPHOtTlVT8LR8AtUumM7MNsBsZREQFS3XxYi4WEgomAmSFAmJGX1GzAV83JAKh+wJonAJmDQKfiDgfDwJmPwJmKgRyBIMDfxcDfpY5Cjl7GzmGOicnAmwhAjI6OA4CbcsCbbLzjgM3a0kvAWsA4gDlAE4JB5wMkQECD8YAEbkCdzMCdqZDAnlPRwJ4viFg30WyRvcCfEMCeswCfQ0CfPRIBEiBZygALxlJXEpfGRtK0ALRBQLQ0EsrA4hTA4fqRMmRNgLypV0HAwOyS9JMMSkH001QTbMCi0MCitzFHwshR2sJuwKOOwKOYESbhQKO3QKOYHxRuFM5AQ5S2FSJApP/ApMQAO0AIFUiVbNV1AosHymZijLleGpFPz0Cl6MC77ZYJawAXSkClpMCloCgAK1ZsFoNhVEAPwKWuQKWUlxIXNUCmc8CmWhczl0LHQKcnznGOqECnBoCn58CnryOACETNS4TAp31Ap6WALlBYThh8wKe1wKgcgGtAp6jIwKeUqljzGQrKS8CJ7MCJoICoP8CoFDbAqYzAqXSAqgDAIECp/ZogGi1AAdNaiBq1QKs5wKssgKtawKtBgJXIQJV4AKx5dsDH1JsmwKywRECsuwbbORtZ21MYwMl0QK2YD9DbpQDKUkCuGICuUsZArkue3A6cOUCvR0DLbYDMhUCvoxyBgMzdQK+HnMmc1MCw88CwwhzhnRPOUl05AM8qwEDPJ4DPcMCxYACxksCxhSNAshtVQLISALJUwLJMgJkoQLd1nh9ZXiyeSlL1AMYp2cGAmH4GfeVKHsPXpZevxUCz28Cz3AzT1fW9xejAMqxAs93AS3uA04Wfk8JAtwrAtuOAtJTA1JgA1NjAQUDVZCAjUMEzxrxZEl5A4LSg5EC2ssC2eKEFIRNp0ADhqkAMwNkEoZ1Xf0AWQLfaQLevHd7AuIz7RgB8zQrAfSfAfLWiwLr9wLpdH0DAur9AuroAP1LAb0C7o0C66CWrpcHAu5DA4XkmH1w5HGlAvMHAG0DjhqZlwL3FwORcgOSiwL3nAL53QL4apogmq+/O5siA52HAv7+AR8APZ8gAZ+3AwWRA6ZuA6bdANXJAwZuoYyiCQ0DDE0BEwEjB3EGZb1rCQC/BG/DFY8etxEAG3k9ACcDNxJRA42DAWcrJQCM8wAlAOanC6OVCLsGI6fJBgCvBRnDBvElRUYFFoAFcD9GSDNCKUK8X3kZX8QAls0FOgCQVCGbwTsuYDoZutcONxjOGJHJ/gVfBWAFXwVgBWsFYAVfBWAFXwVgBV8FYAVfBWBOHQjfjW8KCgoKbF7xMwTRA7kGN8PDAMMEr8MA70gxFroFTj5xPnhCR0K+X30/X/AAWBkzswCNBsxzzASm70aCRS4rDDMeLz49fnXfcsH5GcoscQFz13Y4HwVnBXLJycnACNdRYwgICAqEXoWTxgA7P4kACxbZBu21Kw0AjMsTAwkVAOVtJUUsJ1JCuULESUArXy9gPi9AKwnJRQYKTD9LPoA+iT54PnkCkULEUUpDX9NWV3JVEjQAc1w3A3IBE3YnX+g7QiMJb6MKaiszRCUuQrNCxDPMCcwEX9EWJzYREBEEBwIHKn6l33JCNVIfybPJtAltydPUCmhBZw/tEKsZAJOVJU1CLRuxbUHOQAo7P0s+eEJHHA8SJVRPdGM0NVrpvBoKhfUlM0JHHGUQUhEWO1xLSj8MO0ucNAqJIzVCRxv9EFsqKyA4OQgNj2nwZgp5ZNFgE2A1K3YHS2AhQQojJmC7DgpzGG1WYFUZCQYHZO9gHWCdYIVgu2BTYJlwFh8GvRbcXbG8YgtDHrMBwzPVyQonHQgkCyYBgQJ0Ajc4nVqIAwGSCsBPIgDsK3SWEtIVBa5N8gGjAo+kVwVIZwD/AEUSCDweX4ITrRQsJ8K3TwBXFDwEAB0TvzVcAtoTS20RIwDgVgZ9BBImYgA5AL4Coi8LFnezOkCnIQFjAY4KBAPh9RcGsgZSBsEAJctdsWIRu2kTkQstRw7DAcMBKgpPBGIGMDAwKCYnKTQaLg4AKRSVAFwCdl+YUZ0JdicFD3lPAdt1F9ZZKCGxuE3yBxkFVGcA/wBFEgiCBwAOLHQSjxOtQDg1z7deFRMAZ8QTAGtKb1ApIiPHADkAvgKiLy1DFtYCmBiDAlDDWNB0eo7fpaMO/aEVRRv0ATEQZBIODyMEAc8JQhCbDRgzFD4TAEMAu9YBCgCsAOkAm5I3ABwAYxvONnR+MhXJAxgKQyxL2+kkJhMbhQKDBMkSsvF0AD9BNQ6uQC7WqSQHwxEAEEIu1hkhAH2z4iQPwyJPHNWpdyYBRSpnJALzoBAEVPPsH20MxA0CCEQKRgAFyAtFAlMNwwjEDUQJRArELtapMg7DDZgJIw+TGukEIwvDFkMAqAtDEMMMBhioe+QAO3MMRAACrgnEBSPY9Q0FDnbSBoMAB8MSYxkSxAEJAPIJAAB8FWMOFtMc/HcXwxhDAC7DAvOowwAewwJdKDKHAAHDAALrFUQVwwAbwyvzpWMWv8wA/ABpAy++bcYDUKPD0KhDCwKmJ1MAAmMA5+UZwxAagwipBRL/eADfw6fDGOMCGsOjk3l6BwOpo4sAEsMOGxMAA5sAbcMOAAvDp0MJGkMDwgipnNIPAwfIqUMGAOGDAAPzABXDAAcDAAnDAGmTABrDAA7DChjDjnEWAwABYwAOcwAuUyYABsMAF8MIKQANUgC6wy4AA8MADqMq8wCyYgAcIwAB8wqpAAXOCx0V4wAHowBCwwEKAGnDAAuDAB3DAAjDCakABdIAbqcZ3QCZCCkABdIAAAFDAAfjAB2jCCkABqIACYMAGzMAbSMA5sOIAAhjAAhDABTDBAkpAAbSAOOTAAlDC6kOzPtnAAdDAG6kQFAATwAKwwwAA0MACbUDPwAHIwAZgwACE6cDAAojAApDAAoDp/MGwwAJIwADEwAQQwgAFEMAEXMAD5MADfMADcMAGRMOFiMAFUMAbqMWuwHDAMIAE0MLAGkzEgDhUwACQwAEWgAXgwUjAAbYABjDBSYBgzBaAEFNALcQBxUMegAwMngBrA0IZgJ0KxQHBREPd1N0ZzKRJwaIHAZqNT4DqQq8BwngAB4DAwt2AX56T1ocKQNXAh1GATQGC3tOxYNagkgAMQA5CQADAQEAWxLjAIOYNAEzAH7tFRk6TglSAF8NAAlYAQ+S1ACAQwQorQBiAN4dAJ1wPyeTANVzuQDX3AIeEMp9eyMgXiUAEdkBkJizKltbVVAaRMqRAAEAhyQ/SDEz6BmfVwB6ATEsOClKIRcDOF0E/832AFNt5AByAnkCRxGCOs94NjXdAwINGBonDBwPALW2AwICAgAAAAAAAAYDBQMDARrUAwAtAAAAAgEGBgYGBgYFBQUFBQUEBQYHCAkEBQUFBQQAAAICAAAAIgCNAJAAlT0A6gC7ANwApEQAwgCyAK0AqADuAKYA2gCjAOcBCAEDAMcAgQBiANIA1AEDAN4A8gCQAKkBMQDqAN8A3AsBCQ8yO9ra2tq8xuLT1tRJOB0BUgFcNU0BWgFpAWgBWwFMUUlLbhMBUxsNEAs6PhMOACcUKy0vMj5AQENDQ0RFFEYGJFdXV1dZWVhZL1pbXVxcI2NnZ2ZoZypsbnZ1eHh4eHh4enp6enp6enp6enp8fH18e2IARPIASQCaAHgAMgBm+ACOAFcAVwA3AnbvAIsABfj4AGQAk/IAnwBPAGIAZP//sACFAIUAaQBWALEAJAC2AIMCQAJDAPwA5wD+AP4A6AD/AOkA6QDoAOYALwJ7AVEBQAE+AVQBPgE+AT4BOQE4ATgBOAEcAVgXADEQCAEAUx8SHgsdHhYAjgCWAKYAUQBqIAIxAHYAbwCXAxUDJzIDIUlGTzEAkQJPAMcCVwKkAMAClgKWApYClgKWApYCiwKWApYClgKWApYClgKVApUCmAKgApcClgKWApQClAKUApQCkgKVAnUB1AKXAp8ClgKWApUeAIETBQD+DQOfAmECOh8BVBg9AuIZEjMbAU4/G1WZAXusRAFpYQEFA0FPAQYAmTEeIJdyADFoAHEANgCRA5zMk/C2jGINwjMWygIZCaXdfDILBCs5dAE7YnQBugDlhoiHhoiGiYqKhouOjIaNkI6Ij4qQipGGkoaThpSSlYaWhpeKmIaZhpqGm4aci52QnoqfhuIC4XTpAt90AIp0LHSoAIsAdHQEQwRABEIERQRDBEkERgRBBEcESQRIBEQERgRJAJ5udACrA490ALxuAQ10ANFZdHQA13QCFHQA/mJ0AP4BIQD+APwA/AD9APwDhGZ03ASMK23HAP4A/AD8AP0A/CR0dACRYnQA/gCRASEA/gCRAvQA/gCRA4RmdNwEjCttxyR0AP9idAEhAP4A/gD8APwA/QD8AP8A/AD8AP0A/AOEZnTcBIwrbcckdHQAkWJ0ASEA/gCRAP4AkQL0AP4AkQOEZnTcBIwrbcckdAJLAT50AlIBQXQCU8l0dAJfdHQDpgL0A6YDpgOnA6cDpwOnA4RmdNwEjCttxyR0dACRYnQBIQOmAJEDpgCRAvQDpgCRA4RmdNwEjCttxyR0BDh0AJEEOQCRDpU5dSgCADR03gV2CwArdAEFAM5iCnR0AF1iAAYcOgp0dACRCnQAXAEIwWZ0CnRmdHQAkWZ0CnRmdEXgAFF03gp0dEY0tlT2u3SOAQTwscwhjZZKrhYcBSfFp9XNbKiVDOD2b+cpe4/Z17mQnbtzzhaeQtE2GGj0IDNTjRUSyTxxw/RPHW/+vS7d1NfRt9z9QPZg4X7QFfhCnkvgNPIItOsC2eV6hPannZNHlZ9xrwZXIMOlu3jSoQSq78WEjwLjw1ELSlF1aBvfzwk5ZX7AUvQzjPQKbDuQ+sm4wNOp4A6AdVuRS0t1y/DZpg4R6m7FNjM9HgvW7Bi88zaMjOo6lM8wtBBdj8LP4ylv3zCXPhebMKJc066o9sF71oFW/8JXu86HJbwDID5lzw5GWLR/LhT0Qqnp2JQxNZNfcbLIzPy+YypqRm/lBmGmex+82+PisxUumSeJkALIT6rJezxMH+CTJmQtt5uwTVbL3ptmjDUQzlSIvWi8Tl7ng1NpuRn1Ng4n14Qc+3Iil7OwkvNWogLSPkn3pihIFytyIGmMhOe3n1tWsuMy9BdKyqF4Z3v2SgggTL9KVvMXPnCbRe+oOuFFP3HejBG/w9gvmfNYvg6JuWia2lcSSN1uIjBktzoIazOHPJZ7kKHPz8mRWVdW3lA8WGF9dQF6Bm673boov3BUWDU2JNcahR23GtfHKLOz/viZ+rYnZFaIznXO67CYEJ1fXuTRpZhYZkKe54xeoagkNGLs+NTZHE0rX45/XvQ2RGADX6vcAvdxIUBV27wxGm2zjZo4X3ILgAlrOFheuZ6wtsvaIj4yLY7qqawlliaIcrz2G+c3vscAnCkCuMzMmZvMfu9lLwTvfX+3cVSyPdN9ZwgDZhfjRgNJcLiJ67b9xx8JHswprbiE3v9UphotAPIgnXVIN5KmMc0piXhc6cChPnN+MRhG9adtdttQTTwSIpl8I4/j//d3sz1326qTBTpPRM/Hgh3kzqEXs8ZAk4ErQhNO8hzrQ0DLkWMA/N+91tn2MdOJnWC2FCZehkQrwzwbKOjhvZsbM95QoeL9skYyMf4srVPVJSgg7pOLUtr/n9eT99oe9nLtFRpjA9okV2Kj8h9k5HaC0oivRD8VyXkJ81tcd4fHNXPCfloIQasxsuO18/46dR2jgul/UIet2G0kRvnyONMKhHs6J26FEoqSqd+rfYjeEGwHWVDpX1fh1jBBcKGMqRepju9Y00mDVHC+Xdij/j44rKfvfjGinNs1jO/0F3jB83XCDINN/HB84axlP+3E/klktRo+vl3U/aiyMJbIodE1XSsDn6UAzIoMtUObY2+k/4gY/l+AkZJ5Sj2vQrkyLm3FoxjhDX+31UXBFf9XrAH31fFqoBmDEZvhvvpnZ87N+oZEu7U9O/nnk+QWj3x8uyoRbEnf+O5UMr9i0nHP38IF5AvzrBW8YWBUR0mIAzIvndQq9N3v/Jto3aPjPXUPl8ASdPPyAp7jENf8bk7VMM9ol9XGmlBmeDMuGqt+WzuL6CXAxXjIhCPM5vACchgMJ/8XBGLO/D1isVvGhwwHHr1DLaI5mn2Jr/b1pUD90uciDaS8cXNDzCWvNmT/PhQe5e8nTnnnkt8Ds/SIjibcum/fqDhKopxAY8AkSrPn+IGDEKOO+U3XOP6djFs2H5N9+orhOahiQk5KnEUWa+CzkVzhp8bMHRbg81qhjjXuIKbHjSLSIBKWqockGtKinY+z4/RdBUF6pcc3JmnlxVcNgrI4SEzKUZSwcD2QCyxzKve+gAmg6ZuSRkpPFa6mfThu7LJNu3H5K42uCpNvPAsoedolKV/LHe/eJ+BbaG5MG0NaSGVPRUmNFMFFSSpXEcXwbVh7UETOZZtoVNRGOIbbkig3McEtR68cG0RZAoJevWYo7Dg/lZ1CQzblWeUvVHmr8fY4Nqd9JJiH/zEX24mJviH60fAyFr0A3c4bC1j3yZU60VgJxXn8JgJXLUIsiBnmKmMYz+7yBQFBvqb2eYnuW59joZBf56/wXvWIR4R8wTmV80i1mZy+S4+BUES+hzjk0uXpC///z/IlqHZ1monzlXp8aCfhGKMti73FI1KbL1q6IKO4fuBuZ59gagjn5xU79muMpHXg6S+e+gDM/U9BKLHbl9l6o8czQKl4RUkJJiqftQG2i3BMg/TQlUYFkJDYBOOvAugYuzYSDnZbDDd/aSd9x0Oe6F+bJcHfl9+gp6L5/TgA+BdFFovbfCrQ40s5vMPw8866pNX8zyFGeFWdxIpPVp9Rg1UPOVFbFZrvaFq/YAzHQgqMWpahMYfqHpmwXfHL1/kpYmGuHFwT55mQu0dylfNuq2Oq0hTMCPwqfxnuBIPLXfci4Y1ANy+1CUipQxld/izVh16WyG2Q0CQQ9NqtAnx1HCHwDj7sYxOSB0wopZSnOzxQOcExmxrVTF2BkOthVpGfuhaGECfCJpJKpjnihY+xOT2QJxN61+9K6QSqtv2Shr82I3jgJrqBg0wELFZPjvHpvzTtaJnLK6Vb97Yn933koO/saN7fsjwNKzp4l2lJVx2orjCGzC/4ZL4zCver6aQYtC5sdoychuFE6ufOiog+VWi5UDkbmvmtah/3aArEBIi39s5ILUnlFLgilcGuz9CQshEY7fw2ouoILAYPVT/gyAIq3TFAIwVsl+ktkRz/qGfnCDGrm5gsl/l9QdvCWGsjPz3dU7XuqKfdUrr/6XIgjp4rey6AJBmCmUJMjITHVdFb5m1p+dLMCL8t55zD42cmftmLEJC0Da04YiRCVUBLLa8D071/N5UBNBXDh0LFsmhV/5B5ExOB4j3WVG/S3lfK5o+V6ELHvy6RR9n4ac+VsK4VE4yphPvV+kG9FegTBH4ZRXL2HytUHCduJazB/KykjfetYxOXTLws267aGOd+I+JhKP//+VnXmS90OD/jvLcVu0asyqcuYN1mSb6XTlCkqv1vigZPIYwNF/zpWcT1GR/6aEIRjkh0yhg4LXJfaGobYJTY4JI58KiAKgmmgAKWdl5nYCeLqavRJGQNuYuZtZFGx+IkI4w4NS2xwbetNMunOjBu/hmKCI/w7tfiiyUd//4rbTeWt4izBY8YvGIN6vyKYmP/8X8wHKCeN+WRcKM70+tXKNGyevU9H2Dg5BsljnTf8YbsJ1TmMs74Ce2XlHisleguhyeg44rQOHZuw/6HTkhnnurK2d62q6yS7210SsAIaR+jXMQA+svkrLpsUY+F30Uw89uOdGAR6vo4FIME0EfVVeHTu6eKicfhSqOeXJhbftcd08sWEnNUL1C9fnprTgd83IMut8onVUF0hvqzZfHduPjbjwEXIcoYmy+P6tcJZHmeOv6VrvEdkHDJecjHuHeWANe79VG662qTjA/HCvumVv3qL+LrOcpqGps2ZGwQdFJ7PU4iuyRlBrwfO+xnPyr47s2cXVbWzAyznDiBGjCM3ksxjjqM62GE9C8f5U38kB3VjtabKp/nRdvMESPGDG90bWRLAt1Qk5DyLuazRR1YzdC1c+hZXvAWV8xA72S4A8B67vjVhbba3MMop293FeEXpe7zItMWrJG/LOH9ByOXmYnNJfjmfuX9KbrpgLOba4nZ+fl8Gbdv/ihv+6wFGKHCYrVwmhFC0J3V2bn2tIB1wCc1CST3d3X2OyxhguXcs4sm679UngzofuSeBewMFJboIQHbUh/m2JhW2hG9DIvG2t7yZIzKBTz9wBtnNC+2pCRYhSIuQ1j8xsz5VvqnyUIthvuoyyu7fNIrg/KQUVmGQaqkqZk/Vx5b33/gsEs8yX7SC1J+NV4icz6bvIE7C5G6McBaI8rVg56q5QBJWxn/87Q1sPK4+sQa8fLU5gXo4paaq4cOcQ4wR0VBHPGjKh+UlPCbA1nLXyEUX45qZ8J7/Ln4FPJE2TdzD0Z8MLSNQiykMMmSyOCiFfy84Rq60emYB2vD09KjYwsoIpeDcBDTElBbXxND72yhd9pC/1CMid/5HUMvAL27OtcIJDzNKpRPNqPOpyt2aPGz9QWIs9hQ9LiX5s8m9hjTUu/f7MyIatjjd+tSfQ3ufZxPpmJhTaBtZtKLUcfOCUqADuO+QoH8B9v6U+P0HV1GLQmtoNFTb3s74ivZgjES0qfK+8RdGgBbcCMSy8eBvh98+et1KIFqSe1KQPyXULBMTsIYnysIwiZBJYdI20vseV+wuJkcqGemehKjaAb9L57xZm3g2zX0bZ2xk/fU+bCo7TlnbW7JuF1YdURo/2Gw7VclDG1W7LOtas2LX4upifZ/23rzpsnY/ALfRgrcWP5hYmV9VxVOQA1fZvp9F2UNU+7d7xRyVm5wiLp3/0dlV7vdw1PMiZrbDAYzIVqEjRY2YU03sJhPnlwIPcZUG5ltL6S8XCxU1eYS5cjr34veBmXAvy7yN4ZjArIG0dfD/5UpBNlX1ZPoxJOwyqRi3wQWtOzd4oNKh0LkoTm8cwqgIfKhqqGOhwo71I+zXnMemTv2B2AUzABWyFztGgGULjDDzWYwJUVBTjKCn5K2QGMK1CQT7SzziOjo+BhAmqBjzuc3xYym2eedGeOIRJVyTwDw37iCMe4g5Vbnsb5ZBdxOAnMT7HU4DHpxWGuQ7GeiY30Cpbvzss55+5Km1YsbD5ea3NI9QNYIXol5apgSu9dZ8f8xS5dtHpido5BclDuLWY4lhik0tbJa07yJhH0BOyEut/GRbYTS6RfiTYWGMCkNpfSHi7HvdiTglEVHKZXaVhezH4kkXiIvKopYAlPusftpE4a5IZwvw1x/eLvoDIh/zpo9FiQInsTb2SAkKHV42XYBjpJDg4374XiVb3ws4qM0s9eSQ5HzsMU4OZJKuopFjBM+dAZEl8RUMx5uU2N486Kr141tVsGQfGjORYMCJAMsxELeNT4RmWjRcpdTGBwcx6XN9drWqPmJzcrGrH4+DRc7+n1w3kPZwu0BkNr6hQrqgo7JTB9A5kdJ/H7P4cWBMwsmuixAzJB3yrQpnGIq90lxAXLzDCdn1LPibsRt7rHNjgQBklRgPZ8vTbjXdgXrTWQsK5MdrXXQVPp0Rinq3frzZKJ0qD6Qhc40VzAraUXlob1gvkhK3vpmHgI6FRlQZNx6eRqkp0zy4AQlX813fAPtL3jMRaitGFFjo0zmErloC+h+YYdVQ6k4F/epxAoF0BmqEoKNTt6j4vQZNQ2BoqF9Vj53TOIoNmDiu9Xp15RkIgQIGcoLpfoIbenzpGUAtqFJp5W+LLnx38jHeECTJ/navKY1NWfN0sY1T8/pB8kIH3DU3DX+u6W3YwpypBMYOhbSxGjq84RZ84fWJow8pyHqn4S/9J15EcCMsXqrfwyd9mhiu3+rEo9pPpoJkdZqHjra4NvzFwuThNKy6hao/SlLw3ZADUcUp3w3SRVfW2rhl80zOgTYnKE0Hs2qp1J6H3xqPqIkvUDRMFDYyRbsFI3M9MEyovPk8rlw7/0a81cDVLmBsR2ze2pBuKb23fbeZC0uXoIvDppfTwIDxk1Oq2dGesGc+oJXWJLGkOha3CX+DUnzgAp9HGH9RsPZN63Hn4RMA5eSVhPHO+9RcRb/IOgtW31V1Q5IPGtoxPjC+MEJbVlIMYADd9aHYWUIQKopuPOHmoqSkubnAKnzgKHqgIOfW5RdAgotN6BN+O2ZYHkuemLnvQ8U9THVrS1RtLmKbcC7PeeDsYznvqzeg6VCNwmr0Yyx1wnLjyT84BZz3EJyCptD3yeueAyDWIs0L2qs/VQ3HUyqfrja0V1LdDzqAikeWuV4sc7RLIB69jEIBjCkyZedoUHqCrOvShVzyd73OdrJW0hPOuQv2qOoHDc9xVb6Yu6uq3Xqp2ZaH46A7lzevbxQEmfrzvAYSJuZ4WDk1Hz3QX1LVdiUK0EvlAGAYlG3Md30r7dcPN63yqBCIj25prpvZP0nI4+EgWoFG95V596CurXpKRBGRjQlHCvy5Ib/iW8nZJWwrET3mgd6mEhfP4KCuaLjopWs7h+MdXFdIv8dHQJgg1xi1eYqB0uDYjxwVmri0Sv5XKut/onqapC+FQiC2C1lvYJ9MVco6yDYsS3AANUfMtvtbYI2hfwZatiSsnoUeMZd34GVjkMMKA+XnjJpXgRW2SHTZplVowPmJsvXy6w3cfO1AK2dvtZEKTkC/TY9LFiKHCG0DnrMQdGm2lzlBHM9iEYynH2UcVMhUEjsc0oDBTgo2ZSQ1gzkAHeWeBXYFjYLuuf8yzTCy7/RFR81WDjXMbq2BOH5dURnxo6oivmxL3cKzKInlZkD31nvpHB9Kk7GfcfE1t+1V64b9LtgeJGlpRFxQCAqWJ5DoY77ski8gsOEOr2uywZaoO/NGa0X0y1pNQHBi3b2SUGNpcZxDT7rLbBf1FSnQ8guxGW3W+36BW0gBje4DOz6Ba6SVk0xiKgt+q2JOFyr4SYfnu+Ic1QZYIuwHBrgzr6UvOcSCzPTOo7D6IC4ISeS7zkl4h+2VoeHpnG/uWR3+ysNgPcOIXQbv0n4mr3BwQcdKJxgPSeyuP/z1Jjg4e9nUvoXegqQVIE30EHx5GHv+FAVUNTowYDJgyFhf5IvlYmEqRif6+WN1MkEJmDcQITx9FX23a4mxy1AQRsOHO/+eImX9l8EMJI3oPWzVXxSOeHU1dUWYr2uAA7AMb+vAEZSbU3qob9ibCyXeypEMpZ6863o6QPqlqGHZkuWABSTVNd4cOh9hv3qEpSx2Zy/DJMP6cItEmiBJ5PFqQnDEIt3NrA3COlOSgz43D7gpNFNJ5MBh4oFzhDPiglC2ypsNU4ISywY2erkyb1NC3Qh/IfWj0eDgZI4/ln8WPfBsT3meTjq1Uqt1E7Zl/qftqkx6aM9KueMCekSnMrcHj1CqTWWzEzPsZGcDe3Ue4Ws+XFYVxNbOFF8ezkvQGR6ZOtOLU2lQEnMBStx47vE6Pb7AYMBRj2OOfZXfisjJnpTfSNjo6sZ6qSvNxZNmDeS7Gk3yYyCk1HtKN2UnhMIjOXUzAqDv90lx9O/q/AT1ZMnit5XQe9wmQxnE/WSH0CqZ9/2Hy+Sfmpeg8RwsHI5Z8kC8H293m/LHVVM/BA7HaTJYg5Enk7M/xWpq0192ACfBai2LA/qrCjCr6Dh1BIMzMXINBmX96MJ5Hn2nxln/RXPFhwHxUmSV0EV2V0jm86/dxxuYSU1W7sVkEbN9EzkG0QFwPhyHKyb3t+Fj5WoUUTErcazE/N6EW6Lvp0d//SDPj7EV9UdJN+Amnf3Wwk3A0SlJ9Z00yvXZ7n3z70G47Hfsow8Wq1JXcfwnA+Yxa5mFsgV464KKP4T31wqIgzFPd3eCe3j5ory5fBF2hgCFyVFrLzI9eetNXvM7oQqyFgDo4CTp/hDV9NMX9JDHQ/nyHTLvZLNLF6ftn2OxjGm8+PqOwhxnPHWipkE/8wbtyri80Sr7pMNkQGMfo4ZYK9OcCC4ESVFFbLMIvlxSoRqWie0wxqnLfcLSXMSpMMQEJYDVObYsXIQNv4TGNwjq1kvT1UOkicTrG3IaBZ3XdScS3u8sgeZPVpOLkbiF940FjbCeNRINNvDbd01EPBrTCPpm12m43ze1bBB59Ia6Ovhnur/Nvx3IxwSWol+3H2qfCJR8df6aQf4v6WiONxkK+IqT4pKQrZK/LplgDI/PJZbOep8dtbV7oCr6CgfpWa8NczOkPx81iSHbsNhVSJBOtrLIMrL31LK9TqHqAbAHe0RLmmV806kRLDLNEhUEJfm9u0sxpkL93Zgd6rw+tqBfTMi59xqXHLXSHwSbSBl0EK0+loECOPtrl+/nsaFe197di4yUgoe4jKoAJDXc6DGDjrQOoFDWZJ9HXwt8xDrQP+7aRwWKWI1GF8s8O4KzxWBBcwnl3vnl1Oez3oh6Ea1vjR7/z7DDTrFtqU2W/KAEzAuXDNZ7MY73MF216dzdSbWmUp4lcm7keJfWaMHgut9x5C9mj66Z0lJ+yhsjVvyiWrfk1lzPOTdhG15Y7gQlXtacvI7qv/XNSscDwqkgwHT/gUsD5yB7LdRRvJxQGYINn9hTpodKFVSTPrtGvyQw+HlRFXIkodErAGu9Iy1YpfSPc3jkFh5CX3lPxv7aqjE/JAfTIpEjGb/H7MO0e2vsViSW1qa/Lmi4/n4DEI3g7lYrcanspDfEpKkdV1OjSLOy0BCUqVoECaB55vs06rXl4jqmLsPsFM/7vYJ0vrBhDCm/00A/H81l1uekJ/6Lml3Hb9+NKiLqATJmDpyzfYZFHumEjC662L0Bwkxi7E9U4cQA0XMVDuMYAIeLMPgQaMVOd8fmt5SflFIfuBoszeAw7ow5gXPE2Y/yBc/7jExARUf/BxIHQBF5Sn3i61w4z5xJdCyO1F1X3+3ax+JSvMeZ7S6QSKp1Fp/sjYz6Z+VgCZzibGeEoujryfMulH7Rai5kAft9ebcW50DyJr2uo2z97mTWIu45YsSnNSMrrNUuG1XsYBtD9TDYzQffKB87vWbkM4EbPAFgoBV4GQS+vtFDUqOFAoi1nTtmIOvg38N4hT2Sn8r8clmBCXspBlMBYTnrqFJGBT3wZOzAyJDre9dHH7+x7qaaKDOB4UQALD5ecS0DE4obubQEiuJZ0EpBVpLuYcce8Aa4PYd/V4DLDAJBYKQPCWTcrEaZ5HYbJi11Gd6hjGom1ii18VHYnG28NKpkz2UKVPxlhYSp8uZr367iOmoy7zsxehW9wzcy2zG0a80PBMCRQMb32hnaHeOR8fnNDzZhaNYhkOdDsBUZ3loDMa1YP0uS0cjUP3b/6DBlqmZOeNABDsLl5BI5QJups8uxAuWJdkUB/pO6Zax6tsg7fN5mjjDgMGngO+DPcKqiHIDbFIGudxtPTIyDi9SFMKBDcfdGQRv41q1AqmxgkVfJMnP8w/Bc7N9/TR6C7mGObFqFkIEom8sKi2xYqJLTCHK7cxzaZvqODo22c3wisBCP4HeAgcRbNPAsBkNRhSmD48dHupdBRw4mIvtS5oeF6zeT1KMCyhMnmhpkFAGWnGscoNkwvQ8ZM5lE/vgTHFYL99OuNxdFBxTEDd5v2qLR8y9WkXsWgG6kZNndFG+pO/UAkOCipqIhL3hq7cRSdrCq7YhUsTocEcnaFa6nVkhnSeRYUA1YO0z5itF9Sly3VlxYDw239TJJH6f3EUfYO5lb7bcFcz8Bp7Oo8QmnsUHOz/fagVUBtKEw1iT88j+aKkv8cscKNkMxjYr8344D1kFoZ7/td1W6LCNYN594301tUGRmFjAzeRg5vyoM1F6+bJZ/Q54jN/k8SFd3DxPTYaAUsivsBfgTn7Mx8H2SpPt4GOdYRnEJOH6jHM2p6SgB0gzIRq6fHxGMmSmqaPCmlfwxiuloaVIitLGN8wie2CDWhkzLoCJcODh7KIOAqbHEvXdUxaS4TTTs07Clzj/6GmVs9kiZDerMxEnhUB6QQPlcfqkG9882RqHoLiHGBoHfQuXIsAG8GTAtao2KVwRnvvam8jo1e312GQAKWEa4sUVEAMG4G6ckcONDwRcg1e2D3+ohXgY4UAWF8wHKQMrSnzCgfFpsxh+aHXMGtPQroQasRY4U6UdG0rz1Vjbka0MekOGRZQEvqQFlxseFor8zWFgHek3v29+WqN6gaK5gZOTOMZzpQIC1201LkMCXild3vWXSc5UX9xcFYfbRPzGFa1FDcPfPB/jUEq/FeGt419CI3YmBlVoHsa4KdcwQP5ZSwHHhFJ7/Ph/Rap/4vmG91eDwPP0lDfCDRCLszTqfzM71xpmiKi2HwS4WlqvGNwtvwF5Dqpn6KTq8ax00UMPkxDcZrEEEsIvHiUXXEphdb4GB4FymlPwBz4Gperqq5pW7TQ6/yNRhW8VT5NhuP0udlxo4gILq5ZxAZk8ZGh3g4CqxJlPKY7AQxupfUcVpWT5VItp1+30UqoyP4wWsRo3olRRgkWZZ2ZN6VC3OZFeXB8NbnUrSdikNptD1QiGuKkr8EmSR/AK9Rw+FF3s5uwuPbvHGiPeFOViltMK7AUaOsq9+x9cndk3iJEE5LKZRlWJbKOZweROzmPNVPkjE3K/TyA57Rs68TkZ3MR8akKpm7cFjnjPd/DdkWjgYoKHSr5Wu5ssoBYU4acRs5g2DHxUmdq8VXOXRbunD8QN0LhgkssgahcdoYsNvuXGUK/KXD/7oFb+VGdhqIn02veuM5bLudJOc2Ky0GMaG4W/xWBxIJcL7yliJOXOpx0AkBqUgzlDczmLT4iILXDxxtRR1oZa2JWFgiAb43obrJnG/TZC2KSK2wqOzRZTXavZZFMb1f3bXvVaNaK828w9TO610gk8JNf3gMfETzXXsbcvRGCG9JWQZ6+cDPqc4466Yo2RcKH+PILeKOqtnlbInR3MmBeGG3FH10yzkybuqEC2HSQwpA0An7d9+73BkDUTm30bZmoP/RGbgFN+GrCOfADgqr0WbI1a1okpFms8iHYw9hm0zUvlEMivBRxModrbJJ+9/p3jUdQQ9BCtQdxnOGrT5dzRUmw0593/mbRSdBg0nRvRZM5/E16m7ZHmDEtWhwvfdZCZ8J8M12W0yRMszXamWfQTwIZ4ayYktrnscQuWr8idp3PjT2eF/jmtdhIfcpMnb+IfZY2FebW6UY/AK3jP4u3Tu4zE4qlnQgLFbM19EBIsNf7KhjdbqQ/D6yiDb+NlEi2SKD+ivXVUK8ib0oBo366gXkR8ZxGjpJIDcEgZPa9TcYe0TIbiPl/rPUQDu3XBJ9X/GNq3FAUsKsll57DzaGMrjcT+gctp+9MLYXCq+sqP81eVQ0r9lt+gcQfZbACRbEjvlMskztZG8gbC8Qn9tt26Q7y7nDrbZq/LEz7kR6Jc6pg3N9rVX8Y5MJrGlML9p9lU4jbTkKqCveeZUJjHB03m2KRKR2TytoFkTXOLg7keU1s1lrPMQJpoOKLuAAC+y1HlJucU6ysB5hsXhvSPPLq5J7JtnqHKZ4vYjC4Vy8153QY+6780xDuGARsGbOs1WqzH0QS765rnSKEbbKlkO8oI/VDwUd0is13tKpqILu1mDJFNy/iJAWcvDgjxvusIT+PGz3ST/J9r9Mtfd0jpaGeiLYIqXc7DiHSS8TcjFVksi66PEkxW1z6ujbLLUGNNYnzOWpH8BZGK4bCK7iR+MbIv8ncDAz1u4StN3vTTzewr9IQjk9wxFxn+6N1ddKs0vffJiS08N3a4G1SVrlZ97Q/M+8G9fe5AP6d9/Qq4WRnORVhofPIKEdCr3llspUfE0oKIIYoByBRPh+bX1HLS3JWGJRhIvE1aW4NTd8ePi4Z+kXb+Z8snYfSNcqijhAgVsx4RCM54cXUiYkjeBmmC4ajOHrChoELscJJC7+9jjMjw5BagZKlgRMiSNYz7h7vvZIoQqbtQmspc0cUk1G/73iXtSpROl5wtLgQi0mW2Ex8i3WULhcggx6E1LMVHUsdc9GHI1PH3U2Ko0PyGdn9KdVOLm7FPBui0i9a0HpA60MsewVE4z8CAt5d401Gv6zXlIT5Ybit1VIA0FCs7wtvYreru1fUyW3oLAZ/+aTnZrOcYRNVA8spoRtlRoWflsRClFcgzkqiHOrf0/SVw+EpVaFlJ0g4Kxq1MMOmiQdpMNpte8lMMQqm6cIFXlnGbfJllysKDi+0JJMotkqgIxOSQgU9dn/lWkeVf8nUm3iwX2Nl3WDw9i6AUK3vBAbZZrcJpDQ/N64AVwjT07Jef30GSSmtNu2WlW7YoyW2FlWfZFQUwk867EdLYKk9VG6JgEnBiBxkY7LMo4YLQJJlAo9l/oTvJkSARDF/XtyAzM8O2t3eT/iXa6wDN3WewNmQHdPfsxChU/KtLG2Mn8i4ZqKdSlIaBZadxJmRzVS/o4yA65RTSViq60oa395Lqw0pzY4SipwE0SXXsKV+GZraGSkr/RW08wPRvqvSUkYBMA9lPx4m24az+IHmCbXA+0faxTRE9wuGeO06DIXa6QlKJ3puIyiuAVfPr736vzo2pBirS+Vxel3TMm3JKhz9o2ZoRvaFVpIkykb0Hcm4oHFBMcNSNj7/4GJt43ogonY2Vg4nsDQIWxAcorpXACzgBqQPjYsE/VUpXpwNManEru4NwMCFPkXvMoqvoeLN3qyu/N1eWEHttMD65v19l/0kH2mR35iv/FI+yjoHJ9gPMz67af3Mq/BoWXqu3rphiWMXVkmnPSEkpGpUI2h1MThideGFEOK6YZHPwYzMBvpNC7+ZHxPb7epfefGyIB4JzO9DTNEYnDLVVHdQyvOEVefrk6Uv5kTQYVYWWdqrdcIl7yljwwIWdfQ/y+2QB3eR/qxYObuYyB4gTbo2in4PzarU1sO9nETkmj9/AoxDA+JM3GMqQtJR4jtduHtnoCLxd1gQUscHRB/MoRYIEsP2pDZ9KvHgtlk1iTbWWbHhohwFEYX7y51fUV2nuUmnoUcqnWIQAAgl9LTVX+Bc0QGNEhChxHR4YjfE51PUdGfsSFE6ck7BL3/hTf9jLq4G1IafINxOLKeAtO7quulYvH5YOBc+zX7CrMgWnW47/jfRsWnJjYYoE7xMfWV2HN2iyIqLI";const oS=new Map([[8217,"apostrophe"],[8260,"fraction slash"],[12539,"middle dot"]]),aS=4;function qme(t){let e=0;function n(){return t[e++]<<8|t[e++]}let r=n(),i=1,s=[0,1];for(let I=1;I<r;I++)s.push(i+=n());let o=n(),a=e;e+=o;let c=0,l=0;function u(){return c==0&&(l=l<<8|t[e++],c=8),l>>--c&1}const d=31,h=2**d,f=h>>>1,g=f>>1,p=h-1;let m=0;for(let I=0;I<d;I++)m=m<<1|u();let b=[],C=0,x=h;for(;;){let I=Math.floor(((m-C+1)*i-1)/x),P=0,B=r;for(;B-P>1;){let j=P+B>>>1;I<s[j]?B=j:P=j}if(P==0)break;b.push(P);let F=C+Math.floor(x*s[P]/i),L=C+Math.floor(x*s[P+1]/i)-1;for(;!((F^L)&f);)m=m<<1&p|u(),F=F<<1&p,L=L<<1&p|1;for(;F&~L&g;)m=m&f|m<<1&p>>>1|u(),F=F<<1^f,L=(L^f)<<1|f|1;C=F,x=1+L-F}let A=r-4;return b.map(I=>{switch(I-A){case 3:return A+65792+(t[a++]<<16|t[a++]<<8|t[a++]);case 2:return A+256+(t[a++]<<8|t[a++]);case 1:return A+t[a++];default:return I-1}})}function Gme(t){let e=0;return()=>t[e++]}function DD(t){return Gme(qme(Kme(t)))}function Kme(t){let e=[];[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"].forEach((i,s)=>e[i.charCodeAt(0)]=s);let n=t.length,r=new Uint8Array(6*n>>3);for(let i=0,s=0,o=0,a=0;i<n;i++)a=a<<6|e[t.charCodeAt(i)],o+=6,o>=8&&(r[s++]=a>>(o-=8));return r}function Zme(t){return t&1?~t>>1:t>>1}function Yme(t,e){let n=Array(t);for(let r=0,i=0;r<t;r++)n[r]=i+=Zme(e());return n}function a1(t,e=0){let n=[];for(;;){let r=t(),i=t();if(!i)break;e+=r;for(let s=0;s<i;s++)n.push(e+s);e+=i+1}return n}function BD(t){return c1(()=>{let e=a1(t);if(e.length)return e})}function UD(t){let e=[];for(;;){let n=t();if(n==0)break;e.push(Jme(n,t))}for(;;){let n=t()-1;if(n<0)break;e.push(Qme(n,t))}return e.flat()}function c1(t){let e=[];for(;;){let n=t(e.length);if(!n)break;e.push(n)}return e}function LD(t,e,n){let r=Array(t).fill().map(()=>[]);for(let i=0;i<e;i++)Yme(t,n).forEach((s,o)=>r[o].push(s));return r}function Jme(t,e){let n=1+e(),r=e(),i=c1(e);return LD(i.length,1+t,e).flatMap((o,a)=>{let[c,...l]=o;return Array(i[a]).fill().map((u,d)=>{let h=d*r;return[c+d*n,l.map(f=>f+h)]})})}function Qme(t,e){let n=1+e();return LD(n,1+t,e).map(i=>[i[0],i.slice(1)])}function Xme(t){let e=[],n=a1(t);return i(r([]),[]),e;function r(s){let o=t(),a=c1(()=>{let c=a1(t).map(l=>n[l]);if(c.length)return r(c)});return{S:o,B:a,Q:s}}function i({S:s,B:o},a,c){if(!(s&4&&c===a[a.length-1])){s&2&&(c=a[a.length-1]),s&1&&e.push(a);for(let l of o)for(let u of l.Q)i(l,[...a,u],c)}}}function e1e(t){return t.toString(16).toUpperCase().padStart(2,"0")}function MD(t){return`{${e1e(t)}}`}function t1e(t){let e=[];for(let n=0,r=t.length;n<r;){let i=t.codePointAt(n);n+=i<65536?1:2,e.push(i)}return e}function U0(t){let n=t.length;if(n<4096)return String.fromCodePoint(...t);let r=[];for(let i=0;i<n;)r.push(String.fromCodePoint(...t.slice(i,i+=4096)));return r.join("")}function n1e(t,e){let n=t.length,r=n-e.length;for(let i=0;r==0&&i<n;i++)r=t[i]-e[i];return r}var r1e="AEUDTAHBCFQATQDRADAAcgAgADQAFAAsABQAHwAOACQADQARAAoAFwAHABIACAAPAAUACwAFAAwABAAQAAMABwAEAAoABQAIAAIACgABAAQAFAALAAIACwABAAIAAQAHAAMAAwAEAAsADAAMAAwACgANAA0AAwAKAAkABAAdAAYAZwDSAdsDJgC0CkMB8xhZAqfoC190UGcThgBurwf7PT09Pb09AjgJum8OjDllxHYUKXAPxzq6tABAxgK8ysUvWAgMPT09PT09PSs6LT2HcgWXWwFLoSMEEEl5RFVMKvO0XQ8ExDdJMnIgsj26PTQyy8FfEQ8AY8IPAGcEbwRwBHEEcgRzBHQEdQR2BHcEeAR6BHsEfAR+BIAEgfndBQoBYgULAWIFDAFiBNcE2ATZBRAFEQUvBdALFAsVDPcNBw13DYcOMA4xDjMB4BllHI0B2grbAMDpHLkQ7QHVAPRNQQFnGRUEg0yEB2uaJF8AJpIBpob5AERSMAKNoAXqaQLUBMCzEiACnwRZEkkVsS7tANAsBG0RuAQLEPABv9HICTUBXigPZwRBApMDOwAamhtaABqEAY8KvKx3LQ4ArAB8UhwEBAVSagD8AEFZADkBIadVj2UMUgx5Il4ANQC9AxIB1BlbEPMAs30CGxlXAhwZKQIECBc6EbsCoxngzv7UzRQA8M0BawL6ZwkN7wABAD33OQRcsgLJCjMCjqUChtw/km+NAsXPAoP2BT84PwURAK0RAvptb6cApQS/OMMey5HJS84UdxpxTPkCogVFITaTOwERAK5pAvkNBOVyA7q3BKlOJSALAgUIBRcEdASpBXqzABXFSWZOawLCOqw//AolCZdvv3dSBkEQGyelEPcMMwG1ATsN7UvYBPEGOwTJH30ZGQ/NlZwIpS3dDO0m4y6hgFoj9SqDBe1L9DzdC01RaA9ZC2UJ4zpjgU4DIQENIosK3Q05CG0Q8wrJaw3lEUUHOQPVSZoApQcBCxEdNRW1JhBirAsJOXcG+xr2C48mrxMpevwF0xohBk0BKRr/AM8u54WwWjFcHE9fBgMLJSPHFKhQIA0lQLd4SBobBxUlqQKRQ3BKh1E2HpMh9jw9DWYuE1F8B/U8BRlPC4E8nkarRQ4R0j6NPUgiSUwsBDV/LC8niwnPD4UMuXxyAVkJIQmxDHETMREXN8UIOQcZLZckJxUIIUaVYJoE958D8xPRAwsFPwlBBxMDtRwtEy4VKQUNgSTXAvM21S6zAo9WgAEXBcsPJR/fEFBH4A7pCJsCZQODJesALRUhABcimwhDYwBfj9hTBS7LCMdqbCN0A2cU52ERcweRDlcHpxwzFb8c4XDIXguGCCijrwlbAXUJmQFfBOMICTVbjKAgQWdTi1gYmyBhQT9d/AIxDGUVn0S9h3gCiw9rEhsBNQFzBzkNAQJ3Ee0RaxCVCOuGBDW1M/g6JQRPIYMgEQonA09szgsnJvkM+GkBoxJiAww0PXfuZ6tgtiQX/QcZMsVBYCHxC5JPzQycGsEYQlQuGeQHvwPzGvMn6kFXBf8DowMTOk0z7gS9C2kIiwk/AEkOoxcH1xhqCnGM0AExiwG3mQNXkYMCb48GNwcLAGcLhwV55QAdAqcIowAFAM8DVwA5Aq0HnQAZAIVBAT0DJy8BIeUCjwOTCDHLAZUvAfMpBBvDDBUA9zduSgLDsQKAamaiBd1YAo4CSTUBTSUEBU5HUQOvceEA2wBLBhPfRwEVq0rLGuNDAd9vKwDHAPsABTUHBUEBzQHzbQC3AV8LMQmis7UBTekpAIMAFWsB1wKJAN0ANQB/8QFTAE0FWfkF0wJPSQERMRgrV2EBuwMfATMBDQB5BsuNpckHHwRtB9MCEBsV4QLvLge1AQMi3xPNQsUCvd5VoWACZIECYkJbTa9bNyACofcCaJgCZgkCn4Q4GwsCZjsCZiYEbgR/A38TA36SOQY5dxc5gjojIwJsHQIyNjgKAm3HAm2u74ozZ0UrAWcA3gDhAEoFB5gMjQD+C8IADbUCdy8CdqI/AnlLQwJ4uh1c20WuRtcCfD8CesgCfQkCfPAFWQUgSABIfWMkAoFtAoAAAoAFAn+uSVhKWxUXSswC0QEC0MxLJwOITwOH5kTFkTIC8qFdAwMDrkvOTC0lA89NTE2vAos/AorYwRsHHUNnBbcCjjcCjlxAl4ECjtkCjlx4UbRTNQpS1FSFApP7ApMMAOkAHFUeVa9V0AYsGymVhjLheGZFOzkCl58C77JYIagAWSUClo8ClnycAKlZrFoJgU0AOwKWtQKWTlxEXNECmcsCmWRcyl0HGQKcmznCOp0CnBYCn5sCnriKAB0PMSoPAp3xAp6SALU9YTRh7wKe0wKgbgGpAp6fHwKeTqVjyGQnJSsCJ68CJn4CoPsCoEwCot0CocQCpi8Cpc4Cp/8AfQKn8mh8aLEAA0lqHGrRAqzjAqyuAq1nAq0CAlcdAlXcArHh1wMfTmyXArK9DQKy6Bds4G1jbUhfAyXNArZcOz9ukAMpRQK4XgK5RxUCuSp3cDZw4QK9GQK72nCWAzIRAr6IcgIDM3ECvhpzInNPAsPLAsMEc4J0SzVFdOADPKcDPJoDPb8CxXwCxkcCxhCJAshpUQLIRALJTwLJLgJknQLd0nh5YXiueSVL0AMYo2cCAmH0GfOVJHsLXpJeuxECz2sCz2wvS1PS8xOfAMatAs9zASnqA04SfksFAtwnAtuKAtJPA1JcA1NfAQEDVYyAiT8AyxbtYEWCHILTgs6DjQLaxwLZ3oQQhEmnPAOGpQAvA2QOhnFZ+QBVAt9lAt64c3cC4i/tFAHzMCcB9JsB8tKHAuvzAulweQLq+QLq5AD5RwG5Au6JAuuclqqXAwLuPwOF4Jh5cOBxoQLzAwBpA44WmZMC9xMDkW4DkocC95gC+dkC+GaaHJqruzebHgOdgwL++gEbADmfHJ+zAwWNA6ZqA6bZANHFAwZqoYiiBQkDDEkCwAA/AwDhQRdTARHzA2sHl2cFAJMtK7evvdsBiZkUfxEEOQH7KQUhDp0JnwCS/SlXxQL3AZ0AtwW5AG8LbUEuFCaNLgFDAYD8AbUmAHUDDgRtACwCFgyhAAAKAj0CagPdA34EkQEgRQUhfAoABQBEABMANhICdwEABdUDa+8KxQIA9wqfJ7+xt+UBkSFBQgHpFH8RNMCJAAQAGwBaAkUChIsABjpTOpSNbQC4Oo860ACNOME63AClAOgAywE6gTo7Ofw5+Tt2iTpbO56JOm85GAFWATMBbAUvNV01njWtNWY1dTW2NcU1gjWRNdI14TWeNa017jX9NbI1wTYCNhE1xjXVNhY2JzXeNe02LjY9Ni41LSE2OjY9Njw2yTcIBJA8VzY4Nt03IDcPNsogN4k3MAoEsDxnNiQ3GTdsOo03IULUQwdC4EMLHA8PCZsobShRVQYA6X8A6bABFCnXAukBowC9BbcAbwNzBL8MDAMMAQgDAAkKCwsLCQoGBAVVBI/DvwDz9b29kaUCb0QtsRTNLt4eGBcSHAMZFhYZEhYEARAEBUEcQRxBHEEcQRxBHEEaQRxBHEFCSTxBPElISUhBNkM2QTYbNklISVmBVIgBFLWZAu0BhQCjBcEAbykBvwGJAaQcEZ0ePCklMAAhMvAIMAL54gC7Bm8EescjzQMpARQpKgDUABavAj626xQAJP0A3etzuf4NNRA7efy2Z9NQrCnC0OSyANz5BBIbJ5IFDR6miIavYS6tprjjmuKebxm5C74Q225X1pkaYYPb6f1DK4k3xMEBb9S2WMjEibTNWhsRJIA+vwNVEiXTE5iXs/wezV66oFLfp9NZGYW+Gk19J2+bCT6Ye2w6LDYdgzKMUabk595eLBCXANz9HUpWbATq9vqXVx9XDg+Pc9Xp4+bsS005SVM/BJBM4687WUuf+Uj9dEi8aDNaPxtpbDxcG1THTImUMZq4UCaaNYpsVqraNyKLJXDYsFZ/5jl7bLRtO88t7P3xZaAxhb5OdPMXqsSkp1WCieG8jXm1U99+blvLlXzPCS+M93VnJCiK+09LfaSaBAVBomyDgJua8dfUzR7ga34IvR2Nvj+A9heJ6lsl1KG4NkI1032Cnff1m1wof2B9oHJK4bi6JkEdSqeNeiuo6QoZZincoc73/TH9SXF8sCE7XyuYyW8WSgbGFCjPV0ihLKhdPs08Tx82fYAkLLc4I2wdl4apY7GU5lHRFzRWJep7Ww3wbeA3qmd59/86P4xuNaqDpygXt6M85glSBHOCGgJDnt+pN9bK7HApMguX6+06RZNjzVmcZJ+wcUrJ9//bpRNxNuKpNl9uFds+S9tdx7LaM5ZkIrPj6nIU9mnbFtVbs9s/uLgl8MVczAwet+iOEzzBlYW7RCMgE6gyNLeq6+1tIx4dpgZnd0DksJS5f+JNDpwwcPNXaaVspq1fbQajOrJgK0ofKtJ1Ne90L6VO4MOl5S886p7u6xo7OLjG8TGL+HU1JXGJgppg4nNbNJ5nlzSpuPYy21JUEcUA94PoFiZfjZue+QnyQ80ekOuZVkxx4g+cvhJfHgNl4hy1/a6+RKcKlar/J29y//EztlbVPHVUeQ1zX86eQVAjR/M3dA9w4W8LfaXp4EgM85wOWasli837PzVMOnsLzR+k3o75/lRPAJSE1xAKQzEi5v10ke+VBvRt1cwQRMd+U5mLCTGVd6XiZtgBG5cDi0w22GKcVNvHiu5LQbZEDVtz0onn7k5+heuKXVsZtSzilkLRAUmjMXEMB3J9YC50XBxPiz53SC+EhnPl9WsKCv92SM/OFFIMJZYfl0WW8tIO3UxYcwdMAj7FSmgrsZ2aAZO03BOhP1bNNZItyXYQFTpC3SG1VuPDqH9GkiCDmE+JwxyIVSO5siDErAOpEXFgjy6PQtOVDj+s6e1r8heWVvmZnTciuf4EiNZzCAd7SOMhXERIOlsHIMG399i9aLTy3m2hRLZjJVDNLS53iGIK11dPqQt0zBDyg6qc7YqkDm2M5Ve6dCWCaCbTXX2rToaIgz6+zh4lYUi/+6nqcFMAkQJKHYLK0wYk5N9szV6xihDbDDFr45lN1K4aCXBq/FitPSud9gLt5ZVn+ZqGX7cwm2z5EGMgfFpIFyhGGuDPmso6TItTMwny+7uPnLCf4W6goFQFV0oQSsc9VfMmVLcLr6ZetDZbaSFTLqnSO/bIPjA3/zAUoqgGFAEQS4IhuMzEp2I3jJzbzkk/IEmyax+rhZTwd6f+CGtwPixu8IvzACquPWPREu9ZvGkUzpRwvRRuaNN6cr0W1wWits9ICdYJ7ltbgMiSL3sTPeufgNcVqMVWFkCPDH4jG2jA0XcVgQj62Cb29v9f/z/+2KbYvIv/zzjpQAPkliaVDzNrW57TZ/ZOyZD0nlfMmAIBIAGAI0D3k/mdN4xr9v85ZbZbbqfH2jGd5hUqNZWwl5SPfoGmfElmazUIeNL1j/mkF7VNAzTq4jNt8JoQ11NQOcmhprXoxSxfRGJ9LDEOAQ+dmxAQH90iti9e2u/MoeuaGcDTHoC+xsmEeWmxEKefQuIzHbpw5Tc5cEocboAD09oipWQhtTO1wivf/O+DRe2rpl/E9wlrzBorjJsOeG1B/XPW4EaJEFdNlECEZga5ZoGRHXgYouGRuVkm8tDESiEyFNo+3s5M5puSdTyUL2llnINVHEt91XUNW4ewdMgJ4boJfEyt/iY5WXqbA+A2Fkt5Z0lutiWhe9nZIyIUjyXDC3UsaG1t+eNx6z4W/OYoTB7A6x+dNSTOi9AInctbESqm5gvOLww7OWXPrmHwVZasrl4eD113pm+JtT7JVOvnCXqdzzdTRHgJ0PiGTFYW5Gvt9R9LD6Lzfs0v/TZZHSmyVNq7viIHE6DBK7Qp07Iz55EM8SYtQvZf/obBniTWi5C2/ovHfw4VndkE5XYdjOhCMRjDeOEfXeN/CwfGduiUIfsoFeUxXeQXba7c7972XNv8w+dTjjUM0QeNAReW+J014dKAD/McQYXT7c0GQPIkn3Ll6R7gGjuiQoZD0TEeEqQpKoZ15g/0OPQI17QiSv9AUROa/V/TQN3dvLArec3RrsYlvBm1b8LWzltdugsC50lNKYLEp2a+ZZYqPejULRlOJh5zj/LVMyTDvwKhMxxwuDkxJ1QpoNI0OTWLom4Z71SNzI9TV1iXJrIu9Wcnd+MCaAw8o1jSXd94YU/1gnkrC9BUEOtQvEIQ7g0i6h+KL2JKk8Ydl7HruvgWMSAmNe+LshGhV4qnWHhO9/RIPQzY1tHRj2VqOyNsDpK0cww+56AdDC4gsWwY0XxoucIWIqs/GcwnWqlaT0KPr8mbK5U94/301i1WLt4YINTVvCFBrFZbIbY8eycOdeJ2teD5IfPLCRg7jjcFTwlMFNl9zdh/o3E/hHPwj7BWg0MU09pPrBLbrCgm54A6H+I6v27+jL5gkjWg/iYdks9jbfVP5y/n0dlgWEMlKasl7JvFZd56LfybW1eeaVO0gxTfXZwD8G4SI116yx7UKVRgui6Ya1YpixqXeNLc8IxtAwCU5IhwQgn+NqHnRaDv61CxKhOq4pOX7M6pkA+Pmpd4j1vn6ACUALoLLc4vpXci8VidLxzm7qFBe7s+quuJs6ETYmnpgS3LwSZxPIltgBDXz8M1k/W2ySNv2f9/NPhxLGK2D21dkHeSGmenRT3Yqcdl0m/h3OYr8V+lXNYGf8aCCpd4bWjE4QIPj7vUKN4Nrfs7ML6Y2OyS830JCnofg/k7lpFpt4SqZc5HGg1HCOrHvOdC8bP6FGDbE/VV0mX4IakzbdS/op+Kt3G24/8QbBV7y86sGSQ/vZzU8FXs7u6jIvwchsEP2BpIhW3G8uWNwa3HmjfH/ZjhhCWvluAcF+nMf14ClKg5hGgtPLJ98ueNAkc5Hs2WZlk2QHvfreCK1CCGO6nMZVSb99VM/ajr8WHTte9JSmkXq/i/U943HEbdzW6Re/S88dKgg8pGOLlAeNiqrcLkUR3/aClFpMXcOUP3rmETcWSfMXZE3TUOi8i+fqRnTYLflVx/Vb/6GJ7eIRZUA6k3RYR3iFSK9c4iDdNwJuZL2FKz/IK5VimcNWEqdXjSoxSgmF0UPlDoUlNrPcM7ftmA8Y9gKiqKEHuWN+AZRIwtVSxye2Kf8rM3lhJ5XcBXU9n4v0Oy1RU2M+4qM8AQPVwse8ErNSob5oFPWxuqZnVzo1qB/IBxkM3EVUKFUUlO3e51259GgNcJbCmlvrdjtoTW7rChm1wyCKzpCTwozUUEOIcWLneRLgMXh+SjGSFkAllzbGS5HK7LlfCMRNRDSvbQPjcXaenNYxCvu2Qyznz6StuxVj66SgI0T8B6/sfHAJYZaZ78thjOSIFumNWLQbeZixDCCC+v0YBtkxiBB3jefHqZ/dFHU+crbj6OvS1x/JDD7vlm7zOVPwpUC01nhxZuY/63E7g";const l1=44032,p2=4352,g2=4449,m2=4519,FD=19,WD=21,L0=28,w2=WD*L0,i1e=FD*w2,s1e=l1+i1e,o1e=p2+FD,a1e=g2+WD,c1e=m2+L0;function Xg(t){return t>>24&255}function jD(t){return t&16777215}let n4,cS,r4,Jy;function l1e(){let t=DD(r1e);n4=new Map(BD(t).flatMap((e,n)=>e.map(r=>[r,n+1<<24]))),cS=new Set(a1(t)),r4=new Map,Jy=new Map;for(let[e,n]of UD(t)){if(!cS.has(e)&&n.length==2){let[r,i]=n,s=Jy.get(r);s||(s=new Map,Jy.set(r,s)),s.set(i,e)}r4.set(e,n.reverse())}}function HD(t){return t>=l1&&t<s1e}function u1e(t,e){if(t>=p2&&t<o1e&&e>=g2&&e<a1e)return l1+(t-p2)*w2+(e-g2)*L0;if(HD(t)&&e>m2&&e<c1e&&(t-l1)%L0==0)return t+(e-m2);{let n=Jy.get(t);return n&&(n=n.get(e),n)?n:-1}}function zD(t){n4||l1e();let e=[],n=[],r=!1;function i(s){let o=n4.get(s);o&&(r=!0,s|=o),e.push(s)}for(let s of t)for(;;){if(s<128)e.push(s);else if(HD(s)){let o=s-l1,a=o/w2|0,c=o%w2/L0|0,l=o%L0;i(p2+a),i(g2+c),l>0&&i(m2+l)}else{let o=r4.get(s);o?n.push(...o):i(s)}if(!n.length)break;s=n.pop()}if(r&&e.length>1){let s=Xg(e[0]);for(let o=1;o<e.length;o++){let a=Xg(e[o]);if(a==0||s<=a){s=a;continue}let c=o-1;for(;;){let l=e[c+1];if(e[c+1]=e[c],e[c]=l,!c||(s=Xg(e[--c]),s<=a))break}s=Xg(e[o])}}return e}function d1e(t){let e=[],n=[],r=-1,i=0;for(let s of t){let o=Xg(s),a=jD(s);if(r==-1)o==0?r=a:e.push(a);else if(i>0&&i>=o)o==0?(e.push(r,...n),n.length=0,r=a):n.push(a),i=o;else{let c=u1e(r,a);c>=0?r=c:i==0&&o==0?(e.push(r),r=a):(n.push(a),i=o)}}return r>=0&&e.push(r,...n),e}function VD(t){return zD(t).map(jD)}function h1e(t){return d1e(zD(t))}const lS=45,qD=".",GD=65039,KD=1,y2=t=>Array.from(t);function u1(t,e){return t.P.has(e)||t.Q.has(e)}class f1e extends Array{get is_emoji(){return!0}}let i4,ZD,td,s4,YD,Hf,WE,df,ku,uS,o4;function j6(){if(i4)return;let t=DD(Vme);const e=()=>a1(t),n=()=>new Set(e()),r=(u,d)=>d.forEach(h=>u.add(h));i4=new Map(UD(t)),ZD=n(),td=e(),s4=new Set(e().map(u=>td[u])),td=new Set(td),YD=n(),n();let i=BD(t),s=t();const o=()=>{let u=new Set;return e().forEach(d=>r(u,i[d])),r(u,e()),u};Hf=c1(u=>{let d=c1(t).map(h=>h+96);if(d.length){let h=u>=s;d[0]-=32,d=U0(d),h&&(d=`Restricted[${d}]`);let f=o(),g=o(),p=!t();return{N:d,P:f,Q:g,M:p,R:h}}}),WE=n(),df=new Map;let a=e().concat(y2(WE)).sort((u,d)=>u-d);a.forEach((u,d)=>{let h=t(),f=a[d]=h?a[d-h]:{V:[],M:new Map};f.V.push(u),WE.has(u)||df.set(u,f)});for(let{V:u,M:d}of new Set(df.values())){let h=[];for(let g of u){let p=Hf.filter(b=>u1(b,g)),m=h.find(({G:b})=>p.some(C=>b.has(C)));m||(m={G:new Set,V:[]},h.push(m)),m.V.push(g),r(m.G,p)}let f=h.flatMap(g=>y2(g.G));for(let{G:g,V:p}of h){let m=new Set(f.filter(b=>!g.has(b)));for(let b of p)d.set(b,m)}}ku=new Set;let c=new Set;const l=u=>ku.has(u)?c.add(u):ku.add(u);for(let u of Hf){for(let d of u.P)l(d);for(let d of u.Q)l(d)}for(let u of ku)!df.has(u)&&!c.has(u)&&df.set(u,KD);r(ku,VD(ku)),uS=Xme(t).map(u=>f1e.from(u)).sort(n1e),o4=new Map;for(let u of uS){let d=[o4];for(let h of u){let f=d.map(g=>{let p=g.get(h);return p||(p=new Map,g.set(h,p)),p});h===GD?d.push(...f):d=f}for(let h of d)h.V=u}}function H6(t){return(JD(t)?"":`${z6(H3([t]))} `)+MD(t)}function z6(t){return`"${t}"`}function p1e(t){if(t.length>=4&&t[2]==lS&&t[3]==lS)throw new Error(`invalid label extension: "${U0(t.slice(0,4))}"`)}function g1e(t){for(let n=t.lastIndexOf(95);n>0;)if(t[--n]!==95)throw new Error("underscore allowed only at start")}function m1e(t){let e=t[0],n=oS.get(e);if(n)throw Em(`leading ${n}`);let r=t.length,i=-1;for(let s=1;s<r;s++){e=t[s];let o=oS.get(e);if(o){if(i==s)throw Em(`${n} + ${o}`);i=s+1,n=o}}if(i==r)throw Em(`trailing ${n}`)}function H3(t,e=1/0,n=MD){let r=[];w1e(t[0])&&r.push("◌"),t.length>e&&(e>>=1,t=[...t.slice(0,e),8230,...t.slice(-e)]);let i=0,s=t.length;for(let o=0;o<s;o++){let a=t[o];JD(a)&&(r.push(U0(t.slice(i,o))),r.push(n(a)),i=o+1)}return r.push(U0(t.slice(i,s))),r.join("")}function w1e(t){return j6(),td.has(t)}function JD(t){return j6(),YD.has(t)}function y1e(t){return v1e(b1e(t,h1e,_1e))}function b1e(t,e,n){if(!t)return[];j6();let r=0;return t.split(qD).map(i=>{let s=t1e(i),o={input:s,offset:r};r+=s.length+1;try{let a=o.tokens=A1e(s,e,n),c=a.length,l;if(!c)throw new Error("empty label");let u=o.output=a.flat();if(g1e(u),!(o.emoji=c>1||a[0].is_emoji)&&u.every(h=>h<128))p1e(u),l="ASCII";else{let h=a.flatMap(f=>f.is_emoji?[]:f);if(!h.length)l="Emoji";else{if(td.has(u[0]))throw Em("leading combining mark");for(let p=1;p<c;p++){let m=a[p];if(!m.is_emoji&&td.has(m[0]))throw Em(`emoji + combining mark: "${U0(a[p-1])} + ${H3([m[0]])}"`)}m1e(u);let f=y2(new Set(h)),[g]=E1e(f);C1e(g,h),x1e(g,f),l=g.N}}o.type=l}catch(a){o.error=a}return o})}function x1e(t,e){let n,r=[];for(let i of e){let s=df.get(i);if(s===KD)return;if(s){let o=s.M.get(i);if(n=n?n.filter(a=>o.has(a)):y2(o),!n.length)return}else r.push(i)}if(n){for(let i of n)if(r.every(s=>u1(i,s)))throw new Error(`whole-script confusable: ${t.N}/${i.N}`)}}function E1e(t){let e=Hf;for(let n of t){let r=e.filter(i=>u1(i,n));if(!r.length)throw Hf.some(i=>u1(i,n))?XD(e[0],n):QD(n);if(e=r,r.length==1)break}return e}function v1e(t){return t.map(({input:e,error:n,output:r})=>{if(n){let i=n.message;throw new Error(t.length==1?i:`Invalid label ${z6(H3(e,63))}: ${i}`)}return U0(r)}).join(qD)}function QD(t){return new Error(`disallowed character: ${H6(t)}`)}function XD(t,e){let n=H6(e),r=Hf.find(i=>i.P.has(e));return r&&(n=`${r.N} ${n}`),new Error(`illegal mixture: ${t.N} + ${n}`)}function Em(t){return new Error(`illegal placement: ${t}`)}function C1e(t,e){for(let n of e)if(!u1(t,n))throw XD(t,n);if(t.M){let n=VD(e);for(let r=1,i=n.length;r<i;r++)if(s4.has(n[r])){let s=r+1;for(let o;s<i&&s4.has(o=n[s]);s++)for(let a=r;a<s;a++)if(n[a]==o)throw new Error(`duplicate non-spacing marks: ${H6(o)}`);if(s-r>aS)throw new Error(`excessive non-spacing marks: ${z6(H3(n.slice(r-1,s)))} (${s-r}/${aS})`);r=s}}}function A1e(t,e,n){let r=[],i=[];for(t=t.slice().reverse();t.length;){let s=S1e(t);if(s)i.length&&(r.push(e(i)),i=[]),r.push(n(s));else{let o=t.pop();if(ku.has(o))i.push(o);else{let a=i4.get(o);if(a)i.push(...a);else if(!ZD.has(o))throw QD(o)}}}return i.length&&r.push(e(i)),r}function _1e(t){return t.filter(e=>e!=GD)}function S1e(t,e){let n=o4,r,i=t.length;for(;i&&(n=n.get(t[--i]),!!n);){let{V:s}=n;s&&(r=s,t.length=i)}return r}const eB=new Uint8Array(32);eB.fill(0);function dS(t){return M(t.length!==0,"invalid ENS name; empty component","comp",t),t}function tB(t){const e=Sr(I1e(t)),n=[];if(t.length===0)return n;let r=0;for(let i=0;i<e.length;i++)e[i]===46&&(n.push(dS(e.slice(r,i))),r=i+1);return M(r<e.length,"invalid ENS name; empty component","name",t),n.push(dS(e.slice(r))),n}function I1e(t){try{if(t.length===0)throw new Error("empty label");return y1e(t)}catch(e){M(!1,`invalid ENS name (${e.message})`,"name",t)}}function a4(t){M(typeof t=="string","invalid ENS name; not a string","name",t),M(t.length,"invalid ENS name (empty label)","name",t);let e=eB;const n=tB(t);for(;n.length;)e=nn(Rt([e,nn(n.pop())]));return de(e)}function T1e(t,e){const n=e;return M(n<=255,"DNS encoded label cannot exceed 255","length",n),de(Rt(tB(t).map(r=>{M(r.length<=n,`label ${JSON.stringify(t)} exceeds ${n} bytes`,"name",t);const i=new Uint8Array(r.length+1);return i.set(r,1),i[0]=i.length-1,i})))+"00"}function N1e(t){return typeof t=="string"&&(t=Sr(t)),nn(Rt([Sr(tme),Sr(String(t.length)),t]))}const nB=new Uint8Array(32);nB.fill(0);const R1e=BigInt(-1),rB=BigInt(0),iB=BigInt(1),O1e=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function P1e(t){const e=Ae(t),n=e.length%32;return n?Rt([e,nB.slice(n)]):de(e)}const k1e=Nc(iB,32),$1e=Nc(rB,32),hS={name:"string",version:"string",chainId:"uint256",verifyingContract:"address",salt:"bytes32"},jE=["name","version","chainId","verifyingContract","salt"];function fS(t){return function(e){return M(typeof e=="string",`invalid domain value for ${JSON.stringify(t)}`,`domain.${t}`,e),e}}const D1e={name:fS("name"),version:fS("version"),chainId:function(t){const e=Re(t,"domain.chainId");return M(e>=0,"invalid chain ID","domain.chainId",t),Number.isSafeInteger(e)?Number(e):oo(e)},verifyingContract:function(t){try{return ft(t).toLowerCase()}catch{}M(!1,'invalid domain value "verifyingContract"',"domain.verifyingContract",t)},salt:function(t){const e=Ae(t,"domain.salt");return M(e.length===32,'invalid domain value "salt"',"domain.salt",t),de(e)}};function HE(t){{const e=t.match(/^(u?)int(\d+)$/);if(e){const n=e[1]==="",r=parseInt(e[2]);M(r%8===0&&r!==0&&r<=256&&e[2]===String(r),"invalid numeric width","type",t);const i=Xu(O1e,n?r-1:r),s=n?(i+iB)*R1e:rB;return function(o){const a=Re(o,"value");return M(a>=s&&a<=i,`value out-of-bounds for ${t}`,"value",a),Nc(n?b$(a,256):a,32)}}}{const e=t.match(/^bytes(\d+)$/);if(e){const n=parseInt(e[1]);return M(n!==0&&n<=32&&e[1]===String(n),"invalid bytes width","type",t),function(r){const i=Ae(r);return M(i.length===n,`invalid length for ${t}`,"value",r),P1e(r)}}}switch(t){case"address":return function(e){return Tc(ft(e),32)};case"bool":return function(e){return e?k1e:$1e};case"bytes":return function(e){return nn(e)};case"string":return function(e){return Oc(e)}}return null}function pS(t,e){return`${t}(${e.map(({name:n,type:r})=>r+" "+n).join(",")})`}function Ny(t){const e=t.match(/^([^\x5b]*)((\x5b\d*\x5d)*)(\x5b(\d*)\x5d)$/);return e?{base:e[1],index:e[2]+e[4],array:{base:e[1],prefix:e[1]+e[2],count:e[5]?parseInt(e[5]):-1}}:{base:t}}var E1,Ya,yp,I2,sB;const ms=class ms{constructor(e){K(this,I2);G(this,"primaryType");K(this,E1);K(this,Ya);K(this,yp);k(this,Ya,new Map),k(this,yp,new Map);const n=new Map,r=new Map,i=new Map,s={};Object.keys(e).forEach(c=>{s[c]=e[c].map(({name:l,type:u})=>{let{base:d,index:h}=Ny(u);return d==="int"&&!e.int&&(d="int256"),d==="uint"&&!e.uint&&(d="uint256"),{name:l,type:d+(h||"")}}),n.set(c,new Set),r.set(c,[]),i.set(c,new Set)}),k(this,E1,JSON.stringify(s));for(const c in s){const l=new Set;for(const u of s[c]){M(!l.has(u.name),`duplicate variable name ${JSON.stringify(u.name)} in ${JSON.stringify(c)}`,"types",e),l.add(u.name);const d=Ny(u.type).base;M(d!==c,`circular type reference to ${JSON.stringify(d)}`,"types",e),!HE(d)&&(M(r.has(d),`unknown type ${JSON.stringify(d)}`,"types",e),r.get(d).push(c),n.get(c).add(d))}}const o=Array.from(r.keys()).filter(c=>r.get(c).length===0);M(o.length!==0,"missing primary type","types",e),M(o.length===1,`ambiguous primary types or unused types: ${o.map(c=>JSON.stringify(c)).join(", ")}`,"types",e),Me(this,{primaryType:o[0]});function a(c,l){M(!l.has(c),`circular type reference to ${JSON.stringify(c)}`,"types",e),l.add(c);for(const u of n.get(c))if(r.has(u)){a(u,l);for(const d of l)i.get(d).add(u)}l.delete(c)}a(this.primaryType,new Set);for(const[c,l]of i){const u=Array.from(l);u.sort(),y(this,Ya).set(c,pS(c,s[c])+u.map(d=>pS(d,s[d])).join(""))}}get types(){return JSON.parse(y(this,E1))}getEncoder(e){let n=y(this,yp).get(e);return n||(n=X(this,I2,sB).call(this,e),y(this,yp).set(e,n)),n}encodeType(e){const n=y(this,Ya).get(e);return M(n,`unknown type: ${JSON.stringify(e)}`,"name",e),n}encodeData(e,n){return this.getEncoder(e)(n)}hashStruct(e,n){return nn(this.encodeData(e,n))}encode(e){return this.encodeData(this.primaryType,e)}hash(e){return this.hashStruct(this.primaryType,e)}_visit(e,n,r){if(HE(e))return r(e,n);const i=Ny(e).array;if(i)return M(i.count===-1||i.count===n.length,`array length mismatch; expected length ${i.count}`,"value",n),n.map(o=>this._visit(i.prefix,o,r));const s=this.types[e];if(s)return s.reduce((o,{name:a,type:c})=>(o[a]=this._visit(c,n[a],r),o),{});M(!1,`unknown type: ${e}`,"type",e)}visit(e,n){return this._visit(this.primaryType,e,n)}static from(e){return new ms(e)}static getPrimaryType(e){return ms.from(e).primaryType}static hashStruct(e,n,r){return ms.from(n).hashStruct(e,r)}static hashDomain(e){const n=[];for(const r in e){if(e[r]==null)continue;const i=hS[r];M(i,`invalid typed-data domain key: ${JSON.stringify(r)}`,"domain",e),n.push({name:r,type:i})}return n.sort((r,i)=>jE.indexOf(r.name)-jE.indexOf(i.name)),ms.hashStruct("EIP712Domain",{EIP712Domain:n},e)}static encode(e,n,r){return Rt(["0x1901",ms.hashDomain(e),ms.from(n).hash(r)])}static hash(e,n,r){return nn(ms.encode(e,n,r))}static async resolveNames(e,n,r,i){e=Object.assign({},e);for(const a in e)e[a]==null&&delete e[a];const s={};e.verifyingContract&&!Vt(e.verifyingContract,20)&&(s[e.verifyingContract]="0x");const o=ms.from(n);o.visit(r,(a,c)=>(a==="address"&&!Vt(c,20)&&(s[c]="0x"),c));for(const a in s)s[a]=await i(a);return e.verifyingContract&&s[e.verifyingContract]&&(e.verifyingContract=s[e.verifyingContract]),r=o.visit(r,(a,c)=>a==="address"&&s[c]?s[c]:c),{domain:e,value:r}}static getPayload(e,n,r){ms.hashDomain(e);const i={},s=[];jE.forEach(c=>{const l=e[c];l!=null&&(i[c]=D1e[c](l),s.push({name:c,type:hS[c]}))});const o=ms.from(n);n=o.types;const a=Object.assign({},n);return M(a.EIP712Domain==null,"types must not contain EIP712Domain type","types.EIP712Domain",n),a.EIP712Domain=s,o.encode(r),{types:a,domain:i,primaryType:o.primaryType,message:o.visit(r,(c,l)=>{if(c.match(/^bytes(\d*)/))return de(Ae(l));if(c.match(/^u?int/))return Re(l).toString();switch(c){case"address":return l.toLowerCase();case"bool":return!!l;case"string":return M(typeof l=="string","invalid string","value",l),l}M(!1,"unsupported type","type",c)})}}};E1=new WeakMap,Ya=new WeakMap,yp=new WeakMap,I2=new WeakSet,sB=function(e){{const i=HE(e);if(i)return i}const n=Ny(e).array;if(n){const i=n.prefix,s=this.getEncoder(i);return o=>{M(n.count===-1||n.count===o.length,`array length mismatch; expected length ${n.count}`,"value",o);let a=o.map(s);return y(this,Ya).has(i)&&(a=a.map(nn)),nn(Rt(a))}}const r=this.types[e];if(r){const i=Oc(y(this,Ya).get(e));return s=>{const o=r.map(({name:a,type:c})=>{const l=this.getEncoder(c)(s[a]);return y(this,Ya).has(c)?nn(l):l});return o.unshift(i),Rt(o)}}M(!1,`unknown type: ${e}`,"type",e)};let M0=ms;function jr(t){const e=new Set;return t.forEach(n=>e.add(n)),Object.freeze(e)}const B1e="external public payable override",U1e=jr(B1e.split(" ")),oB="constant external internal payable private public pure view override",L1e=jr(oB.split(" ")),aB="constructor error event fallback function receive struct",cB=jr(aB.split(" ")),lB="calldata memory storage payable indexed",M1e=jr(lB.split(" ")),F1e="tuple returns",W1e=[aB,lB,F1e,oB].join(" "),j1e=jr(W1e.split(" ")),H1e={"(":"OPEN_PAREN",")":"CLOSE_PAREN","[":"OPEN_BRACKET","]":"CLOSE_BRACKET",",":"COMMA","@":"AT"},z1e=new RegExp("^(\\s*)"),V1e=new RegExp("^([0-9]+)"),q1e=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)"),uB=new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)$"),dB=new RegExp("^(address|bool|bytes([0-9]*)|string|u?int([0-9]*))$");var nr,to,v1,c4;const T2=class T2{constructor(e){K(this,v1);K(this,nr);K(this,to);k(this,nr,0),k(this,to,e.slice())}get offset(){return y(this,nr)}get length(){return y(this,to).length-y(this,nr)}clone(){return new T2(y(this,to))}reset(){k(this,nr,0)}popKeyword(e){const n=this.peek();if(n.type!=="KEYWORD"||!e.has(n.text))throw new Error(`expected keyword ${n.text}`);return this.pop().text}popType(e){if(this.peek().type!==e){const n=this.peek();throw new Error(`expected ${e}; got ${n.type} ${JSON.stringify(n.text)}`)}return this.pop().text}popParen(){const e=this.peek();if(e.type!=="OPEN_PAREN")throw new Error("bad start");const n=X(this,v1,c4).call(this,y(this,nr)+1,e.match+1);return k(this,nr,e.match+1),n}popParams(){const e=this.peek();if(e.type!=="OPEN_PAREN")throw new Error("bad start");const n=[];for(;y(this,nr)<e.match-1;){const r=this.peek().linkNext;n.push(X(this,v1,c4).call(this,y(this,nr)+1,r)),k(this,nr,r)}return k(this,nr,e.match+1),n}peek(){if(y(this,nr)>=y(this,to).length)throw new Error("out-of-bounds");return y(this,to)[y(this,nr)]}peekKeyword(e){const n=this.peekType("KEYWORD");return n!=null&&e.has(n)?n:null}peekType(e){if(this.length===0)return null;const n=this.peek();return n.type===e?n.text:null}pop(){const e=this.peek();return Ms(this,nr)._++,e}toString(){const e=[];for(let n=y(this,nr);n<y(this,to).length;n++){const r=y(this,to)[n];e.push(`${r.type}:${r.text}`)}return`<TokenString ${e.join(" ")}>`}};nr=new WeakMap,to=new WeakMap,v1=new WeakSet,c4=function(e=0,n=0){return new T2(y(this,to).slice(e,n).map(r=>Object.freeze(Object.assign({},r,{match:r.match-e,linkBack:r.linkBack-e,linkNext:r.linkNext-e}))))};let wo=T2;function wu(t){const e=[],n=o=>{const a=s<t.length?JSON.stringify(t[s]):"$EOI";throw new Error(`invalid token ${a} at ${s}: ${o}`)};let r=[],i=[],s=0;for(;s<t.length;){let o=t.substring(s),a=o.match(z1e);a&&(s+=a[1].length,o=t.substring(s));const c={depth:r.length,linkBack:-1,linkNext:-1,match:-1,type:"",text:"",offset:s,value:-1};e.push(c);let l=H1e[o[0]]||"";if(l){if(c.type=l,c.text=o[0],s++,l==="OPEN_PAREN")r.push(e.length-1),i.push(e.length-1);else if(l=="CLOSE_PAREN")r.length===0&&n("no matching open bracket"),c.match=r.pop(),e[c.match].match=e.length-1,c.depth--,c.linkBack=i.pop(),e[c.linkBack].linkNext=e.length-1;else if(l==="COMMA")c.linkBack=i.pop(),e[c.linkBack].linkNext=e.length-1,i.push(e.length-1);else if(l==="OPEN_BRACKET")c.type="BRACKET";else if(l==="CLOSE_BRACKET"){let u=e.pop().text;if(e.length>0&&e[e.length-1].type==="NUMBER"){const d=e.pop().text;u=d+u,e[e.length-1].value=Je(d)}if(e.length===0||e[e.length-1].type!=="BRACKET")throw new Error("missing opening bracket");e[e.length-1].text+=u}continue}if(a=o.match(q1e),a){if(c.text=a[1],s+=c.text.length,j1e.has(c.text)){c.type="KEYWORD";continue}if(c.text.match(dB)){c.type="TYPE";continue}c.type="ID";continue}if(a=o.match(V1e),a){c.text=a[1],c.type="NUMBER",s+=c.text.length;continue}throw new Error(`unexpected token ${JSON.stringify(o[0])} at position ${s}`)}return new wo(e.map(o=>Object.freeze(o)))}function gS(t,e){let n=[];for(const r in e.keys())t.has(r)&&n.push(r);if(n.length>1)throw new Error(`conflicting types: ${n.join(", ")}`)}function z3(t,e){if(e.peekKeyword(cB)){const n=e.pop().text;if(n!==t)throw new Error(`expected ${t}, got ${n}`)}return e.popType("ID")}function Pc(t,e){const n=new Set;for(;;){const r=t.peekType("KEYWORD");if(r==null||e&&!e.has(r))break;if(t.pop(),n.has(r))throw new Error(`duplicate keywords: ${JSON.stringify(r)}`);n.add(r)}return Object.freeze(n)}function hB(t){let e=Pc(t,L1e);return gS(e,jr("constant payable nonpayable".split(" "))),gS(e,jr("pure view payable nonpayable".split(" "))),e.has("view")?"view":e.has("pure")?"pure":e.has("payable")?"payable":e.has("nonpayable")?"nonpayable":e.has("constant")?"view":"nonpayable"}function wc(t,e){return t.popParams().map(n=>cr.from(n,e))}function fB(t){if(t.peekType("AT")){if(t.pop(),t.peekType("NUMBER"))return Re(t.pop().text);throw new Error("invalid gas")}return null}function mh(t){if(t.length)throw new Error(`unexpected tokens at offset ${t.offset}: ${t.toString()}`)}const G1e=new RegExp(/^(.*)\[([0-9]*)\]$/);function mS(t){const e=t.match(dB);if(M(e,"invalid type","type",t),t==="uint")return"uint256";if(t==="int")return"int256";if(e[2]){const n=parseInt(e[2]);M(n!==0&&n<=32,"invalid bytes length","type",t)}else if(e[3]){const n=parseInt(e[3]);M(n!==0&&n<=256&&n%8===0,"invalid numeric width","type",t)}return t}const an={},Ei=Symbol.for("_ethers_internal"),wS="_ParamTypeInternal",yS="_ErrorInternal",bS="_EventInternal",xS="_ConstructorInternal",ES="_FallbackInternal",vS="_FunctionInternal",CS="_StructInternal";var bp,Qy;const ws=class ws{constructor(e,n,r,i,s,o,a,c){K(this,bp);G(this,"name");G(this,"type");G(this,"baseType");G(this,"indexed");G(this,"components");G(this,"arrayLength");G(this,"arrayChildren");if(gu(e,an,"ParamType"),Object.defineProperty(this,Ei,{value:wS}),o&&(o=Object.freeze(o.slice())),i==="array"){if(a==null||c==null)throw new Error("")}else if(a!=null||c!=null)throw new Error("");if(i==="tuple"){if(o==null)throw new Error("")}else if(o!=null)throw new Error("");Me(this,{name:n,type:r,baseType:i,indexed:s,components:o,arrayLength:a,arrayChildren:c})}format(e){if(e==null&&(e="sighash"),e==="json"){const r=this.name||"";if(this.isArray()){const s=JSON.parse(this.arrayChildren.format("json"));return s.name=r,s.type+=`[${this.arrayLength<0?"":String(this.arrayLength)}]`,JSON.stringify(s)}const i={type:this.baseType==="tuple"?"tuple":this.type,name:r};return typeof this.indexed=="boolean"&&(i.indexed=this.indexed),this.isTuple()&&(i.components=this.components.map(s=>JSON.parse(s.format(e)))),JSON.stringify(i)}let n="";return this.isArray()?(n+=this.arrayChildren.format(e),n+=`[${this.arrayLength<0?"":String(this.arrayLength)}]`):this.isTuple()?n+="("+this.components.map(r=>r.format(e)).join(e==="full"?", ":",")+")":n+=this.type,e!=="sighash"&&(this.indexed===!0&&(n+=" indexed"),e==="full"&&this.name&&(n+=" "+this.name)),n}isArray(){return this.baseType==="array"}isTuple(){return this.baseType==="tuple"}isIndexable(){return this.indexed!=null}walk(e,n){if(this.isArray()){if(!Array.isArray(e))throw new Error("invalid array value");if(this.arrayLength!==-1&&e.length!==this.arrayLength)throw new Error("array is wrong length");const r=this;return e.map(i=>r.arrayChildren.walk(i,n))}if(this.isTuple()){if(!Array.isArray(e))throw new Error("invalid tuple value");if(e.length!==this.components.length)throw new Error("array is wrong length");const r=this;return e.map((i,s)=>r.components[s].walk(i,n))}return n(this.type,e)}async walkAsync(e,n){const r=[],i=[e];return X(this,bp,Qy).call(this,r,e,n,s=>{i[0]=s}),r.length&&await Promise.all(r),i[0]}static from(e,n){if(ws.isParamType(e))return e;if(typeof e=="string")try{return ws.from(wu(e),n)}catch{M(!1,"invalid param type","obj",e)}else if(e instanceof wo){let a="",c="",l=null;Pc(e,jr(["tuple"])).has("tuple")||e.peekType("OPEN_PAREN")?(c="tuple",l=e.popParams().map(p=>ws.from(p)),a=`tuple(${l.map(p=>p.format()).join(",")})`):(a=mS(e.popType("TYPE")),c=a);let u=null,d=null;for(;e.length&&e.peekType("BRACKET");){const p=e.pop();u=new ws(an,"",a,c,null,l,d,u),d=p.value,a+=p.text,c="array",l=null}let h=null;if(Pc(e,M1e).has("indexed")){if(!n)throw new Error("");h=!0}const g=e.peekType("ID")?e.pop().text:"";if(e.length)throw new Error("leftover tokens");return new ws(an,g,a,c,h,l,d,u)}const r=e.name;M(!r||typeof r=="string"&&r.match(uB),"invalid name","obj.name",r);let i=e.indexed;i!=null&&(M(n,"parameter cannot be indexed","obj.indexed",e.indexed),i=!!i);let s=e.type,o=s.match(G1e);if(o){const a=parseInt(o[2]||"-1"),c=ws.from({type:o[1],components:e.components});return new ws(an,r||"",s,"array",i,null,a,c)}if(s==="tuple"||s.startsWith("tuple(")||s.startsWith("(")){const a=e.components!=null?e.components.map(l=>ws.from(l)):null;return new ws(an,r||"",s,"tuple",i,a,null,null)}return s=mS(e.type),new ws(an,r||"",s,s,i,null,null,null)}static isParamType(e){return e&&e[Ei]===wS}};bp=new WeakSet,Qy=function(e,n,r,i){if(this.isArray()){if(!Array.isArray(n))throw new Error("invalid array value");if(this.arrayLength!==-1&&n.length!==this.arrayLength)throw new Error("array is wrong length");const o=this.arrayChildren,a=n.slice();a.forEach((c,l)=>{var u;X(u=o,bp,Qy).call(u,e,c,r,d=>{a[l]=d})}),i(a);return}if(this.isTuple()){const o=this.components;let a;if(Array.isArray(n))a=n.slice();else{if(n==null||typeof n!="object")throw new Error("invalid tuple value");a=o.map(c=>{if(!c.name)throw new Error("cannot use object value with unnamed components");if(!(c.name in n))throw new Error(`missing value for component ${c.name}`);return n[c.name]})}if(a.length!==this.components.length)throw new Error("array is wrong length");a.forEach((c,l)=>{var u;X(u=o[l],bp,Qy).call(u,e,c,r,d=>{a[l]=d})}),i(a);return}const s=r(this.type,n);s.then?e.push(async function(){i(await s)}()):i(s)};let cr=ws;class wh{constructor(e,n,r){G(this,"type");G(this,"inputs");gu(e,an,"Fragment"),r=Object.freeze(r.slice()),Me(this,{type:n,inputs:r})}static from(e){if(typeof e=="string"){try{wh.from(JSON.parse(e))}catch{}return wh.from(wu(e))}if(e instanceof wo)switch(e.peekKeyword(cB)){case"constructor":return cc.from(e);case"error":return hi.from(e);case"event":return Yo.from(e);case"fallback":case"receive":return Va.from(e);case"function":return Jo.from(e);case"struct":return Pd.from(e)}else if(typeof e=="object"){switch(e.type){case"constructor":return cc.from(e);case"error":return hi.from(e);case"event":return Yo.from(e);case"fallback":case"receive":return Va.from(e);case"function":return Jo.from(e);case"struct":return Pd.from(e)}ie(!1,`unsupported type: ${e.type}`,"UNSUPPORTED_OPERATION",{operation:"Fragment.from"})}M(!1,"unsupported frgament object","obj",e)}static isConstructor(e){return cc.isFragment(e)}static isError(e){return hi.isFragment(e)}static isEvent(e){return Yo.isFragment(e)}static isFunction(e){return Jo.isFragment(e)}static isStruct(e){return Pd.isFragment(e)}}class V3 extends wh{constructor(n,r,i,s){super(n,r,s);G(this,"name");M(typeof i=="string"&&i.match(uB),"invalid identifier","name",i),s=Object.freeze(s.slice()),Me(this,{name:i})}}function d1(t,e){return"("+e.map(n=>n.format(t)).join(t==="full"?", ":",")+")"}class hi extends V3{constructor(e,n,r){super(e,"error",n,r),Object.defineProperty(this,Ei,{value:yS})}get selector(){return Oc(this.format("sighash")).substring(0,10)}format(e){if(e==null&&(e="sighash"),e==="json")return JSON.stringify({type:"error",name:this.name,inputs:this.inputs.map(r=>JSON.parse(r.format(e)))});const n=[];return e!=="sighash"&&n.push("error"),n.push(this.name+d1(e,this.inputs)),n.join(" ")}static from(e){if(hi.isFragment(e))return e;if(typeof e=="string")return hi.from(wu(e));if(e instanceof wo){const n=z3("error",e),r=wc(e);return mh(e),new hi(an,n,r)}return new hi(an,e.name,e.inputs?e.inputs.map(cr.from):[])}static isFragment(e){return e&&e[Ei]===yS}}class Yo extends V3{constructor(n,r,i,s){super(n,"event",r,i);G(this,"anonymous");Object.defineProperty(this,Ei,{value:bS}),Me(this,{anonymous:s})}get topicHash(){return Oc(this.format("sighash"))}format(n){if(n==null&&(n="sighash"),n==="json")return JSON.stringify({type:"event",anonymous:this.anonymous,name:this.name,inputs:this.inputs.map(i=>JSON.parse(i.format(n)))});const r=[];return n!=="sighash"&&r.push("event"),r.push(this.name+d1(n,this.inputs)),n!=="sighash"&&this.anonymous&&r.push("anonymous"),r.join(" ")}static getTopicHash(n,r){return r=(r||[]).map(s=>cr.from(s)),new Yo(an,n,r,!1).topicHash}static from(n){if(Yo.isFragment(n))return n;if(typeof n=="string")try{return Yo.from(wu(n))}catch{M(!1,"invalid event fragment","obj",n)}else if(n instanceof wo){const r=z3("event",n),i=wc(n,!0),s=!!Pc(n,jr(["anonymous"])).has("anonymous");return mh(n),new Yo(an,r,i,s)}return new Yo(an,n.name,n.inputs?n.inputs.map(r=>cr.from(r,!0)):[],!!n.anonymous)}static isFragment(n){return n&&n[Ei]===bS}}class cc extends wh{constructor(n,r,i,s,o){super(n,r,i);G(this,"payable");G(this,"gas");Object.defineProperty(this,Ei,{value:xS}),Me(this,{payable:s,gas:o})}format(n){if(ie(n!=null&&n!=="sighash","cannot format a constructor for sighash","UNSUPPORTED_OPERATION",{operation:"format(sighash)"}),n==="json")return JSON.stringify({type:"constructor",stateMutability:this.payable?"payable":"undefined",payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(i=>JSON.parse(i.format(n)))});const r=[`constructor${d1(n,this.inputs)}`];return this.payable&&r.push("payable"),this.gas!=null&&r.push(`@${this.gas.toString()}`),r.join(" ")}static from(n){if(cc.isFragment(n))return n;if(typeof n=="string")try{return cc.from(wu(n))}catch{M(!1,"invalid constuctor fragment","obj",n)}else if(n instanceof wo){Pc(n,jr(["constructor"]));const r=wc(n),i=!!Pc(n,U1e).has("payable"),s=fB(n);return mh(n),new cc(an,"constructor",r,i,s)}return new cc(an,"constructor",n.inputs?n.inputs.map(cr.from):[],!!n.payable,n.gas!=null?n.gas:null)}static isFragment(n){return n&&n[Ei]===xS}}class Va extends wh{constructor(n,r,i){super(n,"fallback",r);G(this,"payable");Object.defineProperty(this,Ei,{value:ES}),Me(this,{payable:i})}format(n){const r=this.inputs.length===0?"receive":"fallback";if(n==="json"){const i=this.payable?"payable":"nonpayable";return JSON.stringify({type:r,stateMutability:i})}return`${r}()${this.payable?" payable":""}`}static from(n){if(Va.isFragment(n))return n;if(typeof n=="string")try{return Va.from(wu(n))}catch{M(!1,"invalid fallback fragment","obj",n)}else if(n instanceof wo){const r=n.toString(),i=n.peekKeyword(jr(["fallback","receive"]));if(M(i,"type must be fallback or receive","obj",r),n.popKeyword(jr(["fallback","receive"]))==="receive"){const c=wc(n);return M(c.length===0,"receive cannot have arguments","obj.inputs",c),Pc(n,jr(["payable"])),mh(n),new Va(an,[],!0)}let o=wc(n);o.length?M(o.length===1&&o[0].type==="bytes","invalid fallback inputs","obj.inputs",o.map(c=>c.format("minimal")).join(", ")):o=[cr.from("bytes")];const a=hB(n);if(M(a==="nonpayable"||a==="payable","fallback cannot be constants","obj.stateMutability",a),Pc(n,jr(["returns"])).has("returns")){const c=wc(n);M(c.length===1&&c[0].type==="bytes","invalid fallback outputs","obj.outputs",c.map(l=>l.format("minimal")).join(", "))}return mh(n),new Va(an,o,a==="payable")}if(n.type==="receive")return new Va(an,[],!0);if(n.type==="fallback"){const r=[cr.from("bytes")],i=n.stateMutability==="payable";return new Va(an,r,i)}M(!1,"invalid fallback description","obj",n)}static isFragment(n){return n&&n[Ei]===ES}}class Jo extends V3{constructor(n,r,i,s,o,a){super(n,"function",r,s);G(this,"constant");G(this,"outputs");G(this,"stateMutability");G(this,"payable");G(this,"gas");Object.defineProperty(this,Ei,{value:vS}),o=Object.freeze(o.slice()),Me(this,{constant:i==="view"||i==="pure",gas:a,outputs:o,payable:i==="payable",stateMutability:i})}get selector(){return Oc(this.format("sighash")).substring(0,10)}format(n){if(n==null&&(n="sighash"),n==="json")return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:void 0,payable:this.payable,gas:this.gas!=null?this.gas:void 0,inputs:this.inputs.map(i=>JSON.parse(i.format(n))),outputs:this.outputs.map(i=>JSON.parse(i.format(n)))});const r=[];return n!=="sighash"&&r.push("function"),r.push(this.name+d1(n,this.inputs)),n!=="sighash"&&(this.stateMutability!=="nonpayable"&&r.push(this.stateMutability),this.outputs&&this.outputs.length&&(r.push("returns"),r.push(d1(n,this.outputs))),this.gas!=null&&r.push(`@${this.gas.toString()}`)),r.join(" ")}static getSelector(n,r){return r=(r||[]).map(s=>cr.from(s)),new Jo(an,n,"view",r,[],null).selector}static from(n){if(Jo.isFragment(n))return n;if(typeof n=="string")try{return Jo.from(wu(n))}catch{M(!1,"invalid function fragment","obj",n)}else if(n instanceof wo){const i=z3("function",n),s=wc(n),o=hB(n);let a=[];Pc(n,jr(["returns"])).has("returns")&&(a=wc(n));const c=fB(n);return mh(n),new Jo(an,i,o,s,a,c)}let r=n.stateMutability;return r==null&&(r="payable",typeof n.constant=="boolean"?(r="view",n.constant||(r="payable",typeof n.payable=="boolean"&&!n.payable&&(r="nonpayable"))):typeof n.payable=="boolean"&&!n.payable&&(r="nonpayable")),new Jo(an,n.name,r,n.inputs?n.inputs.map(cr.from):[],n.outputs?n.outputs.map(cr.from):[],n.gas!=null?n.gas:null)}static isFragment(n){return n&&n[Ei]===vS}}class Pd extends V3{constructor(e,n,r){super(e,"struct",n,r),Object.defineProperty(this,Ei,{value:CS})}format(){throw new Error("@TODO")}static from(e){if(typeof e=="string")try{return Pd.from(wu(e))}catch{M(!1,"invalid struct fragment","obj",e)}else if(e instanceof wo){const n=z3("struct",e),r=wc(e);return mh(e),new Pd(an,n,r)}return new Pd(an,e.name,e.inputs?e.inputs.map(cr.from):[])}static isFragment(e){return e&&e[Ei]===CS}}const Co=new Map;Co.set(0,"GENERIC_PANIC");Co.set(1,"ASSERT_FALSE");Co.set(17,"OVERFLOW");Co.set(18,"DIVIDE_BY_ZERO");Co.set(33,"ENUM_RANGE_ERROR");Co.set(34,"BAD_STORAGE_DATA");Co.set(49,"STACK_UNDERFLOW");Co.set(50,"ARRAY_RANGE_ERROR");Co.set(65,"OUT_OF_MEMORY");Co.set(81,"UNINITIALIZED_FUNCTION_CALL");const K1e=new RegExp(/^bytes([0-9]*)$/),Z1e=new RegExp(/^(u?int)([0-9]*)$/);let zE=null,AS=1024;function Y1e(t,e,n,r){let i="missing revert data",s=null;const o=null;let a=null;if(n){i="execution reverted";const l=Ae(n);if(n=de(n),l.length===0)i+=" (no data present; likely require(false) occurred",s="require(false)";else if(l.length%32!==4)i+=" (could not decode reason; invalid data length)";else if(de(l.slice(0,4))==="0x08c379a0")try{s=r.decode(["string"],l.slice(4))[0],a={signature:"Error(string)",name:"Error",args:[s]},i+=`: ${JSON.stringify(s)}`}catch{i+=" (could not decode reason; invalid string data)"}else if(de(l.slice(0,4))==="0x4e487b71")try{const u=Number(r.decode(["uint256"],l.slice(4))[0]);a={signature:"Panic(uint256)",name:"Panic",args:[u]},s=`Panic due to ${Co.get(u)||"UNKNOWN"}(${u})`,i+=`: ${s}`}catch{i+=" (could not decode panic code)"}else i+=" (unknown custom error)"}const c={to:e.to?ft(e.to):null,data:e.data||"0x"};return e.from&&(c.from=ft(e.from)),en(i,"CALL_EXCEPTION",{action:t,data:n,reason:s,transaction:c,invocation:o,revert:a})}var xl,hf;const N2=class N2{constructor(){K(this,xl)}getDefaultValue(e){const n=e.map(i=>X(this,xl,hf).call(this,cr.from(i)));return new Ty(n,"_").defaultValue()}encode(e,n){g$(n.length,e.length,"types/values length mismatch");const r=e.map(o=>X(this,xl,hf).call(this,cr.from(o))),i=new Ty(r,"_"),s=new G5;return i.encode(s,n),s.data}decode(e,n,r){const i=e.map(o=>X(this,xl,hf).call(this,cr.from(o)));return new Ty(i,"_").decode(new K5(n,r,AS))}static _setDefaultMaxInflation(e){M(typeof e=="number"&&Number.isInteger(e),"invalid defaultMaxInflation factor","value",e),AS=e}static defaultAbiCoder(){return zE==null&&(zE=new N2),zE}static getBuiltinCallException(e,n,r){return Y1e(e,n,r,N2.defaultAbiCoder())}};xl=new WeakSet,hf=function(e){if(e.isArray())return new hme(X(this,xl,hf).call(this,e.arrayChildren),e.arrayLength,e.name);if(e.isTuple())return new Ty(e.components.map(r=>X(this,xl,hf).call(this,r)),e.name);switch(e.baseType){case"address":return new ume(e.name);case"bool":return new fme(e.name);case"string":return new vme(e.name);case"bytes":return new pme(e.name);case"":return new wme(e.name)}let n=e.type.match(Z1e);if(n){let r=parseInt(n[2]||"256");return M(r!==0&&r<=256&&r%8===0,"invalid "+n[1]+" bit length","param",e),new Eme(r/8,n[1]==="int",e.name)}if(n=e.type.match(K1e),n){let r=parseInt(n[1]);return M(r!==0&&r<=32,"invalid bytes length","param",e),new gme(r,e.name)}M(!1,"invalid type","type",e.type)};let h1=N2;class J1e{constructor(e,n,r){G(this,"fragment");G(this,"name");G(this,"signature");G(this,"topic");G(this,"args");const i=e.name,s=e.format();Me(this,{fragment:e,name:i,signature:s,topic:n,args:r})}}class Q1e{constructor(e,n,r,i){G(this,"fragment");G(this,"name");G(this,"args");G(this,"signature");G(this,"selector");G(this,"value");const s=e.name,o=e.format();Me(this,{fragment:e,name:s,args:r,signature:o,selector:n,value:i})}}class X1e{constructor(e,n,r){G(this,"fragment");G(this,"name");G(this,"args");G(this,"signature");G(this,"selector");const i=e.name,s=e.format();Me(this,{fragment:e,name:i,args:r,signature:s,selector:n})}}class _S{constructor(e){G(this,"hash");G(this,"_isIndexed");Me(this,{hash:e,_isIndexed:!0})}static isIndexed(e){return!!(e&&e._isIndexed)}}const SS={0:"generic panic",1:"assert(false)",17:"arithmetic overflow",18:"division or modulo by zero",33:"enum overflow",34:"invalid encoded storage byte array accessed",49:"out-of-bounds array access; popping on an empty array",50:"out-of-bounds access of an array or bytesN",65:"out of memory",81:"uninitialized function"},IS={"0x08c379a0":{signature:"Error(string)",name:"Error",inputs:["string"],reason:t=>`reverted with reason string ${JSON.stringify(t)}`},"0x4e487b71":{signature:"Panic(uint256)",name:"Panic",inputs:["uint256"],reason:t=>{let e="unknown panic code";return t>=0&&t<=255&&SS[t.toString()]&&(e=SS[t.toString()]),`reverted with panic code 0x${t.toString(16)} (${e})`}}};var Fo,Wo,jo,Er,ca,Xy,eb;const zu=class zu{constructor(e){K(this,ca);G(this,"fragments");G(this,"deploy");G(this,"fallback");G(this,"receive");K(this,Fo);K(this,Wo);K(this,jo);K(this,Er);let n=[];typeof e=="string"?n=JSON.parse(e):n=e,k(this,jo,new Map),k(this,Fo,new Map),k(this,Wo,new Map);const r=[];for(const o of n)try{r.push(wh.from(o))}catch(a){console.log(`[Warning] Invalid Fragment ${JSON.stringify(o)}:`,a.message)}Me(this,{fragments:Object.freeze(r)});let i=null,s=!1;k(this,Er,this.getAbiCoder()),this.fragments.forEach((o,a)=>{let c;switch(o.type){case"constructor":if(this.deploy){console.log("duplicate definition - constructor");return}Me(this,{deploy:o});return;case"fallback":o.inputs.length===0?s=!0:(M(!i||o.payable!==i.payable,"conflicting fallback fragments",`fragments[${a}]`,o),i=o,s=i.payable);return;case"function":c=y(this,jo);break;case"event":c=y(this,Wo);break;case"error":c=y(this,Fo);break;default:return}const l=o.format();c.has(l)||c.set(l,o)}),this.deploy||Me(this,{deploy:cc.from("constructor()")}),Me(this,{fallback:i,receive:s})}format(e){const n=e?"minimal":"full";return this.fragments.map(i=>i.format(n))}formatJson(){const e=this.fragments.map(n=>n.format("json"));return JSON.stringify(e.map(n=>JSON.parse(n)))}getAbiCoder(){return h1.defaultAbiCoder()}getFunctionName(e){const n=X(this,ca,Xy).call(this,e,null,!1);return M(n,"no matching function","key",e),n.name}hasFunction(e){return!!X(this,ca,Xy).call(this,e,null,!1)}getFunction(e,n){return X(this,ca,Xy).call(this,e,n||null,!0)}forEachFunction(e){const n=Array.from(y(this,jo).keys());n.sort((r,i)=>r.localeCompare(i));for(let r=0;r<n.length;r++){const i=n[r];e(y(this,jo).get(i),r)}}getEventName(e){const n=X(this,ca,eb).call(this,e,null,!1);return M(n,"no matching event","key",e),n.name}hasEvent(e){return!!X(this,ca,eb).call(this,e,null,!1)}getEvent(e,n){return X(this,ca,eb).call(this,e,n||null,!0)}forEachEvent(e){const n=Array.from(y(this,Wo).keys());n.sort((r,i)=>r.localeCompare(i));for(let r=0;r<n.length;r++){const i=n[r];e(y(this,Wo).get(i),r)}}getError(e,n){if(Vt(e)){const i=e.toLowerCase();if(IS[i])return hi.from(IS[i].signature);for(const s of y(this,Fo).values())if(i===s.selector)return s;return null}if(e.indexOf("(")===-1){const i=[];for(const[s,o]of y(this,Fo))s.split("(")[0]===e&&i.push(o);if(i.length===0)return e==="Error"?hi.from("error Error(string)"):e==="Panic"?hi.from("error Panic(uint256)"):null;if(i.length>1){const s=i.map(o=>JSON.stringify(o.format())).join(", ");M(!1,`ambiguous error description (i.e. ${s})`,"name",e)}return i[0]}if(e=hi.from(e).format(),e==="Error(string)")return hi.from("error Error(string)");if(e==="Panic(uint256)")return hi.from("error Panic(uint256)");const r=y(this,Fo).get(e);return r||null}forEachError(e){const n=Array.from(y(this,Fo).keys());n.sort((r,i)=>r.localeCompare(i));for(let r=0;r<n.length;r++){const i=n[r];e(y(this,Fo).get(i),r)}}_decodeParams(e,n){return y(this,Er).decode(e,n)}_encodeParams(e,n){return y(this,Er).encode(e,n)}encodeDeploy(e){return this._encodeParams(this.deploy.inputs,e||[])}decodeErrorResult(e,n){if(typeof e=="string"){const r=this.getError(e);M(r,"unknown error","fragment",e),e=r}return M(Yt(n,0,4)===e.selector,`data signature does not match error ${e.name}.`,"data",n),this._decodeParams(e.inputs,Yt(n,4))}encodeErrorResult(e,n){if(typeof e=="string"){const r=this.getError(e);M(r,"unknown error","fragment",e),e=r}return Rt([e.selector,this._encodeParams(e.inputs,n||[])])}decodeFunctionData(e,n){if(typeof e=="string"){const r=this.getFunction(e);M(r,"unknown function","fragment",e),e=r}return M(Yt(n,0,4)===e.selector,`data signature does not match function ${e.name}.`,"data",n),this._decodeParams(e.inputs,Yt(n,4))}encodeFunctionData(e,n){if(typeof e=="string"){const r=this.getFunction(e);M(r,"unknown function","fragment",e),e=r}return Rt([e.selector,this._encodeParams(e.inputs,n||[])])}decodeFunctionResult(e,n){if(typeof e=="string"){const s=this.getFunction(e);M(s,"unknown function","fragment",e),e=s}let r="invalid length for result data";const i=ar(n);if(i.length%32===0)try{return y(this,Er).decode(e.outputs,i)}catch{r="could not decode result data"}ie(!1,r,"BAD_DATA",{value:de(i),info:{method:e.name,signature:e.format()}})}makeError(e,n){const r=Ae(e,"data"),i=h1.getBuiltinCallException("call",n,r);if(i.message.startsWith("execution reverted (unknown custom error)")){const a=de(r.slice(0,4)),c=this.getError(a);if(c)try{const l=y(this,Er).decode(c.inputs,r.slice(4));i.revert={name:c.name,signature:c.format(),args:l},i.reason=i.revert.signature,i.message=`execution reverted: ${i.reason}`}catch{i.message="execution reverted (coult not decode custom error)"}}const o=this.parseTransaction(n);return o&&(i.invocation={method:o.name,signature:o.signature,args:o.args}),i}encodeFunctionResult(e,n){if(typeof e=="string"){const r=this.getFunction(e);M(r,"unknown function","fragment",e),e=r}return de(y(this,Er).encode(e.outputs,n||[]))}encodeFilterTopics(e,n){if(typeof e=="string"){const s=this.getEvent(e);M(s,"unknown event","eventFragment",e),e=s}ie(n.length<=e.inputs.length,`too many arguments for ${e.format()}`,"UNEXPECTED_ARGUMENT",{count:n.length,expectedCount:e.inputs.length});const r=[];e.anonymous||r.push(e.topicHash);const i=(s,o)=>s.type==="string"?Oc(o):s.type==="bytes"?nn(de(o)):(s.type==="bool"&&typeof o=="boolean"?o=o?"0x01":"0x00":s.type.match(/^u?int/)?o=Nc(o):s.type.match(/^bytes/)?o=Gpe(o,32):s.type==="address"&&y(this,Er).encode(["address"],[o]),Tc(de(o),32));for(n.forEach((s,o)=>{const a=e.inputs[o];if(!a.indexed){M(s==null,"cannot filter non-indexed parameters; must be null","contract."+a.name,s);return}s==null?r.push(null):a.baseType==="array"||a.baseType==="tuple"?M(!1,"filtering with tuples or arrays not supported","contract."+a.name,s):Array.isArray(s)?r.push(s.map(c=>i(a,c))):r.push(i(a,s))});r.length&&r[r.length-1]===null;)r.pop();return r}encodeEventLog(e,n){if(typeof e=="string"){const o=this.getEvent(e);M(o,"unknown event","eventFragment",e),e=o}const r=[],i=[],s=[];return e.anonymous||r.push(e.topicHash),M(n.length===e.inputs.length,"event arguments/values mismatch","values",n),e.inputs.forEach((o,a)=>{const c=n[a];if(o.indexed)if(o.type==="string")r.push(Oc(c));else if(o.type==="bytes")r.push(nn(c));else{if(o.baseType==="tuple"||o.baseType==="array")throw new Error("not implemented");r.push(y(this,Er).encode([o.type],[c]))}else i.push(o),s.push(c)}),{data:y(this,Er).encode(i,s),topics:r}}decodeEventLog(e,n,r){if(typeof e=="string"){const f=this.getEvent(e);M(f,"unknown event","eventFragment",e),e=f}if(r!=null&&!e.anonymous){const f=e.topicHash;M(Vt(r[0],32)&&r[0].toLowerCase()===f,"fragment/topic mismatch","topics[0]",r[0]),r=r.slice(1)}const i=[],s=[],o=[];e.inputs.forEach((f,g)=>{f.indexed?f.type==="string"||f.type==="bytes"||f.baseType==="tuple"||f.baseType==="array"?(i.push(cr.from({type:"bytes32",name:f.name})),o.push(!0)):(i.push(f),o.push(!1)):(s.push(f),o.push(!1))});const a=r!=null?y(this,Er).decode(i,Rt(r)):null,c=y(this,Er).decode(s,n,!0),l=[],u=[];let d=0,h=0;return e.inputs.forEach((f,g)=>{let p=null;if(f.indexed)if(a==null)p=new _S(null);else if(o[g])p=new _S(a[h++]);else try{p=a[h++]}catch(m){p=m}else try{p=c[d++]}catch(m){p=m}l.push(p),u.push(f.name||null)}),O0.fromItems(l,u)}parseTransaction(e){const n=Ae(e.data,"tx.data"),r=Re(e.value!=null?e.value:0,"tx.value"),i=this.getFunction(de(n.slice(0,4)));if(!i)return null;const s=y(this,Er).decode(i.inputs,n.slice(4));return new Q1e(i,i.selector,s,r)}parseCallResult(e){throw new Error("@TODO")}parseLog(e){const n=this.getEvent(e.topics[0]);return!n||n.anonymous?null:new J1e(n,n.topicHash,this.decodeEventLog(n,e.data,e.topics))}parseError(e){const n=de(e),r=this.getError(Yt(n,0,4));if(!r)return null;const i=y(this,Er).decode(r.inputs,Yt(n,4));return new X1e(r,r.selector,i)}static from(e){return e instanceof zu?e:typeof e=="string"?new zu(JSON.parse(e)):typeof e.formatJson=="function"?new zu(e.formatJson()):typeof e.format=="function"?new zu(e.format("json")):new zu(e)}};Fo=new WeakMap,Wo=new WeakMap,jo=new WeakMap,Er=new WeakMap,ca=new WeakSet,Xy=function(e,n,r){if(Vt(e)){const s=e.toLowerCase();for(const o of y(this,jo).values())if(s===o.selector)return o;return null}if(e.indexOf("(")===-1){const s=[];for(const[o,a]of y(this,jo))o.split("(")[0]===e&&s.push(a);if(n){const o=n.length>0?n[n.length-1]:null;let a=n.length,c=!0;Ir.isTyped(o)&&o.type==="overrides"&&(c=!1,a--);for(let l=s.length-1;l>=0;l--){const u=s[l].inputs.length;u!==a&&(!c||u!==a-1)&&s.splice(l,1)}for(let l=s.length-1;l>=0;l--){const u=s[l].inputs;for(let d=0;d<n.length;d++)if(Ir.isTyped(n[d])){if(d>=u.length){if(n[d].type==="overrides")continue;s.splice(l,1);break}if(n[d].type!==u[d].baseType){s.splice(l,1);break}}}}if(s.length===1&&n&&n.length!==s[0].inputs.length){const o=n[n.length-1];(o==null||Array.isArray(o)||typeof o!="object")&&s.splice(0,1)}if(s.length===0)return null;if(s.length>1&&r){const o=s.map(a=>JSON.stringify(a.format())).join(", ");M(!1,`ambiguous function description (i.e. matches ${o})`,"key",e)}return s[0]}const i=y(this,jo).get(Jo.from(e).format());return i||null},eb=function(e,n,r){if(Vt(e)){const s=e.toLowerCase();for(const o of y(this,Wo).values())if(s===o.topicHash)return o;return null}if(e.indexOf("(")===-1){const s=[];for(const[o,a]of y(this,Wo))o.split("(")[0]===e&&s.push(a);if(n){for(let o=s.length-1;o>=0;o--)s[o].inputs.length<n.length&&s.splice(o,1);for(let o=s.length-1;o>=0;o--){const a=s[o].inputs;for(let c=0;c<n.length;c++)if(Ir.isTyped(n[c])&&n[c].type!==a[c].baseType){s.splice(o,1);break}}}if(s.length===0)return null;if(s.length>1&&r){const o=s.map(a=>JSON.stringify(a.format())).join(", ");M(!1,`ambiguous event description (i.e. matches ${o})`,"key",e)}return s[0]}const i=y(this,Wo).get(Yo.from(e).format());return i||null};let l4=zu;const pB=BigInt(0);function zf(t){return t??null}function mn(t){return t==null?null:t.toString()}class TS{constructor(e,n,r){G(this,"gasPrice");G(this,"maxFeePerGas");G(this,"maxPriorityFeePerGas");Me(this,{gasPrice:zf(e),maxFeePerGas:zf(n),maxPriorityFeePerGas:zf(r)})}toJSON(){const{gasPrice:e,maxFeePerGas:n,maxPriorityFeePerGas:r}=this;return{_type:"FeeData",gasPrice:mn(e),maxFeePerGas:mn(n),maxPriorityFeePerGas:mn(r)}}}function f1(t){const e={};t.to&&(e.to=t.to),t.from&&(e.from=t.from),t.data&&(e.data=de(t.data));const n="chainId,gasLimit,gasPrice,maxFeePerBlobGas,maxFeePerGas,maxPriorityFeePerGas,value".split(/,/);for(const i of n)!(i in t)||t[i]==null||(e[i]=Re(t[i],`request.${i}`));const r="type,nonce".split(/,/);for(const i of r)!(i in t)||t[i]==null||(e[i]=Je(t[i],`request.${i}`));return t.accessList&&(e.accessList=Fh(t.accessList)),t.authorizationList&&(e.authorizationList=t.authorizationList.slice()),"blockTag"in t&&(e.blockTag=t.blockTag),"enableCcipRead"in t&&(e.enableCcipRead=!!t.enableCcipRead),"customData"in t&&(e.customData=t.customData),"blobVersionedHashes"in t&&t.blobVersionedHashes&&(e.blobVersionedHashes=t.blobVersionedHashes.slice()),"kzg"in t&&(e.kzg=t.kzg),"blobWrapperVersion"in t&&(e.blobWrapperVersion=t.blobWrapperVersion),"blobs"in t&&t.blobs&&(e.blobs=t.blobs.map(i=>$3(i)?de(i):Object.assign({},i))),e}var Ja;class ewe{constructor(e,n){G(this,"provider");G(this,"number");G(this,"hash");G(this,"timestamp");G(this,"parentHash");G(this,"parentBeaconBlockRoot");G(this,"nonce");G(this,"difficulty");G(this,"gasLimit");G(this,"gasUsed");G(this,"stateRoot");G(this,"receiptsRoot");G(this,"blobGasUsed");G(this,"excessBlobGas");G(this,"miner");G(this,"prevRandao");G(this,"extraData");G(this,"baseFeePerGas");K(this,Ja);k(this,Ja,e.transactions.map(r=>typeof r!="string"?new p1(r,n):r)),Me(this,{provider:n,hash:zf(e.hash),number:e.number,timestamp:e.timestamp,parentHash:e.parentHash,parentBeaconBlockRoot:e.parentBeaconBlockRoot,nonce:e.nonce,difficulty:e.difficulty,gasLimit:e.gasLimit,gasUsed:e.gasUsed,blobGasUsed:e.blobGasUsed,excessBlobGas:e.excessBlobGas,miner:e.miner,prevRandao:zf(e.prevRandao),extraData:e.extraData,baseFeePerGas:zf(e.baseFeePerGas),stateRoot:e.stateRoot,receiptsRoot:e.receiptsRoot})}get transactions(){return y(this,Ja).map(e=>typeof e=="string"?e:e.hash)}get prefetchedTransactions(){const e=y(this,Ja).slice();return e.length===0?[]:(ie(typeof e[0]=="object","transactions were not prefetched with block request","UNSUPPORTED_OPERATION",{operation:"transactionResponses()"}),e)}toJSON(){const{baseFeePerGas:e,difficulty:n,extraData:r,gasLimit:i,gasUsed:s,hash:o,miner:a,prevRandao:c,nonce:l,number:u,parentHash:d,parentBeaconBlockRoot:h,stateRoot:f,receiptsRoot:g,timestamp:p,transactions:m}=this;return{_type:"Block",baseFeePerGas:mn(e),difficulty:mn(n),extraData:r,gasLimit:mn(i),gasUsed:mn(s),blobGasUsed:mn(this.blobGasUsed),excessBlobGas:mn(this.excessBlobGas),hash:o,miner:a,prevRandao:c,nonce:l,number:u,parentHash:d,timestamp:p,parentBeaconBlockRoot:h,stateRoot:f,receiptsRoot:g,transactions:m}}[Symbol.iterator](){let e=0;const n=this.transactions;return{next:()=>e<this.length?{value:n[e++],done:!1}:{value:void 0,done:!0}}}get length(){return y(this,Ja).length}get date(){return this.timestamp==null?null:new Date(this.timestamp*1e3)}async getTransaction(e){let n;if(typeof e=="number")n=y(this,Ja)[e];else{const r=e.toLowerCase();for(const i of y(this,Ja))if(typeof i=="string"){if(i!==r)continue;n=i;break}else{if(i.hash!==r)continue;n=i;break}}if(n==null)throw new Error("no such tx");return typeof n=="string"?await this.provider.getTransaction(n):n}getPrefetchedTransaction(e){const n=this.prefetchedTransactions;if(typeof e=="number")return n[e];e=e.toLowerCase();for(const r of n)if(r.hash===e)return r;M(!1,"no matching transaction","indexOrHash",e)}isMined(){return!!this.hash}isLondon(){return!!this.baseFeePerGas}orphanedEvent(){if(!this.isMined())throw new Error("");return twe(this)}}Ja=new WeakMap;class Aw{constructor(e,n){G(this,"provider");G(this,"transactionHash");G(this,"blockHash");G(this,"blockNumber");G(this,"removed");G(this,"address");G(this,"data");G(this,"topics");G(this,"index");G(this,"transactionIndex");this.provider=n;const r=Object.freeze(e.topics.slice());Me(this,{transactionHash:e.transactionHash,blockHash:e.blockHash,blockNumber:e.blockNumber,removed:e.removed,address:e.address,data:e.data,topics:r,index:e.index,transactionIndex:e.transactionIndex})}toJSON(){const{address:e,blockHash:n,blockNumber:r,data:i,index:s,removed:o,topics:a,transactionHash:c,transactionIndex:l}=this;return{_type:"log",address:e,blockHash:n,blockNumber:r,data:i,index:s,removed:o,topics:a,transactionHash:c,transactionIndex:l}}async getBlock(){const e=await this.provider.getBlock(this.blockHash);return ie(!!e,"failed to find transaction","UNKNOWN_ERROR",{}),e}async getTransaction(){const e=await this.provider.getTransaction(this.transactionHash);return ie(!!e,"failed to find transaction","UNKNOWN_ERROR",{}),e}async getTransactionReceipt(){const e=await this.provider.getTransactionReceipt(this.transactionHash);return ie(!!e,"failed to find transaction receipt","UNKNOWN_ERROR",{}),e}removedEvent(){return nwe(this)}}var C1;class gB{constructor(e,n){G(this,"provider");G(this,"to");G(this,"from");G(this,"contractAddress");G(this,"hash");G(this,"index");G(this,"blockHash");G(this,"blockNumber");G(this,"logsBloom");G(this,"gasUsed");G(this,"blobGasUsed");G(this,"cumulativeGasUsed");G(this,"gasPrice");G(this,"blobGasPrice");G(this,"type");G(this,"status");G(this,"root");K(this,C1);k(this,C1,Object.freeze(e.logs.map(i=>new Aw(i,n))));let r=pB;e.effectiveGasPrice!=null?r=e.effectiveGasPrice:e.gasPrice!=null&&(r=e.gasPrice),Me(this,{provider:n,to:e.to,from:e.from,contractAddress:e.contractAddress,hash:e.hash,index:e.index,blockHash:e.blockHash,blockNumber:e.blockNumber,logsBloom:e.logsBloom,gasUsed:e.gasUsed,cumulativeGasUsed:e.cumulativeGasUsed,blobGasUsed:e.blobGasUsed,gasPrice:r,blobGasPrice:e.blobGasPrice,type:e.type,status:e.status,root:e.root})}get logs(){return y(this,C1)}toJSON(){const{to:e,from:n,contractAddress:r,hash:i,index:s,blockHash:o,blockNumber:a,logsBloom:c,logs:l,status:u,root:d}=this;return{_type:"TransactionReceipt",blockHash:o,blockNumber:a,contractAddress:r,cumulativeGasUsed:mn(this.cumulativeGasUsed),from:n,gasPrice:mn(this.gasPrice),blobGasUsed:mn(this.blobGasUsed),blobGasPrice:mn(this.blobGasPrice),gasUsed:mn(this.gasUsed),hash:i,index:s,logs:l,logsBloom:c,root:d,status:u,to:e}}get length(){return this.logs.length}[Symbol.iterator](){let e=0;return{next:()=>e<this.length?{value:this.logs[e++],done:!1}:{value:void 0,done:!0}}}get fee(){return this.gasUsed*this.gasPrice}async getBlock(){const e=await this.provider.getBlock(this.blockHash);if(e==null)throw new Error("TODO");return e}async getTransaction(){const e=await this.provider.getTransaction(this.hash);if(e==null)throw new Error("TODO");return e}async getResult(){return await this.provider.getTransactionResult(this.hash)}async confirmations(){return await this.provider.getBlockNumber()-this.blockNumber+1}removedEvent(){return wB(this)}reorderedEvent(e){return ie(!e||e.isMined(),"unmined 'other' transction cannot be orphaned","UNSUPPORTED_OPERATION",{operation:"reorderedEvent(other)"}),mB(this,e)}}C1=new WeakMap;var El;const sA=class sA{constructor(e,n){G(this,"provider");G(this,"blockNumber");G(this,"blockHash");G(this,"index");G(this,"hash");G(this,"type");G(this,"to");G(this,"from");G(this,"nonce");G(this,"gasLimit");G(this,"gasPrice");G(this,"maxPriorityFeePerGas");G(this,"maxFeePerGas");G(this,"maxFeePerBlobGas");G(this,"data");G(this,"value");G(this,"chainId");G(this,"signature");G(this,"accessList");G(this,"blobVersionedHashes");G(this,"authorizationList");K(this,El);this.provider=n,this.blockNumber=e.blockNumber!=null?e.blockNumber:null,this.blockHash=e.blockHash!=null?e.blockHash:null,this.hash=e.hash,this.index=e.index,this.type=e.type,this.from=e.from,this.to=e.to||null,this.gasLimit=e.gasLimit,this.nonce=e.nonce,this.data=e.data,this.value=e.value,this.gasPrice=e.gasPrice,this.maxPriorityFeePerGas=e.maxPriorityFeePerGas!=null?e.maxPriorityFeePerGas:null,this.maxFeePerGas=e.maxFeePerGas!=null?e.maxFeePerGas:null,this.maxFeePerBlobGas=e.maxFeePerBlobGas!=null?e.maxFeePerBlobGas:null,this.chainId=e.chainId,this.signature=e.signature,this.accessList=e.accessList!=null?e.accessList:null,this.blobVersionedHashes=e.blobVersionedHashes!=null?e.blobVersionedHashes:null,this.authorizationList=e.authorizationList!=null?e.authorizationList:null,k(this,El,-1)}toJSON(){const{blockNumber:e,blockHash:n,index:r,hash:i,type:s,to:o,from:a,nonce:c,data:l,signature:u,accessList:d,blobVersionedHashes:h}=this;return{_type:"TransactionResponse",accessList:d,blockNumber:e,blockHash:n,blobVersionedHashes:h,chainId:mn(this.chainId),data:l,from:a,gasLimit:mn(this.gasLimit),gasPrice:mn(this.gasPrice),hash:i,maxFeePerGas:mn(this.maxFeePerGas),maxPriorityFeePerGas:mn(this.maxPriorityFeePerGas),maxFeePerBlobGas:mn(this.maxFeePerBlobGas),nonce:c,signature:u,to:o,index:r,type:s,value:mn(this.value)}}async getBlock(){let e=this.blockNumber;if(e==null){const r=await this.getTransaction();r&&(e=r.blockNumber)}if(e==null)return null;const n=this.provider.getBlock(e);if(n==null)throw new Error("TODO");return n}async getTransaction(){return this.provider.getTransaction(this.hash)}async confirmations(){if(this.blockNumber==null){const{tx:n,blockNumber:r}=await _r({tx:this.getTransaction(),blockNumber:this.provider.getBlockNumber()});return n==null||n.blockNumber==null?0:r-n.blockNumber+1}return await this.provider.getBlockNumber()-this.blockNumber+1}async wait(e,n){const r=e??1,i=n??0;let s=y(this,El),o=-1,a=s===-1;const c=async()=>{if(a)return null;const{blockNumber:h,nonce:f}=await _r({blockNumber:this.provider.getBlockNumber(),nonce:this.provider.getTransactionCount(this.from)});if(f<this.nonce){s=h;return}if(a)return null;const g=await this.getTransaction();if(!(g&&g.blockNumber!=null))for(o===-1&&(o=s-3,o<y(this,El)&&(o=y(this,El)));o<=h;){if(a)return null;const p=await this.provider.getBlock(o,!0);if(p==null)return;for(const m of p)if(m===this.hash)return;for(let m=0;m<p.length;m++){const b=await p.getTransaction(m);if(b.from===this.from&&b.nonce===this.nonce){if(a)return null;const C=await this.provider.getTransactionReceipt(b.hash);if(C==null||h-C.blockNumber+1<r)return;let x="replaced";b.data===this.data&&b.to===this.to&&b.value===this.value?x="repriced":b.data==="0x"&&b.from===b.to&&b.value===pB&&(x="cancelled"),ie(!1,"transaction was replaced","TRANSACTION_REPLACED",{cancelled:x==="replaced"||x==="cancelled",reason:x,replacement:b.replaceableTransaction(s),hash:b.hash,receipt:C})}}o++}},l=h=>{if(h==null||h.status!==0)return h;ie(!1,"transaction execution reverted","CALL_EXCEPTION",{action:"sendTransaction",data:null,reason:null,invocation:null,revert:null,transaction:{to:h.to,from:h.from,data:""},receipt:h})},u=await this.provider.getTransactionReceipt(this.hash);if(r===0)return l(u);if(u){if(r===1||await u.confirmations()>=r)return l(u)}else if(await c(),r===0)return null;return await new Promise((h,f)=>{const g=[],p=()=>{g.forEach(b=>b())};if(g.push(()=>{a=!0}),i>0){const b=setTimeout(()=>{p(),f(en("wait for transaction timeout","TIMEOUT"))},i);g.push(()=>{clearTimeout(b)})}const m=async b=>{if(await b.confirmations()>=r){p();try{h(l(b))}catch(C){f(C)}}};if(g.push(()=>{this.provider.off(this.hash,m)}),this.provider.on(this.hash,m),s>=0){const b=async()=>{try{await c()}catch(C){if(or(C,"TRANSACTION_REPLACED")){p(),f(C);return}}a||this.provider.once("block",b)};g.push(()=>{this.provider.off("block",b)}),this.provider.once("block",b)}})}isMined(){return this.blockHash!=null}isLegacy(){return this.type===0}isBerlin(){return this.type===1}isLondon(){return this.type===2}isCancun(){return this.type===3}removedEvent(){return ie(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),wB(this)}reorderedEvent(e){return ie(this.isMined(),"unmined transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),ie(!e||e.isMined(),"unmined 'other' transaction canot be orphaned","UNSUPPORTED_OPERATION",{operation:"removeEvent()"}),mB(this,e)}replaceableTransaction(e){M(Number.isInteger(e)&&e>=0,"invalid startBlock","startBlock",e);const n=new sA(this,this.provider);return k(n,El,e),n}};El=new WeakMap;let p1=sA;function twe(t){return{orphan:"drop-block",hash:t.hash,number:t.number}}function mB(t,e){return{orphan:"reorder-transaction",tx:t,other:e}}function wB(t){return{orphan:"drop-transaction",tx:t}}function nwe(t){return{orphan:"drop-log",log:{transactionHash:t.transactionHash,blockHash:t.blockHash,blockNumber:t.blockNumber,address:t.address,data:t.data,topics:Object.freeze(t.topics.slice()),index:t.index}}}class V6 extends Aw{constructor(n,r,i){super(n,n.provider);G(this,"interface");G(this,"fragment");G(this,"args");const s=r.decodeEventLog(i,n.data,n.topics);Me(this,{args:s,fragment:i,interface:r})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}}class yB extends Aw{constructor(n,r){super(n,n.provider);G(this,"error");Me(this,{error:r})}}var xp;class rwe extends gB{constructor(n,r,i){super(i,r);K(this,xp);k(this,xp,n)}get logs(){return super.logs.map(n=>{const r=n.topics.length?y(this,xp).getEvent(n.topics[0]):null;if(r)try{return new V6(n,y(this,xp),r)}catch(i){return new yB(n,i)}return n})}}xp=new WeakMap;var A1;class q6 extends p1{constructor(n,r,i){super(i,r);K(this,A1);k(this,A1,n)}async wait(n,r){const i=await super.wait(n,r);return i==null?null:new rwe(y(this,A1),this.provider,i)}}A1=new WeakMap;class bB extends E${constructor(n,r,i,s){super(n,r,i);G(this,"log");Me(this,{log:s})}async getBlock(){return await this.log.getBlock()}async getTransaction(){return await this.log.getTransaction()}async getTransactionReceipt(){return await this.log.getTransactionReceipt()}}class iwe extends bB{constructor(e,n,r,i,s){super(e,n,r,new V6(s,e.interface,i));const o=e.interface.decodeEventLog(i,this.log.data,this.log.topics);Me(this,{args:o,fragment:i})}get eventName(){return this.fragment.name}get eventSignature(){return this.fragment.format()}}const NS=BigInt(0);function xB(t){return t&&typeof t.call=="function"}function EB(t){return t&&typeof t.estimateGas=="function"}function q3(t){return t&&typeof t.resolveName=="function"}function vB(t){return t&&typeof t.sendTransaction=="function"}function CB(t){if(t!=null){if(q3(t))return t;if(t.provider)return t.provider}}var _1;class swe{constructor(e,n,r){K(this,_1);G(this,"fragment");if(Me(this,{fragment:n}),n.inputs.length<r.length)throw new Error("too many arguments");const i=yh(e.runner,"resolveName"),s=q3(i)?i:null;k(this,_1,async function(){const o=await Promise.all(n.inputs.map((a,c)=>r[c]==null?null:a.walkAsync(r[c],(u,d)=>u==="address"?Array.isArray(d)?Promise.all(d.map(h=>Gn(h,s))):Gn(d,s):d)));return e.interface.encodeFilterTopics(n,o)}())}getTopicFilter(){return y(this,_1)}}_1=new WeakMap;function yh(t,e){return t==null?null:typeof t[e]=="function"?t:t.provider&&typeof t.provider[e]=="function"?t.provider:null}function nd(t){return t==null?null:t.provider||null}async function AB(t,e){const n=Ir.dereference(t,"overrides");M(typeof n=="object","invalid overrides parameter","overrides",t);const r=f1(n);return M(r.to==null||(e||[]).indexOf("to")>=0,"cannot override to","overrides.to",r.to),M(r.data==null||(e||[]).indexOf("data")>=0,"cannot override data","overrides.data",r.data),r.from&&(r.from=r.from),r}async function owe(t,e,n){const r=yh(t,"resolveName"),i=q3(r)?r:null;return await Promise.all(e.map((s,o)=>s.walkAsync(n[o],(a,c)=>(c=Ir.dereference(c,a),a==="address"?Gn(c,i):c))))}function awe(t){const e=async function(o){const a=await AB(o,["data"]);a.to=await t.getAddress(),a.from&&(a.from=await Gn(a.from,CB(t.runner)));const c=t.interface,l=Re(a.value||NS,"overrides.value")===NS,u=(a.data||"0x")==="0x";c.fallback&&!c.fallback.payable&&c.receive&&!u&&!l&&M(!1,"cannot send data to receive or send value to non-payable fallback","overrides",o),M(c.fallback||u,"cannot send data to receive-only contract","overrides.data",a.data);const d=c.receive||c.fallback&&c.fallback.payable;return M(d||l,"cannot send value to non-payable fallback","overrides.value",a.value),M(c.fallback||u,"cannot send data to receive-only contract","overrides.data",a.data),a},n=async function(o){const a=yh(t.runner,"call");ie(xB(a),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});const c=await e(o);try{return await a.call(c)}catch(l){throw T6(l)&&l.data?t.interface.makeError(l.data,c):l}},r=async function(o){const a=t.runner;ie(vB(a),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});const c=await a.sendTransaction(await e(o)),l=nd(t.runner);return new q6(t.interface,l,c)},i=async function(o){const a=yh(t.runner,"estimateGas");return ie(EB(a),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await a.estimateGas(await e(o))},s=async o=>await r(o);return Me(s,{_contract:t,estimateGas:i,populateTransaction:e,send:r,staticCall:n}),s}function cwe(t,e){const n=function(...l){const u=t.interface.getFunction(e,l);return ie(u,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e,args:l}}),u},r=async function(...l){const u=n(...l);let d={};if(u.inputs.length+1===l.length&&(d=await AB(l.pop()),d.from&&(d.from=await Gn(d.from,CB(t.runner)))),u.inputs.length!==l.length)throw new Error("internal error: fragment inputs doesn't match arguments; should not happen");const h=await owe(t.runner,u.inputs,l);return Object.assign({},d,await _r({to:t.getAddress(),data:t.interface.encodeFunctionData(u,h)}))},i=async function(...l){const u=await a(...l);return u.length===1?u[0]:u},s=async function(...l){const u=t.runner;ie(vB(u),"contract runner does not support sending transactions","UNSUPPORTED_OPERATION",{operation:"sendTransaction"});const d=await u.sendTransaction(await r(...l)),h=nd(t.runner);return new q6(t.interface,h,d)},o=async function(...l){const u=yh(t.runner,"estimateGas");return ie(EB(u),"contract runner does not support gas estimation","UNSUPPORTED_OPERATION",{operation:"estimateGas"}),await u.estimateGas(await r(...l))},a=async function(...l){const u=yh(t.runner,"call");ie(xB(u),"contract runner does not support calling","UNSUPPORTED_OPERATION",{operation:"call"});const d=await r(...l);let h="0x";try{h=await u.call(d)}catch(g){throw T6(g)&&g.data?t.interface.makeError(g.data,d):g}const f=n(...l);return t.interface.decodeFunctionResult(f,h)},c=async(...l)=>n(...l).constant?await i(...l):await s(...l);return Me(c,{name:t.interface.getFunctionName(e),_contract:t,_key:e,getFragment:n,estimateGas:o,populateTransaction:r,send:s,staticCall:i,staticCallResult:a}),Object.defineProperty(c,"fragment",{configurable:!1,enumerable:!0,get:()=>{const l=t.interface.getFunction(e);return ie(l,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e}}),l}}),c}function lwe(t,e){const n=function(...i){const s=t.interface.getEvent(e,i);return ie(s,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e,args:i}}),s},r=function(...i){return new swe(t,n(...i),i)};return Me(r,{name:t.interface.getEventName(e),_contract:t,_key:e,getFragment:n}),Object.defineProperty(r,"fragment",{configurable:!1,enumerable:!0,get:()=>{const i=t.interface.getEvent(e);return ie(i,"no matching fragment","UNSUPPORTED_OPERATION",{operation:"fragment",info:{key:e}}),i}}),r}const b2=Symbol.for("_ethersInternal_contract"),_B=new WeakMap;function uwe(t,e){_B.set(t[b2],e)}function Bi(t){return _B.get(t[b2])}function dwe(t){return t&&typeof t=="object"&&"getTopicFilter"in t&&typeof t.getTopicFilter=="function"&&t.fragment}async function G6(t,e){let n,r=null;if(Array.isArray(e)){const s=function(o){if(Vt(o,32))return o;const a=t.interface.getEvent(o);return M(a,"unknown fragment","name",o),a.topicHash};n=e.map(o=>o==null?null:Array.isArray(o)?o.map(s):s(o))}else e==="*"?n=[null]:typeof e=="string"?Vt(e,32)?n=[e]:(r=t.interface.getEvent(e),M(r,"unknown fragment","event",e),n=[r.topicHash]):dwe(e)?n=await e.getTopicFilter():"fragment"in e?(r=e.fragment,n=[r.topicHash]):M(!1,"unknown event name","event",e);n=n.map(s=>{if(s==null)return null;if(Array.isArray(s)){const o=Array.from(new Set(s.map(a=>a.toLowerCase())).values());return o.length===1?o[0]:(o.sort(),o)}return s.toLowerCase()});const i=n.map(s=>s==null?"null":Array.isArray(s)?s.join("|"):s).join("&");return{fragment:r,tag:i,topics:n}}async function em(t,e){const{subs:n}=Bi(t);return n.get((await G6(t,e)).tag)||null}async function RS(t,e,n){const r=nd(t.runner);ie(r,"contract runner does not support subscribing","UNSUPPORTED_OPERATION",{operation:e});const{fragment:i,tag:s,topics:o}=await G6(t,n),{addr:a,subs:c}=Bi(t);let l=c.get(s);if(!l){const d={address:a||t,topics:o},h=m=>{let b=i;if(b==null)try{b=t.interface.getEvent(m.topics[0])}catch{}if(b){const C=b,x=i?t.interface.decodeEventLog(i,m.data,m.topics):[];d4(t,n,x,A=>new iwe(t,A,n,C,m))}else d4(t,n,[],C=>new bB(t,C,n,m))};let f=[];l={tag:s,listeners:[],start:()=>{f.length||f.push(r.on(d,h))},stop:async()=>{if(f.length==0)return;let m=f;f=[],await Promise.all(m),r.off(d,h)}},c.set(s,l)}return l}let u4=Promise.resolve();async function hwe(t,e,n,r){await u4;const i=await em(t,e);if(!i)return!1;const s=i.listeners.length;return i.listeners=i.listeners.filter(({listener:o,once:a})=>{const c=Array.from(n);r&&c.push(r(a?null:o));try{o.call(t,...c)}catch{}return!a}),i.listeners.length===0&&(i.stop(),Bi(t).subs.delete(i.tag)),s>0}async function d4(t,e,n,r){try{await u4}catch{}const i=hwe(t,e,n,r);return u4=i,await i}const Ry=["then"];var CI;CI=b2;const Cm=class Cm{constructor(e,n,r,i){G(this,"target");G(this,"interface");G(this,"runner");G(this,"filters");G(this,CI);G(this,"fallback");M(typeof e=="string"||RD(e),"invalid value for Contract target","target",e),r==null&&(r=null);const s=l4.from(n);Me(this,{target:e,runner:r,interface:s}),Object.defineProperty(this,b2,{value:{}});let o,a=null,c=null;if(i){const d=nd(r);c=new q6(this.interface,d,i)}let l=new Map;if(typeof e=="string")if(Vt(e))a=e,o=Promise.resolve(e);else{const d=yh(r,"resolveName");if(!q3(d))throw en("contract runner does not support name resolution","UNSUPPORTED_OPERATION",{operation:"resolveName"});o=d.resolveName(e).then(h=>{if(h==null)throw en("an ENS name used for a contract target must be correctly configured","UNCONFIGURED_NAME",{value:e});return Bi(this).addr=h,h})}else o=e.getAddress().then(d=>{if(d==null)throw new Error("TODO");return Bi(this).addr=d,d});uwe(this,{addrPromise:o,addr:a,deployTx:c,subs:l});const u=new Proxy({},{get:(d,h,f)=>{if(typeof h=="symbol"||Ry.indexOf(h)>=0)return Reflect.get(d,h,f);try{return this.getEvent(h)}catch(g){if(!or(g,"INVALID_ARGUMENT")||g.argument!=="key")throw g}},has:(d,h)=>Ry.indexOf(h)>=0?Reflect.has(d,h):Reflect.has(d,h)||this.interface.hasEvent(String(h))});return Me(this,{filters:u}),Me(this,{fallback:s.receive||s.fallback?awe(this):null}),new Proxy(this,{get:(d,h,f)=>{if(typeof h=="symbol"||h in d||Ry.indexOf(h)>=0)return Reflect.get(d,h,f);try{return d.getFunction(h)}catch(g){if(!or(g,"INVALID_ARGUMENT")||g.argument!=="key")throw g}},has:(d,h)=>typeof h=="symbol"||h in d||Ry.indexOf(h)>=0?Reflect.has(d,h):d.interface.hasFunction(h)})}connect(e){return new Cm(this.target,this.interface,e)}attach(e){return new Cm(e,this.interface,this.runner)}async getAddress(){return await Bi(this).addrPromise}async getDeployedCode(){const e=nd(this.runner);ie(e,"runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"getDeployedCode"});const n=await e.getCode(await this.getAddress());return n==="0x"?null:n}async waitForDeployment(){const e=this.deploymentTransaction();if(e)return await e.wait(),this;if(await this.getDeployedCode()!=null)return this;const r=nd(this.runner);return ie(r!=null,"contract runner does not support .provider","UNSUPPORTED_OPERATION",{operation:"waitForDeployment"}),new Promise((i,s)=>{const o=async()=>{try{if(await this.getDeployedCode()!=null)return i(this);r.once("block",o)}catch(a){s(a)}};o()})}deploymentTransaction(){return Bi(this).deployTx}getFunction(e){return typeof e!="string"&&(e=e.format()),cwe(this,e)}getEvent(e){return typeof e!="string"&&(e=e.format()),lwe(this,e)}async queryTransaction(e){throw new Error("@TODO")}async queryFilter(e,n,r){n==null&&(n=0),r==null&&(r="latest");const{addr:i,addrPromise:s}=Bi(this),o=i||await s,{fragment:a,topics:c}=await G6(this,e),l={address:o,topics:c,fromBlock:n,toBlock:r},u=nd(this.runner);return ie(u,"contract runner does not have a provider","UNSUPPORTED_OPERATION",{operation:"queryFilter"}),(await u.getLogs(l)).map(d=>{let h=a;if(h==null)try{h=this.interface.getEvent(d.topics[0])}catch{}if(h)try{return new V6(d,this.interface,h)}catch(f){return new yB(d,f)}return new Aw(d,u)})}async on(e,n){const r=await RS(this,"on",e);return r.listeners.push({listener:n,once:!1}),r.start(),this}async once(e,n){const r=await RS(this,"once",e);return r.listeners.push({listener:n,once:!0}),r.start(),this}async emit(e,...n){return await d4(this,e,n,null)}async listenerCount(e){if(e){const i=await em(this,e);return i?i.listeners.length:0}const{subs:n}=Bi(this);let r=0;for(const{listeners:i}of n.values())r+=i.length;return r}async listeners(e){if(e){const i=await em(this,e);return i?i.listeners.map(({listener:s})=>s):[]}const{subs:n}=Bi(this);let r=[];for(const{listeners:i}of n.values())r=r.concat(i.map(({listener:s})=>s));return r}async off(e,n){const r=await em(this,e);if(!r)return this;if(n){const i=r.listeners.map(({listener:s})=>s).indexOf(n);i>=0&&r.listeners.splice(i,1)}return(n==null||r.listeners.length===0)&&(r.stop(),Bi(this).subs.delete(r.tag)),this}async removeAllListeners(e){if(e){const n=await em(this,e);if(!n)return this;n.stop(),Bi(this).subs.delete(n.tag)}else{const{subs:n}=Bi(this);for(const{tag:r,stop:i}of n.values())i(),n.delete(r)}return this}async addListener(e,n){return await this.on(e,n)}async removeListener(e,n){return await this.off(e,n)}static buildClass(e){class n extends Cm{constructor(i,s=null){super(i,e,s)}}return n}static from(e,n,r){return r==null&&(r=null),new this(e,n,r)}};let h4=Cm;function fwe(){return h4}class kd extends fwe(){}function VE(t){return t.match(/^ipfs:\/\/ipfs\//i)?t=t.substring(12):t.match(/^ipfs:\/\//i)?t=t.substring(7):M(!1,"unsupported IPFS format","link",t),`https://gateway.ipfs.io/ipfs/${t}`}class pwe{constructor(e){G(this,"name");Me(this,{name:e})}connect(e){return this}supportsCoinType(e){return!1}async encodeAddress(e,n){throw new Error("unsupported coin")}async decodeAddress(e,n){throw new Error("unsupported coin")}}const SB=new RegExp("^(ipfs)://(.*)$","i"),OS=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),SB,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];var vl,pd,Cl,ff,R2,IB;const Sf=class Sf{constructor(e,n,r){K(this,Cl);G(this,"provider");G(this,"address");G(this,"name");K(this,vl);K(this,pd);Me(this,{provider:e,address:n,name:r}),k(this,vl,null),k(this,pd,new kd(n,["function supportsInterface(bytes4) view returns (bool)","function resolve(bytes, bytes) view returns (bytes)","function addr(bytes32) view returns (address)","function addr(bytes32, uint) view returns (bytes)","function text(bytes32, string) view returns (string)","function contenthash(bytes32) view returns (bytes)"],e))}async supportsWildcard(){return y(this,vl)==null&&k(this,vl,(async()=>{try{return await y(this,pd).supportsInterface("0x9061b923")}catch(e){if(or(e,"CALL_EXCEPTION"))return!1;throw k(this,vl,null),e}})()),await y(this,vl)}async getAddress(e){if(e==null&&(e=60),e===60)try{const s=await X(this,Cl,ff).call(this,"addr(bytes32)");return s==null||s===s1?null:s}catch(s){if(or(s,"CALL_EXCEPTION"))return null;throw s}if(e>=0&&e<2147483648){let s=e+2147483648;const o=await X(this,Cl,ff).call(this,"addr(bytes32,uint)",[s]);if(Vt(o,20))return ft(o)}let n=null;for(const s of this.provider.plugins)if(s instanceof pwe&&s.supportsCoinType(e)){n=s;break}if(n==null)return null;const r=await X(this,Cl,ff).call(this,"addr(bytes32,uint)",[e]);if(r==null||r==="0x")return null;const i=await n.decodeAddress(e,r);if(i!=null)return i;ie(!1,"invalid coin data","UNSUPPORTED_OPERATION",{operation:`getAddress(${e})`,info:{coinType:e,data:r}})}async getText(e){const n=await X(this,Cl,ff).call(this,"text(bytes32,string)",[e]);return n==null||n==="0x"?null:n}async getContentHash(){const e=await X(this,Cl,ff).call(this,"contenthash(bytes32)");if(e==null||e==="0x")return null;const n=e.match(/^0x(e3010170|e5010172)(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/);if(n){const i=n[1]==="e3010170"?"ipfs":"ipns",s=parseInt(n[4],16);if(n[5].length===s*2)return`${i}://${x$("0x"+n[2])}`}const r=e.match(/^0xe40101fa011b20([0-9a-f]*)$/);if(r&&r[1].length===64)return`bzz://${r[1]}`;ie(!1,"invalid or unsupported content hash data","UNSUPPORTED_OPERATION",{operation:"getContentHash()",info:{data:e}})}async getAvatar(){return(await this._getAvatar()).url}async _getAvatar(){const e=[{type:"name",value:this.name}];try{const n=await this.getText("avatar");if(n==null)return e.push({type:"!avatar",value:""}),{url:null,linkage:e};e.push({type:"avatar",value:n});for(let r=0;r<OS.length;r++){const i=n.match(OS[r]);if(i==null)continue;const s=i[1].toLowerCase();switch(s){case"https":case"data":return e.push({type:"url",value:n}),{linkage:e,url:n};case"ipfs":{const o=VE(n);return e.push({type:"ipfs",value:n}),e.push({type:"url",value:o}),{linkage:e,url:o}}case"erc721":case"erc1155":{const o=s==="erc721"?"tokenURI(uint256)":"uri(uint256)";e.push({type:s,value:n});const a=await this.getAddress();if(a==null)return e.push({type:"!owner",value:""}),{url:null,linkage:e};const c=(i[2]||"").split("/");if(c.length!==2)return e.push({type:`!${s}caip`,value:i[2]||""}),{url:null,linkage:e};const l=c[1],u=new kd(c[0],["function tokenURI(uint) view returns (string)","function ownerOf(uint) view returns (address)","function uri(uint) view returns (string)","function balanceOf(address, uint256) view returns (uint)"],this.provider);if(s==="erc721"){const p=await u.ownerOf(l);if(a!==p)return e.push({type:"!owner",value:p}),{url:null,linkage:e};e.push({type:"owner",value:p})}else if(s==="erc1155"){const p=await u.balanceOf(a,l);if(!p)return e.push({type:"!balance",value:"0"}),{url:null,linkage:e};e.push({type:"balance",value:p.toString()})}let d=await u[o](l);if(d==null||d==="0x")return e.push({type:"!metadata-url",value:""}),{url:null,linkage:e};e.push({type:"metadata-url-base",value:d}),s==="erc1155"&&(d=d.replace("{id}",Nc(l,32).substring(2)),e.push({type:"metadata-url-expanded",value:d})),d.match(/^ipfs:/i)&&(d=VE(d)),e.push({type:"metadata-url",value:d});let h={};const f=await new Rc(d).send();f.assertOk();try{h=f.bodyJson}catch{try{e.push({type:"!metadata",value:f.bodyText})}catch{const b=f.body;return b&&e.push({type:"!metadata",value:de(b)}),{url:null,linkage:e}}return{url:null,linkage:e}}if(!h)return e.push({type:"!metadata",value:""}),{url:null,linkage:e};e.push({type:"metadata",value:JSON.stringify(h)});let g=h.image;if(typeof g!="string")return e.push({type:"!imageUrl",value:""}),{url:null,linkage:e};if(!g.match(/^(https:\/\/|data:)/i)){if(g.match(SB)==null)return e.push({type:"!imageUrl-ipfs",value:g}),{url:null,linkage:e};e.push({type:"imageUrl-ipfs",value:g}),g=VE(g)}return e.push({type:"url",value:g}),{linkage:e,url:g}}}}}catch{}return{linkage:e,url:null}}static async getEnsAddress(e){const n=await e.getNetwork(),r=n.getPlugin("org.ethers.plugins.network.Ens");return ie(r,"network does not support ENS","UNSUPPORTED_OPERATION",{operation:"getEnsAddress",info:{network:n}}),r.address}static async fromName(e,n){var i;let r=n;for(;;){if(r===""||r==="."||n!=="eth"&&r==="eth")return null;const s=await X(i=Sf,R2,IB).call(i,e,r);if(s!=null){const o=new Sf(e,s,n);return r!==n&&!await o.supportsWildcard()?null:o}r=r.split(".").slice(1).join(".")}}};vl=new WeakMap,pd=new WeakMap,Cl=new WeakSet,ff=async function(e,n){n=(n||[]).slice();const r=y(this,pd).interface;n.unshift(a4(this.name));let i=null;await this.supportsWildcard()&&(i=r.getFunction(e),ie(i,"missing fragment","UNKNOWN_ERROR",{info:{funcName:e}}),n=[T1e(this.name,255),r.encodeFunctionData(i,n)],e="resolve(bytes,bytes)"),n.push({enableCcipRead:!0});try{const s=await y(this,pd)[e](...n);return i?r.decodeFunctionResult(i,s)[0]:s}catch(s){if(!or(s,"CALL_EXCEPTION"))throw s}return null},R2=new WeakSet,IB=async function(e,n){const r=await Sf.getEnsAddress(e);try{const s=await new kd(r,["function resolver(bytes32) view returns (address)"],e).resolver(a4(n),{enableCcipRead:!0});return s===s1?null:s}catch(i){throw i}return null},K(Sf,R2);let x2=Sf;const PS=BigInt(0);function mt(t,e){return function(n){return n==null?e:t(n)}}function g1(t,e){return n=>{if(e&&n==null)return null;if(!Array.isArray(n))throw new Error("not an array");return n.map(r=>t(r))}}function _w(t,e){return n=>{const r={};for(const i in t){let s=i;if(e&&i in e&&!(s in n)){for(const o of e[i])if(o in n){s=o;break}}try{const o=t[i](n[s]);o!==void 0&&(r[i]=o)}catch(o){const a=o instanceof Error?o.message:"not-an-error";ie(!1,`invalid value for value.${i} (${a})`,"BAD_DATA",{value:n})}}return r}}function gwe(t){switch(t){case!0:case"true":return!0;case!1:case"false":return!1}M(!1,`invalid boolean; ${JSON.stringify(t)}`,"value",t)}function F0(t){return M(Vt(t,!0),"invalid data","value",t),t}function sr(t){return M(Vt(t,32),"invalid hash","value",t),t}const mwe=_w({address:ft,blockHash:sr,blockNumber:Je,data:F0,index:Je,removed:mt(gwe,!1),topics:g1(sr),transactionHash:sr,transactionIndex:Je},{index:["logIndex"]});function wwe(t){return mwe(t)}const ywe=_w({hash:mt(sr),parentHash:sr,parentBeaconBlockRoot:mt(sr,null),number:Je,timestamp:Je,nonce:mt(F0),difficulty:Re,gasLimit:Re,gasUsed:Re,stateRoot:mt(sr,null),receiptsRoot:mt(sr,null),blobGasUsed:mt(Re,null),excessBlobGas:mt(Re,null),miner:mt(ft),prevRandao:mt(sr,null),extraData:F0,baseFeePerGas:mt(Re)},{prevRandao:["mixHash"]});function bwe(t){const e=ywe(t);return e.transactions=t.transactions.map(n=>typeof n=="string"?n:TB(n)),e}const xwe=_w({transactionIndex:Je,blockNumber:Je,transactionHash:sr,address:ft,topics:g1(sr),data:F0,index:Je,blockHash:sr},{index:["logIndex"]});function Ewe(t){return xwe(t)}const vwe=_w({to:mt(ft,null),from:mt(ft,null),contractAddress:mt(ft,null),index:Je,root:mt(de),gasUsed:Re,blobGasUsed:mt(Re,null),logsBloom:mt(F0),blockHash:sr,hash:sr,logs:g1(Ewe),blockNumber:Je,cumulativeGasUsed:Re,effectiveGasPrice:mt(Re),blobGasPrice:mt(Re,null),status:mt(Je),type:mt(Je,0)},{effectiveGasPrice:["gasPrice"],hash:["transactionHash"],index:["transactionIndex"]});function Cwe(t){return vwe(t)}function TB(t){t.to&&Re(t.to)===PS&&(t.to="0x0000000000000000000000000000000000000000");const e=_w({hash:sr,index:mt(Je,void 0),type:n=>n==="0x"||n==null?0:Je(n),accessList:mt(Fh,null),blobVersionedHashes:mt(g1(sr,!0),null),authorizationList:mt(g1(n=>{let r;if(n.signature)r=n.signature;else{let i=n.yParity;i==="0x1b"?i=0:i==="0x1c"&&(i=1),r=Object.assign({},n,{yParity:i})}return{address:ft(n.address),chainId:Re(n.chainId),nonce:Re(n.nonce),signature:wi.from(r)}},!1),null),blockHash:mt(sr,null),blockNumber:mt(Je,null),transactionIndex:mt(Je,null),from:ft,gasPrice:mt(Re),maxPriorityFeePerGas:mt(Re),maxFeePerGas:mt(Re),maxFeePerBlobGas:mt(Re,null),gasLimit:Re,to:mt(ft,null),value:Re,nonce:Je,data:F0,creates:mt(ft,null),chainId:mt(Re,null)},{data:["input"],gasLimit:["gas"],index:["transactionIndex"]})(t);if(e.to==null&&e.creates==null&&(e.creates=lme(e)),(t.type===1||t.type===2)&&t.accessList==null&&(e.accessList=[]),t.signature?e.signature=wi.from(t.signature):e.signature=wi.from(t),e.chainId==null){const n=e.signature.legacyChainId;n!=null&&(e.chainId=n)}return e.blockHash&&Re(e.blockHash)===PS&&(e.blockHash=null),e}const Awe="0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e";class Sw{constructor(e){G(this,"name");Me(this,{name:e})}clone(){return new Sw(this.name)}}class G3 extends Sw{constructor(n,r){n==null&&(n=0);super(`org.ethers.network.plugins.GasCost#${n||0}`);G(this,"effectiveBlock");G(this,"txBase");G(this,"txCreate");G(this,"txDataZero");G(this,"txDataNonzero");G(this,"txAccessListStorageKey");G(this,"txAccessListAddress");const i={effectiveBlock:n};function s(o,a){let c=(r||{})[o];c==null&&(c=a),M(typeof c=="number",`invalud value for ${o}`,"costs",r),i[o]=c}s("txBase",21e3),s("txCreate",32e3),s("txDataZero",4),s("txDataNonzero",16),s("txAccessListStorageKey",1900),s("txAccessListAddress",2400),Me(this,i)}clone(){return new G3(this.effectiveBlock,this)}}class K3 extends Sw{constructor(n,r){super("org.ethers.plugins.network.Ens");G(this,"address");G(this,"targetNetwork");Me(this,{address:n||Awe,targetNetwork:r??1})}clone(){return new K3(this.address,this.targetNetwork)}}var S1,I1;class _we extends Sw{constructor(n,r){super("org.ethers.plugins.network.FetchUrlFeeDataPlugin");K(this,S1);K(this,I1);k(this,S1,n),k(this,I1,r)}get url(){return y(this,S1)}get processFunc(){return y(this,I1)}clone(){return this}}S1=new WeakMap,I1=new WeakMap;const qE=new Map;var Ep,vp,Al;const If=class If{constructor(e,n){K(this,Ep);K(this,vp);K(this,Al);k(this,Ep,e),k(this,vp,Re(n)),k(this,Al,new Map)}toJSON(){return{name:this.name,chainId:String(this.chainId)}}get name(){return y(this,Ep)}set name(e){k(this,Ep,e)}get chainId(){return y(this,vp)}set chainId(e){k(this,vp,Re(e,"chainId"))}matches(e){if(e==null)return!1;if(typeof e=="string"){try{return this.chainId===Re(e)}catch{}return this.name===e}if(typeof e=="number"||typeof e=="bigint"){try{return this.chainId===Re(e)}catch{}return!1}if(typeof e=="object"){if(e.chainId!=null){try{return this.chainId===Re(e.chainId)}catch{}return!1}return e.name!=null?this.name===e.name:!1}return!1}get plugins(){return Array.from(y(this,Al).values())}attachPlugin(e){if(y(this,Al).get(e.name))throw new Error(`cannot replace existing plugin: ${e.name} `);return y(this,Al).set(e.name,e.clone()),this}getPlugin(e){return y(this,Al).get(e)||null}getPlugins(e){return this.plugins.filter(n=>n.name.split("#")[0]===e)}clone(){const e=new If(this.name,this.chainId);return this.plugins.forEach(n=>{e.attachPlugin(n.clone())}),e}computeIntrinsicGas(e){const n=this.getPlugin("org.ethers.plugins.network.GasCost")||new G3;let r=n.txBase;if(e.to==null&&(r+=n.txCreate),e.data)for(let i=2;i<e.data.length;i+=2)e.data.substring(i,i+2)==="00"?r+=n.txDataZero:r+=n.txDataNonzero;if(e.accessList){const i=Fh(e.accessList);for(const s in i)r+=n.txAccessListAddress+n.txAccessListStorageKey*i[s].storageKeys.length}return r}static from(e){if(Swe(),e==null)return If.from("mainnet");if(typeof e=="number"&&(e=BigInt(e)),typeof e=="string"||typeof e=="bigint"){const n=qE.get(e);if(n)return n();if(typeof e=="bigint")return new If("unknown",e);M(!1,"unknown network","network",e)}if(typeof e.clone=="function")return e.clone();if(typeof e=="object"){M(typeof e.name=="string"&&typeof e.chainId=="number","invalid network object name or chainId","network",e);const n=new If(e.name,e.chainId);return(e.ensAddress||e.ensNetwork!=null)&&n.attachPlugin(new K3(e.ensAddress,e.ensNetwork)),n}M(!1,"invalid network","network",e)}static register(e,n){typeof e=="number"&&(e=BigInt(e));const r=qE.get(e);r&&M(!1,`conflicting network for ${JSON.stringify(r.name)}`,"nameOrChainId",e),qE.set(e,n)}};Ep=new WeakMap,vp=new WeakMap,Al=new WeakMap;let ea=If;function kS(t,e){const n=String(t);if(!n.match(/^[0-9.]+$/))throw new Error(`invalid gwei value: ${t}`);const r=n.split(".");if(r.length===1&&r.push(""),r.length!==2)throw new Error(`invalid gwei value: ${t}`);for(;r[1].length<e;)r[1]+="0";if(r[1].length>9){let i=BigInt(r[1].substring(0,9));r[1].substring(9).match(/^0+$/)||i++,r[1]=i.toString()}return BigInt(r[0]+r[1])}function $S(t){return new _we(t,async(e,n,r)=>{r.setHeader("User-Agent","ethers");let i;try{const[s,o]=await Promise.all([r.send(),e()]);i=s;const a=i.bodyJson.standard;return{gasPrice:o.gasPrice,maxFeePerGas:kS(a.maxFee,9),maxPriorityFeePerGas:kS(a.maxPriorityFee,9)}}catch(s){ie(!1,`error encountered with polygon gas station (${JSON.stringify(r.url)})`,"SERVER_ERROR",{request:r,response:i,error:s})}})}let DS=!1;function Swe(){if(DS)return;DS=!0;function t(e,n,r){const i=function(){const s=new ea(e,n);return r.ensNetwork!=null&&s.attachPlugin(new K3(null,r.ensNetwork)),s.attachPlugin(new G3),(r.plugins||[]).forEach(o=>{s.attachPlugin(o)}),s};ea.register(e,i),ea.register(n,i),r.altNames&&r.altNames.forEach(s=>{ea.register(s,i)})}t("mainnet",1,{ensNetwork:1,altNames:["homestead"]}),t("ropsten",3,{ensNetwork:3}),t("rinkeby",4,{ensNetwork:4}),t("goerli",5,{ensNetwork:5}),t("kovan",42,{ensNetwork:42}),t("sepolia",11155111,{ensNetwork:11155111}),t("holesky",17e3,{ensNetwork:17e3}),t("classic",61,{}),t("classicKotti",6,{}),t("arbitrum",42161,{ensNetwork:1}),t("arbitrum-goerli",421613,{}),t("arbitrum-sepolia",421614,{}),t("base",8453,{ensNetwork:1}),t("base-goerli",84531,{}),t("base-sepolia",84532,{}),t("bnb",56,{ensNetwork:1}),t("bnbt",97,{}),t("filecoin",314,{}),t("filecoin-calibration",314159,{}),t("linea",59144,{ensNetwork:1}),t("linea-goerli",59140,{}),t("linea-sepolia",59141,{}),t("matic",137,{ensNetwork:1,plugins:[$S("https://gasstation.polygon.technology/v2")]}),t("matic-amoy",80002,{}),t("matic-mumbai",80001,{altNames:["maticMumbai","maticmum"],plugins:[$S("https://gasstation-testnet.polygon.technology/v2")]}),t("optimism",10,{ensNetwork:1,plugins:[]}),t("optimism-goerli",420,{}),t("optimism-sepolia",11155420,{}),t("xdai",100,{ensNetwork:1})}function f4(t){return JSON.parse(JSON.stringify(t))}var Qa,bs,_l,Ho,Cp,tb;class Iwe{constructor(e){K(this,Cp);K(this,Qa);K(this,bs);K(this,_l);K(this,Ho);k(this,Qa,e),k(this,bs,null),k(this,_l,4e3),k(this,Ho,-2)}get pollingInterval(){return y(this,_l)}set pollingInterval(e){k(this,_l,e)}start(){y(this,bs)||(k(this,bs,y(this,Qa)._setTimeout(X(this,Cp,tb).bind(this),y(this,_l))),X(this,Cp,tb).call(this))}stop(){y(this,bs)&&(y(this,Qa)._clearTimeout(y(this,bs)),k(this,bs,null))}pause(e){this.stop(),e&&k(this,Ho,-2)}resume(){this.start()}}Qa=new WeakMap,bs=new WeakMap,_l=new WeakMap,Ho=new WeakMap,Cp=new WeakSet,tb=async function(){try{const e=await y(this,Qa).getBlockNumber();if(y(this,Ho)===-2){k(this,Ho,e);return}if(e!==y(this,Ho)){for(let n=y(this,Ho)+1;n<=e;n++){if(y(this,bs)==null)return;await y(this,Qa).emit("block",n)}k(this,Ho,e)}}catch{}y(this,bs)!=null&&k(this,bs,y(this,Qa)._setTimeout(X(this,Cp,tb).bind(this),y(this,_l)))};var gd,md,Sl;class K6{constructor(e){K(this,gd);K(this,md);K(this,Sl);k(this,gd,e),k(this,Sl,!1),k(this,md,n=>{this._poll(n,y(this,gd))})}async _poll(e,n){throw new Error("sub-classes must override this")}start(){y(this,Sl)||(k(this,Sl,!0),y(this,md).call(this,-2),y(this,gd).on("block",y(this,md)))}stop(){y(this,Sl)&&(k(this,Sl,!1),y(this,gd).off("block",y(this,md)))}pause(e){this.stop()}resume(){this.start()}}gd=new WeakMap,md=new WeakMap,Sl=new WeakMap;var Ap,Xa;class Twe extends K6{constructor(n,r){super(n);K(this,Ap);K(this,Xa);k(this,Ap,r),k(this,Xa,-2)}pause(n){n&&k(this,Xa,-2),super.pause(n)}async _poll(n,r){const i=await r.getBlock(y(this,Ap));i!=null&&(y(this,Xa)===-2?k(this,Xa,i.number):i.number>y(this,Xa)&&(r.emit(y(this,Ap),i.number),k(this,Xa,i.number)))}}Ap=new WeakMap,Xa=new WeakMap;var O2;class Nwe extends K6{constructor(n,r){super(n);K(this,O2);k(this,O2,f4(r))}async _poll(n,r){throw new Error("@TODO")}}O2=new WeakMap;var _p;class Rwe extends K6{constructor(n,r){super(n);K(this,_p);k(this,_p,r)}async _poll(n,r){const i=await r.getTransactionReceipt(y(this,_p));i&&r.emit(y(this,_p),i)}}_p=new WeakMap;var ec,Sp,Ip,Il,xs,P2,NB;class Z6{constructor(e,n){K(this,P2);K(this,ec);K(this,Sp);K(this,Ip);K(this,Il);K(this,xs);k(this,ec,e),k(this,Sp,f4(n)),k(this,Ip,X(this,P2,NB).bind(this)),k(this,Il,!1),k(this,xs,-2)}start(){y(this,Il)||(k(this,Il,!0),y(this,xs)===-2&&y(this,ec).getBlockNumber().then(e=>{k(this,xs,e)}),y(this,ec).on("block",y(this,Ip)))}stop(){y(this,Il)&&(k(this,Il,!1),y(this,ec).off("block",y(this,Ip)))}pause(e){this.stop(),e&&k(this,xs,-2)}resume(){this.start()}}ec=new WeakMap,Sp=new WeakMap,Ip=new WeakMap,Il=new WeakMap,xs=new WeakMap,P2=new WeakSet,NB=async function(e){if(y(this,xs)===-2)return;const n=f4(y(this,Sp));n.fromBlock=y(this,xs)+1,n.toBlock=e;const r=await y(this,ec).getLogs(n);if(r.length===0){y(this,xs)<e-60&&k(this,xs,e-60);return}for(const i of r)y(this,ec).emit(y(this,Sp),i),k(this,xs,i.blockNumber)};const Owe=BigInt(2),Pwe=10;function Oy(t){return t&&typeof t.then=="function"}function nb(t,e){return t+":"+JSON.stringify(e,(n,r)=>{if(r==null)return"null";if(typeof r=="bigint")return`bigint:${r.toString()}`;if(typeof r=="string")return r.toLowerCase();if(typeof r=="object"&&!Array.isArray(r)){const i=Object.keys(r);return i.sort(),i.reduce((s,o)=>(s[o]=r[o],s),{})}return r})}class RB{constructor(e){G(this,"name");Me(this,{name:e})}start(){}stop(){}pause(e){}resume(){}}function kwe(t){return JSON.parse(JSON.stringify(t))}function p4(t){return t=Array.from(new Set(t).values()),t.sort(),t}async function GE(t,e){if(t==null)throw new Error("invalid event");if(Array.isArray(t)&&(t={topics:t}),typeof t=="string")switch(t){case"block":case"debug":case"error":case"finalized":case"network":case"pending":case"safe":return{type:t,tag:t}}if(Vt(t,32)){const n=t.toLowerCase();return{type:"transaction",tag:nb("tx",{hash:n}),hash:n}}if(t.orphan){const n=t;return{type:"orphan",tag:nb("orphan",n),filter:kwe(n)}}if(t.address||t.topics){const n=t,r={topics:(n.topics||[]).map(i=>i==null?null:Array.isArray(i)?p4(i.map(s=>s.toLowerCase())):i.toLowerCase())};if(n.address){const i=[],s=[],o=a=>{Vt(a)?i.push(a):s.push((async()=>{i.push(await Gn(a,e))})())};Array.isArray(n.address)?n.address.forEach(o):o(n.address),s.length&&await Promise.all(s),r.address=p4(i.map(a=>a.toLowerCase()))}return{filter:r,tag:nb("event",r),type:"event"}}M(!1,"unknown ProviderEvent","event",t)}function KE(){return new Date().getTime()}const $we={cacheTimeout:250,pollingInterval:4e3};var vr,Tl,Cr,Tp,Fi,wd,Nl,tc,T1,Es,Np,Rp,ct,$i,g4,m4,tm,w4,nm,rb;class Dwe{constructor(e,n){K(this,ct);K(this,vr);K(this,Tl);K(this,Cr);K(this,Tp);K(this,Fi);K(this,wd);K(this,Nl);K(this,tc);K(this,T1);K(this,Es);K(this,Np);K(this,Rp);if(k(this,Rp,Object.assign({},$we,n||{})),e==="any")k(this,wd,!0),k(this,Fi,null);else if(e){const r=ea.from(e);k(this,wd,!1),k(this,Fi,Promise.resolve(r)),setTimeout(()=>{this.emit("network",r,null)},0)}else k(this,wd,!1),k(this,Fi,null);k(this,tc,-1),k(this,Nl,new Map),k(this,vr,new Map),k(this,Tl,new Map),k(this,Cr,null),k(this,Tp,!1),k(this,T1,1),k(this,Es,new Map),k(this,Np,!1)}get pollingInterval(){return y(this,Rp).pollingInterval}get provider(){return this}get plugins(){return Array.from(y(this,Tl).values())}attachPlugin(e){if(y(this,Tl).get(e.name))throw new Error(`cannot replace existing plugin: ${e.name} `);return y(this,Tl).set(e.name,e.connect(this)),this}getPlugin(e){return y(this,Tl).get(e)||null}get disableCcipRead(){return y(this,Np)}set disableCcipRead(e){k(this,Np,!!e)}async ccipReadFetch(e,n,r){if(this.disableCcipRead||r.length===0||e.to==null)return null;const i=e.to.toLowerCase(),s=n.toLowerCase(),o=[];for(let a=0;a<r.length;a++){const c=r[a],l=c.replace("{sender}",i).replace("{data}",s),u=new Rc(l);c.indexOf("{data}")===-1&&(u.body={data:s,sender:i}),this.emit("debug",{action:"sendCcipReadFetchRequest",request:u,index:a,urls:r});let d="unknown error",h;try{h=await u.send()}catch(f){o.push(f.message),this.emit("debug",{action:"receiveCcipReadFetchError",request:u,result:{error:f}});continue}try{const f=h.bodyJson;if(f.data)return this.emit("debug",{action:"receiveCcipReadFetchResult",request:u,result:f}),f.data;f.message&&(d=f.message),this.emit("debug",{action:"receiveCcipReadFetchError",request:u,result:f})}catch{}ie(h.statusCode<400||h.statusCode>=500,`response not found during CCIP fetch: ${d}`,"OFFCHAIN_FAULT",{reason:"404_MISSING_RESOURCE",transaction:e,info:{url:c,errorMessage:d}}),o.push(d)}ie(!1,`error encountered during CCIP fetch: ${o.map(a=>JSON.stringify(a)).join(", ")}`,"OFFCHAIN_FAULT",{reason:"500_SERVER_ERROR",transaction:e,info:{urls:r,errorMessages:o}})}_wrapBlock(e,n){return new ewe(bwe(e),this)}_wrapLog(e,n){return new Aw(wwe(e),this)}_wrapTransactionReceipt(e,n){return new gB(Cwe(e),this)}_wrapTransactionResponse(e,n){return new p1(TB(e),this)}_detectNetwork(){ie(!1,"sub-classes must implement this","UNSUPPORTED_OPERATION",{operation:"_detectNetwork"})}async _perform(e){ie(!1,`unsupported method: ${e.method}`,"UNSUPPORTED_OPERATION",{operation:e.method,info:e})}async getBlockNumber(){const e=Je(await X(this,ct,$i).call(this,{method:"getBlockNumber"}),"%response");return y(this,tc)>=0&&k(this,tc,e),e}_getAddress(e){return Gn(e,this)}_getBlockTag(e){if(e==null)return"latest";switch(e){case"earliest":return"0x0";case"finalized":case"latest":case"pending":case"safe":return e}if(Vt(e))return Vt(e,32)?e:oo(e);if(typeof e=="bigint"&&(e=Je(e,"blockTag")),typeof e=="number")return e>=0?oo(e):y(this,tc)>=0?oo(y(this,tc)+e):this.getBlockNumber().then(n=>oo(n+e));M(!1,"invalid blockTag","blockTag",e)}_getFilter(e){const n=(e.topics||[]).map(c=>c==null?null:Array.isArray(c)?p4(c.map(l=>l.toLowerCase())):c.toLowerCase()),r="blockHash"in e?e.blockHash:void 0,i=(c,l,u)=>{let d;switch(c.length){case 0:break;case 1:d=c[0];break;default:c.sort(),d=c}if(r&&(l!=null||u!=null))throw new Error("invalid filter");const h={};return d&&(h.address=d),n.length&&(h.topics=n),l&&(h.fromBlock=l),u&&(h.toBlock=u),r&&(h.blockHash=r),h};let s=[];if(e.address)if(Array.isArray(e.address))for(const c of e.address)s.push(this._getAddress(c));else s.push(this._getAddress(e.address));let o;"fromBlock"in e&&(o=this._getBlockTag(e.fromBlock));let a;return"toBlock"in e&&(a=this._getBlockTag(e.toBlock)),s.filter(c=>typeof c!="string").length||o!=null&&typeof o!="string"||a!=null&&typeof a!="string"?Promise.all([Promise.all(s),o,a]).then(c=>i(c[0],c[1],c[2])):i(s,o,a)}_getTransactionRequest(e){const n=f1(e),r=[];if(["to","from"].forEach(i=>{if(n[i]==null)return;const s=Gn(n[i],this);Oy(s)?r.push(async function(){n[i]=await s}()):n[i]=s}),n.blockTag!=null){const i=this._getBlockTag(n.blockTag);Oy(i)?r.push(async function(){n.blockTag=await i}()):n.blockTag=i}return r.length?async function(){return await Promise.all(r),n}():n}async getNetwork(){if(y(this,Fi)==null){const i=(async()=>{try{const s=await this._detectNetwork();return this.emit("network",s,null),s}catch(s){throw y(this,Fi)===i&&k(this,Fi,null),s}})();return k(this,Fi,i),(await i).clone()}const e=y(this,Fi),[n,r]=await Promise.all([e,this._detectNetwork()]);return n.chainId!==r.chainId&&(y(this,wd)?(this.emit("network",r,n),y(this,Fi)===e&&k(this,Fi,Promise.resolve(r))):ie(!1,`network changed: ${n.chainId} => ${r.chainId} `,"NETWORK_ERROR",{event:"changed"})),n.clone()}async getFeeData(){const e=await this.getNetwork(),n=async()=>{const{_block:i,gasPrice:s,priorityFee:o}=await _r({_block:X(this,ct,w4).call(this,"latest",!1),gasPrice:(async()=>{try{const u=await X(this,ct,$i).call(this,{method:"getGasPrice"});return Re(u,"%response")}catch{}return null})(),priorityFee:(async()=>{try{const u=await X(this,ct,$i).call(this,{method:"getPriorityFee"});return Re(u,"%response")}catch{}return null})()});let a=null,c=null;const l=this._wrapBlock(i,e);return l&&l.baseFeePerGas&&(c=o??BigInt("1000000000"),a=l.baseFeePerGas*Owe+c),new TS(s,a,c)},r=e.getPlugin("org.ethers.plugins.network.FetchUrlFeeDataPlugin");if(r){const i=new Rc(r.url),s=await r.processFunc(n,this,i);return new TS(s.gasPrice,s.maxFeePerGas,s.maxPriorityFeePerGas)}return await n()}async estimateGas(e){let n=this._getTransactionRequest(e);return Oy(n)&&(n=await n),Re(await X(this,ct,$i).call(this,{method:"estimateGas",transaction:n}),"%response")}async call(e){const{tx:n,blockTag:r}=await _r({tx:this._getTransactionRequest(e),blockTag:this._getBlockTag(e.blockTag)});return await X(this,ct,m4).call(this,X(this,ct,g4).call(this,n,r,e.enableCcipRead?0:-1))}async getBalance(e,n){return Re(await X(this,ct,tm).call(this,{method:"getBalance"},e,n),"%response")}async getTransactionCount(e,n){return Je(await X(this,ct,tm).call(this,{method:"getTransactionCount"},e,n),"%response")}async getCode(e,n){return de(await X(this,ct,tm).call(this,{method:"getCode"},e,n))}async getStorage(e,n,r){const i=Re(n,"position");return de(await X(this,ct,tm).call(this,{method:"getStorage",position:i},e,r))}async broadcastTransaction(e){const{blockNumber:n,hash:r,network:i}=await _r({blockNumber:this.getBlockNumber(),hash:this._perform({method:"broadcastTransaction",signedTransaction:e}),network:this.getNetwork()}),s=o1.from(e);if(s.hash!==r)throw new Error("@TODO: the returned hash did not match");return this._wrapTransactionResponse(s,i).replaceableTransaction(n)}async getBlock(e,n){const{network:r,params:i}=await _r({network:this.getNetwork(),params:X(this,ct,w4).call(this,e,!!n)});return i==null?null:this._wrapBlock(i,r)}async getTransaction(e){const{network:n,params:r}=await _r({network:this.getNetwork(),params:X(this,ct,$i).call(this,{method:"getTransaction",hash:e})});return r==null?null:this._wrapTransactionResponse(r,n)}async getTransactionReceipt(e){const{network:n,params:r}=await _r({network:this.getNetwork(),params:X(this,ct,$i).call(this,{method:"getTransactionReceipt",hash:e})});if(r==null)return null;if(r.gasPrice==null&&r.effectiveGasPrice==null){const i=await X(this,ct,$i).call(this,{method:"getTransaction",hash:e});if(i==null)throw new Error("report this; could not find tx or effectiveGasPrice");r.effectiveGasPrice=i.gasPrice}return this._wrapTransactionReceipt(r,n)}async getTransactionResult(e){const{result:n}=await _r({network:this.getNetwork(),result:X(this,ct,$i).call(this,{method:"getTransactionResult",hash:e})});return n==null?null:de(n)}async getLogs(e){let n=this._getFilter(e);Oy(n)&&(n=await n);const{network:r,params:i}=await _r({network:this.getNetwork(),params:X(this,ct,$i).call(this,{method:"getLogs",filter:n})});return i.map(s=>this._wrapLog(s,r))}_getProvider(e){ie(!1,"provider cannot connect to target network","UNSUPPORTED_OPERATION",{operation:"_getProvider()"})}async getResolver(e){return await x2.fromName(this,e)}async getAvatar(e){const n=await this.getResolver(e);return n?await n.getAvatar():null}async resolveName(e){const n=await this.getResolver(e);return n?await n.getAddress():null}async lookupAddress(e){e=ft(e);const n=a4(e.substring(2).toLowerCase()+".addr.reverse");try{const r=await x2.getEnsAddress(this),s=await new kd(r,["function resolver(bytes32) view returns (address)"],this).resolver(n);if(s==null||s===s1)return null;const a=await new kd(s,["function name(bytes32) view returns (string)"],this).name(n);return await this.resolveName(a)!==e?null:a}catch(r){if(or(r,"BAD_DATA")&&r.value==="0x"||or(r,"CALL_EXCEPTION"))return null;throw r}return null}async waitForTransaction(e,n,r){const i=n??1;return i===0?this.getTransactionReceipt(e):new Promise(async(s,o)=>{let a=null;const c=async l=>{try{const u=await this.getTransactionReceipt(e);if(u!=null&&l-u.blockNumber+1>=i){s(u),a&&(clearTimeout(a),a=null);return}}catch(u){console.log("EEE",u)}this.once("block",c)};r!=null&&(a=setTimeout(()=>{a!=null&&(a=null,this.off("block",c),o(en("timeout","TIMEOUT",{reason:"timeout"})))},r)),c(await this.getBlockNumber())})}async waitForBlock(e){ie(!1,"not implemented yet","NOT_IMPLEMENTED",{operation:"waitForBlock"})}_clearTimeout(e){const n=y(this,Es).get(e);n&&(n.timer&&clearTimeout(n.timer),y(this,Es).delete(e))}_setTimeout(e,n){n==null&&(n=0);const r=Ms(this,T1)._++,i=()=>{y(this,Es).delete(r),e()};if(this.paused)y(this,Es).set(r,{timer:null,func:i,time:n});else{const s=setTimeout(i,n);y(this,Es).set(r,{timer:s,func:i,time:KE()})}return r}_forEachSubscriber(e){for(const n of y(this,vr).values())e(n.subscriber)}_getSubscriber(e){switch(e.type){case"debug":case"error":case"network":return new RB(e.type);case"block":{const n=new Iwe(this);return n.pollingInterval=this.pollingInterval,n}case"safe":case"finalized":return new Twe(this,e.type);case"event":return new Z6(this,e.filter);case"transaction":return new Rwe(this,e.hash);case"orphan":return new Nwe(this,e.filter)}throw new Error(`unsupported event: ${e.type}`)}_recoverSubscriber(e,n){for(const r of y(this,vr).values())if(r.subscriber===e){r.started&&r.subscriber.stop(),r.subscriber=n,r.started&&n.start(),y(this,Cr)!=null&&n.pause(y(this,Cr));break}}async on(e,n){const r=await X(this,ct,rb).call(this,e);return r.listeners.push({listener:n,once:!1}),r.started||(r.subscriber.start(),r.started=!0,y(this,Cr)!=null&&r.subscriber.pause(y(this,Cr))),this}async once(e,n){const r=await X(this,ct,rb).call(this,e);return r.listeners.push({listener:n,once:!0}),r.started||(r.subscriber.start(),r.started=!0,y(this,Cr)!=null&&r.subscriber.pause(y(this,Cr))),this}async emit(e,...n){const r=await X(this,ct,nm).call(this,e,n);if(!r||r.listeners.length===0)return!1;const i=r.listeners.length;return r.listeners=r.listeners.filter(({listener:s,once:o})=>{const a=new E$(this,o?null:s,e);try{s.call(this,...n,a)}catch{}return!o}),r.listeners.length===0&&(r.started&&r.subscriber.stop(),y(this,vr).delete(r.tag)),i>0}async listenerCount(e){if(e){const r=await X(this,ct,nm).call(this,e);return r?r.listeners.length:0}let n=0;for(const{listeners:r}of y(this,vr).values())n+=r.length;return n}async listeners(e){if(e){const r=await X(this,ct,nm).call(this,e);return r?r.listeners.map(({listener:i})=>i):[]}let n=[];for(const{listeners:r}of y(this,vr).values())n=n.concat(r.map(({listener:i})=>i));return n}async off(e,n){const r=await X(this,ct,nm).call(this,e);if(!r)return this;if(n){const i=r.listeners.map(({listener:s})=>s).indexOf(n);i>=0&&r.listeners.splice(i,1)}return(!n||r.listeners.length===0)&&(r.started&&r.subscriber.stop(),y(this,vr).delete(r.tag)),this}async removeAllListeners(e){if(e){const{tag:n,started:r,subscriber:i}=await X(this,ct,rb).call(this,e);r&&i.stop(),y(this,vr).delete(n)}else for(const[n,{started:r,subscriber:i}]of y(this,vr))r&&i.stop(),y(this,vr).delete(n);return this}async addListener(e,n){return await this.on(e,n)}async removeListener(e,n){return this.off(e,n)}get destroyed(){return y(this,Tp)}destroy(){this.removeAllListeners();for(const e of y(this,Es).keys())this._clearTimeout(e);k(this,Tp,!0)}get paused(){return y(this,Cr)!=null}set paused(e){!!e!==this.paused&&(this.paused?this.resume():this.pause(!1))}pause(e){if(k(this,tc,-1),y(this,Cr)!=null){if(y(this,Cr)==!!e)return;ie(!1,"cannot change pause type; resume first","UNSUPPORTED_OPERATION",{operation:"pause"})}this._forEachSubscriber(n=>n.pause(e)),k(this,Cr,!!e);for(const n of y(this,Es).values())n.timer&&clearTimeout(n.timer),n.time=KE()-n.time}resume(){if(y(this,Cr)!=null){this._forEachSubscriber(e=>e.resume()),k(this,Cr,null);for(const e of y(this,Es).values()){let n=e.time;n<0&&(n=0),e.time=KE(),setTimeout(e.func,n)}}}}vr=new WeakMap,Tl=new WeakMap,Cr=new WeakMap,Tp=new WeakMap,Fi=new WeakMap,wd=new WeakMap,Nl=new WeakMap,tc=new WeakMap,T1=new WeakMap,Es=new WeakMap,Np=new WeakMap,Rp=new WeakMap,ct=new WeakSet,$i=async function(e){const n=y(this,Rp).cacheTimeout;if(n<0)return await this._perform(e);const r=nb(e.method,e);let i=y(this,Nl).get(r);return i||(i=this._perform(e),y(this,Nl).set(r,i),setTimeout(()=>{y(this,Nl).get(r)===i&&y(this,Nl).delete(r)},n)),await i},g4=async function(e,n,r){ie(r<Pwe,"CCIP read exceeded maximum redirections","OFFCHAIN_FAULT",{reason:"TOO_MANY_REDIRECTS",transaction:Object.assign({},e,{blockTag:n,enableCcipRead:!0})});const i=f1(e);try{return de(await this._perform({method:"call",transaction:i,blockTag:n}))}catch(s){if(!this.disableCcipRead&&T6(s)&&s.data&&r>=0&&n==="latest"&&i.to!=null&&Yt(s.data,0,4)==="0x556f1830"){const o=s.data,a=await Gn(i.to,this);let c;try{c=Fwe(Yt(s.data,4))}catch(d){ie(!1,d.message,"OFFCHAIN_FAULT",{reason:"BAD_DATA",transaction:i,info:{data:o}})}ie(c.sender.toLowerCase()===a.toLowerCase(),"CCIP Read sender mismatch","CALL_EXCEPTION",{action:"call",data:o,reason:"OffchainLookup",transaction:i,invocation:null,revert:{signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",name:"OffchainLookup",args:c.errorArgs}});const l=await this.ccipReadFetch(i,c.calldata,c.urls);ie(l!=null,"CCIP Read failed to fetch data","OFFCHAIN_FAULT",{reason:"FETCH_FAILED",transaction:i,info:{data:s.data,errorArgs:c.errorArgs}});const u={to:a,data:Rt([c.selector,Mwe([l,c.extraData])])};this.emit("debug",{action:"sendCcipReadCall",transaction:u});try{const d=await X(this,ct,g4).call(this,u,n,r+1);return this.emit("debug",{action:"receiveCcipReadCallResult",transaction:Object.assign({},u),result:d}),d}catch(d){throw this.emit("debug",{action:"receiveCcipReadCallError",transaction:Object.assign({},u),error:d}),d}}throw s}},m4=async function(e){const{value:n}=await _r({network:this.getNetwork(),value:e});return n},tm=async function(e,n,r){let i=this._getAddress(n),s=this._getBlockTag(r);return(typeof i!="string"||typeof s!="string")&&([i,s]=await Promise.all([i,s])),await X(this,ct,m4).call(this,X(this,ct,$i).call(this,Object.assign(e,{address:i,blockTag:s})))},w4=async function(e,n){if(Vt(e,32))return await X(this,ct,$i).call(this,{method:"getBlock",blockHash:e,includeTransactions:n});let r=this._getBlockTag(e);return typeof r!="string"&&(r=await r),await X(this,ct,$i).call(this,{method:"getBlock",blockTag:r,includeTransactions:n})},nm=async function(e,n){let r=await GE(e,this);return r.type==="event"&&n&&n.length>0&&n[0].removed===!0&&(r=await GE({orphan:"drop-log",log:n[0]},this)),y(this,vr).get(r.tag)||null},rb=async function(e){const n=await GE(e,this),r=n.tag;let i=y(this,vr).get(r);return i||(i={subscriber:this._getSubscriber(n),tag:r,addressableMap:new WeakMap,nameMap:new Map,started:!1,listeners:[]},y(this,vr).set(r,i)),i};function Bwe(t,e){try{const n=y4(t,e);if(n)return h2(n)}catch{}return null}function y4(t,e){if(t==="0x")return null;try{const n=Je(Yt(t,e,e+32)),r=Je(Yt(t,n,n+32));return Yt(t,n+32,n+32+r)}catch{}return null}function BS(t){const e=cn(t);if(e.length>32)throw new Error("internal; should not happen");const n=new Uint8Array(32);return n.set(e,32-e.length),n}function Uwe(t){if(t.length%32===0)return t;const e=new Uint8Array(Math.ceil(t.length/32)*32);return e.set(t),e}const Lwe=new Uint8Array([]);function Mwe(t){const e=[];let n=0;for(let r=0;r<t.length;r++)e.push(Lwe),n+=32;for(let r=0;r<t.length;r++){const i=Ae(t[r]);e[r]=BS(n),e.push(BS(i.length)),e.push(Uwe(i)),n+=32+Math.ceil(i.length/32)*32}return Rt(e)}const US="0x0000000000000000000000000000000000000000000000000000000000000000";function Fwe(t){const e={sender:"",urls:[],calldata:"",selector:"",extraData:"",errorArgs:[]};ie(Ff(t)>=5*32,"insufficient OffchainLookup data","OFFCHAIN_FAULT",{reason:"insufficient OffchainLookup data"});const n=Yt(t,0,32);ie(Yt(n,0,12)===Yt(US,0,12),"corrupt OffchainLookup sender","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup sender"}),e.sender=Yt(n,12);try{const r=[],i=Je(Yt(t,32,64)),s=Je(Yt(t,i,i+32)),o=Yt(t,i+32);for(let a=0;a<s;a++){const c=Bwe(o,a*32);if(c==null)throw new Error("abort");r.push(c)}e.urls=r}catch{ie(!1,"corrupt OffchainLookup urls","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup urls"})}try{const r=y4(t,64);if(r==null)throw new Error("abort");e.calldata=r}catch{ie(!1,"corrupt OffchainLookup calldata","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup calldata"})}ie(Yt(t,100,128)===Yt(US,0,28),"corrupt OffchainLookup callbaackSelector","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup callbaackSelector"}),e.selector=Yt(t,96,100);try{const r=y4(t,128);if(r==null)throw new Error("abort");e.extraData=r}catch{ie(!1,"corrupt OffchainLookup extraData","OFFCHAIN_FAULT",{reason:"corrupt OffchainLookup extraData"})}return e.errorArgs="sender,urls,calldata,selector,extraData".split(/,/).map(r=>e[r]),e}function Nu(t,e){if(t.provider)return t.provider;ie(!1,"missing provider","UNSUPPORTED_OPERATION",{operation:e})}async function LS(t,e){let n=f1(e);if(n.to!=null&&(n.to=Gn(n.to,t)),n.from!=null){const r=n.from;n.from=Promise.all([t.getAddress(),Gn(r,t)]).then(([i,s])=>(M(i.toLowerCase()===s.toLowerCase(),"transaction from mismatch","tx.from",s),i))}else n.from=t.getAddress();return await _r(n)}class Y6{constructor(e){G(this,"provider");Me(this,{provider:e||null})}async getNonce(e){return Nu(this,"getTransactionCount").getTransactionCount(await this.getAddress(),e)}async populateCall(e){return await LS(this,e)}async populateTransaction(e){const n=Nu(this,"populateTransaction"),r=await LS(this,e);r.nonce==null&&(r.nonce=await this.getNonce("pending")),r.gasLimit==null&&(r.gasLimit=await this.estimateGas(r));const i=await this.provider.getNetwork();if(r.chainId!=null){const o=Re(r.chainId);M(o===i.chainId,"transaction chainId mismatch","tx.chainId",e.chainId)}else r.chainId=i.chainId;const s=r.maxFeePerGas!=null||r.maxPriorityFeePerGas!=null;if(r.gasPrice!=null&&(r.type===2||s)?M(!1,"eip-1559 transaction do not support gasPrice","tx",e):(r.type===0||r.type===1)&&s&&M(!1,"pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas","tx",e),(r.type===2||r.type==null)&&r.maxFeePerGas!=null&&r.maxPriorityFeePerGas!=null)r.type=2;else if(r.type===0||r.type===1){const o=await n.getFeeData();ie(o.gasPrice!=null,"network does not support gasPrice","UNSUPPORTED_OPERATION",{operation:"getGasPrice"}),r.gasPrice==null&&(r.gasPrice=o.gasPrice)}else{const o=await n.getFeeData();if(r.type==null)if(o.maxFeePerGas!=null&&o.maxPriorityFeePerGas!=null)if(r.authorizationList&&r.authorizationList.length?r.type=4:r.type=2,r.gasPrice!=null){const a=r.gasPrice;delete r.gasPrice,r.maxFeePerGas=a,r.maxPriorityFeePerGas=a}else r.maxFeePerGas==null&&(r.maxFeePerGas=o.maxFeePerGas),r.maxPriorityFeePerGas==null&&(r.maxPriorityFeePerGas=o.maxPriorityFeePerGas);else o.gasPrice!=null?(ie(!s,"network does not support EIP-1559","UNSUPPORTED_OPERATION",{operation:"populateTransaction"}),r.gasPrice==null&&(r.gasPrice=o.gasPrice),r.type=0):ie(!1,"failed to get consistent fee data","UNSUPPORTED_OPERATION",{operation:"signer.getFeeData"});else(r.type===2||r.type===3||r.type===4)&&(r.maxFeePerGas==null&&(r.maxFeePerGas=o.maxFeePerGas),r.maxPriorityFeePerGas==null&&(r.maxPriorityFeePerGas=o.maxPriorityFeePerGas))}return await _r(r)}async populateAuthorization(e){const n=Object.assign({},e);return n.chainId==null&&(n.chainId=(await Nu(this,"getNetwork").getNetwork()).chainId),n.nonce==null&&(n.nonce=await this.getNonce()),n}async estimateGas(e){return Nu(this,"estimateGas").estimateGas(await this.populateCall(e))}async call(e){return Nu(this,"call").call(await this.populateCall(e))}async resolveName(e){return await Nu(this,"resolveName").resolveName(e)}async sendTransaction(e){const n=Nu(this,"sendTransaction"),r=await this.populateTransaction(e);delete r.from;const i=o1.from(r);return await n.broadcastTransaction(await this.signTransaction(i))}authorize(e){ie(!1,"authorization not implemented for this signer","UNSUPPORTED_OPERATION",{operation:"authorize"})}}var Op,ib;const oA=class oA extends Y6{constructor(n,r){super(r);K(this,Op);G(this,"address");Me(this,{address:n})}async getAddress(){return this.address}connect(n){return new oA(this.address,n)}async signTransaction(n){X(this,Op,ib).call(this,"transactions","signTransaction")}async signMessage(n){X(this,Op,ib).call(this,"messages","signMessage")}async signTypedData(n,r,i){X(this,Op,ib).call(this,"typed-data","signTypedData")}};Op=new WeakSet,ib=function(n,r){ie(!1,`VoidSigner cannot sign ${n}`,"UNSUPPORTED_OPERATION",{operation:r})};let b4=oA;function Wwe(t){return JSON.parse(JSON.stringify(t))}var Lr,zo,yd,Rl,bd,Pp,iu,x4,E4;class OB{constructor(e){K(this,iu);K(this,Lr);K(this,zo);K(this,yd);K(this,Rl);K(this,bd);K(this,Pp);k(this,Lr,e),k(this,zo,null),k(this,yd,X(this,iu,x4).bind(this)),k(this,Rl,!1),k(this,bd,null),k(this,Pp,!1)}_subscribe(e){throw new Error("subclasses must override this")}_emitResults(e,n){throw new Error("subclasses must override this")}_recover(e){throw new Error("subclasses must override this")}start(){y(this,Rl)||(k(this,Rl,!0),X(this,iu,x4).call(this,-2))}stop(){y(this,Rl)&&(k(this,Rl,!1),k(this,Pp,!0),X(this,iu,E4).call(this),y(this,Lr).off("block",y(this,yd)))}pause(e){e&&X(this,iu,E4).call(this),y(this,Lr).off("block",y(this,yd))}resume(){this.start()}}Lr=new WeakMap,zo=new WeakMap,yd=new WeakMap,Rl=new WeakMap,bd=new WeakMap,Pp=new WeakMap,iu=new WeakSet,x4=async function(e){try{y(this,zo)==null&&k(this,zo,this._subscribe(y(this,Lr)));let n=null;try{n=await y(this,zo)}catch(s){if(!or(s,"UNSUPPORTED_OPERATION")||s.operation!=="eth_newFilter")throw s}if(n==null){k(this,zo,null),y(this,Lr)._recoverSubscriber(this,this._recover(y(this,Lr)));return}const r=await y(this,Lr).getNetwork();if(y(this,bd)||k(this,bd,r),y(this,bd).chainId!==r.chainId)throw new Error("chaid changed");if(y(this,Pp))return;const i=await y(this,Lr).send("eth_getFilterChanges",[n]);await this._emitResults(y(this,Lr),i)}catch(n){console.log("@TODO",n)}y(this,Lr).once("block",y(this,yd))},E4=function(){const e=y(this,zo);e&&(k(this,zo,null),e.then(n=>{y(this,Lr).destroyed||y(this,Lr).send("eth_uninstallFilter",[n])}))};var xd;class jwe extends OB{constructor(n,r){super(n);K(this,xd);k(this,xd,Wwe(r))}_recover(n){return new Z6(n,y(this,xd))}async _subscribe(n){return await n.send("eth_newFilter",[y(this,xd)])}async _emitResults(n,r){for(const i of r)n.emit(y(this,xd),n._wrapLog(i,n._network))}}xd=new WeakMap;class Hwe extends OB{async _subscribe(e){return await e.send("eth_newPendingTransactionFilter",[])}async _emitResults(e,n){for(const r of n)e.emit("pending",r)}}const zwe="bigint,boolean,function,number,string,symbol".split(/,/g);function sb(t){if(t==null||zwe.indexOf(typeof t)>=0||typeof t.getAddress=="function")return t;if(Array.isArray(t))return t.map(sb);if(typeof t=="object")return Object.keys(t).reduce((e,n)=>(e[n]=t[n],e),{});throw new Error(`should not happen: ${t} (${typeof t})`)}function Vwe(t){return new Promise(e=>{setTimeout(e,t)})}function nf(t){return t&&t.toLowerCase()}function MS(t){return t&&typeof t.pollingInterval=="number"}const PB={polling:!1,staticNetwork:null,batchStallTime:10,batchMaxSize:1<<20,batchMaxCount:100,cacheTimeout:250,pollingInterval:4e3};class Vf extends Y6{constructor(n,r){super(n);G(this,"address");r=ft(r),Me(this,{address:r})}connect(n){ie(!1,"cannot reconnect JsonRpcSigner","UNSUPPORTED_OPERATION",{operation:"signer.connect"})}async getAddress(){return this.address}async populateTransaction(n){return await this.populateCall(n)}async sendUncheckedTransaction(n){const r=sb(n),i=[];if(r.from){const o=r.from;i.push((async()=>{const a=await Gn(o,this.provider);M(a!=null&&a.toLowerCase()===this.address.toLowerCase(),"from address mismatch","transaction",n),r.from=a})())}else r.from=this.address;if(r.gasLimit==null&&i.push((async()=>{r.gasLimit=await this.provider.estimateGas({...r,from:this.address})})()),r.to!=null){const o=r.to;i.push((async()=>{r.to=await Gn(o,this.provider)})())}i.length&&await Promise.all(i);const s=this.provider.getRpcTransaction(r);return this.provider.send("eth_sendTransaction",[s])}async sendTransaction(n){const r=await this.provider.getBlockNumber(),i=await this.sendUncheckedTransaction(n);return await new Promise((s,o)=>{const a=[1e3,100];let c=0;const l=async()=>{try{const u=await this.provider.getTransaction(i);if(u!=null){s(u.replaceableTransaction(r));return}}catch(u){if(or(u,"CANCELLED")||or(u,"BAD_DATA")||or(u,"NETWORK_ERROR")||or(u,"UNSUPPORTED_OPERATION")){u.info==null&&(u.info={}),u.info.sendTransactionHash=i,o(u);return}if(or(u,"INVALID_ARGUMENT")&&(c++,u.info==null&&(u.info={}),u.info.sendTransactionHash=i,c>10)){o(u);return}this.provider.emit("error",en("failed to fetch transation after sending (will try again)","UNKNOWN_ERROR",{error:u}))}this.provider._setTimeout(()=>{l()},a.pop()||4e3)};l()})}async signTransaction(n){const r=sb(n);if(r.from){const s=await Gn(r.from,this.provider);M(s!=null&&s.toLowerCase()===this.address.toLowerCase(),"from address mismatch","transaction",n),r.from=s}else r.from=this.address;const i=this.provider.getRpcTransaction(r);return await this.provider.send("eth_signTransaction",[i])}async signMessage(n){const r=typeof n=="string"?Sr(n):n;return await this.provider.send("personal_sign",[de(r),this.address.toLowerCase()])}async signTypedData(n,r,i){const s=sb(i),o=await M0.resolveNames(n,r,s,async a=>{const c=await Gn(a);return M(c!=null,"TypedData does not support null address","value",a),c});return await this.provider.send("eth_signTypedData_v4",[this.address.toLowerCase(),JSON.stringify(M0.getPayload(o.domain,r,o.value))])}async unlock(n){return this.provider.send("personal_unlockAccount",[this.address.toLowerCase(),n,null])}async _legacySignMessage(n){const r=typeof n=="string"?Sr(n):n;return await this.provider.send("eth_sign",[this.address.toLowerCase(),de(r)])}}var Ed,kp,nc,Vo,no,vs,si,N1,v4;class qwe extends Dwe{constructor(n,r){super(n,r);K(this,N1);K(this,Ed);K(this,kp);K(this,nc);K(this,Vo);K(this,no);K(this,vs);K(this,si);k(this,kp,1),k(this,Ed,Object.assign({},PB,r||{})),k(this,nc,[]),k(this,Vo,null),k(this,vs,null),k(this,si,null);{let s=null;const o=new Promise(a=>{s=a});k(this,no,{promise:o,resolve:s})}const i=this._getOption("staticNetwork");typeof i=="boolean"?(M(!i||n!=="any","staticNetwork cannot be used on special network 'any'","options",r),i&&n!=null&&k(this,vs,ea.from(n))):i&&(M(n==null||i.matches(n),"staticNetwork MUST match network object","options",r),k(this,vs,i))}_getOption(n){return y(this,Ed)[n]}get _network(){return ie(y(this,vs),"network is not available yet","NETWORK_ERROR"),y(this,vs)}async _perform(n){if(n.method==="call"||n.method==="estimateGas"){let i=n.transaction;if(i&&i.type!=null&&Re(i.type)&&i.maxFeePerGas==null&&i.maxPriorityFeePerGas==null){const s=await this.getFeeData();s.maxFeePerGas==null&&s.maxPriorityFeePerGas==null&&(n=Object.assign({},n,{transaction:Object.assign({},i,{type:void 0})}))}}const r=this.getRpcRequest(n);return r!=null?await this.send(r.method,r.args):super._perform(n)}async _detectNetwork(){const n=this._getOption("staticNetwork");if(n)if(n===!0){if(y(this,vs))return y(this,vs)}else return n;return y(this,si)?await y(this,si):this.ready?(k(this,si,(async()=>{try{const r=ea.from(Re(await this.send("eth_chainId",[])));return k(this,si,null),r}catch(r){throw k(this,si,null),r}})()),await y(this,si)):(k(this,si,(async()=>{const r={id:Ms(this,kp)._++,method:"eth_chainId",params:[],jsonrpc:"2.0"};this.emit("debug",{action:"sendRpcPayload",payload:r});let i;try{i=(await this._send(r))[0],k(this,si,null)}catch(s){throw k(this,si,null),this.emit("debug",{action:"receiveRpcError",error:s}),s}if(this.emit("debug",{action:"receiveRpcResult",result:i}),"result"in i)return ea.from(Re(i.result));throw this.getRpcError(r,i)})()),await y(this,si))}_start(){y(this,no)==null||y(this,no).resolve==null||(y(this,no).resolve(),k(this,no,null),(async()=>{for(;y(this,vs)==null&&!this.destroyed;)try{k(this,vs,await this._detectNetwork())}catch(n){if(this.destroyed)break;console.log("JsonRpcProvider failed to detect network and cannot start up; retry in 1s (perhaps the URL is wrong or the node is not started)"),this.emit("error",en("failed to bootstrap network detection","NETWORK_ERROR",{event:"initial-network-discovery",info:{error:n}})),await Vwe(1e3)}X(this,N1,v4).call(this)})())}async _waitUntilReady(){if(y(this,no)!=null)return await y(this,no).promise}_getSubscriber(n){return n.type==="pending"?new Hwe(this):n.type==="event"?this._getOption("polling")?new Z6(this,n.filter):new jwe(this,n.filter):n.type==="orphan"&&n.filter.orphan==="drop-log"?new RB("orphan"):super._getSubscriber(n)}get ready(){return y(this,no)==null}getRpcTransaction(n){const r={};return["chainId","gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach(i=>{if(n[i]==null)return;let s=i;i==="gasLimit"&&(s="gas"),r[s]=oo(Re(n[i],`tx.${i}`))}),["from","to","data"].forEach(i=>{n[i]!=null&&(r[i]=de(n[i]))}),n.accessList&&(r.accessList=Fh(n.accessList)),n.blobVersionedHashes&&(r.blobVersionedHashes=n.blobVersionedHashes.map(i=>i.toLowerCase())),n.authorizationList&&(r.authorizationList=n.authorizationList.map(i=>{const s=$D(i);return{address:s.address,nonce:oo(s.nonce),chainId:oo(s.chainId),yParity:oo(s.signature.yParity),r:oo(s.signature.r),s:oo(s.signature.s)}})),r}getRpcRequest(n){switch(n.method){case"chainId":return{method:"eth_chainId",args:[]};case"getBlockNumber":return{method:"eth_blockNumber",args:[]};case"getGasPrice":return{method:"eth_gasPrice",args:[]};case"getPriorityFee":return{method:"eth_maxPriorityFeePerGas",args:[]};case"getBalance":return{method:"eth_getBalance",args:[nf(n.address),n.blockTag]};case"getTransactionCount":return{method:"eth_getTransactionCount",args:[nf(n.address),n.blockTag]};case"getCode":return{method:"eth_getCode",args:[nf(n.address),n.blockTag]};case"getStorage":return{method:"eth_getStorageAt",args:[nf(n.address),"0x"+n.position.toString(16),n.blockTag]};case"broadcastTransaction":return{method:"eth_sendRawTransaction",args:[n.signedTransaction]};case"getBlock":if("blockTag"in n)return{method:"eth_getBlockByNumber",args:[n.blockTag,!!n.includeTransactions]};if("blockHash"in n)return{method:"eth_getBlockByHash",args:[n.blockHash,!!n.includeTransactions]};break;case"getTransaction":return{method:"eth_getTransactionByHash",args:[n.hash]};case"getTransactionReceipt":return{method:"eth_getTransactionReceipt",args:[n.hash]};case"call":return{method:"eth_call",args:[this.getRpcTransaction(n.transaction),n.blockTag]};case"estimateGas":return{method:"eth_estimateGas",args:[this.getRpcTransaction(n.transaction)]};case"getLogs":return n.filter&&n.filter.address!=null&&(Array.isArray(n.filter.address)?n.filter.address=n.filter.address.map(nf):n.filter.address=nf(n.filter.address)),{method:"eth_getLogs",args:[n.filter]}}return null}getRpcError(n,r){const{method:i}=n,{error:s}=r;if(i==="eth_estimateGas"&&s.message){const c=s.message;if(!c.match(/revert/i)&&c.match(/insufficient funds/i))return en("insufficient funds","INSUFFICIENT_FUNDS",{transaction:n.params[0],info:{payload:n,error:s}});if(c.match(/nonce/i)&&c.match(/too low/i))return en("nonce has already been used","NONCE_EXPIRED",{transaction:n.params[0],info:{payload:n,error:s}})}if(i==="eth_call"||i==="eth_estimateGas"){const c=C4(s),l=h1.getBuiltinCallException(i==="eth_call"?"call":"estimateGas",n.params[0],c?c.data:null);return l.info={error:s,payload:n},l}const o=JSON.stringify(Gwe(s));if(typeof s.message=="string"&&s.message.match(/user denied|ethers-user-denied/i))return en("user rejected action","ACTION_REJECTED",{action:{eth_sign:"signMessage",personal_sign:"signMessage",eth_signTypedData_v4:"signTypedData",eth_signTransaction:"signTransaction",eth_sendTransaction:"sendTransaction",eth_requestAccounts:"requestAccess",wallet_requestAccounts:"requestAccess"}[i]||"unknown",reason:"rejected",info:{payload:n,error:s}});if(i==="eth_sendRawTransaction"||i==="eth_sendTransaction"){const c=n.params[0];if(o.match(/insufficient funds|base fee exceeds gas limit/i))return en("insufficient funds for intrinsic transaction cost","INSUFFICIENT_FUNDS",{transaction:c,info:{error:s}});if(o.match(/nonce/i)&&o.match(/too low/i))return en("nonce has already been used","NONCE_EXPIRED",{transaction:c,info:{error:s}});if(o.match(/replacement transaction/i)&&o.match(/underpriced/i))return en("replacement fee too low","REPLACEMENT_UNDERPRICED",{transaction:c,info:{error:s}});if(o.match(/only replay-protected/i))return en("legacy pre-eip-155 transactions not supported","UNSUPPORTED_OPERATION",{operation:i,info:{transaction:c,info:{error:s}}})}let a=!!o.match(/the method .* does not exist/i);return a||s&&s.details&&s.details.startsWith("Unauthorized method:")&&(a=!0),a?en("unsupported operation","UNSUPPORTED_OPERATION",{operation:n.method,info:{error:s,payload:n}}):en("could not coalesce error","UNKNOWN_ERROR",{error:s,payload:n})}send(n,r){if(this.destroyed)return Promise.reject(en("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:n}));const i=Ms(this,kp)._++,s=new Promise((o,a)=>{y(this,nc).push({resolve:o,reject:a,payload:{method:n,params:r,id:i,jsonrpc:"2.0"}})});return X(this,N1,v4).call(this),s}async getSigner(n){n==null&&(n=0);const r=this.send("eth_accounts",[]);if(typeof n=="number"){const s=await r;if(n>=s.length)throw new Error("no such account");return new Vf(this,s[n])}const{accounts:i}=await _r({network:this.getNetwork(),accounts:r});n=ft(n);for(const s of i)if(ft(s)===n)return new Vf(this,n);throw new Error("invalid account")}async listAccounts(){return(await this.send("eth_accounts",[])).map(r=>new Vf(this,r))}destroy(){y(this,Vo)&&(clearTimeout(y(this,Vo)),k(this,Vo,null));for(const{payload:n,reject:r}of y(this,nc))r(en("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:n.method}));k(this,nc,[]),super.destroy()}}Ed=new WeakMap,kp=new WeakMap,nc=new WeakMap,Vo=new WeakMap,no=new WeakMap,vs=new WeakMap,si=new WeakMap,N1=new WeakSet,v4=function(){if(y(this,Vo))return;const n=this._getOption("batchMaxCount")===1?0:this._getOption("batchStallTime");k(this,Vo,setTimeout(()=>{k(this,Vo,null);const r=y(this,nc);for(k(this,nc,[]);r.length;){const i=[r.shift()];for(;r.length&&i.length!==y(this,Ed).batchMaxCount;)if(i.push(r.shift()),JSON.stringify(i.map(o=>o.payload)).length>y(this,Ed).batchMaxSize){r.unshift(i.pop());break}(async()=>{const s=i.length===1?i[0].payload:i.map(o=>o.payload);this.emit("debug",{action:"sendRpcPayload",payload:s});try{const o=await this._send(s);this.emit("debug",{action:"receiveRpcResult",result:o});for(const{resolve:a,reject:c,payload:l}of i){if(this.destroyed){c(en("provider destroyed; cancelled request","UNSUPPORTED_OPERATION",{operation:l.method}));continue}const u=o.filter(d=>d.id===l.id)[0];if(u==null){const d=en("missing response for request","BAD_DATA",{value:o,info:{payload:l}});this.emit("error",d),c(d);continue}if("error"in u){c(this.getRpcError(l,u));continue}a(u.result)}}catch(o){this.emit("debug",{action:"receiveRpcError",error:o});for(const{reject:a}of i)a(o)}})()}},n))};var Ol;class kB extends qwe{constructor(n,r){super(n,r);K(this,Ol);let i=this._getOption("pollingInterval");i==null&&(i=PB.pollingInterval),k(this,Ol,i)}_getSubscriber(n){const r=super._getSubscriber(n);return MS(r)&&(r.pollingInterval=y(this,Ol)),r}get pollingInterval(){return y(this,Ol)}set pollingInterval(n){if(!Number.isInteger(n)||n<0)throw new Error("invalid interval");k(this,Ol,n),this._forEachSubscriber(r=>{MS(r)&&(r.pollingInterval=y(this,Ol))})}}Ol=new WeakMap;var $p;class $B extends kB{constructor(n,r,i){n==null&&(n="http://localhost:8545");super(r,i);K(this,$p);typeof n=="string"?k(this,$p,new Rc(n)):k(this,$p,n.clone())}_getConnection(){return y(this,$p).clone()}async send(n,r){return await this._start(),await super.send(n,r)}async _send(n){const r=this._getConnection();r.body=JSON.stringify(n),r.setHeader("content-type","application/json");const i=await r.send();i.assertOk();let s=i.bodyJson;return Array.isArray(s)||(s=[s]),s}}$p=new WeakMap;function C4(t){if(t==null)return null;if(typeof t.message=="string"&&t.message.match(/revert/i)&&Vt(t.data))return{message:t.message,data:t.data};if(typeof t=="object"){for(const e in t){const n=C4(t[e]);if(n)return n}return null}if(typeof t=="string")try{return C4(JSON.parse(t))}catch{}return null}function A4(t,e){if(t!=null){if(typeof t.message=="string"&&e.push(t.message),typeof t=="object")for(const n in t)A4(t[n],e);if(typeof t=="string")try{return A4(JSON.parse(t),e)}catch{}}}function Gwe(t){const e=[];return A4(t,e),e}var Dp,Bp;const Vu=class Vu extends kB{constructor(n,r,i){const s=Object.assign({},i??{},{batchMaxCount:1});M(n&&n.request,"invalid EIP-1193 provider","ethereum",n);super(r,s);K(this,Dp);K(this,Bp);k(this,Bp,null),i&&i.providerInfo&&k(this,Bp,i.providerInfo),k(this,Dp,async(o,a)=>{const c={method:o,params:a};this.emit("debug",{action:"sendEip1193Request",payload:c});try{const l=await n.request(c);return this.emit("debug",{action:"receiveEip1193Result",result:l}),l}catch(l){const u=new Error(l.message);throw u.code=l.code,u.data=l.data,u.payload=c,this.emit("debug",{action:"receiveEip1193Error",error:u}),u}})}get providerInfo(){return y(this,Bp)}async send(n,r){return await this._start(),await super.send(n,r)}async _send(n){M(!Array.isArray(n),"EIP-1193 does not support batch request","payload",n);try{const r=await y(this,Dp).call(this,n.method,n.params||[]);return[{id:n.id,result:r}]}catch(r){return[{id:n.id,error:{code:r.code,data:r.data,message:r.message}}]}}getRpcError(n,r){switch(r=JSON.parse(JSON.stringify(r)),r.error.code||-1){case 4001:r.error.message=`ethers-user-denied: ${r.error.message}`;break;case 4200:r.error.message=`ethers-unsupported: ${r.error.message}`;break}return super.getRpcError(n,r)}async hasSigner(n){n==null&&(n=0);const r=await this.send("eth_accounts",[]);return typeof n=="number"?r.length>n:(n=n.toLowerCase(),r.filter(i=>i.toLowerCase()===n).length!==0)}async getSigner(n){if(n==null&&(n=0),!await this.hasSigner(n))try{await y(this,Dp).call(this,"eth_requestAccounts",[])}catch(r){const i=r.payload;throw this.getRpcError(i,{id:i.id,error:r})}return await super.getSigner(n)}static async discover(n){if(n==null&&(n={}),n.provider)return new Vu(n.provider);const r=n.window?n.window:typeof window<"u"?window:null;if(r==null)return null;const i=n.anyProvider;if(i&&r.ethereum)return new Vu(r.ethereum);if(!("addEventListener"in r&&"dispatchEvent"in r&&"removeEventListener"in r))return null;const s=n.timeout?n.timeout:300;return s===0?null:await new Promise((o,a)=>{let c=[];const l=h=>{c.push(h.detail),i&&u()},u=()=>{if(clearTimeout(d),c.length)if(n&&n.filter){const h=n.filter(c.map(f=>Object.assign({},f.info)));if(h==null)o(null);else if(h instanceof Vu)o(h);else{let f=null;if(h.uuid&&(f=c.filter(p=>h.uuid===p.info.uuid)[0]),f){const{provider:g,info:p}=f;o(new Vu(g,void 0,{providerInfo:p}))}else a(en("filter returned unknown info","UNSUPPORTED_OPERATION",{value:h}))}}else{const{provider:h,info:f}=c[0];o(new Vu(h,void 0,{providerInfo:f}))}else o(null);r.removeEventListener("eip6963:announceProvider",l)},d=setTimeout(()=>{u()},s);r.addEventListener("eip6963:announceProvider",l),r.dispatchEvent(new Event("eip6963:requestProvider"))})}};Dp=new WeakMap,Bp=new WeakMap;let qf=Vu;var Up;const aA=class aA extends Y6{constructor(n,r){super(r);G(this,"address");K(this,Up);M(n&&typeof n.sign=="function","invalid private key","privateKey","[ REDACTED ]"),k(this,Up,n);const i=Cw(this.signingKey.publicKey);Me(this,{address:i})}get signingKey(){return y(this,Up)}get privateKey(){return this.signingKey.privateKey}async getAddress(){return this.address}connect(n){return new aA(y(this,Up),n)}async signTransaction(n){n=f1(n);const{to:r,from:i}=await _r({to:n.to?Gn(n.to,this):void 0,from:n.from?Gn(n.from,this):void 0});r!=null&&(n.to=r),i!=null&&(n.from=i),n.from!=null&&(M(ft(n.from)===this.address,"transaction from address mismatch","tx.from",n.from),delete n.from);const s=o1.from(n);return s.signature=this.signingKey.sign(s.unsignedHash),s.serialized}async signMessage(n){return this.signMessageSync(n)}signMessageSync(n){return this.signingKey.sign(N1e(n)).serialized}authorizeSync(n){M(typeof n.address=="string","invalid address for authorizeSync","auth.address",n);const r=this.signingKey.sign(zme(n));return Object.assign({},{address:ft(n.address),nonce:Re(n.nonce||0),chainId:Re(n.chainId||0)},{signature:r})}async authorize(n){return n=Object.assign({},n,{address:await Gn(n.address,this)}),this.authorizeSync(await this.populateAuthorization(n))}async signTypedData(n,r,i){const s=await M0.resolveNames(n,r,i,async o=>{ie(this.provider!=null,"cannot resolve ENS names without a provider","UNSUPPORTED_OPERATION",{operation:"resolveName",info:{name:o}});const a=await this.provider.resolveName(o);return ie(a!=null,"unconfigured ENS name","UNCONFIGURED_NAME",{value:o}),a});return this.signingKey.sign(M0.hash(s.domain,r,s.value)).serialized}};Up=new WeakMap;let E2=aA;const v2=" !#$%&'()*+,-./<=>?@[]^_`{|}~",Kwe=/^[a-z]*$/i;function FS(t,e){let n=97;return t.reduce((r,i)=>(i===e?n++:i.match(Kwe)?r.push(String.fromCharCode(n)+i):(n=97,r.push(i)),r),[])}function Zwe(t,e){for(let i=v2.length-1;i>=0;i--)t=t.split(v2[i]).join(e.substring(2*i,2*i+2));const n=[],r=t.replace(/(:|([0-9])|([A-Z][a-z]*))/g,(i,s,o,a)=>{if(o)for(let c=parseInt(o);c>=0;c--)n.push(";");else n.push(s.toLowerCase());return""});if(r)throw new Error(`leftovers: ${JSON.stringify(r)}`);return FS(FS(n,";"),":")}function Ywe(t){return M(t[0]==="0","unsupported auwl data","data",t),Zwe(t.substring(1+2*v2.length),t.substring(1,1+2*v2.length))}class Jwe{constructor(e){G(this,"locale");Me(this,{locale:e})}split(e){return e.toLowerCase().split(/\s+/g)}join(e){return e.join(" ")}}var Lp,R1,vd,O1,_4;class Qwe extends Jwe{constructor(n,r,i){super(n);K(this,O1);K(this,Lp);K(this,R1);K(this,vd);k(this,Lp,r),k(this,R1,i),k(this,vd,null)}get _data(){return y(this,Lp)}_decodeWords(){return Ywe(y(this,Lp))}getWord(n){const r=X(this,O1,_4).call(this);return M(n>=0&&n<r.length,`invalid word index: ${n}`,"index",n),r[n]}getWordIndex(n){return X(this,O1,_4).call(this).indexOf(n)}}Lp=new WeakMap,R1=new WeakMap,vd=new WeakMap,O1=new WeakSet,_4=function(){if(y(this,vd)==null){const n=this._decodeWords();if(Oc(n.join(`
|
|
7197
7197
|
`)+`
|
|
7198
|
-
`)!==y(this,R1))throw new Error(`BIP39 Wordlist for ${this.locale} FAILED`);k(this,vd,n)}return y(this,vd)};const Xwe="0erleonalorenseinceregesticitStanvetearctssi#ch2Athck&tneLl0And#Il.yLeOutO=S|S%b/ra@SurdU'0Ce[Cid|CountCu'Hie=IdOu,-Qui*Ro[TT]T%T*[Tu$0AptDD-tD*[Ju,M.UltV<)Vi)0Rob-0FairF%dRaid0A(EEntRee0Ead0MRRp%tS!_rmBumCoholErtI&LLeyLowMo,O}PhaReadySoT Ways0A>urAz(gOngOuntU'd0Aly,Ch%Ci|G G!GryIm$K!Noun)Nu$O` Sw T&naTiqueXietyY1ArtOlogyPe?P!Pro=Ril1ChCt-EaEnaGueMMedM%MyOundR<+Re,Ri=RowTTefa@Ti,Tw%k0KPe@SaultSetSi,SumeThma0H!>OmTa{T&dT.udeTra@0Ct]D.Gu,NtTh%ToTumn0Era+OcadoOid0AkeA*AyEsomeFulKw?d0Is:ByChel%C#D+GL<)Lc#y~MbooN<aNn RRelyRga(R*lSeS-SketTt!3A^AnAutyCau'ComeEfF%eG(Ha=H(dLie=LowLtN^Nef./TrayTt Twe&Y#d3Cyc!DKeNdOlogyRdR`Tt _{AdeAmeAnketA,EakE[IndOodO[omOu'UeUrUsh_rdAtDyIlMbNeNusOkO,Rd R(gRrowSsTtomUn)XY_{etA(AndA[A=EadEezeI{Id+IefIghtIngIskOccoliOk&OnzeOomO` OwnUsh2Bb!DdyD+tFf$oIldLbLkL!tNd!Nk Rd&Rg R,SS(e[SyTt Y Zz:Bba+B(B!CtusGeKe~LmM aMpNN$N)lNdyNn#NoeNvasNy#Pab!P.$Pta(RRb#RdRgoRpetRryRtSeShS(o/!Su$TT$ogT^Teg%yTt!UghtU'Ut]Ve3Il(gL yM|NsusNturyRe$Rta(_irAlkAmp]An+AosApt Ar+A'AtEapE{Ee'EfErryE,I{&IefIldIm}yOi)Oo'R#-U{!UnkUrn0G?Nnam#Rc!Tiz&TyVil_imApArifyAwAyE<ErkEv I{I|IffImbIn-IpO{OgO'O`OudOwnUbUmpU, Ut^_^A,C#utDeFfeeIlInL!@L%LumnMb(eMeMf%tM-Mm#Mp<yNc tNdu@NfirmNg*[N}@Nsid NtrolNv()OkOlPp PyR$ReRnR*@/Tt#U^UntryUp!Ur'Us(V Yo>_{Ad!AftAmA}AshAt AwlAzyEamEd.EekEwI{etImeIspIt-OpO[Ou^OwdUci$UelUi'Umb!Un^UshYY,$2BeLtu*PPbo?dRiousRr|Rta(R=Sh]/omTe3C!:DMa+MpN)Ng R(gShUght WnY3AlBa>BrisCadeCemb CideCl(eC%a>C*a'ErF&'F(eFyG*eLayLiv M<dMi'Ni$Nti,NyP?tP&dPos.P`PutyRi=ScribeS tSignSkSpair/royTailTe@VelopVi)Vo>3AgramAlAm#dAryCeE'lEtFf G.$Gn.yLemmaNn NosaurRe@RtSag*eScov Sea'ShSmi[S%d Splay/<)V tVideV%)Zzy5Ct%Cum|G~Lph(Ma(Na>NkeyN%OrSeUb!Ve_ftAg#AmaA,-AwEamE[IftIllInkIpI=OpUmY2CkMbNeR(g/T^Ty1Arf1Nam-:G G!RlyRnR`Sily/Sy1HoOlogyOnomy0GeItUca>1F%t0G1GhtTh 2BowD E@r-Eg<tEm|Eph<tEvat%I>Se0B?kBodyBra)Er+Ot]PloyPow Pty0Ab!A@DD![D%'EmyErgyF%)Ga+G(eH<)JoyLi,OughR-hRollSu*T Ti*TryVelope1Isode0U$Uip0AA'OdeOs]R%Upt0CapeSayS&)Ta>0Ern$H-s1Id&)IlOkeOl=1A@Amp!Ce[Ch<+C.eCludeCu'Ecu>Erci'Hau,Hib.I!I,ItOt-P<dPe@Pi*Pla(Po'P*[T&dTra0EEbrow:Br-CeCultyDeIntI`~L'MeMilyMousNNcyNtasyRmSh]TT$Th TigueUltV%.e3Atu*Bru?yD $EEdElMa!N)/iv$T^V W3B Ct]EldGu*LeLmLt N$NdNeNg NishReRmR,Sc$ShTT}[X_gAmeAshAtAv%EeIghtIpOatO{O%Ow UidUshY_mCusGIlLd~owOdOtR)Re,R+tRkRtu}RumRw?dSsil/ UndX_gi!AmeEqu|EshI&dIn+OgOntO,OwnOz&U.2ElNNnyRna)RyTu*:D+tInLaxy~ yMePRa+Rba+Rd&Rl-Rm|SSpTeTh U+Ze3N $NiusN*Nt!Nu(e/u*2O,0AntFtGg!Ng RaffeRlVe_dAn)A*A[IdeImp'ObeOomOryO=OwUe_tDde[LdOdO'RillaSpelSsipV nWn_bA)A(AntApeA[Av.yEatE&IdIefItOc yOupOwUnt_rdE[IdeIltIt?N3M:B.IrLfMm M, NdPpyRb%RdRshR=,TVeWkZ?d3AdAl`ArtAvyD+hogIght~oLmetLpNRo3Dd&Gh~NtPRe/%y5BbyCkeyLdLeLiday~owMeNeyOdPeRnRr%R'Sp.$/TelUrV 5BGeM<Mb!M%Nd*dNgryNtRd!RryRtSb<d3Brid:1EOn0EaEntifyLe2N%e4LLeg$L}[0A+Ita>M&'Mu}Pa@Po'Pro=Pul'0ChCludeComeC*a'DexD-a>Do%Du,ryF<tFl-tF%mHa!H .Iti$Je@JuryMa>N Noc|PutQuiryS<eSe@SideSpi*/$lTa@T e,ToVe,V.eVol=3On0L<dOla>Sue0Em1Ory:CketGu?RZz3AlousAns~yWel9BInKeUr}yY5D+I)MpNg!Ni%Nk/:Ng?oo3EnEpT^upY3CkDD}yNdNgdomSsTT^&TeTt&Wi4EeIfeO{Ow:BBelB%Dd DyKeMpNgua+PtopR+T T(UghUndryVaWWnWsu.Y Zy3Ad AfArnA=Ctu*FtGG$G&dIsu*M#NdNg`NsOp?dSs#Tt Vel3ArB tyBr?yC&'FeFtGhtKeMbM.NkOnQuid/Tt!VeZ?d5AdAnB, C$CkG-NelyNgOpTt yUdUn+VeY$5CkyGga+Mb N?N^Xury3R-s:Ch(eDG-G}tIdIlInJ%KeMm$NNa+Nda>NgoNs]Nu$P!Rb!R^Rg(R(eRketRria+SkSs/ T^T i$ThTrixTt XimumZe3AdowAnAsu*AtCh<-D$DiaLodyLtMb M%yNt]NuRcyR+R.RryShSsa+T$Thod3Dd!DnightLk~]M-NdNimumN%Nu>Rac!Rr%S ySs/akeXXedXtu*5Bi!DelDifyMM|N.%NkeyN, N`OnR$ReRn(gSqu.oTh T]T%Unta(U'VeVie5ChFf(LeLtiplySc!SeumShroomS-/Tu$3Self/ yTh:I=MePk(Rrow/yT]Tu*3ArCkEdGati=G!@I` PhewR=/TTw%kUtr$V WsXt3CeGht5B!I'M(eeOd!Rm$R`SeTab!TeTh(gTi)VelW5C!?Mb R'T:K0EyJe@Li+Scu*S =Ta(Vious0CurE<Tob 0Or1FF Fi)T&2L1Ay0DI=Ymp-0It0CeEI#L(eLy1EnEraIn]Po'T]1An+B.Ch?dD D(?yG<I|Ig($Ph<0Tr-h0H 0Tdo%T TputTside0AlEnEr0NN 0Yg&0/ 0O}:CtDd!GeIrLa)LmNdaNelN-N` P RadeR|RkRrotRtySsT^ThTi|TrolTt nU'VeYm|3A)AnutArAs<tL-<NN$tyNcilOp!Pp Rfe@Rm.Rs#T2O}OtoRa'Ys-$0AnoCn-Ctu*E)GGe#~LotNkO} Pe/olT^Zza_)A}tA,-A>AyEa'Ed+U{UgUn+2EmEtIntL?LeLi)NdNyOlPul?Rt]S.]Ssib!/TatoTt yV tyWd W _@i)Ai'Ed-tEf Epa*Es|EttyEv|I)IdeIm?yIntI%.yIs#Iva>IzeOb!mO)[Odu)Of.OgramOje@Omo>OofOp tyOsp O>@OudOvide2Bl-Dd(g~LpL'Mpk(N^PilPpyR^a'R.yRpo'R'ShTZz!3Ramid:99Al.yAntumArt E,]I{ItIzO>:Bb.Cco#CeCkD?DioIlInI'~yMpN^NdomN+PidReTeTh V&WZ%3AdyAlAs#BelBuildC$lCei=CipeC%dCyc!Du)F!@F%mFu'G]G*tGul?Je@LaxLea'LiefLyMa(Memb M(dMo=Nd NewNtOp&PairPeatPla)P%tQui*ScueSemb!Si,Sour)Sp#'SultTi*T*atTurnUn]Ve$ViewW?d2Y`m0BBb#CeChDeD+F!GhtGidNgOtPp!SkTu$V$V 5AdA,BotBu,CketM<)OfOkieOmSeTa>UghUndU>Y$5Bb DeGLeNNwayR$:DDd!D}[FeIlLadLm#L#LtLu>MeMp!NdTisfyToshiU)Usa+VeY1A!AnA*Att E}HemeHoolI&)I[%sOrp]OutRapRe&RiptRub1AAr^As#AtC#dC*tCt]Cur.yEdEkGm|Le@~M(?Ni%N'Nt&)RiesRvi)Ss]Tt!TupV&_dowAftAllowA*EdEllEriffIeldIftI}IpIv O{OeOotOpOrtOuld O=RimpRugUff!Y0Bl(gCkDeE+GhtGnL|Lk~yLv Mil?Mp!N)NgR&/ Tua>XZe1A>Et^IIllInIrtUll0AbAmEepEnd I)IdeIghtImOg<OtOwUsh0AllArtI!OkeOo`0A{AkeApIffOw0ApCc Ci$CkDaFtL?Ldi LidLut]L=Me#eNgOnRryRtUlUndUpUr)U`0A)A*Ati$AwnEakEci$EedEllEndH eI)Id IkeInIr.L.OilOns%O#OrtOtRayReadR(gY0Ua*UeezeUir*l_b!AdiumAffA+AirsAmpAndArtA>AyEakEelEmEpE*oI{IllIngO{Oma^O}OolOryO=Ra>gyReetRikeR#gRugg!Ud|UffUmb!Y!0Bje@Bm.BwayC)[ChDd&Ff G?G+,ItMm NNnyN'tP PplyP*meReRfa)R+Rpri'RroundR=ySpe@/a(1AllowAmpApArmE?EetIftImIngIt^Ord1MbolMptomRup/em:B!Ck!GIlL|LkNkPeR+tSk/eTtooXi3A^Am~NN<tNnisNtRm/Xt_nkAtEmeEnE%yE*EyIngIsOughtReeRi=RowUmbUnd 0CketDeG LtMb MeNyPRedSsueT!5A,BaccoDayDdl EGe` I!tK&MatoM%rowNeNgueNightOlO`PP-Pp!R^RnadoRtoi'SsT$Uri,W?dW WnY_{AdeAff-Ag-A(Ansf ApAshA=lAyEatEeEndI$IbeI{Igg ImIpOphyOub!U{UeUlyUmpetU,U`Y2BeIt]Mb!NaN}lRkeyRnRt!1El=EntyI)InI,O1PeP-$:5Ly5B*lla0Ab!Awa*C!Cov D DoFairFoldHappyIf%mIqueItIv 'KnownLo{TilUsu$Veil1Da>GradeHoldOnP Set1B<Ge0A+EEdEfulE![U$0Il.y:C<tCuumGueLidL!yL=NNishP%Rious/Ult3H-!L=tNd%Ntu*NueRbRifyRs]RyS'lT <3Ab!Br<tCiousCt%yDeoEw~a+Nta+Ol(Rtu$RusSaS.Su$T$Vid5C$I)IdLc<oLumeTeYa+:GeG#ItLk~LnutNtRfa*RmRri%ShSp/eT VeY3Al`Ap#ArA'lA` BDd(gEk&dIrdLcome/T_!AtEatEelEnE*IpIsp 0DeD`FeLd~NNdowNeNgNkNn Nt ReSdomSeShT}[5LfM<Nd OdOlRdRkRldRryR`_pE{E,!I,I>Ong::Rd3Ar~ow9UUngU`:3BraRo9NeO",eye="0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60";let ZE=null;class bh extends Qwe{constructor(){super("en",Xwe,eye)}static wordlist(){return ZE==null&&(ZE=new bh),ZE}}function DB(t){return(1<<t)-1<<8-t&255}function tye(t){return(1<<t)-1&255}function YE(t,e){m$("NFKD"),e==null&&(e=bh.wordlist());const n=e.split(t);M(n.length%3===0&&n.length>=12&&n.length<=24,"invalid mnemonic length","mnemonic","[ REDACTED ]");const r=new Uint8Array(Math.ceil(11*n.length/8));let i=0;for(let l=0;l<n.length;l++){let u=e.getWordIndex(n[l].normalize("NFKD"));M(u>=0,`invalid mnemonic word at index ${l}`,"mnemonic","[ REDACTED ]");for(let d=0;d<11;d++)u&1<<10-d&&(r[i>>3]|=1<<7-i%8),i++}const s=32*n.length/3,o=n.length/3,a=DB(o),c=Ae(ks(r.slice(0,s/8)))[0]&a;return M(c===(r[r.length-1]&a),"invalid mnemonic checksum","mnemonic","[ REDACTED ]"),de(r.slice(0,s/8))}function JE(t,e){M(t.length%4===0&&t.length>=16&&t.length<=32,"invalid entropy size","entropy","[ REDACTED ]"),e==null&&(e=bh.wordlist());const n=[0];let r=11;for(let o=0;o<t.length;o++)r>8?(n[n.length-1]<<=8,n[n.length-1]|=t[o],r-=8):(n[n.length-1]<<=r,n[n.length-1]|=t[o]>>8-r,n.push(t[o]&tye(8-r)),r+=3);const i=t.length/4,s=parseInt(ks(t).substring(2,4),16)&DB(i);return n[n.length-1]<<=i,n[n.length-1]|=s>>8-i,e.join(n.map(o=>e.getWord(o)))}const QE={};class W0{constructor(e,n,r,i,s){G(this,"phrase");G(this,"password");G(this,"wordlist");G(this,"entropy");i==null&&(i=""),s==null&&(s=bh.wordlist()),gu(e,QE,"Mnemonic"),Me(this,{phrase:r,password:i,wordlist:s,entropy:n})}computeSeed(){const e=Sr("mnemonic"+this.password,"NFKD");return mu(Sr(this.phrase,"NFKD"),e,2048,64,"sha512")}static fromPhrase(e,n,r){const i=YE(e,r);return e=JE(Ae(i),r),new W0(QE,i,e,n,r)}static fromEntropy(e,n,r){const i=Ae(e,"entropy"),s=JE(i,r);return new W0(QE,de(i),s,n,r)}static entropyToPhrase(e,n){const r=Ae(e,"entropy");return JE(r,n)}static phraseToEntropy(e,n){return YE(e,n)}static isValidMnemonic(e,n){try{return YE(e,n),!0}catch{}return!1}}/*! MIT License. Copyright 2015-2022 Richard Moore <me@ricmoo.com>. See LICENSE.txt. */var tr=function(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)},XE=function(t,e,n,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(t,n):i?i.value=n:e.set(t,n),n},ob,ds,Po;const nye={16:10,24:12,32:14},rye=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],cs=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],Py=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],iye=[3328402341,4168907908,4000806809,4135287693,4294111757,3597364157,3731845041,2445657428,1613770832,33620227,3462883241,1445669757,3892248089,3050821474,1303096294,3967186586,2412431941,528646813,2311702848,4202528135,4026202645,2992200171,2387036105,4226871307,1101901292,3017069671,1604494077,1169141738,597466303,1403299063,3832705686,2613100635,1974974402,3791519004,1033081774,1277568618,1815492186,2118074177,4126668546,2211236943,1748251740,1369810420,3521504564,4193382664,3799085459,2883115123,1647391059,706024767,134480908,2512897874,1176707941,2646852446,806885416,932615841,168101135,798661301,235341577,605164086,461406363,3756188221,3454790438,1311188841,2142417613,3933566367,302582043,495158174,1479289972,874125870,907746093,3698224818,3025820398,1537253627,2756858614,1983593293,3084310113,2108928974,1378429307,3722699582,1580150641,327451799,2790478837,3117535592,0,3253595436,1075847264,3825007647,2041688520,3059440621,3563743934,2378943302,1740553945,1916352843,2487896798,2555137236,2958579944,2244988746,3151024235,3320835882,1336584933,3992714006,2252555205,2588757463,1714631509,293963156,2319795663,3925473552,67240454,4269768577,2689618160,2017213508,631218106,1269344483,2723238387,1571005438,2151694528,93294474,1066570413,563977660,1882732616,4059428100,1673313503,2008463041,2950355573,1109467491,537923632,3858759450,4260623118,3218264685,2177748300,403442708,638784309,3287084079,3193921505,899127202,2286175436,773265209,2479146071,1437050866,4236148354,2050833735,3362022572,3126681063,840505643,3866325909,3227541664,427917720,2655997905,2749160575,1143087718,1412049534,999329963,193497219,2353415882,3354324521,1807268051,672404540,2816401017,3160301282,369822493,2916866934,3688947771,1681011286,1949973070,336202270,2454276571,201721354,1210328172,3093060836,2680341085,3184776046,1135389935,3294782118,965841320,831886756,3554993207,4068047243,3588745010,2345191491,1849112409,3664604599,26054028,2983581028,2622377682,1235855840,3630984372,2891339514,4092916743,3488279077,3395642799,4101667470,1202630377,268961816,1874508501,4034427016,1243948399,1546530418,941366308,1470539505,1941222599,2546386513,3421038627,2715671932,3899946140,1042226977,2521517021,1639824860,227249030,260737669,3765465232,2084453954,1907733956,3429263018,2420656344,100860677,4160157185,470683154,3261161891,1781871967,2924959737,1773779408,394692241,2579611992,974986535,664706745,3655459128,3958962195,731420851,571543859,3530123707,2849626480,126783113,865375399,765172662,1008606754,361203602,3387549984,2278477385,2857719295,1344809080,2782912378,59542671,1503764984,160008576,437062935,1707065306,3622233649,2218934982,3496503480,2185314755,697932208,1512910199,504303377,2075177163,2824099068,1841019862,739644986],sye=[2781242211,2230877308,2582542199,2381740923,234877682,3184946027,2984144751,1418839493,1348481072,50462977,2848876391,2102799147,434634494,1656084439,3863849899,2599188086,1167051466,2636087938,1082771913,2281340285,368048890,3954334041,3381544775,201060592,3963727277,1739838676,4250903202,3930435503,3206782108,4149453988,2531553906,1536934080,3262494647,484572669,2923271059,1783375398,1517041206,1098792767,49674231,1334037708,1550332980,4098991525,886171109,150598129,2481090929,1940642008,1398944049,1059722517,201851908,1385547719,1699095331,1587397571,674240536,2704774806,252314885,3039795866,151914247,908333586,2602270848,1038082786,651029483,1766729511,3447698098,2682942837,454166793,2652734339,1951935532,775166490,758520603,3000790638,4004797018,4217086112,4137964114,1299594043,1639438038,3464344499,2068982057,1054729187,1901997871,2534638724,4121318227,1757008337,0,750906861,1614815264,535035132,3363418545,3988151131,3201591914,1183697867,3647454910,1265776953,3734260298,3566750796,3903871064,1250283471,1807470800,717615087,3847203498,384695291,3313910595,3617213773,1432761139,2484176261,3481945413,283769337,100925954,2180939647,4037038160,1148730428,3123027871,3813386408,4087501137,4267549603,3229630528,2315620239,2906624658,3156319645,1215313976,82966005,3747855548,3245848246,1974459098,1665278241,807407632,451280895,251524083,1841287890,1283575245,337120268,891687699,801369324,3787349855,2721421207,3431482436,959321879,1469301956,4065699751,2197585534,1199193405,2898814052,3887750493,724703513,2514908019,2696962144,2551808385,3516813135,2141445340,1715741218,2119445034,2872807568,2198571144,3398190662,700968686,3547052216,1009259540,2041044702,3803995742,487983883,1991105499,1004265696,1449407026,1316239930,504629770,3683797321,168560134,1816667172,3837287516,1570751170,1857934291,4014189740,2797888098,2822345105,2754712981,936633572,2347923833,852879335,1133234376,1500395319,3084545389,2348912013,1689376213,3533459022,3762923945,3034082412,4205598294,133428468,634383082,2949277029,2398386810,3913789102,403703816,3580869306,2297460856,1867130149,1918643758,607656988,4049053350,3346248884,1368901318,600565992,2090982877,2632479860,557719327,3717614411,3697393085,2249034635,2232388234,2430627952,1115438654,3295786421,2865522278,3633334344,84280067,33027830,303828494,2747425121,1600795957,4188952407,3496589753,2434238086,1486471617,658119965,3106381470,953803233,334231800,3005978776,857870609,3151128937,1890179545,2298973838,2805175444,3056442267,574365214,2450884487,550103529,1233637070,4289353045,2018519080,2057691103,2399374476,4166623649,2148108681,387583245,3664101311,836232934,3330556482,3100665960,3280093505,2955516313,2002398509,287182607,3413881008,4238890068,3597515707,975967766],oye=[1671808611,2089089148,2006576759,2072901243,4061003762,1807603307,1873927791,3310653893,810573872,16974337,1739181671,729634347,4263110654,3613570519,2883997099,1989864566,3393556426,2191335298,3376449993,2106063485,4195741690,1508618841,1204391495,4027317232,2917941677,3563566036,2734514082,2951366063,2629772188,2767672228,1922491506,3227229120,3082974647,4246528509,2477669779,644500518,911895606,1061256767,4144166391,3427763148,878471220,2784252325,3845444069,4043897329,1905517169,3631459288,827548209,356461077,67897348,3344078279,593839651,3277757891,405286936,2527147926,84871685,2595565466,118033927,305538066,2157648768,3795705826,3945188843,661212711,2999812018,1973414517,152769033,2208177539,745822252,439235610,455947803,1857215598,1525593178,2700827552,1391895634,994932283,3596728278,3016654259,695947817,3812548067,795958831,2224493444,1408607827,3513301457,0,3979133421,543178784,4229948412,2982705585,1542305371,1790891114,3410398667,3201918910,961245753,1256100938,1289001036,1491644504,3477767631,3496721360,4012557807,2867154858,4212583931,1137018435,1305975373,861234739,2241073541,1171229253,4178635257,33948674,2139225727,1357946960,1011120188,2679776671,2833468328,1374921297,2751356323,1086357568,2408187279,2460827538,2646352285,944271416,4110742005,3168756668,3066132406,3665145818,560153121,271589392,4279952895,4077846003,3530407890,3444343245,202643468,322250259,3962553324,1608629855,2543990167,1154254916,389623319,3294073796,2817676711,2122513534,1028094525,1689045092,1575467613,422261273,1939203699,1621147744,2174228865,1339137615,3699352540,577127458,712922154,2427141008,2290289544,1187679302,3995715566,3100863416,339486740,3732514782,1591917662,186455563,3681988059,3762019296,844522546,978220090,169743370,1239126601,101321734,611076132,1558493276,3260915650,3547250131,2901361580,1655096418,2443721105,2510565781,3828863972,2039214713,3878868455,3359869896,928607799,1840765549,2374762893,3580146133,1322425422,2850048425,1823791212,1459268694,4094161908,3928346602,1706019429,2056189050,2934523822,135794696,3134549946,2022240376,628050469,779246638,472135708,2800834470,3032970164,3327236038,3894660072,3715932637,1956440180,522272287,1272813131,3185336765,2340818315,2323976074,1888542832,1044544574,3049550261,1722469478,1222152264,50660867,4127324150,236067854,1638122081,895445557,1475980887,3117443513,2257655686,3243809217,489110045,2662934430,3778599393,4162055160,2561878936,288563729,1773916777,3648039385,2391345038,2493985684,2612407707,505560094,2274497927,3911240169,3460925390,1442818645,678973480,3749357023,2358182796,2717407649,2306869641,219617805,3218761151,3862026214,1120306242,1756942440,1103331905,2578459033,762796589,252780047,2966125488,1425844308,3151392187,372911126],aye=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],cye=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890],lye=[1347548327,1400783205,3273267108,2520393566,3409685355,4045380933,2880240216,2471224067,1428173050,4138563181,2441661558,636813900,4233094615,3620022987,2149987652,2411029155,1239331162,1730525723,2554718734,3781033664,46346101,310463728,2743944855,3328955385,3875770207,2501218972,3955191162,3667219033,768917123,3545789473,692707433,1150208456,1786102409,2029293177,1805211710,3710368113,3065962831,401639597,1724457132,3028143674,409198410,2196052529,1620529459,1164071807,3769721975,2226875310,486441376,2499348523,1483753576,428819965,2274680428,3075636216,598438867,3799141122,1474502543,711349675,129166120,53458370,2592523643,2782082824,4063242375,2988687269,3120694122,1559041666,730517276,2460449204,4042459122,2706270690,3446004468,3573941694,533804130,2328143614,2637442643,2695033685,839224033,1973745387,957055980,2856345839,106852767,1371368976,4181598602,1033297158,2933734917,1179510461,3046200461,91341917,1862534868,4284502037,605657339,2547432937,3431546947,2003294622,3182487618,2282195339,954669403,3682191598,1201765386,3917234703,3388507166,0,2198438022,1211247597,2887651696,1315723890,4227665663,1443857720,507358933,657861945,1678381017,560487590,3516619604,975451694,2970356327,261314535,3535072918,2652609425,1333838021,2724322336,1767536459,370938394,182621114,3854606378,1128014560,487725847,185469197,2918353863,3106780840,3356761769,2237133081,1286567175,3152976349,4255350624,2683765030,3160175349,3309594171,878443390,1988838185,3704300486,1756818940,1673061617,3403100636,272786309,1075025698,545572369,2105887268,4174560061,296679730,1841768865,1260232239,4091327024,3960309330,3497509347,1814803222,2578018489,4195456072,575138148,3299409036,446754879,3629546796,4011996048,3347532110,3252238545,4270639778,915985419,3483825537,681933534,651868046,2755636671,3828103837,223377554,2607439820,1649704518,3270937875,3901806776,1580087799,4118987695,3198115200,2087309459,2842678573,3016697106,1003007129,2802849917,1860738147,2077965243,164439672,4100872472,32283319,2827177882,1709610350,2125135846,136428751,3874428392,3652904859,3460984630,3572145929,3593056380,2939266226,824852259,818324884,3224740454,930369212,2801566410,2967507152,355706840,1257309336,4148292826,243256656,790073846,2373340630,1296297904,1422699085,3756299780,3818836405,457992840,3099667487,2135319889,77422314,1560382517,1945798516,788204353,1521706781,1385356242,870912086,325965383,2358957921,2050466060,2388260884,2313884476,4006521127,901210569,3990953189,1014646705,1503449823,1062597235,2031621326,3212035895,3931371469,1533017514,350174575,2256028891,2177544179,1052338372,741876788,1606591296,1914052035,213705253,2334669897,1107234197,1899603969,3725069491,2631447780,2422494913,1635502980,1893020342,1950903388,1120974935],uye=[2807058932,1699970625,2764249623,1586903591,1808481195,1173430173,1487645946,59984867,4199882800,1844882806,1989249228,1277555970,3623636965,3419915562,1149249077,2744104290,1514790577,459744698,244860394,3235995134,1963115311,4027744588,2544078150,4190530515,1608975247,2627016082,2062270317,1507497298,2200818878,567498868,1764313568,3359936201,2305455554,2037970062,1047239e3,1910319033,1337376481,2904027272,2892417312,984907214,1243112415,830661914,861968209,2135253587,2011214180,2927934315,2686254721,731183368,1750626376,4246310725,1820824798,4172763771,3542330227,48394827,2404901663,2871682645,671593195,3254988725,2073724613,145085239,2280796200,2779915199,1790575107,2187128086,472615631,3029510009,4075877127,3802222185,4107101658,3201631749,1646252340,4270507174,1402811438,1436590835,3778151818,3950355702,3963161475,4020912224,2667994737,273792366,2331590177,104699613,95345982,3175501286,2377486676,1560637892,3564045318,369057872,4213447064,3919042237,1137477952,2658625497,1119727848,2340947849,1530455833,4007360968,172466556,266959938,516552836,0,2256734592,3980931627,1890328081,1917742170,4294704398,945164165,3575528878,958871085,3647212047,2787207260,1423022939,775562294,1739656202,3876557655,2530391278,2443058075,3310321856,547512796,1265195639,437656594,3121275539,719700128,3762502690,387781147,218828297,3350065803,2830708150,2848461854,428169201,122466165,3720081049,1627235199,648017665,4122762354,1002783846,2117360635,695634755,3336358691,4234721005,4049844452,3704280881,2232435299,574624663,287343814,612205898,1039717051,840019705,2708326185,793451934,821288114,1391201670,3822090177,376187827,3113855344,1224348052,1679968233,2361698556,1058709744,752375421,2431590963,1321699145,3519142200,2734591178,188127444,2177869557,3727205754,2384911031,3215212461,2648976442,2450346104,3432737375,1180849278,331544205,3102249176,4150144569,2952102595,2159976285,2474404304,766078933,313773861,2570832044,2108100632,1668212892,3145456443,2013908262,418672217,3070356634,2594734927,1852171925,3867060991,3473416636,3907448597,2614737639,919489135,164948639,2094410160,2997825956,590424639,2486224549,1723872674,3157750862,3399941250,3501252752,3625268135,2555048196,3673637356,1343127501,4130281361,3599595085,2957853679,1297403050,81781910,3051593425,2283490410,532201772,1367295589,3926170974,895287692,1953757831,1093597963,492483431,3528626907,1446242576,1192455638,1636604631,209336225,344873464,1015671571,669961897,3375740769,3857572124,2973530695,3747192018,1933530610,3464042516,935293895,3454686199,2858115069,1863638845,3683022916,4085369519,3292445032,875313188,1080017571,3279033885,621591778,1233856572,2504130317,24197544,3017672716,3835484340,3247465558,2220981195,3060847922,1551124588,1463996600],dye=[4104605777,1097159550,396673818,660510266,2875968315,2638606623,4200115116,3808662347,821712160,1986918061,3430322568,38544885,3856137295,718002117,893681702,1654886325,2975484382,3122358053,3926825029,4274053469,796197571,1290801793,1184342925,3556361835,2405426947,2459735317,1836772287,1381620373,3196267988,1948373848,3764988233,3385345166,3263785589,2390325492,1480485785,3111247143,3780097726,2293045232,548169417,3459953789,3746175075,439452389,1362321559,1400849762,1685577905,1806599355,2174754046,137073913,1214797936,1174215055,3731654548,2079897426,1943217067,1258480242,529487843,1437280870,3945269170,3049390895,3313212038,923313619,679998e3,3215307299,57326082,377642221,3474729866,2041877159,133361907,1776460110,3673476453,96392454,878845905,2801699524,777231668,4082475170,2330014213,4142626212,2213296395,1626319424,1906247262,1846563261,562755902,3708173718,1040559837,3871163981,1418573201,3294430577,114585348,1343618912,2566595609,3186202582,1078185097,3651041127,3896688048,2307622919,425408743,3371096953,2081048481,1108339068,2216610296,0,2156299017,736970802,292596766,1517440620,251657213,2235061775,2933202493,758720310,265905162,1554391400,1532285339,908999204,174567692,1474760595,4002861748,2610011675,3234156416,3693126241,2001430874,303699484,2478443234,2687165888,585122620,454499602,151849742,2345119218,3064510765,514443284,4044981591,1963412655,2581445614,2137062819,19308535,1928707164,1715193156,4219352155,1126790795,600235211,3992742070,3841024952,836553431,1669664834,2535604243,3323011204,1243905413,3141400786,4180808110,698445255,2653899549,2989552604,2253581325,3252932727,3004591147,1891211689,2487810577,3915653703,4237083816,4030667424,2100090966,865136418,1229899655,953270745,3399679628,3557504664,4118925222,2061379749,3079546586,2915017791,983426092,2022837584,1607244650,2118541908,2366882550,3635996816,972512814,3283088770,1568718495,3499326569,3576539503,621982671,2895723464,410887952,2623762152,1002142683,645401037,1494807662,2595684844,1335535747,2507040230,4293295786,3167684641,367585007,3885750714,1865862730,2668221674,2960971305,2763173681,1059270954,2777952454,2724642869,1320957812,2194319100,2429595872,2815956275,77089521,3973773121,3444575871,2448830231,1305906550,4021308739,2857194700,2516901860,3518358430,1787304780,740276417,1699839814,1592394909,2352307457,2272556026,188821243,1729977011,3687994002,274084841,3594982253,3613494426,2701949495,4162096729,322734571,2837966542,1640576439,484830689,1202797690,3537852828,4067639125,349075736,3342319475,4157467219,4255800159,1030690015,1155237496,2951971274,1757691577,607398968,2738905026,499347990,3794078908,1011452712,227885567,2818666809,213114376,3034881240,1455525988,3414450555,850817237,1817998408,3092726480],hye=[0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795],fye=[0,185469197,370938394,487725847,741876788,657861945,975451694,824852259,1483753576,1400783205,1315723890,1164071807,1950903388,2135319889,1649704518,1767536459,2967507152,3152976349,2801566410,2918353863,2631447780,2547432937,2328143614,2177544179,3901806776,3818836405,4270639778,4118987695,3299409036,3483825537,3535072918,3652904859,2077965243,1893020342,1841768865,1724457132,1474502543,1559041666,1107234197,1257309336,598438867,681933534,901210569,1052338372,261314535,77422314,428819965,310463728,3409685355,3224740454,3710368113,3593056380,3875770207,3960309330,4045380933,4195456072,2471224067,2554718734,2237133081,2388260884,3212035895,3028143674,2842678573,2724322336,4138563181,4255350624,3769721975,3955191162,3667219033,3516619604,3431546947,3347532110,2933734917,2782082824,3099667487,3016697106,2196052529,2313884476,2499348523,2683765030,1179510461,1296297904,1347548327,1533017514,1786102409,1635502980,2087309459,2003294622,507358933,355706840,136428751,53458370,839224033,957055980,605657339,790073846,2373340630,2256028891,2607439820,2422494913,2706270690,2856345839,3075636216,3160175349,3573941694,3725069491,3273267108,3356761769,4181598602,4063242375,4011996048,3828103837,1033297158,915985419,730517276,545572369,296679730,446754879,129166120,213705253,1709610350,1860738147,1945798516,2029293177,1239331162,1120974935,1606591296,1422699085,4148292826,4233094615,3781033664,3931371469,3682191598,3497509347,3446004468,3328955385,2939266226,2755636671,3106780840,2988687269,2198438022,2282195339,2501218972,2652609425,1201765386,1286567175,1371368976,1521706781,1805211710,1620529459,2105887268,1988838185,533804130,350174575,164439672,46346101,870912086,954669403,636813900,788204353,2358957921,2274680428,2592523643,2441661558,2695033685,2880240216,3065962831,3182487618,3572145929,3756299780,3270937875,3388507166,4174560061,4091327024,4006521127,3854606378,1014646705,930369212,711349675,560487590,272786309,457992840,106852767,223377554,1678381017,1862534868,1914052035,2031621326,1211247597,1128014560,1580087799,1428173050,32283319,182621114,401639597,486441376,768917123,651868046,1003007129,818324884,1503449823,1385356242,1333838021,1150208456,1973745387,2125135846,1673061617,1756818940,2970356327,3120694122,2802849917,2887651696,2637442643,2520393566,2334669897,2149987652,3917234703,3799141122,4284502037,4100872472,3309594171,3460984630,3545789473,3629546796,2050466060,1899603969,1814803222,1730525723,1443857720,1560382517,1075025698,1260232239,575138148,692707433,878443390,1062597235,243256656,91341917,409198410,325965383,3403100636,3252238545,3704300486,3620022987,3874428392,3990953189,4042459122,4227665663,2460449204,2578018489,2226875310,2411029155,3198115200,3046200461,2827177882,2743944855],pye=[0,218828297,437656594,387781147,875313188,958871085,775562294,590424639,1750626376,1699970625,1917742170,2135253587,1551124588,1367295589,1180849278,1265195639,3501252752,3720081049,3399941250,3350065803,3835484340,3919042237,4270507174,4085369519,3102249176,3051593425,2734591178,2952102595,2361698556,2177869557,2530391278,2614737639,3145456443,3060847922,2708326185,2892417312,2404901663,2187128086,2504130317,2555048196,3542330227,3727205754,3375740769,3292445032,3876557655,3926170974,4246310725,4027744588,1808481195,1723872674,1910319033,2094410160,1608975247,1391201670,1173430173,1224348052,59984867,244860394,428169201,344873464,935293895,984907214,766078933,547512796,1844882806,1627235199,2011214180,2062270317,1507497298,1423022939,1137477952,1321699145,95345982,145085239,532201772,313773861,830661914,1015671571,731183368,648017665,3175501286,2957853679,2807058932,2858115069,2305455554,2220981195,2474404304,2658625497,3575528878,3625268135,3473416636,3254988725,3778151818,3963161475,4213447064,4130281361,3599595085,3683022916,3432737375,3247465558,3802222185,4020912224,4172763771,4122762354,3201631749,3017672716,2764249623,2848461854,2331590177,2280796200,2431590963,2648976442,104699613,188127444,472615631,287343814,840019705,1058709744,671593195,621591778,1852171925,1668212892,1953757831,2037970062,1514790577,1463996600,1080017571,1297403050,3673637356,3623636965,3235995134,3454686199,4007360968,3822090177,4107101658,4190530515,2997825956,3215212461,2830708150,2779915199,2256734592,2340947849,2627016082,2443058075,172466556,122466165,273792366,492483431,1047239e3,861968209,612205898,695634755,1646252340,1863638845,2013908262,1963115311,1446242576,1530455833,1277555970,1093597963,1636604631,1820824798,2073724613,1989249228,1436590835,1487645946,1337376481,1119727848,164948639,81781910,331544205,516552836,1039717051,821288114,669961897,719700128,2973530695,3157750862,2871682645,2787207260,2232435299,2283490410,2667994737,2450346104,3647212047,3564045318,3279033885,3464042516,3980931627,3762502690,4150144569,4199882800,3070356634,3121275539,2904027272,2686254721,2200818878,2384911031,2570832044,2486224549,3747192018,3528626907,3310321856,3359936201,3950355702,3867060991,4049844452,4234721005,1739656202,1790575107,2108100632,1890328081,1402811438,1586903591,1233856572,1149249077,266959938,48394827,369057872,418672217,1002783846,919489135,567498868,752375421,209336225,24197544,376187827,459744698,945164165,895287692,574624663,793451934,1679968233,1764313568,2117360635,1933530610,1343127501,1560637892,1243112415,1192455638,3704280881,3519142200,3336358691,3419915562,3907448597,3857572124,4075877127,4294704398,3029510009,3113855344,2927934315,2744104290,2159976285,2377486676,2594734927,2544078150],gye=[0,151849742,303699484,454499602,607398968,758720310,908999204,1059270954,1214797936,1097159550,1517440620,1400849762,1817998408,1699839814,2118541908,2001430874,2429595872,2581445614,2194319100,2345119218,3034881240,3186202582,2801699524,2951971274,3635996816,3518358430,3399679628,3283088770,4237083816,4118925222,4002861748,3885750714,1002142683,850817237,698445255,548169417,529487843,377642221,227885567,77089521,1943217067,2061379749,1640576439,1757691577,1474760595,1592394909,1174215055,1290801793,2875968315,2724642869,3111247143,2960971305,2405426947,2253581325,2638606623,2487810577,3808662347,3926825029,4044981591,4162096729,3342319475,3459953789,3576539503,3693126241,1986918061,2137062819,1685577905,1836772287,1381620373,1532285339,1078185097,1229899655,1040559837,923313619,740276417,621982671,439452389,322734571,137073913,19308535,3871163981,4021308739,4104605777,4255800159,3263785589,3414450555,3499326569,3651041127,2933202493,2815956275,3167684641,3049390895,2330014213,2213296395,2566595609,2448830231,1305906550,1155237496,1607244650,1455525988,1776460110,1626319424,2079897426,1928707164,96392454,213114376,396673818,514443284,562755902,679998e3,865136418,983426092,3708173718,3557504664,3474729866,3323011204,4180808110,4030667424,3945269170,3794078908,2507040230,2623762152,2272556026,2390325492,2975484382,3092726480,2738905026,2857194700,3973773121,3856137295,4274053469,4157467219,3371096953,3252932727,3673476453,3556361835,2763173681,2915017791,3064510765,3215307299,2156299017,2307622919,2459735317,2610011675,2081048481,1963412655,1846563261,1729977011,1480485785,1362321559,1243905413,1126790795,878845905,1030690015,645401037,796197571,274084841,425408743,38544885,188821243,3613494426,3731654548,3313212038,3430322568,4082475170,4200115116,3780097726,3896688048,2668221674,2516901860,2366882550,2216610296,3141400786,2989552604,2837966542,2687165888,1202797690,1320957812,1437280870,1554391400,1669664834,1787304780,1906247262,2022837584,265905162,114585348,499347990,349075736,736970802,585122620,972512814,821712160,2595684844,2478443234,2293045232,2174754046,3196267988,3079546586,2895723464,2777952454,3537852828,3687994002,3234156416,3385345166,4142626212,4293295786,3841024952,3992742070,174567692,57326082,410887952,292596766,777231668,660510266,1011452712,893681702,1108339068,1258480242,1343618912,1494807662,1715193156,1865862730,1948373848,2100090966,2701949495,2818666809,3004591147,3122358053,2235061775,2352307457,2535604243,2653899549,3915653703,3764988233,4219352155,4067639125,3444575871,3294430577,3746175075,3594982253,836553431,953270745,600235211,718002117,367585007,484830689,133361907,251657213,2041877159,1891211689,1806599355,1654886325,1568718495,1418573201,1335535747,1184342925];function ev(t){const e=[];for(let n=0;n<t.length;n+=4)e.push(t[n]<<24|t[n+1]<<16|t[n+2]<<8|t[n+3]);return e}class J6{get key(){return tr(this,ob,"f").slice()}constructor(e){if(ob.set(this,void 0),ds.set(this,void 0),Po.set(this,void 0),!(this instanceof J6))throw Error("AES must be instanitated with `new`");XE(this,ob,new Uint8Array(e),"f");const n=nye[this.key.length];if(n==null)throw new TypeError("invalid key size (must be 16, 24 or 32 bytes)");XE(this,Po,[],"f"),XE(this,ds,[],"f");for(let u=0;u<=n;u++)tr(this,Po,"f").push([0,0,0,0]),tr(this,ds,"f").push([0,0,0,0]);const r=(n+1)*4,i=this.key.length/4,s=ev(this.key);let o;for(let u=0;u<i;u++)o=u>>2,tr(this,Po,"f")[o][u%4]=s[u],tr(this,ds,"f")[n-o][u%4]=s[u];let a=0,c=i,l;for(;c<r;){if(l=s[i-1],s[0]^=cs[l>>16&255]<<24^cs[l>>8&255]<<16^cs[l&255]<<8^cs[l>>24&255]^rye[a]<<24,a+=1,i!=8)for(let f=1;f<i;f++)s[f]^=s[f-1];else{for(let f=1;f<i/2;f++)s[f]^=s[f-1];l=s[i/2-1],s[i/2]^=cs[l&255]^cs[l>>8&255]<<8^cs[l>>16&255]<<16^cs[l>>24&255]<<24;for(let f=i/2+1;f<i;f++)s[f]^=s[f-1]}let u=0,d,h;for(;u<i&&c<r;)d=c>>2,h=c%4,tr(this,Po,"f")[d][h]=s[u],tr(this,ds,"f")[n-d][h]=s[u++],c++}for(let u=1;u<n;u++)for(let d=0;d<4;d++)l=tr(this,ds,"f")[u][d],tr(this,ds,"f")[u][d]=hye[l>>24&255]^fye[l>>16&255]^pye[l>>8&255]^gye[l&255]}encrypt(e){if(e.length!=16)throw new TypeError("invalid plaintext size (must be 16 bytes)");const n=tr(this,Po,"f").length-1,r=[0,0,0,0];let i=ev(e);for(let a=0;a<4;a++)i[a]^=tr(this,Po,"f")[0][a];for(let a=1;a<n;a++){for(let c=0;c<4;c++)r[c]=iye[i[c]>>24&255]^sye[i[(c+1)%4]>>16&255]^oye[i[(c+2)%4]>>8&255]^aye[i[(c+3)%4]&255]^tr(this,Po,"f")[a][c];i=r.slice()}const s=new Uint8Array(16);let o=0;for(let a=0;a<4;a++)o=tr(this,Po,"f")[n][a],s[4*a]=(cs[i[a]>>24&255]^o>>24)&255,s[4*a+1]=(cs[i[(a+1)%4]>>16&255]^o>>16)&255,s[4*a+2]=(cs[i[(a+2)%4]>>8&255]^o>>8)&255,s[4*a+3]=(cs[i[(a+3)%4]&255]^o)&255;return s}decrypt(e){if(e.length!=16)throw new TypeError("invalid ciphertext size (must be 16 bytes)");const n=tr(this,ds,"f").length-1,r=[0,0,0,0];let i=ev(e);for(let a=0;a<4;a++)i[a]^=tr(this,ds,"f")[0][a];for(let a=1;a<n;a++){for(let c=0;c<4;c++)r[c]=cye[i[c]>>24&255]^lye[i[(c+3)%4]>>16&255]^uye[i[(c+2)%4]>>8&255]^dye[i[(c+1)%4]&255]^tr(this,ds,"f")[a][c];i=r.slice()}const s=new Uint8Array(16);let o=0;for(let a=0;a<4;a++)o=tr(this,ds,"f")[n][a],s[4*a]=(Py[i[a]>>24&255]^o>>24)&255,s[4*a+1]=(Py[i[(a+3)%4]>>16&255]^o>>16)&255,s[4*a+2]=(Py[i[(a+2)%4]>>8&255]^o>>8)&255,s[4*a+3]=(Py[i[(a+1)%4]&255]^o)&255;return s}}ob=new WeakMap,ds=new WeakMap,Po=new WeakMap;class BB{constructor(e,n,r){if(r&&!(this instanceof r))throw new Error(`${e} must be instantiated with "new"`);Object.defineProperties(this,{aes:{enumerable:!0,value:new J6(n)},name:{enumerable:!0,value:e}})}}var ky=function(t,e,n,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(t,n):i?i.value=n:e.set(t,n),n},rf=function(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)},rm,La;class Q6 extends BB{constructor(e,n){if(super("ECC",e,Q6),rm.set(this,void 0),La.set(this,void 0),n){if(n.length%16)throw new TypeError("invalid iv size (must be 16 bytes)");ky(this,rm,new Uint8Array(n),"f")}else ky(this,rm,new Uint8Array(16),"f");ky(this,La,this.iv,"f")}get iv(){return new Uint8Array(rf(this,rm,"f"))}encrypt(e){if(e.length%16)throw new TypeError("invalid plaintext size (must be multiple of 16 bytes)");const n=new Uint8Array(e.length);for(let r=0;r<e.length;r+=16){for(let i=0;i<16;i++)rf(this,La,"f")[i]^=e[r+i];ky(this,La,this.aes.encrypt(rf(this,La,"f")),"f"),n.set(rf(this,La,"f"),r)}return n}decrypt(e){if(e.length%16)throw new TypeError("invalid ciphertext size (must be multiple of 16 bytes)");const n=new Uint8Array(e.length);for(let r=0;r<e.length;r+=16){const i=this.aes.decrypt(e.subarray(r,r+16));for(let s=0;s<16;s++)n[r+s]=i[s]^rf(this,La,"f")[s],rf(this,La,"f")[s]=e[r+s]}return n}}rm=new WeakMap,La=new WeakMap;var sf=function(t,e,n,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(t,n):i?i.value=n:e.set(t,n),n},ls=function(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)},im,$u,hs;class j0 extends BB{constructor(e,n){super("CTR",e,j0),im.set(this,void 0),$u.set(this,void 0),hs.set(this,void 0),sf(this,hs,new Uint8Array(16),"f"),ls(this,hs,"f").fill(0),sf(this,im,ls(this,hs,"f"),"f"),sf(this,$u,16,"f"),n==null&&(n=1),typeof n=="number"?this.setCounterValue(n):this.setCounterBytes(n)}get counter(){return new Uint8Array(ls(this,hs,"f"))}setCounterValue(e){if(!Number.isInteger(e)||e<0||e>Number.MAX_SAFE_INTEGER)throw new TypeError("invalid counter initial integer value");for(let n=15;n>=0;--n)ls(this,hs,"f")[n]=e%256,e=Math.floor(e/256)}setCounterBytes(e){if(e.length!==16)throw new TypeError("invalid counter initial Uint8Array value length");ls(this,hs,"f").set(e)}increment(){for(let e=15;e>=0;e--)if(ls(this,hs,"f")[e]===255)ls(this,hs,"f")[e]=0;else{ls(this,hs,"f")[e]++;break}}encrypt(e){var n,r;const i=new Uint8Array(e);for(let s=0;s<i.length;s++)ls(this,$u,"f")===16&&(sf(this,im,this.aes.encrypt(ls(this,hs,"f")),"f"),sf(this,$u,0,"f"),this.increment()),i[s]^=ls(this,im,"f")[sf(this,$u,(r=ls(this,$u,"f"),n=r++,r),"f"),n];return i}decrypt(e){return this.encrypt(e)}}im=new WeakMap,$u=new WeakMap,hs=new WeakMap;function mye(t){if(t.length<16)throw new TypeError("PKCS#7 invalid length");const e=t[t.length-1];if(e>16)throw new TypeError("PKCS#7 padding byte out of range");const n=t.length-e;for(let r=0;r<e;r++)if(t[n+r]!==e)throw new TypeError("PKCS#7 invalid padding byte");return new Uint8Array(t.subarray(0,n))}function UB(t){return typeof t=="string"&&!t.startsWith("0x")&&(t="0x"+t),ar(t)}function jg(t,e){for(t=String(t);t.length<e;)t="0"+t;return t}function Iw(t){return typeof t=="string"?Sr(t,"NFKC"):ar(t)}function pn(t,e){const n=e.match(/^([a-z0-9$_.-]*)(:([a-z]+))?(!)?$/i);M(n!=null,"invalid path","path",e);const r=n[1],i=n[3],s=n[4]==="!";let o=t;for(const a of r.toLowerCase().split(".")){if(Array.isArray(o)){if(!a.match(/^[0-9]+$/))break;o=o[parseInt(a)]}else if(typeof o=="object"){let c=null;for(const l in o)if(l.toLowerCase()===a){c=o[l];break}o=c}else o=null;if(o==null)break}if(M(!s||o!=null,"missing required value","path",r),i&&o!=null){if(i==="int"){if(typeof o=="string"&&o.match(/^-?[0-9]+$/))return parseInt(o);if(Number.isSafeInteger(o))return o}if(i==="number"&&typeof o=="string"&&o.match(/^-?[0-9.]*$/))return parseFloat(o);if(i==="data"&&typeof o=="string")return UB(o);if(i==="array"&&Array.isArray(o)||i===typeof o)return o;M(!1,`wrong type found for ${i} `,"path",r)}return o}const LB="m/44'/60'/0'/0/0";function WS(t){try{const e=JSON.parse(t);if((e.version!=null?parseInt(e.version):0)===3)return!0}catch{}return!1}function wye(t,e,n){if(pn(t,"crypto.cipher:string")==="aes-128-ctr"){const i=pn(t,"crypto.cipherparams.iv:data!"),s=new j0(e,i);return de(s.decrypt(n))}ie(!1,"unsupported cipher","UNSUPPORTED_OPERATION",{operation:"decrypt"})}function C2(t,e){const n=Ae(e),r=pn(t,"crypto.ciphertext:data!"),i=de(nn(Rt([n.slice(16,32),r]))).substring(2);M(i===pn(t,"crypto.mac:string!").toLowerCase(),"incorrect password","password","[ REDACTED ]");const s=wye(t,n.slice(0,16),r),o=Cw(s);if(t.address){let l=t.address.toLowerCase();l.startsWith("0x")||(l="0x"+l),M(ft(l)===o,"keystore address/privateKey mismatch","address",t.address)}const a={address:o,privateKey:s};if(pn(t,"x-ethers.version:string")==="0.1"){const l=n.slice(32,64),u=pn(t,"x-ethers.mnemonicCiphertext:data!"),d=pn(t,"x-ethers.mnemonicCounter:data!"),h=new j0(l,d);a.mnemonic={path:pn(t,"x-ethers.path:string")||LB,locale:pn(t,"x-ethers.locale:string")||"en",entropy:de(Ae(h.decrypt(u)))}}return a}function MB(t){const e=pn(t,"crypto.kdf:string");if(e&&typeof e=="string"){if(e.toLowerCase()==="scrypt"){const n=pn(t,"crypto.kdfparams.salt:data!"),r=pn(t,"crypto.kdfparams.n:int!"),i=pn(t,"crypto.kdfparams.r:int!"),s=pn(t,"crypto.kdfparams.p:int!");M(r>0&&(r&r-1)===0,"invalid kdf.N","kdf.N",r),M(i>0&&s>0,"invalid kdf","kdf",e);const o=pn(t,"crypto.kdfparams.dklen:int!");return M(o===32,"invalid kdf.dklen","kdf.dflen",o),{name:"scrypt",salt:n,N:r,r:i,p:s,dkLen:64}}else if(e.toLowerCase()==="pbkdf2"){const n=pn(t,"crypto.kdfparams.salt:data!"),r=pn(t,"crypto.kdfparams.prf:string!"),i=r.split("-").pop();M(i==="sha256"||i==="sha512","invalid kdf.pdf","kdf.pdf",r);const s=pn(t,"crypto.kdfparams.c:int!"),o=pn(t,"crypto.kdfparams.dklen:int!");return M(o===32,"invalid kdf.dklen","kdf.dklen",o),{name:"pbkdf2",salt:n,count:s,dkLen:o,algorithm:i}}}M(!1,"unsupported key-derivation function","kdf",e)}function yye(t,e){const n=JSON.parse(t),r=Iw(e),i=MB(n);if(i.name==="pbkdf2"){const{salt:d,count:h,dkLen:f,algorithm:g}=i,p=mu(r,d,h,f,g);return C2(n,p)}ie(i.name==="scrypt","cannot be reached","UNKNOWN_ERROR",{params:i});const{salt:s,N:o,r:a,p:c,dkLen:l}=i,u=hg(r,s,o,a,c,l);return C2(n,u)}function jS(t){return new Promise(e=>{setTimeout(()=>{e()},t)})}async function bye(t,e,n){const r=JSON.parse(t),i=Iw(e),s=MB(r);if(s.name==="pbkdf2"){n&&(n(0),await jS(0));const{salt:h,count:f,dkLen:g,algorithm:p}=s,m=mu(i,h,f,g,p);return n&&(n(1),await jS(0)),C2(r,m)}ie(s.name==="scrypt","cannot be reached","UNKNOWN_ERROR",{params:s});const{salt:o,N:a,r:c,p:l,dkLen:u}=s,d=await dg(i,o,a,c,l,u,n);return C2(r,d)}function FB(t){const e=t.salt!=null?Ae(t.salt,"options.salt"):mc(32);let n=1<<17,r=8,i=1;return t.scrypt&&(t.scrypt.N&&(n=t.scrypt.N),t.scrypt.r&&(r=t.scrypt.r),t.scrypt.p&&(i=t.scrypt.p)),M(typeof n=="number"&&n>0&&Number.isSafeInteger(n)&&(BigInt(n)&BigInt(n-1))===BigInt(0),"invalid scrypt N parameter","options.N",n),M(typeof r=="number"&&r>0&&Number.isSafeInteger(r),"invalid scrypt r parameter","options.r",r),M(typeof i=="number"&&i>0&&Number.isSafeInteger(i),"invalid scrypt p parameter","options.p",i),{name:"scrypt",dkLen:32,salt:e,N:n,r,p:i}}function WB(t,e,n,r){const i=Ae(n.privateKey,"privateKey"),s=r.iv!=null?Ae(r.iv,"options.iv"):mc(16);M(s.length===16,"invalid options.iv length","options.iv",r.iv);const o=r.uuid!=null?Ae(r.uuid,"options.uuid"):mc(16);M(o.length===16,"invalid options.uuid length","options.uuid",r.iv);const a=t.slice(0,16),c=t.slice(16,32),l=new j0(a,s),u=Ae(l.encrypt(i)),d=nn(Rt([c,u])),h={address:n.address.substring(2).toLowerCase(),id:y0e(o),version:3,Crypto:{cipher:"aes-128-ctr",cipherparams:{iv:de(s).substring(2)},ciphertext:de(u).substring(2),kdf:"scrypt",kdfparams:{salt:de(e.salt).substring(2),n:e.N,dklen:32,p:e.p,r:e.r},mac:d.substring(2)}};if(n.mnemonic){const f=r.client!=null?r.client:`ethers/${p$}`,g=n.mnemonic.path||LB,p=n.mnemonic.locale||"en",m=t.slice(32,64),b=Ae(n.mnemonic.entropy,"account.mnemonic.entropy"),C=mc(16),x=new j0(m,C),A=Ae(x.encrypt(b)),I=new Date,B="UTC--"+(I.getUTCFullYear()+"-"+jg(I.getUTCMonth()+1,2)+"-"+jg(I.getUTCDate(),2)+"T"+jg(I.getUTCHours(),2)+"-"+jg(I.getUTCMinutes(),2)+"-"+jg(I.getUTCSeconds(),2)+".0Z")+"--"+h.address;h["x-ethers"]={client:f,gethFilename:B,path:g,locale:p,mnemonicCounter:de(C).substring(2),mnemonicCiphertext:de(A).substring(2),version:"0.1"}}return JSON.stringify(h)}function jB(t,e,n){n==null&&(n={});const r=Iw(e),i=FB(n),s=hg(r,i.salt,i.N,i.r,i.p,64);return WB(Ae(s),i,t,n)}async function HB(t,e,n){n==null&&(n={});const r=Iw(e),i=FB(n),s=await dg(r,i.salt,i.N,i.r,i.p,64,n.progressCallback);return WB(Ae(s),i,t,n)}const tv="m/44'/60'/0'/0/0",xye=new Uint8Array([66,105,116,99,111,105,110,32,115,101,101,100]),Hl=2147483648,Eye=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),vye="0123456789abcdef";function A2(t,e){let n="";for(;t;)n=vye[t%16]+n,t=Math.trunc(t/16);for(;n.length<e*2;)n="0"+n;return"0x"+n}function S4(t){const e=Ae(t),n=Yt(ks(ks(e)),0,4),r=Rt([e,n]);return x$(r)}const Bo={};function zB(t,e,n,r){const i=new Uint8Array(37);t&Hl?(ie(r!=null,"cannot derive child of neutered node","UNSUPPORTED_OPERATION",{operation:"deriveChild"}),i.set(Ae(r),1)):i.set(Ae(n));for(let o=24;o>=0;o-=8)i[33+(o>>3)]=t>>24-o&255;const s=Ae(lg("sha512",e,i));return{IL:s.slice(0,32),IR:s.slice(32)}}function VB(t,e){const n=e.split("/");M(n.length>0,"invalid path","path",e),n[0]==="m"&&(M(t.depth===0,`cannot derive root path (i.e. path starting with "m/") for a node at non-zero depth ${t.depth}`,"path",e),n.shift());let r=t;for(let i=0;i<n.length;i++){const s=n[i];if(s.match(/^[0-9]+'$/)){const o=parseInt(s.substring(0,s.length-1));M(o<Hl,"invalid path index",`path[${i}]`,s),r=r.deriveChild(Hl+o)}else if(s.match(/^[0-9]+$/)){const o=parseInt(s);M(o<Hl,"invalid path index",`path[${i}]`,s),r=r.deriveChild(o)}else M(!1,"invalid path component",`path[${i}]`,s)}return r}var P1,I4,Cd,sm;const Ks=class Ks extends E2{constructor(n,r,i,s,o,a,c,l,u){super(r,u);K(this,P1);G(this,"publicKey");G(this,"fingerprint");G(this,"parentFingerprint");G(this,"mnemonic");G(this,"chainCode");G(this,"path");G(this,"index");G(this,"depth");gu(n,Bo,"HDNodeWallet"),Me(this,{publicKey:r.compressedPublicKey});const d=Yt(ug(ks(this.publicKey)),0,4);Me(this,{parentFingerprint:i,fingerprint:d,chainCode:s,path:o,index:a,depth:c}),Me(this,{mnemonic:l})}connect(n){return new Ks(Bo,this.signingKey,this.parentFingerprint,this.chainCode,this.path,this.index,this.depth,this.mnemonic,n)}async encrypt(n,r){return await HB(X(this,P1,I4).call(this),n,{progressCallback:r})}encryptSync(n){return jB(X(this,P1,I4).call(this),n)}get extendedKey(){return ie(this.depth<256,"Depth too deep","UNSUPPORTED_OPERATION",{operation:"extendedKey"}),S4(Rt(["0x0488ADE4",A2(this.depth,1),this.parentFingerprint,A2(this.index,4),this.chainCode,Rt(["0x00",this.privateKey])]))}hasPath(){return this.path!=null}neuter(){return new m1(Bo,this.address,this.publicKey,this.parentFingerprint,this.chainCode,this.path,this.index,this.depth,this.provider)}deriveChild(n){const r=Je(n,"index");M(r<=4294967295,"invalid index","index",r);let i=this.path;i&&(i+="/"+(r&~Hl),r&Hl&&(i+="'"));const{IR:s,IL:o}=zB(r,this.chainCode,this.publicKey,this.privateKey),a=new aa(Nc((xw(o)+BigInt(this.privateKey))%Eye,32));return new Ks(Bo,a,this.fingerprint,de(s),i,r,this.depth+1,this.mnemonic,this.provider)}derivePath(n){return VB(this,n)}static fromExtendedKey(n){const r=cn(Jpe(n));M(r.length===82||S4(r.slice(0,78))===n,"invalid extended key","extendedKey","[ REDACTED ]");const i=r[4],s=de(r.slice(5,9)),o=parseInt(de(r.slice(9,13)).substring(2),16),a=de(r.slice(13,45)),c=r.slice(45,78);switch(de(r.slice(0,4))){case"0x0488b21e":case"0x043587cf":{const l=de(c);return new m1(Bo,Cw(l),l,s,a,null,o,i,null)}case"0x0488ade4":case"0x04358394 ":if(c[0]!==0)break;return new Ks(Bo,new aa(c.slice(1)),s,a,null,o,i,null,null)}M(!1,"invalid extended key prefix","extendedKey","[ REDACTED ]")}static createRandom(n,r,i){var o;n==null&&(n=""),r==null&&(r=tv),i==null&&(i=bh.wordlist());const s=W0.fromEntropy(mc(16),n,i);return X(o=Ks,Cd,sm).call(o,s.computeSeed(),s).derivePath(r)}static fromMnemonic(n,r){var i;return r||(r=tv),X(i=Ks,Cd,sm).call(i,n.computeSeed(),n).derivePath(r)}static fromPhrase(n,r,i,s){var a;r==null&&(r=""),i==null&&(i=tv),s==null&&(s=bh.wordlist());const o=W0.fromPhrase(n,r,s);return X(a=Ks,Cd,sm).call(a,o.computeSeed(),o).derivePath(i)}static fromSeed(n){var r;return X(r=Ks,Cd,sm).call(r,n,null)}};P1=new WeakSet,I4=function(){const n={address:this.address,privateKey:this.privateKey},r=this.mnemonic;return this.path&&r&&r.wordlist.locale==="en"&&r.password===""&&(n.mnemonic={path:this.path,locale:"en",entropy:r.entropy}),n},Cd=new WeakSet,sm=function(n,r){M($3(n),"invalid seed","seed","[REDACTED]");const i=Ae(n,"seed");M(i.length>=16&&i.length<=64,"invalid seed","seed","[REDACTED]");const s=Ae(lg("sha512",xye,i)),o=new aa(de(s.slice(0,32)));return new Ks(Bo,o,"0x00000000",de(s.slice(32)),"m",0,0,r,null)},K(Ks,Cd);let vm=Ks;class m1 extends b4{constructor(n,r,i,s,o,a,c,l,u){super(r,u);G(this,"publicKey");G(this,"fingerprint");G(this,"parentFingerprint");G(this,"chainCode");G(this,"path");G(this,"index");G(this,"depth");gu(n,Bo,"HDNodeVoidWallet"),Me(this,{publicKey:i});const d=Yt(ug(ks(i)),0,4);Me(this,{publicKey:i,fingerprint:d,parentFingerprint:s,chainCode:o,path:a,index:c,depth:l})}connect(n){return new m1(Bo,this.address,this.publicKey,this.parentFingerprint,this.chainCode,this.path,this.index,this.depth,n)}get extendedKey(){return ie(this.depth<256,"Depth too deep","UNSUPPORTED_OPERATION",{operation:"extendedKey"}),S4(Rt(["0x0488B21E",A2(this.depth,1),this.parentFingerprint,A2(this.index,4),this.chainCode,this.publicKey]))}hasPath(){return this.path!=null}deriveChild(n){const r=Je(n,"index");M(r<=4294967295,"invalid index","index",r);let i=this.path;i&&(i+="/"+(r&~Hl),r&Hl&&(i+="'"));const{IR:s,IL:o}=zB(r,this.chainCode,this.publicKey,null),a=aa.addPoints(o,this.publicKey,!0),c=Cw(a);return new m1(Bo,c,a,this.fingerprint,de(s),i,r,this.depth+1,this.provider)}derivePath(n){return VB(this,n)}}function HS(t){try{if(JSON.parse(t).encseed)return!0}catch{}return!1}function zS(t,e){const n=JSON.parse(t),r=Iw(e),i=ft(pn(n,"ethaddr:string!")),s=UB(pn(n,"encseed:string!"));M(s&&s.length%16===0,"invalid encseed","json",t);const o=Ae(mu(r,r,2e3,32,"sha256")).slice(0,16),a=s.slice(0,16),c=s.slice(16),l=new Q6(o,a),u=mye(Ae(l.decrypt(c)));let d="";for(let h=0;h<u.length;h++)d+=String.fromCharCode(u[h]);return{address:i,privateKey:Oc(d)}}function VS(t){return new Promise(e=>{setTimeout(()=>{e()},t)})}var k1,ta,T4;let Cye=(ta=class extends E2{constructor(e,n){typeof e=="string"&&!e.startsWith("0x")&&(e="0x"+e);let r=typeof e=="string"?new aa(e):e;super(r,n)}connect(e){return new ta(this.signingKey,e)}async encrypt(e,n){const r={address:this.address,privateKey:this.privateKey};return await HB(r,e,{progressCallback:n})}encryptSync(e){const n={address:this.address,privateKey:this.privateKey};return jB(n,e)}static async fromEncryptedJson(e,n,r){var s;let i=null;return WS(e)?i=await bye(e,n,r):HS(e)&&(r&&(r(0),await VS(0)),i=zS(e,n),r&&(r(1),await VS(0))),X(s=ta,k1,T4).call(s,i)}static fromEncryptedJsonSync(e,n){var i;let r=null;return WS(e)?r=yye(e,n):HS(e)?r=zS(e,n):M(!1,"invalid JSON wallet","json","[ REDACTED ]"),X(i=ta,k1,T4).call(i,r)}static createRandom(e){const n=vm.createRandom();return e?n.connect(e):n}static fromPhrase(e,n){const r=vm.fromPhrase(e);return n?r.connect(n):r}},k1=new WeakSet,T4=function(e){if(M(e,"invalid JSON wallet","json","[ REDACTED ]"),"mnemonic"in e&&e.mnemonic&&e.mnemonic.locale==="en"){const r=W0.fromEntropy(e.mnemonic.entropy),i=vm.fromMnemonic(r,e.mnemonic.path);if(i.address===e.address&&i.privateKey===e.privateKey)return i;console.log("WARNING: JSON mismatch address/privateKey != mnemonic; fallback onto private key")}const n=new ta(e.privateKey);return M(n.address===e.address,"address/privateKey mismatch","json","[ REDACTED ]"),n},K(ta,k1),ta);const Gf={hexStringToNumber(t){const e=t.startsWith("0x")?t.slice(2):t;return parseInt(e,16)},numberToHexString(t){return`0x${t.toString(16)}`},async getUserInfo(t){const[e,n]=await Promise.all([Gf.getAddresses(t),Gf.getChainId(t)]);return{chainId:n,addresses:e}},async getChainId(t){const e=await t.request({method:"eth_chainId"});return Number(e)},async getAddress(t){const[e]=await t.request({method:"eth_accounts"});return e},async getAddresses(t){return await t.request({method:"eth_accounts"})},async addEthereumChain(t,e){var r,i;const n=((r=e.rpcUrls.chainDefault)==null?void 0:r.http)||[];await t.request({method:"wallet_addEthereumChain",params:[{chainId:Gf.numberToHexString(e.id),rpcUrls:[...n],chainName:e.name,nativeCurrency:{name:e.nativeCurrency.name,decimals:e.nativeCurrency.decimals,symbol:e.nativeCurrency.symbol},blockExplorerUrls:[(i=e.blockExplorers)==null?void 0:i.default.url],iconUrls:[mk.NetworkImageIds[e.id]]}]})}};class X6{constructor(){this.initialized=!1}async getProvider(){return Promise.resolve(this.provider)}}class Aye extends X6{async initialize(){const e=v.getCaipNetworks(),{metadata:n,coinbasePreference:r}=V.state;try{const{createBaseAccountSDK:i}=await Promise.resolve().then(()=>require("./index-C4JlHMgz.js"));if(typeof window>"u")return Promise.resolve();const s=i({appName:n==null?void 0:n.name,appLogoUrl:n==null?void 0:n.icons[0],appChainIds:(e==null?void 0:e.map(o=>o.id))||[1,84532],preference:{options:r??"all"}});return this.provider=s.getProvider(),this.initialized=!0,Promise.resolve()}catch(i){return console.error("Failed to import Coinbase Wallet SDK:",i),Promise.resolve()}}async getProvider(){return Promise.resolve(this.provider)}}var qB={},Z3={};const GB=()=>"9.1.0",_ye=t=>t.toString(16).padStart(2,"0"),Sye=t=>{const e=new Uint8Array(t/2);return window.crypto.getRandomValues(e),Array.from(e,_ye).join("")},Iye=()=>typeof window<"u"?Sye(10):new Date().getTime().toString(36);class Tw{}Tw.makeRequest=(t,e)=>({id:Iye(),method:t,params:e,env:{sdkVersion:GB()}});Tw.makeResponse=(t,e,n)=>({id:t,success:!0,version:n,data:e});Tw.makeErrorResponse=(t,e,n)=>({id:t,success:!1,error:e,version:n});var Wn;(function(t){t.sendTransactions="sendTransactions",t.rpcCall="rpcCall",t.getChainInfo="getChainInfo",t.getSafeInfo="getSafeInfo",t.getTxBySafeTxHash="getTxBySafeTxHash",t.getSafeBalances="getSafeBalances",t.signMessage="signMessage",t.signTypedMessage="signTypedMessage",t.getEnvironmentInfo="getEnvironmentInfo",t.getOffChainSignature="getOffChainSignature",t.requestAddressBook="requestAddressBook",t.wallet_getPermissions="wallet_getPermissions",t.wallet_requestPermissions="wallet_requestPermissions"})(Wn||(Wn={}));var _2;(function(t){t.requestAddressBook="requestAddressBook"})(_2||(_2={}));class Tye{constructor(e=null,n=!1){this.allowedOrigins=null,this.callbacks=new Map,this.debugMode=!1,this.isServer=typeof window>"u",this.isValidMessage=({origin:r,data:i,source:s})=>{const o=!i,a=!this.isServer&&s===window.parent,c=typeof i.version<"u"&&parseInt(i.version.split(".")[0]),l=typeof c=="number"&&c>=1;let u=!0;return Array.isArray(this.allowedOrigins)&&(u=this.allowedOrigins.find(d=>d.test(r))!==void 0),!o&&a&&l&&u},this.logIncomingMessage=r=>{console.info(`Safe Apps SDK v1: A message was received from origin ${r.origin}. `,r.data)},this.onParentMessage=r=>{this.isValidMessage(r)&&(this.debugMode&&this.logIncomingMessage(r),this.handleIncomingMessage(r.data))},this.handleIncomingMessage=r=>{const{id:i}=r,s=this.callbacks.get(i);s&&(s(r),this.callbacks.delete(i))},this.send=(r,i)=>{const s=Tw.makeRequest(r,i);if(this.isServer)throw new Error("Window doesn't exist");return window.parent.postMessage(s,"*"),new Promise((o,a)=>{this.callbacks.set(s.id,c=>{if(!c.success){a(new Error(c.error));return}o(c)})})},this.allowedOrigins=e,this.debugMode=n,this.isServer||window.addEventListener("message",this.onParentMessage)}}const eA=t=>typeof t=="object"&&t!=null&&"domain"in t&&"types"in t&&"message"in t;var om={},pg={},gg={},tA=Tn&&Tn.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(u){try{l(r.next(u))}catch(d){o(d)}}function c(u){try{l(r.throw(u))}catch(d){o(d)}}function l(u){u.done?s(u.value):i(u.value).then(a,c)}l((r=r.apply(t,e||[])).next())})};Object.defineProperty(gg,"__esModule",{value:!0});gg.insertParams=Oye;gg.stringifyQuery=Pye;gg.fetchData=kye;gg.getData=$ye;const Nye=t=>typeof t=="object"&&t!==null&&("code"in t||"statusCode"in t)&&"message"in t;function Rye(t,e,n){return t.replace(new RegExp(`\\{${e}\\}`,"g"),n)}function Oye(t,e){return e?Object.keys(e).reduce((n,r)=>Rye(n,r,String(e[r])),t):t}function Pye(t){if(!t)return"";const e=new URLSearchParams;Object.keys(t).forEach(r=>{t[r]!=null&&e.append(r,String(t[r]))});const n=e.toString();return n?`?${n}`:""}function KB(t){return tA(this,void 0,void 0,function*(){var e;let n;try{n=yield t.json()}catch{n={}}if(!t.ok){const r=Nye(n)?`CGW error - ${(e=n.code)!==null&&e!==void 0?e:n.statusCode}: ${n.message}`:`CGW error - status ${t.statusText}`;throw new Error(r)}return n})}function kye(t,e,n,r,i){return tA(this,void 0,void 0,function*(){const s=Object.assign({"Content-Type":"application/json"},r),o={method:e??"POST",headers:s};i&&(o.credentials=i),n!=null&&(o.body=typeof n=="string"?n:JSON.stringify(n));const a=yield fetch(t,o);return KB(a)})}function $ye(t,e,n){return tA(this,void 0,void 0,function*(){const r={method:"GET"};e&&(r.headers=Object.assign(Object.assign({},e),{"Content-Type":"application/json"})),n&&(r.credentials=n);const i=yield fetch(t,r);return KB(i)})}Object.defineProperty(pg,"__esModule",{value:!0});pg.postEndpoint=Dye;pg.putEndpoint=Bye;pg.deleteEndpoint=Uye;pg.getEndpoint=Lye;const xh=gg;function Y3(t,e,n,r){const i=(0,xh.insertParams)(e,n),s=(0,xh.stringifyQuery)(r);return`${t}${i}${s}`}function Dye(t,e,n){const r=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.fetchData)(r,"POST",n==null?void 0:n.body,n==null?void 0:n.headers,n==null?void 0:n.credentials)}function Bye(t,e,n){const r=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.fetchData)(r,"PUT",n==null?void 0:n.body,n==null?void 0:n.headers,n==null?void 0:n.credentials)}function Uye(t,e,n){const r=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.fetchData)(r,"DELETE",n==null?void 0:n.body,n==null?void 0:n.headers,n==null?void 0:n.credentials)}function Lye(t,e,n,r){if(r)return(0,xh.getData)(r,void 0,n==null?void 0:n.credentials);const i=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.getData)(i,n==null?void 0:n.headers,n==null?void 0:n.credentials)}var J3={};Object.defineProperty(J3,"__esModule",{value:!0});J3.DEFAULT_BASE_URL=void 0;J3.DEFAULT_BASE_URL="https://safe-client.safe.global";var Q3={};Object.defineProperty(Q3,"__esModule",{value:!0});Q3.ImplementationVersionState=void 0;var qS;(function(t){t.UP_TO_DATE="UP_TO_DATE",t.OUTDATED="OUTDATED",t.UNKNOWN="UNKNOWN"})(qS||(Q3.ImplementationVersionState=qS={}));var zl={};Object.defineProperty(zl,"__esModule",{value:!0});zl.SafeAppSocialPlatforms=zl.SafeAppFeatures=zl.SafeAppAccessPolicyTypes=void 0;var GS;(function(t){t.NoRestrictions="NO_RESTRICTIONS",t.DomainAllowlist="DOMAIN_ALLOWLIST"})(GS||(zl.SafeAppAccessPolicyTypes=GS={}));var KS;(function(t){t.BATCHED_TRANSACTIONS="BATCHED_TRANSACTIONS"})(KS||(zl.SafeAppFeatures=KS={}));var ZS;(function(t){t.TWITTER="TWITTER",t.GITHUB="GITHUB",t.DISCORD="DISCORD",t.TELEGRAM="TELEGRAM"})(ZS||(zl.SafeAppSocialPlatforms=ZS={}));var Kt={};Object.defineProperty(Kt,"__esModule",{value:!0});Kt.LabelValue=Kt.StartTimeValue=Kt.DurationType=Kt.DetailedExecutionInfoType=Kt.TransactionListItemType=Kt.ConflictType=Kt.TransactionInfoType=Kt.SettingsInfoType=Kt.TransactionTokenType=Kt.TransferDirection=Kt.TransactionStatus=Kt.Operation=void 0;var YS;(function(t){t[t.CALL=0]="CALL",t[t.DELEGATE=1]="DELEGATE"})(YS||(Kt.Operation=YS={}));var JS;(function(t){t.AWAITING_CONFIRMATIONS="AWAITING_CONFIRMATIONS",t.AWAITING_EXECUTION="AWAITING_EXECUTION",t.CANCELLED="CANCELLED",t.FAILED="FAILED",t.SUCCESS="SUCCESS"})(JS||(Kt.TransactionStatus=JS={}));var QS;(function(t){t.INCOMING="INCOMING",t.OUTGOING="OUTGOING",t.UNKNOWN="UNKNOWN"})(QS||(Kt.TransferDirection=QS={}));var XS;(function(t){t.ERC20="ERC20",t.ERC721="ERC721",t.NATIVE_COIN="NATIVE_COIN"})(XS||(Kt.TransactionTokenType=XS={}));var eI;(function(t){t.SET_FALLBACK_HANDLER="SET_FALLBACK_HANDLER",t.ADD_OWNER="ADD_OWNER",t.REMOVE_OWNER="REMOVE_OWNER",t.SWAP_OWNER="SWAP_OWNER",t.CHANGE_THRESHOLD="CHANGE_THRESHOLD",t.CHANGE_IMPLEMENTATION="CHANGE_IMPLEMENTATION",t.ENABLE_MODULE="ENABLE_MODULE",t.DISABLE_MODULE="DISABLE_MODULE",t.SET_GUARD="SET_GUARD",t.DELETE_GUARD="DELETE_GUARD"})(eI||(Kt.SettingsInfoType=eI={}));var tI;(function(t){t.TRANSFER="Transfer",t.SETTINGS_CHANGE="SettingsChange",t.CUSTOM="Custom",t.CREATION="Creation",t.SWAP_ORDER="SwapOrder",t.TWAP_ORDER="TwapOrder",t.SWAP_TRANSFER="SwapTransfer",t.NATIVE_STAKING_DEPOSIT="NativeStakingDeposit",t.NATIVE_STAKING_VALIDATORS_EXIT="NativeStakingValidatorsExit",t.NATIVE_STAKING_WITHDRAW="NativeStakingWithdraw"})(tI||(Kt.TransactionInfoType=tI={}));var nI;(function(t){t.NONE="None",t.HAS_NEXT="HasNext",t.END="End"})(nI||(Kt.ConflictType=nI={}));var rI;(function(t){t.TRANSACTION="TRANSACTION",t.LABEL="LABEL",t.CONFLICT_HEADER="CONFLICT_HEADER",t.DATE_LABEL="DATE_LABEL"})(rI||(Kt.TransactionListItemType=rI={}));var iI;(function(t){t.MULTISIG="MULTISIG",t.MODULE="MODULE"})(iI||(Kt.DetailedExecutionInfoType=iI={}));var sI;(function(t){t.AUTO="AUTO",t.LIMIT_DURATION="LIMIT_DURATION"})(sI||(Kt.DurationType=sI={}));var oI;(function(t){t.AT_MINING_TIME="AT_MINING_TIME",t.AT_EPOCH="AT_EPOCH"})(oI||(Kt.StartTimeValue=oI={}));var aI;(function(t){t.Queued="Queued",t.Next="Next"})(aI||(Kt.LabelValue=aI={}));var Vl={};Object.defineProperty(Vl,"__esModule",{value:!0});Vl.FEATURES=Vl.GAS_PRICE_TYPE=Vl.RPC_AUTHENTICATION=void 0;var cI;(function(t){t.API_KEY_PATH="API_KEY_PATH",t.NO_AUTHENTICATION="NO_AUTHENTICATION",t.UNKNOWN="UNKNOWN"})(cI||(Vl.RPC_AUTHENTICATION=cI={}));var lI;(function(t){t.ORACLE="ORACLE",t.FIXED="FIXED",t.FIXED_1559="FIXED1559",t.UNKNOWN="UNKNOWN"})(lI||(Vl.GAS_PRICE_TYPE=lI={}));var uI;(function(t){t.ERC721="ERC721",t.SAFE_APPS="SAFE_APPS",t.CONTRACT_INTERACTION="CONTRACT_INTERACTION",t.DOMAIN_LOOKUP="DOMAIN_LOOKUP",t.SPENDING_LIMIT="SPENDING_LIMIT",t.EIP1559="EIP1559",t.SAFE_TX_GAS_OPTIONAL="SAFE_TX_GAS_OPTIONAL",t.TX_SIMULATION="TX_SIMULATION",t.EIP1271="EIP1271"})(uI||(Vl.FEATURES=uI={}));var X3={};Object.defineProperty(X3,"__esModule",{value:!0});X3.TokenType=void 0;var dI;(function(t){t.ERC20="ERC20",t.ERC721="ERC721",t.NATIVE_TOKEN="NATIVE_TOKEN",t.UNKNOWN="UNKNOWN"})(dI||(X3.TokenType=dI={}));var ZB={};Object.defineProperty(ZB,"__esModule",{value:!0});var H0={};Object.defineProperty(H0,"__esModule",{value:!0});H0.NativeStakingStatus=H0.ConfirmationViewTypes=void 0;var hI;(function(t){t.GENERIC="GENERIC",t.COW_SWAP_ORDER="COW_SWAP_ORDER",t.COW_SWAP_TWAP_ORDER="COW_SWAP_TWAP_ORDER",t.KILN_NATIVE_STAKING_DEPOSIT="KILN_NATIVE_STAKING_DEPOSIT",t.KILN_NATIVE_STAKING_VALIDATORS_EXIT="KILN_NATIVE_STAKING_VALIDATORS_EXIT",t.KILN_NATIVE_STAKING_WITHDRAW="KILN_NATIVE_STAKING_WITHDRAW"})(hI||(H0.ConfirmationViewTypes=hI={}));var fI;(function(t){t.NOT_STAKED="NOT_STAKED",t.ACTIVATING="ACTIVATING",t.DEPOSIT_IN_PROGRESS="DEPOSIT_IN_PROGRESS",t.ACTIVE="ACTIVE",t.EXIT_REQUESTED="EXIT_REQUESTED",t.EXITING="EXITING",t.EXITED="EXITED",t.SLASHED="SLASHED"})(fI||(H0.NativeStakingStatus=fI={}));var z0={};Object.defineProperty(z0,"__esModule",{value:!0});z0.SafeMessageStatus=z0.SafeMessageListItemType=void 0;var pI;(function(t){t.DATE_LABEL="DATE_LABEL",t.MESSAGE="MESSAGE"})(pI||(z0.SafeMessageListItemType=pI={}));var gI;(function(t){t.NEEDS_CONFIRMATION="NEEDS_CONFIRMATION",t.CONFIRMED="CONFIRMED"})(gI||(z0.SafeMessageStatus=gI={}));var ex={};Object.defineProperty(ex,"__esModule",{value:!0});ex.DeviceType=void 0;var mI;(function(t){t.ANDROID="ANDROID",t.IOS="IOS",t.WEB="WEB"})(mI||(ex.DeviceType=mI={}));var YB={};Object.defineProperty(YB,"__esModule",{value:!0});(function(t){var e=Tn&&Tn.__createBinding||(Object.create?function(oe,fe,De,ot){ot===void 0&&(ot=De);var Jr=Object.getOwnPropertyDescriptor(fe,De);(!Jr||("get"in Jr?!fe.__esModule:Jr.writable||Jr.configurable))&&(Jr={enumerable:!0,get:function(){return fe[De]}}),Object.defineProperty(oe,ot,Jr)}:function(oe,fe,De,ot){ot===void 0&&(ot=De),oe[ot]=fe[De]}),n=Tn&&Tn.__exportStar||function(oe,fe){for(var De in oe)De!=="default"&&!Object.prototype.hasOwnProperty.call(fe,De)&&e(fe,oe,De)};Object.defineProperty(t,"__esModule",{value:!0}),t.setBaseUrl=void 0,t.relayTransaction=a,t.getRelayCount=c,t.getSafeInfo=l,t.getIncomingTransfers=u,t.getModuleTransactions=d,t.getMultisigTransactions=h,t.getBalances=f,t.getFiatCurrencies=g,t.getOwnedSafes=p,t.getAllOwnedSafes=m,t.getCollectibles=b,t.getCollectiblesPage=C,t.getTransactionHistory=x,t.getTransactionQueue=A,t.getTransactionDetails=I,t.deleteTransaction=P,t.postSafeGasEstimation=B,t.getNonces=F,t.proposeTransaction=L,t.getConfirmationView=j,t.getTxPreview=z,t.getChainsConfig=W,t.getChainConfig=D,t.getSafeApps=U,t.getMasterCopies=w,t.getDecodedData=E,t.getSafeMessages=T,t.getSafeMessage=O,t.proposeSafeMessage=R,t.confirmSafeMessage=$,t.getDelegates=q,t.registerDevice=Y,t.unregisterSafe=le,t.unregisterDevice=ne,t.registerEmail=ce,t.changeEmail=be,t.resendEmailVerificationCode=xe,t.verifyEmail=Ke,t.getRegisteredEmail=Ee,t.deleteRegisteredEmail=Ue,t.registerRecoveryModule=lt,t.unsubscribeSingle=yt,t.unsubscribeAll=ut,t.getSafeOverviews=Qt,t.getContract=Yr,t.getAuthNonce=Ri,t.verifyAuth=tx,t.createAccount=nx,t.getAccount=Rw,t.deleteAccount=Ow,t.getAccountDataTypes=mg,t.getAccountDataSettings=Pw,t.putAccountDataSettings=kw,t.getIndexingStatus=$w;const r=pg,i=J3;n(Q3,t),n(zl,t),n(Kt,t),n(Vl,t),n(X3,t),n(ZB,t),n(H0,t),n(z0,t),n(ex,t),n(YB,t);let s=i.DEFAULT_BASE_URL;const o=oe=>{s=oe};t.setBaseUrl=o;function a(oe,fe){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/relay",{path:{chainId:oe},body:fe})}function c(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/relay/{address}",{path:{chainId:oe,address:fe}})}function l(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}",{path:{chainId:oe,address:fe}})}function u(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/incoming-transfers/",{path:{chainId:oe,address:fe},query:De},ot)}function d(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/module-transactions/",{path:{chainId:oe,address:fe},query:De},ot)}function h(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/multisig-transactions/",{path:{chainId:oe,address:fe},query:De},ot)}function f(oe,fe,De="usd",ot={}){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/balances/{currency}",{path:{chainId:oe,address:fe,currency:De},query:ot})}function g(){return(0,r.getEndpoint)(s,"/v1/balances/supported-fiat-codes")}function p(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/owners/{address}/safes",{path:{chainId:oe,address:fe}})}function m(oe){return(0,r.getEndpoint)(s,"/v1/owners/{address}/safes",{path:{address:oe}})}function b(oe,fe,De={}){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/collectibles",{path:{chainId:oe,address:fe},query:De})}function C(oe,fe,De={},ot){return(0,r.getEndpoint)(s,"/v2/chains/{chainId}/safes/{address}/collectibles",{path:{chainId:oe,address:fe},query:De},ot)}function x(oe,fe,De={},ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/transactions/history",{path:{chainId:oe,safe_address:fe},query:De},ot)}function A(oe,fe,De={},ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/transactions/queued",{path:{chainId:oe,safe_address:fe},query:De},ot)}function I(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/transactions/{transactionId}",{path:{chainId:oe,transactionId:fe}})}function P(oe,fe,De){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/transactions/{safeTxHash}",{path:{chainId:oe,safeTxHash:fe},body:{signature:De}})}function B(oe,fe,De){return(0,r.postEndpoint)(s,"/v2/chains/{chainId}/safes/{safe_address}/multisig-transactions/estimations",{path:{chainId:oe,safe_address:fe},body:De})}function F(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/nonces",{path:{chainId:oe,safe_address:fe}})}function L(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/transactions/{safe_address}/propose",{path:{chainId:oe,safe_address:fe},body:De})}function j(oe,fe,De,ot,Jr,wg){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/views/transaction-confirmation",{path:{chainId:oe,safe_address:fe},body:{operation:De,data:ot,to:Jr,value:wg}})}function z(oe,fe,De,ot,Jr,wg){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/transactions/{safe_address}/preview",{path:{chainId:oe,safe_address:fe},body:{operation:De,data:ot,to:Jr,value:wg}})}function W(oe){return(0,r.getEndpoint)(s,"/v1/chains",{query:oe})}function D(oe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}",{path:{chainId:oe}})}function U(oe,fe={}){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safe-apps",{path:{chainId:oe},query:fe})}function w(oe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/about/master-copies",{path:{chainId:oe}})}function E(oe,fe,De,ot){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/data-decoder",{path:{chainId:oe},body:{operation:fe,data:De,to:ot}})}function T(oe,fe,De){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/messages",{path:{chainId:oe,safe_address:fe},query:{}},De)}function O(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/messages/{message_hash}",{path:{chainId:oe,message_hash:fe}})}function R(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/messages",{path:{chainId:oe,safe_address:fe},body:De})}function $(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/messages/{message_hash}/signatures",{path:{chainId:oe,message_hash:fe},body:De})}function q(oe,fe={}){return(0,r.getEndpoint)(s,"/v2/chains/{chainId}/delegates",{path:{chainId:oe},query:fe})}function Y(oe){return(0,r.postEndpoint)(s,"/v1/register/notifications",{body:oe})}function le(oe,fe,De){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/notifications/devices/{uuid}/safes/{safe_address}",{path:{chainId:oe,safe_address:fe,uuid:De}})}function ne(oe,fe){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/notifications/devices/{uuid}",{path:{chainId:oe,uuid:fe}})}function ce(oe,fe,De,ot){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails",{path:{chainId:oe,safe_address:fe},body:De,headers:ot})}function be(oe,fe,De,ot,Jr){return(0,r.putEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}",{path:{chainId:oe,safe_address:fe,signer:De},body:ot,headers:Jr})}function xe(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}/verify-resend",{path:{chainId:oe,safe_address:fe,signer:De},body:""})}function Ke(oe,fe,De,ot){return(0,r.putEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}/verify",{path:{chainId:oe,safe_address:fe,signer:De},body:ot})}function Ee(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}",{path:{chainId:oe,safe_address:fe,signer:De},headers:ot})}function Ue(oe,fe,De,ot){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}",{path:{chainId:oe,safe_address:fe,signer:De},headers:ot})}function lt(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/recovery",{path:{chainId:oe,safe_address:fe},body:De})}function yt(oe){return(0,r.deleteEndpoint)(s,"/v1/subscriptions",{query:oe})}function ut(oe){return(0,r.deleteEndpoint)(s,"/v1/subscriptions/all",{query:oe})}function Qt(oe,fe){return(0,r.getEndpoint)(s,"/v1/safes",{query:Object.assign(Object.assign({},fe),{safes:oe.join(",")})})}function Yr(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/contracts/{contractAddress}",{path:{chainId:oe,contractAddress:fe}})}function Ri(){return(0,r.getEndpoint)(s,"/v1/auth/nonce",{credentials:"include"})}function tx(oe){return(0,r.postEndpoint)(s,"/v1/auth/verify",{body:oe,credentials:"include"})}function nx(oe){return(0,r.postEndpoint)(s,"/v1/accounts",{body:oe,credentials:"include"})}function Rw(oe){return(0,r.getEndpoint)(s,"/v1/accounts/{address}",{path:{address:oe},credentials:"include"})}function Ow(oe){return(0,r.deleteEndpoint)(s,"/v1/accounts/{address}",{path:{address:oe},credentials:"include"})}function mg(){return(0,r.getEndpoint)(s,"/v1/accounts/data-types")}function Pw(oe){return(0,r.getEndpoint)(s,"/v1/accounts/{address}/data-settings",{path:{address:oe},credentials:"include"})}function kw(oe,fe){return(0,r.putEndpoint)(s,"/v1/accounts/{address}/data-settings",{path:{address:oe},body:fe,credentials:"include"})}function $w(oe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/about/indexing",{path:{chainId:oe}})}})(om);class Mye{constructor(e){this.communicator=e}async getBySafeTxHash(e){if(!e)throw new Error("Invalid safeTxHash");return(await this.communicator.send(Wn.getTxBySafeTxHash,{safeTxHash:e})).data}async signMessage(e){const n={message:e};return(await this.communicator.send(Wn.signMessage,n)).data}async signTypedMessage(e){if(!eA(e))throw new Error("Invalid typed data");return(await this.communicator.send(Wn.signTypedMessage,{typedData:e})).data}async send({txs:e,params:n}){if(!e||!e.length)throw new Error("No transactions were passed");const r={txs:e,params:n};return(await this.communicator.send(Wn.sendTransactions,r)).data}}const xr={eth_call:"eth_call",eth_gasPrice:"eth_gasPrice",eth_getLogs:"eth_getLogs",eth_getBalance:"eth_getBalance",eth_getCode:"eth_getCode",eth_getBlockByHash:"eth_getBlockByHash",eth_getBlockByNumber:"eth_getBlockByNumber",eth_getStorageAt:"eth_getStorageAt",eth_getTransactionByHash:"eth_getTransactionByHash",eth_getTransactionReceipt:"eth_getTransactionReceipt",eth_getTransactionCount:"eth_getTransactionCount",eth_estimateGas:"eth_estimateGas",safe_setSettings:"safe_setSettings"},ka={defaultBlockParam:(t="latest")=>t,returnFullTxObjectParam:(t=!1)=>t,blockNumberToHex:t=>Number.isInteger(t)?`0x${t.toString(16)}`:t};class Fye{constructor(e){this.communicator=e,this.call=this.buildRequest({call:xr.eth_call,formatters:[null,ka.defaultBlockParam]}),this.getBalance=this.buildRequest({call:xr.eth_getBalance,formatters:[null,ka.defaultBlockParam]}),this.getCode=this.buildRequest({call:xr.eth_getCode,formatters:[null,ka.defaultBlockParam]}),this.getStorageAt=this.buildRequest({call:xr.eth_getStorageAt,formatters:[null,ka.blockNumberToHex,ka.defaultBlockParam]}),this.getPastLogs=this.buildRequest({call:xr.eth_getLogs}),this.getBlockByHash=this.buildRequest({call:xr.eth_getBlockByHash,formatters:[null,ka.returnFullTxObjectParam]}),this.getBlockByNumber=this.buildRequest({call:xr.eth_getBlockByNumber,formatters:[ka.blockNumberToHex,ka.returnFullTxObjectParam]}),this.getTransactionByHash=this.buildRequest({call:xr.eth_getTransactionByHash}),this.getTransactionReceipt=this.buildRequest({call:xr.eth_getTransactionReceipt}),this.getTransactionCount=this.buildRequest({call:xr.eth_getTransactionCount,formatters:[null,ka.defaultBlockParam]}),this.getGasPrice=this.buildRequest({call:xr.eth_gasPrice}),this.getEstimateGas=n=>this.buildRequest({call:xr.eth_estimateGas})([n]),this.setSafeSettings=this.buildRequest({call:xr.safe_setSettings})}buildRequest(e){const{call:n,formatters:r}=e;return async i=>{r&&Array.isArray(i)&&r.forEach((a,c)=>{a&&(i[c]=a(i[c]))});const s={call:n,params:i||[]};return(await this.communicator.send(Wn.rpcCall,s)).data}}}const Wye="0x1626ba7e",jye="0x20c13b0b",N4=4001;class w1 extends Error{constructor(e,n,r){super(e),this.code=n,this.data=r,Object.setPrototypeOf(this,w1.prototype)}}class JB{constructor(e){this.communicator=e}async getPermissions(){return(await this.communicator.send(Wn.wallet_getPermissions,void 0)).data}async requestPermissions(e){if(!this.isPermissionRequestValid(e))throw new w1("Permissions request is invalid",N4);try{return(await this.communicator.send(Wn.wallet_requestPermissions,e)).data}catch{throw new w1("Permissions rejected",N4)}}isPermissionRequestValid(e){return e.every(n=>typeof n=="object"?Object.keys(n).every(r=>!!Object.values(_2).includes(r)):!1)}}const wI=(t,e)=>e.some(n=>n.parentCapability===t),Hye=()=>(t,e,n)=>{const r=n.value;return n.value=async function(){const i=new JB(this.communicator);let s=await i.getPermissions();if(wI(e,s)||(s=await i.requestPermissions([{[e]:{}}])),!wI(e,s))throw new w1("Permissions rejected",N4);return r.apply(this)},n};var zye=function(t,e,n,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(t,e,n,r);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s};class QB{constructor(e){this.communicator=e}async getChainInfo(){return(await this.communicator.send(Wn.getChainInfo,void 0)).data}async getInfo(){return(await this.communicator.send(Wn.getSafeInfo,void 0)).data}async experimental_getBalances({currency:e="usd"}={}){return(await this.communicator.send(Wn.getSafeBalances,{currency:e})).data}async check1271Signature(e,n="0x"){const r=await this.getInfo(),i=wv({abi:[{constant:!1,inputs:[{name:"_dataHash",type:"bytes32"},{name:"_signature",type:"bytes"}],name:"isValidSignature",outputs:[{name:"",type:"bytes4"}],payable:!1,stateMutability:"nonpayable",type:"function"}],functionName:"isValidSignature",args:[e,n]}),s={call:xr.eth_call,params:[{to:r.safeAddress,data:i},"latest"]};try{return(await this.communicator.send(Wn.rpcCall,s)).data.slice(0,10).toLowerCase()===Wye}catch{return!1}}async check1271SignatureBytes(e,n="0x"){const r=await this.getInfo(),i=wv({abi:[{constant:!1,inputs:[{name:"_data",type:"bytes"},{name:"_signature",type:"bytes"}],name:"isValidSignature",outputs:[{name:"",type:"bytes4"}],payable:!1,stateMutability:"nonpayable",type:"function"}],functionName:"isValidSignature",args:[e,n]}),s={call:xr.eth_call,params:[{to:r.safeAddress,data:i},"latest"]};try{return(await this.communicator.send(Wn.rpcCall,s)).data.slice(0,10).toLowerCase()===jye}catch{return!1}}calculateMessageHash(e){return dN(e)}calculateTypedMessageHash(e){const n=typeof e.domain.chainId=="object"?e.domain.chainId.toNumber():Number(e.domain.chainId);let r=e.primaryType;if(!r){const i=Object.values(e.types),s=Object.keys(e.types).filter(o=>i.every(a=>a.every(({type:c})=>c.replace("[","").replace("]","")!==o)));if(s.length===0||s.length>1)throw new Error("Please specify primaryType");r=s[0]}return wN({message:e.message,domain:{...e.domain,chainId:n,verifyingContract:e.domain.verifyingContract,salt:e.domain.salt},types:e.types,primaryType:r})}async getOffChainSignature(e){return(await this.communicator.send(Wn.getOffChainSignature,e)).data}async isMessageSigned(e,n="0x"){let r;if(typeof e=="string"&&(r=async()=>{const i=this.calculateMessageHash(e);return await this.isMessageHashSigned(i,n)}),eA(e)&&(r=async()=>{const i=this.calculateTypedMessageHash(e);return await this.isMessageHashSigned(i,n)}),r)return await r();throw new Error("Invalid message type")}async isMessageHashSigned(e,n="0x"){const r=[this.check1271Signature.bind(this),this.check1271SignatureBytes.bind(this)];for(const i of r)if(await i(e,n))return!0;return!1}async getEnvironmentInfo(){return(await this.communicator.send(Wn.getEnvironmentInfo,void 0)).data}async requestAddressBook(){return(await this.communicator.send(Wn.requestAddressBook,void 0)).data}}zye([Hye()],QB.prototype,"requestAddressBook",null);class Vye{constructor(e={}){const{allowedDomains:n=null,debug:r=!1}=e;this.communicator=new Tye(n,r),this.eth=new Fye(this.communicator),this.txs=new Mye(this.communicator),this.safe=new QB(this.communicator),this.wallet=new JB(this.communicator)}}const XB=Object.freeze(Object.defineProperty({__proto__:null,MessageFormatter:Tw,get Methods(){return Wn},Operation:om.Operation,RPC_CALLS:xr,get RestrictedMethods(){return _2},TokenType:om.TokenType,TransactionStatus:om.TransactionStatus,TransferDirection:om.TransferDirection,default:Vye,getSDKVersion:GB,isObjectEIP712TypedData:eA},Symbol.toStringTag,{value:"Module"})),qye=PI(XB);var V0={};Object.defineProperty(V0,"__esModule",{value:!0});V0.numberToHex=V0.getLowerCase=void 0;function Gye(t){return t&&t.toLowerCase()}V0.getLowerCase=Gye;function Kye(t){return`0x${t.toString(16)}`}V0.numberToHex=Kye;Object.defineProperty(Z3,"__esModule",{value:!0});Z3.SafeAppProvider=void 0;const of=qye,Zye=Xi,us=V0;class Yye extends Zye.EventEmitter{constructor(e,n){super(),this.submittedTxs=new Map,this.safe=e,this.sdk=n}async connect(){this.emit("connect",{chainId:this.chainId})}async disconnect(){}get chainId(){return this.safe.chainId}async request(e){var i,s,o,a;const{method:n,params:r=[]}=e;switch(n){case"eth_accounts":return[this.safe.safeAddress];case"net_version":case"eth_chainId":return(0,us.numberToHex)(this.chainId);case"personal_sign":{const[h,f]=r;if(this.safe.safeAddress.toLowerCase()!==f.toLowerCase())throw new Error("The address or message hash is invalid");const g=await this.sdk.txs.signMessage(h);return("signature"in g?g.signature:void 0)||"0x"}case"eth_sign":{const[h,f]=r;if(this.safe.safeAddress.toLowerCase()!==h.toLowerCase()||!f.startsWith("0x"))throw new Error("The address or message hash is invalid");const g=await this.sdk.txs.signMessage(f);return("signature"in g?g.signature:void 0)||"0x"}case"eth_signTypedData":case"eth_signTypedData_v4":{const[h,f]=r,g=typeof f=="string"?JSON.parse(f):f;if(this.safe.safeAddress.toLowerCase()!==h.toLowerCase())throw new Error("The address is invalid");const p=await this.sdk.txs.signTypedMessage(g);return("signature"in p?p.signature:void 0)||"0x"}case"eth_sendTransaction":const c={...r[0],value:r[0].value||"0",data:r[0].data||"0x"};typeof c.gas=="string"&&c.gas.startsWith("0x")&&(c.gas=parseInt(c.gas,16));const l=await this.sdk.txs.send({txs:[c],params:{safeTxGas:c.gas}});return this.submittedTxs.set(l.safeTxHash,{from:this.safe.safeAddress,hash:l.safeTxHash,gas:0,gasPrice:"0x00",nonce:0,input:c.data,value:c.value,to:c.to,blockHash:null,blockNumber:null,transactionIndex:null}),l.safeTxHash;case"eth_blockNumber":return(await this.sdk.eth.getBlockByNumber(["latest"])).number;case"eth_getBalance":return this.sdk.eth.getBalance([(0,us.getLowerCase)(r[0]),r[1]]);case"eth_getCode":return this.sdk.eth.getCode([(0,us.getLowerCase)(r[0]),r[1]]);case"eth_getTransactionCount":return this.sdk.eth.getTransactionCount([(0,us.getLowerCase)(r[0]),r[1]]);case"eth_getStorageAt":return this.sdk.eth.getStorageAt([(0,us.getLowerCase)(r[0]),r[1],r[2]]);case"eth_getBlockByNumber":return this.sdk.eth.getBlockByNumber([r[0],r[1]]);case"eth_getBlockByHash":return this.sdk.eth.getBlockByHash([r[0],r[1]]);case"eth_getTransactionByHash":let d=r[0];try{d=(await this.sdk.txs.getBySafeTxHash(d)).txHash||d}catch{}return this.submittedTxs.has(d)?this.submittedTxs.get(d):this.sdk.eth.getTransactionByHash([d]).then(h=>(h&&(h.hash=r[0]),h));case"eth_getTransactionReceipt":{let h=r[0];try{h=(await this.sdk.txs.getBySafeTxHash(h)).txHash||h}catch{}return this.sdk.eth.getTransactionReceipt([h]).then(f=>(f&&(f.transactionHash=r[0]),f))}case"eth_estimateGas":return this.sdk.eth.getEstimateGas(r[0]);case"eth_call":return this.sdk.eth.call([r[0],r[1]]);case"eth_getLogs":return this.sdk.eth.getPastLogs([r[0]]);case"eth_gasPrice":return this.sdk.eth.getGasPrice();case"wallet_getPermissions":return this.sdk.wallet.getPermissions();case"wallet_requestPermissions":return this.sdk.wallet.requestPermissions(r[0]);case"safe_setSettings":return this.sdk.eth.setSafeSettings([r[0]]);case"wallet_sendCalls":{const{from:h,calls:f,chainId:g}=r[0];if(g!==(0,us.numberToHex)(this.chainId))throw new Error(`Safe is not on chain ${g}`);if(h!==this.safe.safeAddress)throw Error("Invalid from address");const p=f.map((C,x)=>{if(!C.to)throw new Error(`Invalid call #${x}: missing "to" field`);return{to:C.to,data:C.data??"0x",value:C.value??(0,us.numberToHex)(0)}}),{safeTxHash:m}=await this.sdk.txs.send({txs:p});return{id:m}}case"wallet_getCallsStatus":{const h=r[0],f={[of.TransactionStatus.AWAITING_CONFIRMATIONS]:100,[of.TransactionStatus.AWAITING_EXECUTION]:100,[of.TransactionStatus.SUCCESS]:200,[of.TransactionStatus.CANCELLED]:400,[of.TransactionStatus.FAILED]:500},g=await this.sdk.txs.getBySafeTxHash(h),p={version:"1.0",id:h,chainId:(0,us.numberToHex)(this.chainId),status:f[g.txStatus]};if(!g.txHash)return p;const m=await this.sdk.eth.getTransactionReceipt([g.txHash]);if(!m)return p;const b=((s=(i=g.txData)==null?void 0:i.dataDecoded)==null?void 0:s.method)!=="multiSend"?1:((a=(o=g.txData.dataDecoded.parameters)==null?void 0:o[0].valueDecoded)==null?void 0:a.length)??1,C=Number(m.blockNumber),x=Number(m.gasUsed);return p.receipts=Array(b).fill({logs:m.logs,status:(0,us.numberToHex)(g.txStatus===of.TransactionStatus.SUCCESS?1:0),blockHash:m.blockHash,blockNumber:(0,us.numberToHex)(C),gasUsed:(0,us.numberToHex)(x),transactionHash:g.txHash}),p}case"wallet_showCallsStatus":throw new Error(`"${e.method}" not supported`);case"wallet_getCapabilities":return{[(0,us.numberToHex)(this.chainId)]:{atomicBatch:{supported:!0}}};default:throw Error(`"${e.method}" not implemented`)}}send(e,n){e||n("Undefined request"),this.request(e).then(r=>n(null,{jsonrpc:"2.0",id:e.id,result:r})).catch(r=>n(r,null))}}Z3.SafeAppProvider=Yye;(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.SafeAppProvider=void 0;var e=Z3;Object.defineProperty(t,"SafeAppProvider",{enumerable:!0,get:function(){return e.SafeAppProvider}})})(qB);class Jye extends qB.SafeAppProvider{request(e){return e.method==="eth_requestAccounts"?this.request({method:"eth_accounts",params:[]}):super.request(e)}}class Qye extends X6{async initialize(){const{default:e}=await Promise.resolve().then(()=>XB),n=new e,r=await n.safe.getInfo(),i=new Jye(r,n);await i.connect().catch(s=>{console.info("Failed to auto-connect to Safe:",s)}),this.provider=i,this.initialized=!0}async getProvider(){return Promise.resolve(this.provider)}}class Xye extends X6{async initialize(){if(!(typeof window>"u")&&window.ethereum)return this.provider=window.ethereum,this.initialized=!0,Promise.resolve()}}const af={signMessage:async(t,e,n)=>{if(!e)throw new Error("signMessage - provider is undefined");const r=Vt(t)?t:de(Sr(t));return await e.request({method:"personal_sign",params:[r,n]})},estimateGas:async(t,e,n,r)=>{if(!e)throw new Error("estimateGas - provider is undefined");if(!n)throw new Error("estimateGas - address is undefined");if(t.chainNamespace&&t.chainNamespace!=="eip155")throw new Error("estimateGas - chainNamespace is not eip155");const i={from:t.address,to:t.to,data:t.data,type:0},s=new qf(e,r);return await new Vf(s,n).estimateGas(i)},sendTransaction:async(t,e,n,r)=>{if(!e)throw new Error("sendTransaction - provider is undefined");if(!n)throw new Error("sendTransaction - address is undefined");if(t.chainNamespace&&t.chainNamespace!=="eip155")throw new Error("sendTransaction - chainNamespace is not eip155");const i={to:t.to,value:t.value,gasLimit:t.gas,gasPrice:t.gasPrice,data:t.data,type:0},s=new qf(e,r),c=await(await new Vf(s,n).sendTransaction(i)).wait();return(c==null?void 0:c.hash)||null},writeContract:async(t,e,n,r)=>{if(!e)throw new Error("writeContract - provider is undefined");if(!n)throw new Error("writeContract - address is undefined");const i=new qf(e,r),s=new Vf(i,n),o=new kd(t.tokenAddress,t.abi,s);if(!o||!t.method)throw new Error("Contract method is undefined");const a=o[t.method];if(a)return await a(...t.args);throw new Error("Contract method is undefined")},parseWalletCapabilities:t=>{try{return JSON.parse(t)}catch{throw new Error("Error parsing wallet capabilities")}},parseUnits:m0e,formatUnits:R$};class ebe extends dk{constructor(){super({adapterType:H.ADAPTER_TYPES.ETHERS,namespace:H.CHAIN.EVM}),this.balancePromises={},this.ethersProviders={}}async createEthersConfig(){const{metadata:e,enableCoinbase:n,enableInjected:r,enableEIP6963:i}=V.state;if(e){if(r!==!1){const s=new Xye;await s.initialize(),this.ethersProviders.injected=s}if(n!==!1&&(this.ethersProviders.baseAccount=new Aye),ee.isSafeApp()){const s=new Qye;await s.initialize(),this.ethersProviders.safe=s}return{...this.ethersProviders,EIP6963:i!==!1,metadata:e}}}async signMessage(e){const{message:n,address:r,provider:i}=e;if(!i)throw new Error("Provider is undefined");try{return{signature:await af.signMessage(n,i,r)}}catch{throw new Error("EthersAdapter:signMessage - Sign message failed")}}async sendTransaction(e){var i,s;if(!e.provider)throw new Error("Provider is undefined");const n=(i=v.getAccountData(H.CHAIN.EVM))==null?void 0:i.address;if(!n)throw new Error("Address is undefined");return{hash:await af.sendTransaction({value:Number.isNaN(Number(e.value))?BigInt(0):BigInt(e.value),to:e.to,data:e.data?e.data:"0x",gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,address:n},e.provider,n,Number((s=e.caipNetwork)==null?void 0:s.id))}}async writeContract(e){var i;if(!e.provider)throw new Error("Provider is undefined");const{address:n}=hn.parseCaipAddress(e.caipAddress);return{hash:await af.writeContract(e,e.provider,n,Number((i=e.caipNetwork)==null?void 0:i.id))}}async estimateGas(e){const{provider:n,caipNetwork:r,address:i}=e;if(!n)throw new Error("Provider is undefined");try{return{gas:await af.estimateGas({data:e.data,to:e.to,address:i},n,i,Number(r==null?void 0:r.id))}}catch{throw new Error("EthersAdapter:estimateGas - Estimate gas failed")}}parseUnits(e){return af.parseUnits(e.value,e.decimals)}formatUnits(e){return af.formatUnits(e.value,e.decimals)}async syncConnection(e){const{id:n,chainId:r}=e,i=this.connectors.find(c=>c.id===n),s=i==null?void 0:i.provider;if(!s)throw new Error("Provider not found");const o=await s.request({method:"eth_requestAccounts"}),a=await s.request({method:"eth_chainId"});if(this.listenProviderEvents(n,s),!o[0])throw new Error("No accounts found");if(!(i!=null&&i.type))throw new Error("Connector type not found");return{address:this.toChecksummedAddress(o[0]),chainId:Number(a)||Number(r),provider:s,type:i.type,id:n}}async syncConnectors(){var r;this.ethersConfig=await this.createEthersConfig(),(r=this.ethersConfig)!=null&&r.EIP6963&&this.listenInjectedConnector(!0);const n=Object.keys(this.ethersConfig||{}).filter(i=>i!=="metadata"&&i!=="EIP6963").map(async i=>{var o;const s=i===H.CONNECTOR_ID.INJECTED;if(this.namespace){const a=this.ethersProviders[i];this.addConnector({id:i,explorerId:Hi.ConnectorExplorerIds[i],imageUrl:(o=gn.state.connectorImages)==null?void 0:o[i],name:Hi.ConnectorNamesMap[i]||"Unknown",imageId:Hi.ConnectorImageIds[i],type:Hi.ConnectorTypesMap[i]??"EXTERNAL",info:s?void 0:{rdns:i},chain:this.namespace,chains:[],provider:await(a==null?void 0:a.getProvider())})}});await Promise.all(n)}async disconnectAll(){return{connections:await Promise.all(this.connections.map(async n=>{const r=this.connectors.find(i=>dn.isLowerCaseMatch(i.id,n.connectorId));if(!r)throw new Error("Connector not found");return await this.disconnect({id:r.id}),n}))}}async writeSolanaTransaction(){return Promise.resolve({hash:""})}async syncConnections({connectToFirstConnector:e}){const n=this.getCaipNetworks();await Promise.all(this.connectors.filter(r=>{const{hasDisconnected:i,hasConnected:s}=dn.getConnectorStorageInfo(r.id,this.namespace);return!i&&s}).map(async r=>{if(r.id===H.CONNECTOR_ID.WALLET_CONNECT){const i=sa.getWalletConnectAccounts(this.universalProvider,this.namespace),s=n.find(o=>{var a,c;return o.chainNamespace===this.namespace&&o.id.toString()===((c=(a=i[0])==null?void 0:a.chainId)==null?void 0:c.toString())});i.length>0&&this.addConnection({connectorId:r.id,accounts:i.map(o=>({address:o.address})),caipNetwork:s})}else{const{accounts:i,chainId:s}=await Pn.fetchProviderData(r);if(i.length>0&&s){const o=n.find(a=>a.chainNamespace===this.namespace&&a.id.toString()===s.toString());this.addConnection({connectorId:r.id,accounts:i.map(a=>({address:a})),caipNetwork:o}),r.provider&&r.id!==H.CONNECTOR_ID.AUTH&&r.id!==H.CONNECTOR_ID.WALLET_CONNECT&&this.listenProviderEvents(r.id,r.provider)}}})),e&&this.emitFirstAvailableConnection()}async setUniversalProvider(e){this.universalProvider=e;const n=H.CONNECTOR_ID.WALLET_CONNECT;return sa.listenWcProvider({universalProvider:e,namespace:H.CHAIN.EVM,onConnect:r=>this.onConnect(r,n),onDisconnect:()=>this.onDisconnect(n),onAccountsChanged:r=>this.onAccountsChanged(r,n,!1),onChainChanged:r=>this.onChainChanged(r,n)}),this.addConnector(new hk({provider:e,caipNetworks:this.getCaipNetworks(),namespace:H.CHAIN.EVM})),Promise.resolve()}eip6963EventHandler(e){var n;if(e.detail){const{info:r,provider:i}=e.detail;if(!((n=this.connectors)==null?void 0:n.find(o=>o.name===(r==null?void 0:r.name)))){const o=Hi.ConnectorTypesMap[H.CONNECTOR_ID.EIP6963],a=(r==null?void 0:r.rdns)||(r==null?void 0:r.name)||(r==null?void 0:r.uuid);this.namespace&&a&&this.addConnector({id:a,type:o,explorerId:Hi.ConnectorExplorerIds[r.rdns||""]??Hi.ConnectorExplorerIds[r.name||""],imageUrl:r==null?void 0:r.icon,name:(r==null?void 0:r.name)||"Unknown",provider:i,info:r,chain:this.namespace,chains:[]})}}}listenInjectedConnector(e){if(typeof window<"u"&&e){const n=this.eip6963EventHandler.bind(this);window.addEventListener(H.EIP6963_ANNOUNCE_EVENT,n),window.dispatchEvent(new Event(H.EIP6963_REQUEST_EVENT))}}async connect({id:e,address:n,type:r,chainId:i,socialUri:s}){try{const o=this.connectors.find(h=>dn.isLowerCaseMatch(h.id,e));if(!o)throw new Error("Connector not found");const a=this.getConnection({address:n,connectorId:e,connections:this.connections,connectors:this.connectors});if(a){const h=a.caipNetwork;if(!h)throw new Error("EthersAdapter:connect - could not find the caipNetwork to connect");if(a.account)return this.emit("accountChanged",{address:this.toChecksummedAddress(a.account.address),chainId:h.id,connector:o}),{address:this.toChecksummedAddress(a.account.address),chainId:h.id,provider:o.provider,type:o.type,id:e}}let c=o==null?void 0:o.provider;const l=this.ethersProviders[o.id];if(l&&(await l.initialize(),c=await l.getProvider()),!c)throw new Error("Provider not found");o.provider=c;let u=[],d;if(r===H.CONNECTOR_TYPE_AUTH){const{address:h,accounts:f}=await Hn.authConnectorAuthenticate({authConnector:c,chainNamespace:H.CHAIN.EVM,chainId:i,socialUri:s,preferredAccountType:rn("eip155")}),g=this.getCaipNetworks().find(p=>p.id.toString()===(i==null?void 0:i.toString()));u=[h],this.addConnection({connectorId:e,accounts:f?f.map(p=>({address:p.address})):u.map(p=>({address:p})),caipNetwork:g,auth:{name:re.getConnectedSocialProvider(),username:re.getConnectedSocialUsername()}}),this.emit("accountChanged",{address:this.toChecksummedAddress(u[0]),chainId:Number(i),connector:o})}else{u=await c.request({method:"eth_requestAccounts"}),d=await c.request({method:"eth_chainId"});const h=this.getCaipNetworks().find(f=>f.id.toString()===(i==null?void 0:i.toString()));if(d!==i){if(!h)throw new Error("EthersAdapter:connect - could not find the caipNetwork to switch");try{await(c==null?void 0:c.request({method:"wallet_switchEthereumChain",params:[{chainId:Gf.numberToHexString(h.id)}]}))}catch{throw new Error("EthersAdapter:connect - Switch network failed")}}this.emit("accountChanged",{address:this.toChecksummedAddress(u[0]),chainId:Number(i),connector:o}),this.addConnection({connectorId:e,accounts:u.map(f=>({address:f})),caipNetwork:h}),o.id!==H.CONNECTOR_ID.WALLET_CONNECT&&this.listenProviderEvents(e,c)}return{address:this.toChecksummedAddress(u[0]),chainId:Number(i),provider:c,type:r,id:e}}catch(o){throw fi.isUserRejectedRequestError(o)?new j4(o):o}}async reconnect(e){const{id:n,chainId:r}=e,i=this.connectors.find(s=>s.id===n);i&&i.type==="AUTH"&&r&&await Hn.authConnectorAuthenticate({authConnector:i.provider,chainNamespace:H.CHAIN.EVM,chainId:r,preferredAccountType:rn("eip155")})}async getAccounts(e){const n=this.connectors.find(o=>o.id===e.id),r=n==null?void 0:n.provider;if(!r||!n)throw new Error("Provider not found");const i=this.getConnection({connectorId:e.id,connections:this.connections,connectors:this.connectors});if(i)return{accounts:i.accounts.map(({address:o})=>ee.createAccount(H.CHAIN.EVM,o,"eoa"))};if(e.id===H.CONNECTOR_ID.AUTH){const o=n.provider;if(!o.user)return{accounts:[]};const{accounts:a,address:c}=o.user;return Promise.resolve({accounts:(a||[{address:c,type:"eoa"}]).map(l=>ee.createAccount(H.CHAIN.EVM,l.address,l.type))})}return{accounts:(await r.request({method:"eth_requestAccounts"})).map(o=>ee.createAccount(H.CHAIN.EVM,o,"eoa"))}}async disconnect(e){var n;if(e.id){const r=this.connectors.find(s=>dn.isLowerCaseMatch(s.id,e.id));if(!r)throw new Error("Connector not found");const i=this.getConnection({connectorId:e.id,connections:this.connections,connectors:this.connectors});switch(r.type){case H.CONNECTOR_TYPE_WALLET_CONNECT:r.provider.session&&r.provider.disconnect();break;case H.CONNECTOR_TYPE_AUTH:await((n=r.provider)==null?void 0:n.disconnect());break;case H.CONNECTOR_TYPE_ANNOUNCED:case H.CONNECTOR_TYPE_EXTERNAL:await this.revokeProviderPermissions(r.provider);break;default:throw new Error("Unsupported provider type")}return r.id&&(this.removeProviderListeners(r.id),this.deleteConnection(r.id)),this.connections.length===0?this.emit("disconnect"):this.emitFirstAvailableConnection(),{connections:i?[i]:[]}}return this.disconnectAll()}async getBalance(e){const n=e.address,r=this.getCaipNetworks().find(i=>{var s;return i.id.toString()===((s=e.chainId)==null?void 0:s.toString())});if(!n)return Promise.resolve({balance:"0.00",symbol:"ETH"});if(r&&r.chainNamespace===H.CHAIN.EVM){const i=`${r.caipNetworkId}:${n}`,s=this.balancePromises[i];if(s)return s;const o=re.getNativeBalanceCacheForCaipAddress(i);if(o)return{balance:o.balance,symbol:o.symbol};const a=new $B(r.rpcUrls.default.http[0],{chainId:r.id,name:r.name});if(a)try{return this.balancePromises[i]=new Promise(async c=>{try{const l=await a.getBalance(n),u=w0e(l);re.updateNativeBalanceCache({caipAddress:i,balance:u,symbol:r.nativeCurrency.symbol,timestamp:Date.now()}),c({balance:u,symbol:r.nativeCurrency.symbol})}catch{c({balance:"0.00",symbol:"ETH"})}}).finally(()=>{delete this.balancePromises[i]}),this.balancePromises[i]||{balance:"0.00",symbol:"ETH"}}catch{return{balance:"0.00",symbol:"ETH"}}}return{balance:"0.00",symbol:"ETH"}}async switchNetwork(e){var s,o;const{caipNetwork:n}=e,r=dt.getProviderId(n.chainNamespace),i=dt.getProvider(n.chainNamespace);if(r==="AUTH"||r==="WALLET_CONNECT"){await super.switchNetwork(e);return}if(!i)throw new Error("Provider not found");try{await(i==null?void 0:i.request({method:"wallet_switchEthereumChain",params:[{chainId:Gf.numberToHexString(n.id)}]}))}catch(a){if(a.code===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||a.code===Bl.ERROR_INVALID_CHAIN_ID||a.code===Bl.ERROR_CODE_DEFAULT||((o=(s=a==null?void 0:a.data)==null?void 0:s.originalError)==null?void 0:o.code)===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)await Gf.addEthereumChain(i,n);else if(r==="ANNOUNCED"||r==="EXTERNAL"||r==="INJECTED")throw new Error("Chain is not supported")}}getWalletConnectProvider(){var e;return(e=this.connectors.find(n=>n.type==="WALLET_CONNECT"))==null?void 0:e.provider}async revokeProviderPermissions(e){try{(await e.request({method:"wallet_getPermissions"})).find(i=>i.parentCapability==="eth_accounts")&&await e.request({method:"wallet_revokePermissions",params:[{eth_accounts:{}}]})}catch(n){console.info("Could not revoke permissions from wallet. Disconnecting...",n)}}async getCapabilities(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_getCapabilities",params:[e]})}async grantPermissions(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_grantPermissions",params:e})}async revokePermissions(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_revokePermissions",params:[e]})}async walletGetAssets(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_getAssets",params:[e]})}toChecksummedAddress(e){try{return ft(e.toLowerCase())}catch{return e}}}var eU={exports:{}},tU={exports:{}};(function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e={rotl:function(n,r){return n<<r|n>>>32-r},rotr:function(n,r){return n<<32-r|n>>>r},endian:function(n){if(n.constructor==Number)return e.rotl(n,8)&16711935|e.rotl(n,24)&4278255360;for(var r=0;r<n.length;r++)n[r]=e.endian(n[r]);return n},randomBytes:function(n){for(var r=[];n>0;n--)r.push(Math.floor(Math.random()*256));return r},bytesToWords:function(n){for(var r=[],i=0,s=0;i<n.length;i++,s+=8)r[s>>>5]|=n[i]<<24-s%32;return r},wordsToBytes:function(n){for(var r=[],i=0;i<n.length*32;i+=8)r.push(n[i>>>5]>>>24-i%32&255);return r},bytesToHex:function(n){for(var r=[],i=0;i<n.length;i++)r.push((n[i]>>>4).toString(16)),r.push((n[i]&15).toString(16));return r.join("")},hexToBytes:function(n){for(var r=[],i=0;i<n.length;i+=2)r.push(parseInt(n.substr(i,2),16));return r},bytesToBase64:function(n){for(var r=[],i=0;i<n.length;i+=3)for(var s=n[i]<<16|n[i+1]<<8|n[i+2],o=0;o<4;o++)i*8+o*6<=n.length*8?r.push(t.charAt(s>>>6*(3-o)&63)):r.push("=");return r.join("")},base64ToBytes:function(n){n=n.replace(/[^A-Z0-9+\/]/ig,"");for(var r=[],i=0,s=0;i<n.length;s=++i%4)s!=0&&r.push((t.indexOf(n.charAt(i-1))&Math.pow(2,-2*s+8)-1)<<s*2|t.indexOf(n.charAt(i))>>>6-s*2);return r}};tU.exports=e})();var tbe=tU.exports,R4={utf8:{stringToBytes:function(t){return R4.bin.stringToBytes(unescape(encodeURIComponent(t)))},bytesToString:function(t){return decodeURIComponent(escape(R4.bin.bytesToString(t)))}},bin:{stringToBytes:function(t){for(var e=[],n=0;n<t.length;n++)e.push(t.charCodeAt(n)&255);return e},bytesToString:function(t){for(var e=[],n=0;n<t.length;n++)e.push(String.fromCharCode(t[n]));return e.join("")}}},yI=R4;/*!
|
|
7198
|
+
`)!==y(this,R1))throw new Error(`BIP39 Wordlist for ${this.locale} FAILED`);k(this,vd,n)}return y(this,vd)};const Xwe="0erleonalorenseinceregesticitStanvetearctssi#ch2Athck&tneLl0And#Il.yLeOutO=S|S%b/ra@SurdU'0Ce[Cid|CountCu'Hie=IdOu,-Qui*Ro[TT]T%T*[Tu$0AptDD-tD*[Ju,M.UltV<)Vi)0Rob-0FairF%dRaid0A(EEntRee0Ead0MRRp%tS!_rmBumCoholErtI&LLeyLowMo,O}PhaReadySoT Ways0A>urAz(gOngOuntU'd0Aly,Ch%Ci|G G!GryIm$K!Noun)Nu$O` Sw T&naTiqueXietyY1ArtOlogyPe?P!Pro=Ril1ChCt-EaEnaGueMMedM%MyOundR<+Re,Ri=RowTTefa@Ti,Tw%k0KPe@SaultSetSi,SumeThma0H!>OmTa{T&dT.udeTra@0Ct]D.Gu,NtTh%ToTumn0Era+OcadoOid0AkeA*AyEsomeFulKw?d0Is:ByChel%C#D+GL<)Lc#y~MbooN<aNn RRelyRga(R*lSeS-SketTt!3A^AnAutyCau'ComeEfF%eG(Ha=H(dLie=LowLtN^Nef./TrayTt Twe&Y#d3Cyc!DKeNdOlogyRdR`Tt _{AdeAmeAnketA,EakE[IndOodO[omOu'UeUrUsh_rdAtDyIlMbNeNusOkO,Rd R(gRrowSsTtomUn)XY_{etA(AndA[A=EadEezeI{Id+IefIghtIngIskOccoliOk&OnzeOomO` OwnUsh2Bb!DdyD+tFf$oIldLbLkL!tNd!Nk Rd&Rg R,SS(e[SyTt Y Zz:Bba+B(B!CtusGeKe~LmM aMpNN$N)lNdyNn#NoeNvasNy#Pab!P.$Pta(RRb#RdRgoRpetRryRtSeShS(o/!Su$TT$ogT^Teg%yTt!UghtU'Ut]Ve3Il(gL yM|NsusNturyRe$Rta(_irAlkAmp]An+AosApt Ar+A'AtEapE{Ee'EfErryE,I{&IefIldIm}yOi)Oo'R#-U{!UnkUrn0G?Nnam#Rc!Tiz&TyVil_imApArifyAwAyE<ErkEv I{I|IffImbIn-IpO{OgO'O`OudOwnUbUmpU, Ut^_^A,C#utDeFfeeIlInL!@L%LumnMb(eMeMf%tM-Mm#Mp<yNc tNdu@NfirmNg*[N}@Nsid NtrolNv()OkOlPp PyR$ReRnR*@/Tt#U^UntryUp!Ur'Us(V Yo>_{Ad!AftAmA}AshAt AwlAzyEamEd.EekEwI{etImeIspIt-OpO[Ou^OwdUci$UelUi'Umb!Un^UshYY,$2BeLtu*PPbo?dRiousRr|Rta(R=Sh]/omTe3C!:DMa+MpN)Ng R(gShUght WnY3AlBa>BrisCadeCemb CideCl(eC%a>C*a'ErF&'F(eFyG*eLayLiv M<dMi'Ni$Nti,NyP?tP&dPos.P`PutyRi=ScribeS tSignSkSpair/royTailTe@VelopVi)Vo>3AgramAlAm#dAryCeE'lEtFf G.$Gn.yLemmaNn NosaurRe@RtSag*eScov Sea'ShSmi[S%d Splay/<)V tVideV%)Zzy5Ct%Cum|G~Lph(Ma(Na>NkeyN%OrSeUb!Ve_ftAg#AmaA,-AwEamE[IftIllInkIpI=OpUmY2CkMbNeR(g/T^Ty1Arf1Nam-:G G!RlyRnR`Sily/Sy1HoOlogyOnomy0GeItUca>1F%t0G1GhtTh 2BowD E@r-Eg<tEm|Eph<tEvat%I>Se0B?kBodyBra)Er+Ot]PloyPow Pty0Ab!A@DD![D%'EmyErgyF%)Ga+G(eH<)JoyLi,OughR-hRollSu*T Ti*TryVelope1Isode0U$Uip0AA'OdeOs]R%Upt0CapeSayS&)Ta>0Ern$H-s1Id&)IlOkeOl=1A@Amp!Ce[Ch<+C.eCludeCu'Ecu>Erci'Hau,Hib.I!I,ItOt-P<dPe@Pi*Pla(Po'P*[T&dTra0EEbrow:Br-CeCultyDeIntI`~L'MeMilyMousNNcyNtasyRmSh]TT$Th TigueUltV%.e3Atu*Bru?yD $EEdElMa!N)/iv$T^V W3B Ct]EldGu*LeLmLt N$NdNeNg NishReRmR,Sc$ShTT}[X_gAmeAshAtAv%EeIghtIpOatO{O%Ow UidUshY_mCusGIlLd~owOdOtR)Re,R+tRkRtu}RumRw?dSsil/ UndX_gi!AmeEqu|EshI&dIn+OgOntO,OwnOz&U.2ElNNnyRna)RyTu*:D+tInLaxy~ yMePRa+Rba+Rd&Rl-Rm|SSpTeTh U+Ze3N $NiusN*Nt!Nu(e/u*2O,0AntFtGg!Ng RaffeRlVe_dAn)A*A[IdeImp'ObeOomOryO=OwUe_tDde[LdOdO'RillaSpelSsipV nWn_bA)A(AntApeA[Av.yEatE&IdIefItOc yOupOwUnt_rdE[IdeIltIt?N3M:B.IrLfMm M, NdPpyRb%RdRshR=,TVeWkZ?d3AdAl`ArtAvyD+hogIght~oLmetLpNRo3Dd&Gh~NtPRe/%y5BbyCkeyLdLeLiday~owMeNeyOdPeRnRr%R'Sp.$/TelUrV 5BGeM<Mb!M%Nd*dNgryNtRd!RryRtSb<d3Brid:1EOn0EaEntifyLe2N%e4LLeg$L}[0A+Ita>M&'Mu}Pa@Po'Pro=Pul'0ChCludeComeC*a'DexD-a>Do%Du,ryF<tFl-tF%mHa!H .Iti$Je@JuryMa>N Noc|PutQuiryS<eSe@SideSpi*/$lTa@T e,ToVe,V.eVol=3On0L<dOla>Sue0Em1Ory:CketGu?RZz3AlousAns~yWel9BInKeUr}yY5D+I)MpNg!Ni%Nk/:Ng?oo3EnEpT^upY3CkDD}yNdNgdomSsTT^&TeTt&Wi4EeIfeO{Ow:BBelB%Dd DyKeMpNgua+PtopR+T T(UghUndryVaWWnWsu.Y Zy3Ad AfArnA=Ctu*FtGG$G&dIsu*M#NdNg`NsOp?dSs#Tt Vel3ArB tyBr?yC&'FeFtGhtKeMbM.NkOnQuid/Tt!VeZ?d5AdAnB, C$CkG-NelyNgOpTt yUdUn+VeY$5CkyGga+Mb N?N^Xury3R-s:Ch(eDG-G}tIdIlInJ%KeMm$NNa+Nda>NgoNs]Nu$P!Rb!R^Rg(R(eRketRria+SkSs/ T^T i$ThTrixTt XimumZe3AdowAnAsu*AtCh<-D$DiaLodyLtMb M%yNt]NuRcyR+R.RryShSsa+T$Thod3Dd!DnightLk~]M-NdNimumN%Nu>Rac!Rr%S ySs/akeXXedXtu*5Bi!DelDifyMM|N.%NkeyN, N`OnR$ReRn(gSqu.oTh T]T%Unta(U'VeVie5ChFf(LeLtiplySc!SeumShroomS-/Tu$3Self/ yTh:I=MePk(Rrow/yT]Tu*3ArCkEdGati=G!@I` PhewR=/TTw%kUtr$V WsXt3CeGht5B!I'M(eeOd!Rm$R`SeTab!TeTh(gTi)VelW5C!?Mb R'T:K0EyJe@Li+Scu*S =Ta(Vious0CurE<Tob 0Or1FF Fi)T&2L1Ay0DI=Ymp-0It0CeEI#L(eLy1EnEraIn]Po'T]1An+B.Ch?dD D(?yG<I|Ig($Ph<0Tr-h0H 0Tdo%T TputTside0AlEnEr0NN 0Yg&0/ 0O}:CtDd!GeIrLa)LmNdaNelN-N` P RadeR|RkRrotRtySsT^ThTi|TrolTt nU'VeYm|3A)AnutArAs<tL-<NN$tyNcilOp!Pp Rfe@Rm.Rs#T2O}OtoRa'Ys-$0AnoCn-Ctu*E)GGe#~LotNkO} Pe/olT^Zza_)A}tA,-A>AyEa'Ed+U{UgUn+2EmEtIntL?LeLi)NdNyOlPul?Rt]S.]Ssib!/TatoTt yV tyWd W _@i)Ai'Ed-tEf Epa*Es|EttyEv|I)IdeIm?yIntI%.yIs#Iva>IzeOb!mO)[Odu)Of.OgramOje@Omo>OofOp tyOsp O>@OudOvide2Bl-Dd(g~LpL'Mpk(N^PilPpyR^a'R.yRpo'R'ShTZz!3Ramid:99Al.yAntumArt E,]I{ItIzO>:Bb.Cco#CeCkD?DioIlInI'~yMpN^NdomN+PidReTeTh V&WZ%3AdyAlAs#BelBuildC$lCei=CipeC%dCyc!Du)F!@F%mFu'G]G*tGul?Je@LaxLea'LiefLyMa(Memb M(dMo=Nd NewNtOp&PairPeatPla)P%tQui*ScueSemb!Si,Sour)Sp#'SultTi*T*atTurnUn]Ve$ViewW?d2Y`m0BBb#CeChDeD+F!GhtGidNgOtPp!SkTu$V$V 5AdA,BotBu,CketM<)OfOkieOmSeTa>UghUndU>Y$5Bb DeGLeNNwayR$:DDd!D}[FeIlLadLm#L#LtLu>MeMp!NdTisfyToshiU)Usa+VeY1A!AnA*Att E}HemeHoolI&)I[%sOrp]OutRapRe&RiptRub1AAr^As#AtC#dC*tCt]Cur.yEdEkGm|Le@~M(?Ni%N'Nt&)RiesRvi)Ss]Tt!TupV&_dowAftAllowA*EdEllEriffIeldIftI}IpIv O{OeOotOpOrtOuld O=RimpRugUff!Y0Bl(gCkDeE+GhtGnL|Lk~yLv Mil?Mp!N)NgR&/ Tua>XZe1A>Et^IIllInIrtUll0AbAmEepEnd I)IdeIghtImOg<OtOwUsh0AllArtI!OkeOo`0A{AkeApIffOw0ApCc Ci$CkDaFtL?Ldi LidLut]L=Me#eNgOnRryRtUlUndUpUr)U`0A)A*Ati$AwnEakEci$EedEllEndH eI)Id IkeInIr.L.OilOns%O#OrtOtRayReadR(gY0Ua*UeezeUir*l_b!AdiumAffA+AirsAmpAndArtA>AyEakEelEmEpE*oI{IllIngO{Oma^O}OolOryO=Ra>gyReetRikeR#gRugg!Ud|UffUmb!Y!0Bje@Bm.BwayC)[ChDd&Ff G?G+,ItMm NNnyN'tP PplyP*meReRfa)R+Rpri'RroundR=ySpe@/a(1AllowAmpApArmE?EetIftImIngIt^Ord1MbolMptomRup/em:B!Ck!GIlL|LkNkPeR+tSk/eTtooXi3A^Am~NN<tNnisNtRm/Xt_nkAtEmeEnE%yE*EyIngIsOughtReeRi=RowUmbUnd 0CketDeG LtMb MeNyPRedSsueT!5A,BaccoDayDdl EGe` I!tK&MatoM%rowNeNgueNightOlO`PP-Pp!R^RnadoRtoi'SsT$Uri,W?dW WnY_{AdeAff-Ag-A(Ansf ApAshA=lAyEatEeEndI$IbeI{Igg ImIpOphyOub!U{UeUlyUmpetU,U`Y2BeIt]Mb!NaN}lRkeyRnRt!1El=EntyI)InI,O1PeP-$:5Ly5B*lla0Ab!Awa*C!Cov D DoFairFoldHappyIf%mIqueItIv 'KnownLo{TilUsu$Veil1Da>GradeHoldOnP Set1B<Ge0A+EEdEfulE![U$0Il.y:C<tCuumGueLidL!yL=NNishP%Rious/Ult3H-!L=tNd%Ntu*NueRbRifyRs]RyS'lT <3Ab!Br<tCiousCt%yDeoEw~a+Nta+Ol(Rtu$RusSaS.Su$T$Vid5C$I)IdLc<oLumeTeYa+:GeG#ItLk~LnutNtRfa*RmRri%ShSp/eT VeY3Al`Ap#ArA'lA` BDd(gEk&dIrdLcome/T_!AtEatEelEnE*IpIsp 0DeD`FeLd~NNdowNeNgNkNn Nt ReSdomSeShT}[5LfM<Nd OdOlRdRkRldRryR`_pE{E,!I,I>Ong::Rd3Ar~ow9UUngU`:3BraRo9NeO",eye="0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60";let ZE=null;class bh extends Qwe{constructor(){super("en",Xwe,eye)}static wordlist(){return ZE==null&&(ZE=new bh),ZE}}function DB(t){return(1<<t)-1<<8-t&255}function tye(t){return(1<<t)-1&255}function YE(t,e){m$("NFKD"),e==null&&(e=bh.wordlist());const n=e.split(t);M(n.length%3===0&&n.length>=12&&n.length<=24,"invalid mnemonic length","mnemonic","[ REDACTED ]");const r=new Uint8Array(Math.ceil(11*n.length/8));let i=0;for(let l=0;l<n.length;l++){let u=e.getWordIndex(n[l].normalize("NFKD"));M(u>=0,`invalid mnemonic word at index ${l}`,"mnemonic","[ REDACTED ]");for(let d=0;d<11;d++)u&1<<10-d&&(r[i>>3]|=1<<7-i%8),i++}const s=32*n.length/3,o=n.length/3,a=DB(o),c=Ae(ks(r.slice(0,s/8)))[0]&a;return M(c===(r[r.length-1]&a),"invalid mnemonic checksum","mnemonic","[ REDACTED ]"),de(r.slice(0,s/8))}function JE(t,e){M(t.length%4===0&&t.length>=16&&t.length<=32,"invalid entropy size","entropy","[ REDACTED ]"),e==null&&(e=bh.wordlist());const n=[0];let r=11;for(let o=0;o<t.length;o++)r>8?(n[n.length-1]<<=8,n[n.length-1]|=t[o],r-=8):(n[n.length-1]<<=r,n[n.length-1]|=t[o]>>8-r,n.push(t[o]&tye(8-r)),r+=3);const i=t.length/4,s=parseInt(ks(t).substring(2,4),16)&DB(i);return n[n.length-1]<<=i,n[n.length-1]|=s>>8-i,e.join(n.map(o=>e.getWord(o)))}const QE={};class W0{constructor(e,n,r,i,s){G(this,"phrase");G(this,"password");G(this,"wordlist");G(this,"entropy");i==null&&(i=""),s==null&&(s=bh.wordlist()),gu(e,QE,"Mnemonic"),Me(this,{phrase:r,password:i,wordlist:s,entropy:n})}computeSeed(){const e=Sr("mnemonic"+this.password,"NFKD");return mu(Sr(this.phrase,"NFKD"),e,2048,64,"sha512")}static fromPhrase(e,n,r){const i=YE(e,r);return e=JE(Ae(i),r),new W0(QE,i,e,n,r)}static fromEntropy(e,n,r){const i=Ae(e,"entropy"),s=JE(i,r);return new W0(QE,de(i),s,n,r)}static entropyToPhrase(e,n){const r=Ae(e,"entropy");return JE(r,n)}static phraseToEntropy(e,n){return YE(e,n)}static isValidMnemonic(e,n){try{return YE(e,n),!0}catch{}return!1}}/*! MIT License. Copyright 2015-2022 Richard Moore <me@ricmoo.com>. See LICENSE.txt. */var tr=function(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)},XE=function(t,e,n,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(t,n):i?i.value=n:e.set(t,n),n},ob,ds,Po;const nye={16:10,24:12,32:14},rye=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],cs=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],Py=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],iye=[3328402341,4168907908,4000806809,4135287693,4294111757,3597364157,3731845041,2445657428,1613770832,33620227,3462883241,1445669757,3892248089,3050821474,1303096294,3967186586,2412431941,528646813,2311702848,4202528135,4026202645,2992200171,2387036105,4226871307,1101901292,3017069671,1604494077,1169141738,597466303,1403299063,3832705686,2613100635,1974974402,3791519004,1033081774,1277568618,1815492186,2118074177,4126668546,2211236943,1748251740,1369810420,3521504564,4193382664,3799085459,2883115123,1647391059,706024767,134480908,2512897874,1176707941,2646852446,806885416,932615841,168101135,798661301,235341577,605164086,461406363,3756188221,3454790438,1311188841,2142417613,3933566367,302582043,495158174,1479289972,874125870,907746093,3698224818,3025820398,1537253627,2756858614,1983593293,3084310113,2108928974,1378429307,3722699582,1580150641,327451799,2790478837,3117535592,0,3253595436,1075847264,3825007647,2041688520,3059440621,3563743934,2378943302,1740553945,1916352843,2487896798,2555137236,2958579944,2244988746,3151024235,3320835882,1336584933,3992714006,2252555205,2588757463,1714631509,293963156,2319795663,3925473552,67240454,4269768577,2689618160,2017213508,631218106,1269344483,2723238387,1571005438,2151694528,93294474,1066570413,563977660,1882732616,4059428100,1673313503,2008463041,2950355573,1109467491,537923632,3858759450,4260623118,3218264685,2177748300,403442708,638784309,3287084079,3193921505,899127202,2286175436,773265209,2479146071,1437050866,4236148354,2050833735,3362022572,3126681063,840505643,3866325909,3227541664,427917720,2655997905,2749160575,1143087718,1412049534,999329963,193497219,2353415882,3354324521,1807268051,672404540,2816401017,3160301282,369822493,2916866934,3688947771,1681011286,1949973070,336202270,2454276571,201721354,1210328172,3093060836,2680341085,3184776046,1135389935,3294782118,965841320,831886756,3554993207,4068047243,3588745010,2345191491,1849112409,3664604599,26054028,2983581028,2622377682,1235855840,3630984372,2891339514,4092916743,3488279077,3395642799,4101667470,1202630377,268961816,1874508501,4034427016,1243948399,1546530418,941366308,1470539505,1941222599,2546386513,3421038627,2715671932,3899946140,1042226977,2521517021,1639824860,227249030,260737669,3765465232,2084453954,1907733956,3429263018,2420656344,100860677,4160157185,470683154,3261161891,1781871967,2924959737,1773779408,394692241,2579611992,974986535,664706745,3655459128,3958962195,731420851,571543859,3530123707,2849626480,126783113,865375399,765172662,1008606754,361203602,3387549984,2278477385,2857719295,1344809080,2782912378,59542671,1503764984,160008576,437062935,1707065306,3622233649,2218934982,3496503480,2185314755,697932208,1512910199,504303377,2075177163,2824099068,1841019862,739644986],sye=[2781242211,2230877308,2582542199,2381740923,234877682,3184946027,2984144751,1418839493,1348481072,50462977,2848876391,2102799147,434634494,1656084439,3863849899,2599188086,1167051466,2636087938,1082771913,2281340285,368048890,3954334041,3381544775,201060592,3963727277,1739838676,4250903202,3930435503,3206782108,4149453988,2531553906,1536934080,3262494647,484572669,2923271059,1783375398,1517041206,1098792767,49674231,1334037708,1550332980,4098991525,886171109,150598129,2481090929,1940642008,1398944049,1059722517,201851908,1385547719,1699095331,1587397571,674240536,2704774806,252314885,3039795866,151914247,908333586,2602270848,1038082786,651029483,1766729511,3447698098,2682942837,454166793,2652734339,1951935532,775166490,758520603,3000790638,4004797018,4217086112,4137964114,1299594043,1639438038,3464344499,2068982057,1054729187,1901997871,2534638724,4121318227,1757008337,0,750906861,1614815264,535035132,3363418545,3988151131,3201591914,1183697867,3647454910,1265776953,3734260298,3566750796,3903871064,1250283471,1807470800,717615087,3847203498,384695291,3313910595,3617213773,1432761139,2484176261,3481945413,283769337,100925954,2180939647,4037038160,1148730428,3123027871,3813386408,4087501137,4267549603,3229630528,2315620239,2906624658,3156319645,1215313976,82966005,3747855548,3245848246,1974459098,1665278241,807407632,451280895,251524083,1841287890,1283575245,337120268,891687699,801369324,3787349855,2721421207,3431482436,959321879,1469301956,4065699751,2197585534,1199193405,2898814052,3887750493,724703513,2514908019,2696962144,2551808385,3516813135,2141445340,1715741218,2119445034,2872807568,2198571144,3398190662,700968686,3547052216,1009259540,2041044702,3803995742,487983883,1991105499,1004265696,1449407026,1316239930,504629770,3683797321,168560134,1816667172,3837287516,1570751170,1857934291,4014189740,2797888098,2822345105,2754712981,936633572,2347923833,852879335,1133234376,1500395319,3084545389,2348912013,1689376213,3533459022,3762923945,3034082412,4205598294,133428468,634383082,2949277029,2398386810,3913789102,403703816,3580869306,2297460856,1867130149,1918643758,607656988,4049053350,3346248884,1368901318,600565992,2090982877,2632479860,557719327,3717614411,3697393085,2249034635,2232388234,2430627952,1115438654,3295786421,2865522278,3633334344,84280067,33027830,303828494,2747425121,1600795957,4188952407,3496589753,2434238086,1486471617,658119965,3106381470,953803233,334231800,3005978776,857870609,3151128937,1890179545,2298973838,2805175444,3056442267,574365214,2450884487,550103529,1233637070,4289353045,2018519080,2057691103,2399374476,4166623649,2148108681,387583245,3664101311,836232934,3330556482,3100665960,3280093505,2955516313,2002398509,287182607,3413881008,4238890068,3597515707,975967766],oye=[1671808611,2089089148,2006576759,2072901243,4061003762,1807603307,1873927791,3310653893,810573872,16974337,1739181671,729634347,4263110654,3613570519,2883997099,1989864566,3393556426,2191335298,3376449993,2106063485,4195741690,1508618841,1204391495,4027317232,2917941677,3563566036,2734514082,2951366063,2629772188,2767672228,1922491506,3227229120,3082974647,4246528509,2477669779,644500518,911895606,1061256767,4144166391,3427763148,878471220,2784252325,3845444069,4043897329,1905517169,3631459288,827548209,356461077,67897348,3344078279,593839651,3277757891,405286936,2527147926,84871685,2595565466,118033927,305538066,2157648768,3795705826,3945188843,661212711,2999812018,1973414517,152769033,2208177539,745822252,439235610,455947803,1857215598,1525593178,2700827552,1391895634,994932283,3596728278,3016654259,695947817,3812548067,795958831,2224493444,1408607827,3513301457,0,3979133421,543178784,4229948412,2982705585,1542305371,1790891114,3410398667,3201918910,961245753,1256100938,1289001036,1491644504,3477767631,3496721360,4012557807,2867154858,4212583931,1137018435,1305975373,861234739,2241073541,1171229253,4178635257,33948674,2139225727,1357946960,1011120188,2679776671,2833468328,1374921297,2751356323,1086357568,2408187279,2460827538,2646352285,944271416,4110742005,3168756668,3066132406,3665145818,560153121,271589392,4279952895,4077846003,3530407890,3444343245,202643468,322250259,3962553324,1608629855,2543990167,1154254916,389623319,3294073796,2817676711,2122513534,1028094525,1689045092,1575467613,422261273,1939203699,1621147744,2174228865,1339137615,3699352540,577127458,712922154,2427141008,2290289544,1187679302,3995715566,3100863416,339486740,3732514782,1591917662,186455563,3681988059,3762019296,844522546,978220090,169743370,1239126601,101321734,611076132,1558493276,3260915650,3547250131,2901361580,1655096418,2443721105,2510565781,3828863972,2039214713,3878868455,3359869896,928607799,1840765549,2374762893,3580146133,1322425422,2850048425,1823791212,1459268694,4094161908,3928346602,1706019429,2056189050,2934523822,135794696,3134549946,2022240376,628050469,779246638,472135708,2800834470,3032970164,3327236038,3894660072,3715932637,1956440180,522272287,1272813131,3185336765,2340818315,2323976074,1888542832,1044544574,3049550261,1722469478,1222152264,50660867,4127324150,236067854,1638122081,895445557,1475980887,3117443513,2257655686,3243809217,489110045,2662934430,3778599393,4162055160,2561878936,288563729,1773916777,3648039385,2391345038,2493985684,2612407707,505560094,2274497927,3911240169,3460925390,1442818645,678973480,3749357023,2358182796,2717407649,2306869641,219617805,3218761151,3862026214,1120306242,1756942440,1103331905,2578459033,762796589,252780047,2966125488,1425844308,3151392187,372911126],aye=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],cye=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890],lye=[1347548327,1400783205,3273267108,2520393566,3409685355,4045380933,2880240216,2471224067,1428173050,4138563181,2441661558,636813900,4233094615,3620022987,2149987652,2411029155,1239331162,1730525723,2554718734,3781033664,46346101,310463728,2743944855,3328955385,3875770207,2501218972,3955191162,3667219033,768917123,3545789473,692707433,1150208456,1786102409,2029293177,1805211710,3710368113,3065962831,401639597,1724457132,3028143674,409198410,2196052529,1620529459,1164071807,3769721975,2226875310,486441376,2499348523,1483753576,428819965,2274680428,3075636216,598438867,3799141122,1474502543,711349675,129166120,53458370,2592523643,2782082824,4063242375,2988687269,3120694122,1559041666,730517276,2460449204,4042459122,2706270690,3446004468,3573941694,533804130,2328143614,2637442643,2695033685,839224033,1973745387,957055980,2856345839,106852767,1371368976,4181598602,1033297158,2933734917,1179510461,3046200461,91341917,1862534868,4284502037,605657339,2547432937,3431546947,2003294622,3182487618,2282195339,954669403,3682191598,1201765386,3917234703,3388507166,0,2198438022,1211247597,2887651696,1315723890,4227665663,1443857720,507358933,657861945,1678381017,560487590,3516619604,975451694,2970356327,261314535,3535072918,2652609425,1333838021,2724322336,1767536459,370938394,182621114,3854606378,1128014560,487725847,185469197,2918353863,3106780840,3356761769,2237133081,1286567175,3152976349,4255350624,2683765030,3160175349,3309594171,878443390,1988838185,3704300486,1756818940,1673061617,3403100636,272786309,1075025698,545572369,2105887268,4174560061,296679730,1841768865,1260232239,4091327024,3960309330,3497509347,1814803222,2578018489,4195456072,575138148,3299409036,446754879,3629546796,4011996048,3347532110,3252238545,4270639778,915985419,3483825537,681933534,651868046,2755636671,3828103837,223377554,2607439820,1649704518,3270937875,3901806776,1580087799,4118987695,3198115200,2087309459,2842678573,3016697106,1003007129,2802849917,1860738147,2077965243,164439672,4100872472,32283319,2827177882,1709610350,2125135846,136428751,3874428392,3652904859,3460984630,3572145929,3593056380,2939266226,824852259,818324884,3224740454,930369212,2801566410,2967507152,355706840,1257309336,4148292826,243256656,790073846,2373340630,1296297904,1422699085,3756299780,3818836405,457992840,3099667487,2135319889,77422314,1560382517,1945798516,788204353,1521706781,1385356242,870912086,325965383,2358957921,2050466060,2388260884,2313884476,4006521127,901210569,3990953189,1014646705,1503449823,1062597235,2031621326,3212035895,3931371469,1533017514,350174575,2256028891,2177544179,1052338372,741876788,1606591296,1914052035,213705253,2334669897,1107234197,1899603969,3725069491,2631447780,2422494913,1635502980,1893020342,1950903388,1120974935],uye=[2807058932,1699970625,2764249623,1586903591,1808481195,1173430173,1487645946,59984867,4199882800,1844882806,1989249228,1277555970,3623636965,3419915562,1149249077,2744104290,1514790577,459744698,244860394,3235995134,1963115311,4027744588,2544078150,4190530515,1608975247,2627016082,2062270317,1507497298,2200818878,567498868,1764313568,3359936201,2305455554,2037970062,1047239e3,1910319033,1337376481,2904027272,2892417312,984907214,1243112415,830661914,861968209,2135253587,2011214180,2927934315,2686254721,731183368,1750626376,4246310725,1820824798,4172763771,3542330227,48394827,2404901663,2871682645,671593195,3254988725,2073724613,145085239,2280796200,2779915199,1790575107,2187128086,472615631,3029510009,4075877127,3802222185,4107101658,3201631749,1646252340,4270507174,1402811438,1436590835,3778151818,3950355702,3963161475,4020912224,2667994737,273792366,2331590177,104699613,95345982,3175501286,2377486676,1560637892,3564045318,369057872,4213447064,3919042237,1137477952,2658625497,1119727848,2340947849,1530455833,4007360968,172466556,266959938,516552836,0,2256734592,3980931627,1890328081,1917742170,4294704398,945164165,3575528878,958871085,3647212047,2787207260,1423022939,775562294,1739656202,3876557655,2530391278,2443058075,3310321856,547512796,1265195639,437656594,3121275539,719700128,3762502690,387781147,218828297,3350065803,2830708150,2848461854,428169201,122466165,3720081049,1627235199,648017665,4122762354,1002783846,2117360635,695634755,3336358691,4234721005,4049844452,3704280881,2232435299,574624663,287343814,612205898,1039717051,840019705,2708326185,793451934,821288114,1391201670,3822090177,376187827,3113855344,1224348052,1679968233,2361698556,1058709744,752375421,2431590963,1321699145,3519142200,2734591178,188127444,2177869557,3727205754,2384911031,3215212461,2648976442,2450346104,3432737375,1180849278,331544205,3102249176,4150144569,2952102595,2159976285,2474404304,766078933,313773861,2570832044,2108100632,1668212892,3145456443,2013908262,418672217,3070356634,2594734927,1852171925,3867060991,3473416636,3907448597,2614737639,919489135,164948639,2094410160,2997825956,590424639,2486224549,1723872674,3157750862,3399941250,3501252752,3625268135,2555048196,3673637356,1343127501,4130281361,3599595085,2957853679,1297403050,81781910,3051593425,2283490410,532201772,1367295589,3926170974,895287692,1953757831,1093597963,492483431,3528626907,1446242576,1192455638,1636604631,209336225,344873464,1015671571,669961897,3375740769,3857572124,2973530695,3747192018,1933530610,3464042516,935293895,3454686199,2858115069,1863638845,3683022916,4085369519,3292445032,875313188,1080017571,3279033885,621591778,1233856572,2504130317,24197544,3017672716,3835484340,3247465558,2220981195,3060847922,1551124588,1463996600],dye=[4104605777,1097159550,396673818,660510266,2875968315,2638606623,4200115116,3808662347,821712160,1986918061,3430322568,38544885,3856137295,718002117,893681702,1654886325,2975484382,3122358053,3926825029,4274053469,796197571,1290801793,1184342925,3556361835,2405426947,2459735317,1836772287,1381620373,3196267988,1948373848,3764988233,3385345166,3263785589,2390325492,1480485785,3111247143,3780097726,2293045232,548169417,3459953789,3746175075,439452389,1362321559,1400849762,1685577905,1806599355,2174754046,137073913,1214797936,1174215055,3731654548,2079897426,1943217067,1258480242,529487843,1437280870,3945269170,3049390895,3313212038,923313619,679998e3,3215307299,57326082,377642221,3474729866,2041877159,133361907,1776460110,3673476453,96392454,878845905,2801699524,777231668,4082475170,2330014213,4142626212,2213296395,1626319424,1906247262,1846563261,562755902,3708173718,1040559837,3871163981,1418573201,3294430577,114585348,1343618912,2566595609,3186202582,1078185097,3651041127,3896688048,2307622919,425408743,3371096953,2081048481,1108339068,2216610296,0,2156299017,736970802,292596766,1517440620,251657213,2235061775,2933202493,758720310,265905162,1554391400,1532285339,908999204,174567692,1474760595,4002861748,2610011675,3234156416,3693126241,2001430874,303699484,2478443234,2687165888,585122620,454499602,151849742,2345119218,3064510765,514443284,4044981591,1963412655,2581445614,2137062819,19308535,1928707164,1715193156,4219352155,1126790795,600235211,3992742070,3841024952,836553431,1669664834,2535604243,3323011204,1243905413,3141400786,4180808110,698445255,2653899549,2989552604,2253581325,3252932727,3004591147,1891211689,2487810577,3915653703,4237083816,4030667424,2100090966,865136418,1229899655,953270745,3399679628,3557504664,4118925222,2061379749,3079546586,2915017791,983426092,2022837584,1607244650,2118541908,2366882550,3635996816,972512814,3283088770,1568718495,3499326569,3576539503,621982671,2895723464,410887952,2623762152,1002142683,645401037,1494807662,2595684844,1335535747,2507040230,4293295786,3167684641,367585007,3885750714,1865862730,2668221674,2960971305,2763173681,1059270954,2777952454,2724642869,1320957812,2194319100,2429595872,2815956275,77089521,3973773121,3444575871,2448830231,1305906550,4021308739,2857194700,2516901860,3518358430,1787304780,740276417,1699839814,1592394909,2352307457,2272556026,188821243,1729977011,3687994002,274084841,3594982253,3613494426,2701949495,4162096729,322734571,2837966542,1640576439,484830689,1202797690,3537852828,4067639125,349075736,3342319475,4157467219,4255800159,1030690015,1155237496,2951971274,1757691577,607398968,2738905026,499347990,3794078908,1011452712,227885567,2818666809,213114376,3034881240,1455525988,3414450555,850817237,1817998408,3092726480],hye=[0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795],fye=[0,185469197,370938394,487725847,741876788,657861945,975451694,824852259,1483753576,1400783205,1315723890,1164071807,1950903388,2135319889,1649704518,1767536459,2967507152,3152976349,2801566410,2918353863,2631447780,2547432937,2328143614,2177544179,3901806776,3818836405,4270639778,4118987695,3299409036,3483825537,3535072918,3652904859,2077965243,1893020342,1841768865,1724457132,1474502543,1559041666,1107234197,1257309336,598438867,681933534,901210569,1052338372,261314535,77422314,428819965,310463728,3409685355,3224740454,3710368113,3593056380,3875770207,3960309330,4045380933,4195456072,2471224067,2554718734,2237133081,2388260884,3212035895,3028143674,2842678573,2724322336,4138563181,4255350624,3769721975,3955191162,3667219033,3516619604,3431546947,3347532110,2933734917,2782082824,3099667487,3016697106,2196052529,2313884476,2499348523,2683765030,1179510461,1296297904,1347548327,1533017514,1786102409,1635502980,2087309459,2003294622,507358933,355706840,136428751,53458370,839224033,957055980,605657339,790073846,2373340630,2256028891,2607439820,2422494913,2706270690,2856345839,3075636216,3160175349,3573941694,3725069491,3273267108,3356761769,4181598602,4063242375,4011996048,3828103837,1033297158,915985419,730517276,545572369,296679730,446754879,129166120,213705253,1709610350,1860738147,1945798516,2029293177,1239331162,1120974935,1606591296,1422699085,4148292826,4233094615,3781033664,3931371469,3682191598,3497509347,3446004468,3328955385,2939266226,2755636671,3106780840,2988687269,2198438022,2282195339,2501218972,2652609425,1201765386,1286567175,1371368976,1521706781,1805211710,1620529459,2105887268,1988838185,533804130,350174575,164439672,46346101,870912086,954669403,636813900,788204353,2358957921,2274680428,2592523643,2441661558,2695033685,2880240216,3065962831,3182487618,3572145929,3756299780,3270937875,3388507166,4174560061,4091327024,4006521127,3854606378,1014646705,930369212,711349675,560487590,272786309,457992840,106852767,223377554,1678381017,1862534868,1914052035,2031621326,1211247597,1128014560,1580087799,1428173050,32283319,182621114,401639597,486441376,768917123,651868046,1003007129,818324884,1503449823,1385356242,1333838021,1150208456,1973745387,2125135846,1673061617,1756818940,2970356327,3120694122,2802849917,2887651696,2637442643,2520393566,2334669897,2149987652,3917234703,3799141122,4284502037,4100872472,3309594171,3460984630,3545789473,3629546796,2050466060,1899603969,1814803222,1730525723,1443857720,1560382517,1075025698,1260232239,575138148,692707433,878443390,1062597235,243256656,91341917,409198410,325965383,3403100636,3252238545,3704300486,3620022987,3874428392,3990953189,4042459122,4227665663,2460449204,2578018489,2226875310,2411029155,3198115200,3046200461,2827177882,2743944855],pye=[0,218828297,437656594,387781147,875313188,958871085,775562294,590424639,1750626376,1699970625,1917742170,2135253587,1551124588,1367295589,1180849278,1265195639,3501252752,3720081049,3399941250,3350065803,3835484340,3919042237,4270507174,4085369519,3102249176,3051593425,2734591178,2952102595,2361698556,2177869557,2530391278,2614737639,3145456443,3060847922,2708326185,2892417312,2404901663,2187128086,2504130317,2555048196,3542330227,3727205754,3375740769,3292445032,3876557655,3926170974,4246310725,4027744588,1808481195,1723872674,1910319033,2094410160,1608975247,1391201670,1173430173,1224348052,59984867,244860394,428169201,344873464,935293895,984907214,766078933,547512796,1844882806,1627235199,2011214180,2062270317,1507497298,1423022939,1137477952,1321699145,95345982,145085239,532201772,313773861,830661914,1015671571,731183368,648017665,3175501286,2957853679,2807058932,2858115069,2305455554,2220981195,2474404304,2658625497,3575528878,3625268135,3473416636,3254988725,3778151818,3963161475,4213447064,4130281361,3599595085,3683022916,3432737375,3247465558,3802222185,4020912224,4172763771,4122762354,3201631749,3017672716,2764249623,2848461854,2331590177,2280796200,2431590963,2648976442,104699613,188127444,472615631,287343814,840019705,1058709744,671593195,621591778,1852171925,1668212892,1953757831,2037970062,1514790577,1463996600,1080017571,1297403050,3673637356,3623636965,3235995134,3454686199,4007360968,3822090177,4107101658,4190530515,2997825956,3215212461,2830708150,2779915199,2256734592,2340947849,2627016082,2443058075,172466556,122466165,273792366,492483431,1047239e3,861968209,612205898,695634755,1646252340,1863638845,2013908262,1963115311,1446242576,1530455833,1277555970,1093597963,1636604631,1820824798,2073724613,1989249228,1436590835,1487645946,1337376481,1119727848,164948639,81781910,331544205,516552836,1039717051,821288114,669961897,719700128,2973530695,3157750862,2871682645,2787207260,2232435299,2283490410,2667994737,2450346104,3647212047,3564045318,3279033885,3464042516,3980931627,3762502690,4150144569,4199882800,3070356634,3121275539,2904027272,2686254721,2200818878,2384911031,2570832044,2486224549,3747192018,3528626907,3310321856,3359936201,3950355702,3867060991,4049844452,4234721005,1739656202,1790575107,2108100632,1890328081,1402811438,1586903591,1233856572,1149249077,266959938,48394827,369057872,418672217,1002783846,919489135,567498868,752375421,209336225,24197544,376187827,459744698,945164165,895287692,574624663,793451934,1679968233,1764313568,2117360635,1933530610,1343127501,1560637892,1243112415,1192455638,3704280881,3519142200,3336358691,3419915562,3907448597,3857572124,4075877127,4294704398,3029510009,3113855344,2927934315,2744104290,2159976285,2377486676,2594734927,2544078150],gye=[0,151849742,303699484,454499602,607398968,758720310,908999204,1059270954,1214797936,1097159550,1517440620,1400849762,1817998408,1699839814,2118541908,2001430874,2429595872,2581445614,2194319100,2345119218,3034881240,3186202582,2801699524,2951971274,3635996816,3518358430,3399679628,3283088770,4237083816,4118925222,4002861748,3885750714,1002142683,850817237,698445255,548169417,529487843,377642221,227885567,77089521,1943217067,2061379749,1640576439,1757691577,1474760595,1592394909,1174215055,1290801793,2875968315,2724642869,3111247143,2960971305,2405426947,2253581325,2638606623,2487810577,3808662347,3926825029,4044981591,4162096729,3342319475,3459953789,3576539503,3693126241,1986918061,2137062819,1685577905,1836772287,1381620373,1532285339,1078185097,1229899655,1040559837,923313619,740276417,621982671,439452389,322734571,137073913,19308535,3871163981,4021308739,4104605777,4255800159,3263785589,3414450555,3499326569,3651041127,2933202493,2815956275,3167684641,3049390895,2330014213,2213296395,2566595609,2448830231,1305906550,1155237496,1607244650,1455525988,1776460110,1626319424,2079897426,1928707164,96392454,213114376,396673818,514443284,562755902,679998e3,865136418,983426092,3708173718,3557504664,3474729866,3323011204,4180808110,4030667424,3945269170,3794078908,2507040230,2623762152,2272556026,2390325492,2975484382,3092726480,2738905026,2857194700,3973773121,3856137295,4274053469,4157467219,3371096953,3252932727,3673476453,3556361835,2763173681,2915017791,3064510765,3215307299,2156299017,2307622919,2459735317,2610011675,2081048481,1963412655,1846563261,1729977011,1480485785,1362321559,1243905413,1126790795,878845905,1030690015,645401037,796197571,274084841,425408743,38544885,188821243,3613494426,3731654548,3313212038,3430322568,4082475170,4200115116,3780097726,3896688048,2668221674,2516901860,2366882550,2216610296,3141400786,2989552604,2837966542,2687165888,1202797690,1320957812,1437280870,1554391400,1669664834,1787304780,1906247262,2022837584,265905162,114585348,499347990,349075736,736970802,585122620,972512814,821712160,2595684844,2478443234,2293045232,2174754046,3196267988,3079546586,2895723464,2777952454,3537852828,3687994002,3234156416,3385345166,4142626212,4293295786,3841024952,3992742070,174567692,57326082,410887952,292596766,777231668,660510266,1011452712,893681702,1108339068,1258480242,1343618912,1494807662,1715193156,1865862730,1948373848,2100090966,2701949495,2818666809,3004591147,3122358053,2235061775,2352307457,2535604243,2653899549,3915653703,3764988233,4219352155,4067639125,3444575871,3294430577,3746175075,3594982253,836553431,953270745,600235211,718002117,367585007,484830689,133361907,251657213,2041877159,1891211689,1806599355,1654886325,1568718495,1418573201,1335535747,1184342925];function ev(t){const e=[];for(let n=0;n<t.length;n+=4)e.push(t[n]<<24|t[n+1]<<16|t[n+2]<<8|t[n+3]);return e}class J6{get key(){return tr(this,ob,"f").slice()}constructor(e){if(ob.set(this,void 0),ds.set(this,void 0),Po.set(this,void 0),!(this instanceof J6))throw Error("AES must be instanitated with `new`");XE(this,ob,new Uint8Array(e),"f");const n=nye[this.key.length];if(n==null)throw new TypeError("invalid key size (must be 16, 24 or 32 bytes)");XE(this,Po,[],"f"),XE(this,ds,[],"f");for(let u=0;u<=n;u++)tr(this,Po,"f").push([0,0,0,0]),tr(this,ds,"f").push([0,0,0,0]);const r=(n+1)*4,i=this.key.length/4,s=ev(this.key);let o;for(let u=0;u<i;u++)o=u>>2,tr(this,Po,"f")[o][u%4]=s[u],tr(this,ds,"f")[n-o][u%4]=s[u];let a=0,c=i,l;for(;c<r;){if(l=s[i-1],s[0]^=cs[l>>16&255]<<24^cs[l>>8&255]<<16^cs[l&255]<<8^cs[l>>24&255]^rye[a]<<24,a+=1,i!=8)for(let f=1;f<i;f++)s[f]^=s[f-1];else{for(let f=1;f<i/2;f++)s[f]^=s[f-1];l=s[i/2-1],s[i/2]^=cs[l&255]^cs[l>>8&255]<<8^cs[l>>16&255]<<16^cs[l>>24&255]<<24;for(let f=i/2+1;f<i;f++)s[f]^=s[f-1]}let u=0,d,h;for(;u<i&&c<r;)d=c>>2,h=c%4,tr(this,Po,"f")[d][h]=s[u],tr(this,ds,"f")[n-d][h]=s[u++],c++}for(let u=1;u<n;u++)for(let d=0;d<4;d++)l=tr(this,ds,"f")[u][d],tr(this,ds,"f")[u][d]=hye[l>>24&255]^fye[l>>16&255]^pye[l>>8&255]^gye[l&255]}encrypt(e){if(e.length!=16)throw new TypeError("invalid plaintext size (must be 16 bytes)");const n=tr(this,Po,"f").length-1,r=[0,0,0,0];let i=ev(e);for(let a=0;a<4;a++)i[a]^=tr(this,Po,"f")[0][a];for(let a=1;a<n;a++){for(let c=0;c<4;c++)r[c]=iye[i[c]>>24&255]^sye[i[(c+1)%4]>>16&255]^oye[i[(c+2)%4]>>8&255]^aye[i[(c+3)%4]&255]^tr(this,Po,"f")[a][c];i=r.slice()}const s=new Uint8Array(16);let o=0;for(let a=0;a<4;a++)o=tr(this,Po,"f")[n][a],s[4*a]=(cs[i[a]>>24&255]^o>>24)&255,s[4*a+1]=(cs[i[(a+1)%4]>>16&255]^o>>16)&255,s[4*a+2]=(cs[i[(a+2)%4]>>8&255]^o>>8)&255,s[4*a+3]=(cs[i[(a+3)%4]&255]^o)&255;return s}decrypt(e){if(e.length!=16)throw new TypeError("invalid ciphertext size (must be 16 bytes)");const n=tr(this,ds,"f").length-1,r=[0,0,0,0];let i=ev(e);for(let a=0;a<4;a++)i[a]^=tr(this,ds,"f")[0][a];for(let a=1;a<n;a++){for(let c=0;c<4;c++)r[c]=cye[i[c]>>24&255]^lye[i[(c+3)%4]>>16&255]^uye[i[(c+2)%4]>>8&255]^dye[i[(c+1)%4]&255]^tr(this,ds,"f")[a][c];i=r.slice()}const s=new Uint8Array(16);let o=0;for(let a=0;a<4;a++)o=tr(this,ds,"f")[n][a],s[4*a]=(Py[i[a]>>24&255]^o>>24)&255,s[4*a+1]=(Py[i[(a+3)%4]>>16&255]^o>>16)&255,s[4*a+2]=(Py[i[(a+2)%4]>>8&255]^o>>8)&255,s[4*a+3]=(Py[i[(a+1)%4]&255]^o)&255;return s}}ob=new WeakMap,ds=new WeakMap,Po=new WeakMap;class BB{constructor(e,n,r){if(r&&!(this instanceof r))throw new Error(`${e} must be instantiated with "new"`);Object.defineProperties(this,{aes:{enumerable:!0,value:new J6(n)},name:{enumerable:!0,value:e}})}}var ky=function(t,e,n,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(t,n):i?i.value=n:e.set(t,n),n},rf=function(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)},rm,La;class Q6 extends BB{constructor(e,n){if(super("ECC",e,Q6),rm.set(this,void 0),La.set(this,void 0),n){if(n.length%16)throw new TypeError("invalid iv size (must be 16 bytes)");ky(this,rm,new Uint8Array(n),"f")}else ky(this,rm,new Uint8Array(16),"f");ky(this,La,this.iv,"f")}get iv(){return new Uint8Array(rf(this,rm,"f"))}encrypt(e){if(e.length%16)throw new TypeError("invalid plaintext size (must be multiple of 16 bytes)");const n=new Uint8Array(e.length);for(let r=0;r<e.length;r+=16){for(let i=0;i<16;i++)rf(this,La,"f")[i]^=e[r+i];ky(this,La,this.aes.encrypt(rf(this,La,"f")),"f"),n.set(rf(this,La,"f"),r)}return n}decrypt(e){if(e.length%16)throw new TypeError("invalid ciphertext size (must be multiple of 16 bytes)");const n=new Uint8Array(e.length);for(let r=0;r<e.length;r+=16){const i=this.aes.decrypt(e.subarray(r,r+16));for(let s=0;s<16;s++)n[r+s]=i[s]^rf(this,La,"f")[s],rf(this,La,"f")[s]=e[r+s]}return n}}rm=new WeakMap,La=new WeakMap;var sf=function(t,e,n,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(t,n):i?i.value=n:e.set(t,n),n},ls=function(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)},im,$u,hs;class j0 extends BB{constructor(e,n){super("CTR",e,j0),im.set(this,void 0),$u.set(this,void 0),hs.set(this,void 0),sf(this,hs,new Uint8Array(16),"f"),ls(this,hs,"f").fill(0),sf(this,im,ls(this,hs,"f"),"f"),sf(this,$u,16,"f"),n==null&&(n=1),typeof n=="number"?this.setCounterValue(n):this.setCounterBytes(n)}get counter(){return new Uint8Array(ls(this,hs,"f"))}setCounterValue(e){if(!Number.isInteger(e)||e<0||e>Number.MAX_SAFE_INTEGER)throw new TypeError("invalid counter initial integer value");for(let n=15;n>=0;--n)ls(this,hs,"f")[n]=e%256,e=Math.floor(e/256)}setCounterBytes(e){if(e.length!==16)throw new TypeError("invalid counter initial Uint8Array value length");ls(this,hs,"f").set(e)}increment(){for(let e=15;e>=0;e--)if(ls(this,hs,"f")[e]===255)ls(this,hs,"f")[e]=0;else{ls(this,hs,"f")[e]++;break}}encrypt(e){var n,r;const i=new Uint8Array(e);for(let s=0;s<i.length;s++)ls(this,$u,"f")===16&&(sf(this,im,this.aes.encrypt(ls(this,hs,"f")),"f"),sf(this,$u,0,"f"),this.increment()),i[s]^=ls(this,im,"f")[sf(this,$u,(r=ls(this,$u,"f"),n=r++,r),"f"),n];return i}decrypt(e){return this.encrypt(e)}}im=new WeakMap,$u=new WeakMap,hs=new WeakMap;function mye(t){if(t.length<16)throw new TypeError("PKCS#7 invalid length");const e=t[t.length-1];if(e>16)throw new TypeError("PKCS#7 padding byte out of range");const n=t.length-e;for(let r=0;r<e;r++)if(t[n+r]!==e)throw new TypeError("PKCS#7 invalid padding byte");return new Uint8Array(t.subarray(0,n))}function UB(t){return typeof t=="string"&&!t.startsWith("0x")&&(t="0x"+t),ar(t)}function jg(t,e){for(t=String(t);t.length<e;)t="0"+t;return t}function Iw(t){return typeof t=="string"?Sr(t,"NFKC"):ar(t)}function pn(t,e){const n=e.match(/^([a-z0-9$_.-]*)(:([a-z]+))?(!)?$/i);M(n!=null,"invalid path","path",e);const r=n[1],i=n[3],s=n[4]==="!";let o=t;for(const a of r.toLowerCase().split(".")){if(Array.isArray(o)){if(!a.match(/^[0-9]+$/))break;o=o[parseInt(a)]}else if(typeof o=="object"){let c=null;for(const l in o)if(l.toLowerCase()===a){c=o[l];break}o=c}else o=null;if(o==null)break}if(M(!s||o!=null,"missing required value","path",r),i&&o!=null){if(i==="int"){if(typeof o=="string"&&o.match(/^-?[0-9]+$/))return parseInt(o);if(Number.isSafeInteger(o))return o}if(i==="number"&&typeof o=="string"&&o.match(/^-?[0-9.]*$/))return parseFloat(o);if(i==="data"&&typeof o=="string")return UB(o);if(i==="array"&&Array.isArray(o)||i===typeof o)return o;M(!1,`wrong type found for ${i} `,"path",r)}return o}const LB="m/44'/60'/0'/0/0";function WS(t){try{const e=JSON.parse(t);if((e.version!=null?parseInt(e.version):0)===3)return!0}catch{}return!1}function wye(t,e,n){if(pn(t,"crypto.cipher:string")==="aes-128-ctr"){const i=pn(t,"crypto.cipherparams.iv:data!"),s=new j0(e,i);return de(s.decrypt(n))}ie(!1,"unsupported cipher","UNSUPPORTED_OPERATION",{operation:"decrypt"})}function C2(t,e){const n=Ae(e),r=pn(t,"crypto.ciphertext:data!"),i=de(nn(Rt([n.slice(16,32),r]))).substring(2);M(i===pn(t,"crypto.mac:string!").toLowerCase(),"incorrect password","password","[ REDACTED ]");const s=wye(t,n.slice(0,16),r),o=Cw(s);if(t.address){let l=t.address.toLowerCase();l.startsWith("0x")||(l="0x"+l),M(ft(l)===o,"keystore address/privateKey mismatch","address",t.address)}const a={address:o,privateKey:s};if(pn(t,"x-ethers.version:string")==="0.1"){const l=n.slice(32,64),u=pn(t,"x-ethers.mnemonicCiphertext:data!"),d=pn(t,"x-ethers.mnemonicCounter:data!"),h=new j0(l,d);a.mnemonic={path:pn(t,"x-ethers.path:string")||LB,locale:pn(t,"x-ethers.locale:string")||"en",entropy:de(Ae(h.decrypt(u)))}}return a}function MB(t){const e=pn(t,"crypto.kdf:string");if(e&&typeof e=="string"){if(e.toLowerCase()==="scrypt"){const n=pn(t,"crypto.kdfparams.salt:data!"),r=pn(t,"crypto.kdfparams.n:int!"),i=pn(t,"crypto.kdfparams.r:int!"),s=pn(t,"crypto.kdfparams.p:int!");M(r>0&&(r&r-1)===0,"invalid kdf.N","kdf.N",r),M(i>0&&s>0,"invalid kdf","kdf",e);const o=pn(t,"crypto.kdfparams.dklen:int!");return M(o===32,"invalid kdf.dklen","kdf.dflen",o),{name:"scrypt",salt:n,N:r,r:i,p:s,dkLen:64}}else if(e.toLowerCase()==="pbkdf2"){const n=pn(t,"crypto.kdfparams.salt:data!"),r=pn(t,"crypto.kdfparams.prf:string!"),i=r.split("-").pop();M(i==="sha256"||i==="sha512","invalid kdf.pdf","kdf.pdf",r);const s=pn(t,"crypto.kdfparams.c:int!"),o=pn(t,"crypto.kdfparams.dklen:int!");return M(o===32,"invalid kdf.dklen","kdf.dklen",o),{name:"pbkdf2",salt:n,count:s,dkLen:o,algorithm:i}}}M(!1,"unsupported key-derivation function","kdf",e)}function yye(t,e){const n=JSON.parse(t),r=Iw(e),i=MB(n);if(i.name==="pbkdf2"){const{salt:d,count:h,dkLen:f,algorithm:g}=i,p=mu(r,d,h,f,g);return C2(n,p)}ie(i.name==="scrypt","cannot be reached","UNKNOWN_ERROR",{params:i});const{salt:s,N:o,r:a,p:c,dkLen:l}=i,u=hg(r,s,o,a,c,l);return C2(n,u)}function jS(t){return new Promise(e=>{setTimeout(()=>{e()},t)})}async function bye(t,e,n){const r=JSON.parse(t),i=Iw(e),s=MB(r);if(s.name==="pbkdf2"){n&&(n(0),await jS(0));const{salt:h,count:f,dkLen:g,algorithm:p}=s,m=mu(i,h,f,g,p);return n&&(n(1),await jS(0)),C2(r,m)}ie(s.name==="scrypt","cannot be reached","UNKNOWN_ERROR",{params:s});const{salt:o,N:a,r:c,p:l,dkLen:u}=s,d=await dg(i,o,a,c,l,u,n);return C2(r,d)}function FB(t){const e=t.salt!=null?Ae(t.salt,"options.salt"):mc(32);let n=1<<17,r=8,i=1;return t.scrypt&&(t.scrypt.N&&(n=t.scrypt.N),t.scrypt.r&&(r=t.scrypt.r),t.scrypt.p&&(i=t.scrypt.p)),M(typeof n=="number"&&n>0&&Number.isSafeInteger(n)&&(BigInt(n)&BigInt(n-1))===BigInt(0),"invalid scrypt N parameter","options.N",n),M(typeof r=="number"&&r>0&&Number.isSafeInteger(r),"invalid scrypt r parameter","options.r",r),M(typeof i=="number"&&i>0&&Number.isSafeInteger(i),"invalid scrypt p parameter","options.p",i),{name:"scrypt",dkLen:32,salt:e,N:n,r,p:i}}function WB(t,e,n,r){const i=Ae(n.privateKey,"privateKey"),s=r.iv!=null?Ae(r.iv,"options.iv"):mc(16);M(s.length===16,"invalid options.iv length","options.iv",r.iv);const o=r.uuid!=null?Ae(r.uuid,"options.uuid"):mc(16);M(o.length===16,"invalid options.uuid length","options.uuid",r.iv);const a=t.slice(0,16),c=t.slice(16,32),l=new j0(a,s),u=Ae(l.encrypt(i)),d=nn(Rt([c,u])),h={address:n.address.substring(2).toLowerCase(),id:y0e(o),version:3,Crypto:{cipher:"aes-128-ctr",cipherparams:{iv:de(s).substring(2)},ciphertext:de(u).substring(2),kdf:"scrypt",kdfparams:{salt:de(e.salt).substring(2),n:e.N,dklen:32,p:e.p,r:e.r},mac:d.substring(2)}};if(n.mnemonic){const f=r.client!=null?r.client:`ethers/${p$}`,g=n.mnemonic.path||LB,p=n.mnemonic.locale||"en",m=t.slice(32,64),b=Ae(n.mnemonic.entropy,"account.mnemonic.entropy"),C=mc(16),x=new j0(m,C),A=Ae(x.encrypt(b)),I=new Date,B="UTC--"+(I.getUTCFullYear()+"-"+jg(I.getUTCMonth()+1,2)+"-"+jg(I.getUTCDate(),2)+"T"+jg(I.getUTCHours(),2)+"-"+jg(I.getUTCMinutes(),2)+"-"+jg(I.getUTCSeconds(),2)+".0Z")+"--"+h.address;h["x-ethers"]={client:f,gethFilename:B,path:g,locale:p,mnemonicCounter:de(C).substring(2),mnemonicCiphertext:de(A).substring(2),version:"0.1"}}return JSON.stringify(h)}function jB(t,e,n){n==null&&(n={});const r=Iw(e),i=FB(n),s=hg(r,i.salt,i.N,i.r,i.p,64);return WB(Ae(s),i,t,n)}async function HB(t,e,n){n==null&&(n={});const r=Iw(e),i=FB(n),s=await dg(r,i.salt,i.N,i.r,i.p,64,n.progressCallback);return WB(Ae(s),i,t,n)}const tv="m/44'/60'/0'/0/0",xye=new Uint8Array([66,105,116,99,111,105,110,32,115,101,101,100]),Hl=2147483648,Eye=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),vye="0123456789abcdef";function A2(t,e){let n="";for(;t;)n=vye[t%16]+n,t=Math.trunc(t/16);for(;n.length<e*2;)n="0"+n;return"0x"+n}function S4(t){const e=Ae(t),n=Yt(ks(ks(e)),0,4),r=Rt([e,n]);return x$(r)}const Bo={};function zB(t,e,n,r){const i=new Uint8Array(37);t&Hl?(ie(r!=null,"cannot derive child of neutered node","UNSUPPORTED_OPERATION",{operation:"deriveChild"}),i.set(Ae(r),1)):i.set(Ae(n));for(let o=24;o>=0;o-=8)i[33+(o>>3)]=t>>24-o&255;const s=Ae(lg("sha512",e,i));return{IL:s.slice(0,32),IR:s.slice(32)}}function VB(t,e){const n=e.split("/");M(n.length>0,"invalid path","path",e),n[0]==="m"&&(M(t.depth===0,`cannot derive root path (i.e. path starting with "m/") for a node at non-zero depth ${t.depth}`,"path",e),n.shift());let r=t;for(let i=0;i<n.length;i++){const s=n[i];if(s.match(/^[0-9]+'$/)){const o=parseInt(s.substring(0,s.length-1));M(o<Hl,"invalid path index",`path[${i}]`,s),r=r.deriveChild(Hl+o)}else if(s.match(/^[0-9]+$/)){const o=parseInt(s);M(o<Hl,"invalid path index",`path[${i}]`,s),r=r.deriveChild(o)}else M(!1,"invalid path component",`path[${i}]`,s)}return r}var P1,I4,Cd,sm;const Ks=class Ks extends E2{constructor(n,r,i,s,o,a,c,l,u){super(r,u);K(this,P1);G(this,"publicKey");G(this,"fingerprint");G(this,"parentFingerprint");G(this,"mnemonic");G(this,"chainCode");G(this,"path");G(this,"index");G(this,"depth");gu(n,Bo,"HDNodeWallet"),Me(this,{publicKey:r.compressedPublicKey});const d=Yt(ug(ks(this.publicKey)),0,4);Me(this,{parentFingerprint:i,fingerprint:d,chainCode:s,path:o,index:a,depth:c}),Me(this,{mnemonic:l})}connect(n){return new Ks(Bo,this.signingKey,this.parentFingerprint,this.chainCode,this.path,this.index,this.depth,this.mnemonic,n)}async encrypt(n,r){return await HB(X(this,P1,I4).call(this),n,{progressCallback:r})}encryptSync(n){return jB(X(this,P1,I4).call(this),n)}get extendedKey(){return ie(this.depth<256,"Depth too deep","UNSUPPORTED_OPERATION",{operation:"extendedKey"}),S4(Rt(["0x0488ADE4",A2(this.depth,1),this.parentFingerprint,A2(this.index,4),this.chainCode,Rt(["0x00",this.privateKey])]))}hasPath(){return this.path!=null}neuter(){return new m1(Bo,this.address,this.publicKey,this.parentFingerprint,this.chainCode,this.path,this.index,this.depth,this.provider)}deriveChild(n){const r=Je(n,"index");M(r<=4294967295,"invalid index","index",r);let i=this.path;i&&(i+="/"+(r&~Hl),r&Hl&&(i+="'"));const{IR:s,IL:o}=zB(r,this.chainCode,this.publicKey,this.privateKey),a=new aa(Nc((xw(o)+BigInt(this.privateKey))%Eye,32));return new Ks(Bo,a,this.fingerprint,de(s),i,r,this.depth+1,this.mnemonic,this.provider)}derivePath(n){return VB(this,n)}static fromExtendedKey(n){const r=cn(Jpe(n));M(r.length===82||S4(r.slice(0,78))===n,"invalid extended key","extendedKey","[ REDACTED ]");const i=r[4],s=de(r.slice(5,9)),o=parseInt(de(r.slice(9,13)).substring(2),16),a=de(r.slice(13,45)),c=r.slice(45,78);switch(de(r.slice(0,4))){case"0x0488b21e":case"0x043587cf":{const l=de(c);return new m1(Bo,Cw(l),l,s,a,null,o,i,null)}case"0x0488ade4":case"0x04358394 ":if(c[0]!==0)break;return new Ks(Bo,new aa(c.slice(1)),s,a,null,o,i,null,null)}M(!1,"invalid extended key prefix","extendedKey","[ REDACTED ]")}static createRandom(n,r,i){var o;n==null&&(n=""),r==null&&(r=tv),i==null&&(i=bh.wordlist());const s=W0.fromEntropy(mc(16),n,i);return X(o=Ks,Cd,sm).call(o,s.computeSeed(),s).derivePath(r)}static fromMnemonic(n,r){var i;return r||(r=tv),X(i=Ks,Cd,sm).call(i,n.computeSeed(),n).derivePath(r)}static fromPhrase(n,r,i,s){var a;r==null&&(r=""),i==null&&(i=tv),s==null&&(s=bh.wordlist());const o=W0.fromPhrase(n,r,s);return X(a=Ks,Cd,sm).call(a,o.computeSeed(),o).derivePath(i)}static fromSeed(n){var r;return X(r=Ks,Cd,sm).call(r,n,null)}};P1=new WeakSet,I4=function(){const n={address:this.address,privateKey:this.privateKey},r=this.mnemonic;return this.path&&r&&r.wordlist.locale==="en"&&r.password===""&&(n.mnemonic={path:this.path,locale:"en",entropy:r.entropy}),n},Cd=new WeakSet,sm=function(n,r){M($3(n),"invalid seed","seed","[REDACTED]");const i=Ae(n,"seed");M(i.length>=16&&i.length<=64,"invalid seed","seed","[REDACTED]");const s=Ae(lg("sha512",xye,i)),o=new aa(de(s.slice(0,32)));return new Ks(Bo,o,"0x00000000",de(s.slice(32)),"m",0,0,r,null)},K(Ks,Cd);let vm=Ks;class m1 extends b4{constructor(n,r,i,s,o,a,c,l,u){super(r,u);G(this,"publicKey");G(this,"fingerprint");G(this,"parentFingerprint");G(this,"chainCode");G(this,"path");G(this,"index");G(this,"depth");gu(n,Bo,"HDNodeVoidWallet"),Me(this,{publicKey:i});const d=Yt(ug(ks(i)),0,4);Me(this,{publicKey:i,fingerprint:d,parentFingerprint:s,chainCode:o,path:a,index:c,depth:l})}connect(n){return new m1(Bo,this.address,this.publicKey,this.parentFingerprint,this.chainCode,this.path,this.index,this.depth,n)}get extendedKey(){return ie(this.depth<256,"Depth too deep","UNSUPPORTED_OPERATION",{operation:"extendedKey"}),S4(Rt(["0x0488B21E",A2(this.depth,1),this.parentFingerprint,A2(this.index,4),this.chainCode,this.publicKey]))}hasPath(){return this.path!=null}deriveChild(n){const r=Je(n,"index");M(r<=4294967295,"invalid index","index",r);let i=this.path;i&&(i+="/"+(r&~Hl),r&Hl&&(i+="'"));const{IR:s,IL:o}=zB(r,this.chainCode,this.publicKey,null),a=aa.addPoints(o,this.publicKey,!0),c=Cw(a);return new m1(Bo,c,a,this.fingerprint,de(s),i,r,this.depth+1,this.provider)}derivePath(n){return VB(this,n)}}function HS(t){try{if(JSON.parse(t).encseed)return!0}catch{}return!1}function zS(t,e){const n=JSON.parse(t),r=Iw(e),i=ft(pn(n,"ethaddr:string!")),s=UB(pn(n,"encseed:string!"));M(s&&s.length%16===0,"invalid encseed","json",t);const o=Ae(mu(r,r,2e3,32,"sha256")).slice(0,16),a=s.slice(0,16),c=s.slice(16),l=new Q6(o,a),u=mye(Ae(l.decrypt(c)));let d="";for(let h=0;h<u.length;h++)d+=String.fromCharCode(u[h]);return{address:i,privateKey:Oc(d)}}function VS(t){return new Promise(e=>{setTimeout(()=>{e()},t)})}var k1,ta,T4;let Cye=(ta=class extends E2{constructor(e,n){typeof e=="string"&&!e.startsWith("0x")&&(e="0x"+e);let r=typeof e=="string"?new aa(e):e;super(r,n)}connect(e){return new ta(this.signingKey,e)}async encrypt(e,n){const r={address:this.address,privateKey:this.privateKey};return await HB(r,e,{progressCallback:n})}encryptSync(e){const n={address:this.address,privateKey:this.privateKey};return jB(n,e)}static async fromEncryptedJson(e,n,r){var s;let i=null;return WS(e)?i=await bye(e,n,r):HS(e)&&(r&&(r(0),await VS(0)),i=zS(e,n),r&&(r(1),await VS(0))),X(s=ta,k1,T4).call(s,i)}static fromEncryptedJsonSync(e,n){var i;let r=null;return WS(e)?r=yye(e,n):HS(e)?r=zS(e,n):M(!1,"invalid JSON wallet","json","[ REDACTED ]"),X(i=ta,k1,T4).call(i,r)}static createRandom(e){const n=vm.createRandom();return e?n.connect(e):n}static fromPhrase(e,n){const r=vm.fromPhrase(e);return n?r.connect(n):r}},k1=new WeakSet,T4=function(e){if(M(e,"invalid JSON wallet","json","[ REDACTED ]"),"mnemonic"in e&&e.mnemonic&&e.mnemonic.locale==="en"){const r=W0.fromEntropy(e.mnemonic.entropy),i=vm.fromMnemonic(r,e.mnemonic.path);if(i.address===e.address&&i.privateKey===e.privateKey)return i;console.log("WARNING: JSON mismatch address/privateKey != mnemonic; fallback onto private key")}const n=new ta(e.privateKey);return M(n.address===e.address,"address/privateKey mismatch","json","[ REDACTED ]"),n},K(ta,k1),ta);const Gf={hexStringToNumber(t){const e=t.startsWith("0x")?t.slice(2):t;return parseInt(e,16)},numberToHexString(t){return`0x${t.toString(16)}`},async getUserInfo(t){const[e,n]=await Promise.all([Gf.getAddresses(t),Gf.getChainId(t)]);return{chainId:n,addresses:e}},async getChainId(t){const e=await t.request({method:"eth_chainId"});return Number(e)},async getAddress(t){const[e]=await t.request({method:"eth_accounts"});return e},async getAddresses(t){return await t.request({method:"eth_accounts"})},async addEthereumChain(t,e){var r,i;const n=((r=e.rpcUrls.chainDefault)==null?void 0:r.http)||[];await t.request({method:"wallet_addEthereumChain",params:[{chainId:Gf.numberToHexString(e.id),rpcUrls:[...n],chainName:e.name,nativeCurrency:{name:e.nativeCurrency.name,decimals:e.nativeCurrency.decimals,symbol:e.nativeCurrency.symbol},blockExplorerUrls:[(i=e.blockExplorers)==null?void 0:i.default.url],iconUrls:[mk.NetworkImageIds[e.id]]}]})}};class X6{constructor(){this.initialized=!1}async getProvider(){return Promise.resolve(this.provider)}}class Aye extends X6{async initialize(){const e=v.getCaipNetworks(),{metadata:n,coinbasePreference:r}=V.state;try{const{createBaseAccountSDK:i}=await Promise.resolve().then(()=>require("./index-Dk48RrmB.js"));if(typeof window>"u")return Promise.resolve();const s=i({appName:n==null?void 0:n.name,appLogoUrl:n==null?void 0:n.icons[0],appChainIds:(e==null?void 0:e.map(o=>o.id))||[1,84532],preference:{options:r??"all"}});return this.provider=s.getProvider(),this.initialized=!0,Promise.resolve()}catch(i){return console.error("Failed to import Coinbase Wallet SDK:",i),Promise.resolve()}}async getProvider(){return Promise.resolve(this.provider)}}var qB={},Z3={};const GB=()=>"9.1.0",_ye=t=>t.toString(16).padStart(2,"0"),Sye=t=>{const e=new Uint8Array(t/2);return window.crypto.getRandomValues(e),Array.from(e,_ye).join("")},Iye=()=>typeof window<"u"?Sye(10):new Date().getTime().toString(36);class Tw{}Tw.makeRequest=(t,e)=>({id:Iye(),method:t,params:e,env:{sdkVersion:GB()}});Tw.makeResponse=(t,e,n)=>({id:t,success:!0,version:n,data:e});Tw.makeErrorResponse=(t,e,n)=>({id:t,success:!1,error:e,version:n});var Wn;(function(t){t.sendTransactions="sendTransactions",t.rpcCall="rpcCall",t.getChainInfo="getChainInfo",t.getSafeInfo="getSafeInfo",t.getTxBySafeTxHash="getTxBySafeTxHash",t.getSafeBalances="getSafeBalances",t.signMessage="signMessage",t.signTypedMessage="signTypedMessage",t.getEnvironmentInfo="getEnvironmentInfo",t.getOffChainSignature="getOffChainSignature",t.requestAddressBook="requestAddressBook",t.wallet_getPermissions="wallet_getPermissions",t.wallet_requestPermissions="wallet_requestPermissions"})(Wn||(Wn={}));var _2;(function(t){t.requestAddressBook="requestAddressBook"})(_2||(_2={}));class Tye{constructor(e=null,n=!1){this.allowedOrigins=null,this.callbacks=new Map,this.debugMode=!1,this.isServer=typeof window>"u",this.isValidMessage=({origin:r,data:i,source:s})=>{const o=!i,a=!this.isServer&&s===window.parent,c=typeof i.version<"u"&&parseInt(i.version.split(".")[0]),l=typeof c=="number"&&c>=1;let u=!0;return Array.isArray(this.allowedOrigins)&&(u=this.allowedOrigins.find(d=>d.test(r))!==void 0),!o&&a&&l&&u},this.logIncomingMessage=r=>{console.info(`Safe Apps SDK v1: A message was received from origin ${r.origin}. `,r.data)},this.onParentMessage=r=>{this.isValidMessage(r)&&(this.debugMode&&this.logIncomingMessage(r),this.handleIncomingMessage(r.data))},this.handleIncomingMessage=r=>{const{id:i}=r,s=this.callbacks.get(i);s&&(s(r),this.callbacks.delete(i))},this.send=(r,i)=>{const s=Tw.makeRequest(r,i);if(this.isServer)throw new Error("Window doesn't exist");return window.parent.postMessage(s,"*"),new Promise((o,a)=>{this.callbacks.set(s.id,c=>{if(!c.success){a(new Error(c.error));return}o(c)})})},this.allowedOrigins=e,this.debugMode=n,this.isServer||window.addEventListener("message",this.onParentMessage)}}const eA=t=>typeof t=="object"&&t!=null&&"domain"in t&&"types"in t&&"message"in t;var om={},pg={},gg={},tA=Tn&&Tn.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(u){try{l(r.next(u))}catch(d){o(d)}}function c(u){try{l(r.throw(u))}catch(d){o(d)}}function l(u){u.done?s(u.value):i(u.value).then(a,c)}l((r=r.apply(t,e||[])).next())})};Object.defineProperty(gg,"__esModule",{value:!0});gg.insertParams=Oye;gg.stringifyQuery=Pye;gg.fetchData=kye;gg.getData=$ye;const Nye=t=>typeof t=="object"&&t!==null&&("code"in t||"statusCode"in t)&&"message"in t;function Rye(t,e,n){return t.replace(new RegExp(`\\{${e}\\}`,"g"),n)}function Oye(t,e){return e?Object.keys(e).reduce((n,r)=>Rye(n,r,String(e[r])),t):t}function Pye(t){if(!t)return"";const e=new URLSearchParams;Object.keys(t).forEach(r=>{t[r]!=null&&e.append(r,String(t[r]))});const n=e.toString();return n?`?${n}`:""}function KB(t){return tA(this,void 0,void 0,function*(){var e;let n;try{n=yield t.json()}catch{n={}}if(!t.ok){const r=Nye(n)?`CGW error - ${(e=n.code)!==null&&e!==void 0?e:n.statusCode}: ${n.message}`:`CGW error - status ${t.statusText}`;throw new Error(r)}return n})}function kye(t,e,n,r,i){return tA(this,void 0,void 0,function*(){const s=Object.assign({"Content-Type":"application/json"},r),o={method:e??"POST",headers:s};i&&(o.credentials=i),n!=null&&(o.body=typeof n=="string"?n:JSON.stringify(n));const a=yield fetch(t,o);return KB(a)})}function $ye(t,e,n){return tA(this,void 0,void 0,function*(){const r={method:"GET"};e&&(r.headers=Object.assign(Object.assign({},e),{"Content-Type":"application/json"})),n&&(r.credentials=n);const i=yield fetch(t,r);return KB(i)})}Object.defineProperty(pg,"__esModule",{value:!0});pg.postEndpoint=Dye;pg.putEndpoint=Bye;pg.deleteEndpoint=Uye;pg.getEndpoint=Lye;const xh=gg;function Y3(t,e,n,r){const i=(0,xh.insertParams)(e,n),s=(0,xh.stringifyQuery)(r);return`${t}${i}${s}`}function Dye(t,e,n){const r=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.fetchData)(r,"POST",n==null?void 0:n.body,n==null?void 0:n.headers,n==null?void 0:n.credentials)}function Bye(t,e,n){const r=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.fetchData)(r,"PUT",n==null?void 0:n.body,n==null?void 0:n.headers,n==null?void 0:n.credentials)}function Uye(t,e,n){const r=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.fetchData)(r,"DELETE",n==null?void 0:n.body,n==null?void 0:n.headers,n==null?void 0:n.credentials)}function Lye(t,e,n,r){if(r)return(0,xh.getData)(r,void 0,n==null?void 0:n.credentials);const i=Y3(t,e,n==null?void 0:n.path,n==null?void 0:n.query);return(0,xh.getData)(i,n==null?void 0:n.headers,n==null?void 0:n.credentials)}var J3={};Object.defineProperty(J3,"__esModule",{value:!0});J3.DEFAULT_BASE_URL=void 0;J3.DEFAULT_BASE_URL="https://safe-client.safe.global";var Q3={};Object.defineProperty(Q3,"__esModule",{value:!0});Q3.ImplementationVersionState=void 0;var qS;(function(t){t.UP_TO_DATE="UP_TO_DATE",t.OUTDATED="OUTDATED",t.UNKNOWN="UNKNOWN"})(qS||(Q3.ImplementationVersionState=qS={}));var zl={};Object.defineProperty(zl,"__esModule",{value:!0});zl.SafeAppSocialPlatforms=zl.SafeAppFeatures=zl.SafeAppAccessPolicyTypes=void 0;var GS;(function(t){t.NoRestrictions="NO_RESTRICTIONS",t.DomainAllowlist="DOMAIN_ALLOWLIST"})(GS||(zl.SafeAppAccessPolicyTypes=GS={}));var KS;(function(t){t.BATCHED_TRANSACTIONS="BATCHED_TRANSACTIONS"})(KS||(zl.SafeAppFeatures=KS={}));var ZS;(function(t){t.TWITTER="TWITTER",t.GITHUB="GITHUB",t.DISCORD="DISCORD",t.TELEGRAM="TELEGRAM"})(ZS||(zl.SafeAppSocialPlatforms=ZS={}));var Kt={};Object.defineProperty(Kt,"__esModule",{value:!0});Kt.LabelValue=Kt.StartTimeValue=Kt.DurationType=Kt.DetailedExecutionInfoType=Kt.TransactionListItemType=Kt.ConflictType=Kt.TransactionInfoType=Kt.SettingsInfoType=Kt.TransactionTokenType=Kt.TransferDirection=Kt.TransactionStatus=Kt.Operation=void 0;var YS;(function(t){t[t.CALL=0]="CALL",t[t.DELEGATE=1]="DELEGATE"})(YS||(Kt.Operation=YS={}));var JS;(function(t){t.AWAITING_CONFIRMATIONS="AWAITING_CONFIRMATIONS",t.AWAITING_EXECUTION="AWAITING_EXECUTION",t.CANCELLED="CANCELLED",t.FAILED="FAILED",t.SUCCESS="SUCCESS"})(JS||(Kt.TransactionStatus=JS={}));var QS;(function(t){t.INCOMING="INCOMING",t.OUTGOING="OUTGOING",t.UNKNOWN="UNKNOWN"})(QS||(Kt.TransferDirection=QS={}));var XS;(function(t){t.ERC20="ERC20",t.ERC721="ERC721",t.NATIVE_COIN="NATIVE_COIN"})(XS||(Kt.TransactionTokenType=XS={}));var eI;(function(t){t.SET_FALLBACK_HANDLER="SET_FALLBACK_HANDLER",t.ADD_OWNER="ADD_OWNER",t.REMOVE_OWNER="REMOVE_OWNER",t.SWAP_OWNER="SWAP_OWNER",t.CHANGE_THRESHOLD="CHANGE_THRESHOLD",t.CHANGE_IMPLEMENTATION="CHANGE_IMPLEMENTATION",t.ENABLE_MODULE="ENABLE_MODULE",t.DISABLE_MODULE="DISABLE_MODULE",t.SET_GUARD="SET_GUARD",t.DELETE_GUARD="DELETE_GUARD"})(eI||(Kt.SettingsInfoType=eI={}));var tI;(function(t){t.TRANSFER="Transfer",t.SETTINGS_CHANGE="SettingsChange",t.CUSTOM="Custom",t.CREATION="Creation",t.SWAP_ORDER="SwapOrder",t.TWAP_ORDER="TwapOrder",t.SWAP_TRANSFER="SwapTransfer",t.NATIVE_STAKING_DEPOSIT="NativeStakingDeposit",t.NATIVE_STAKING_VALIDATORS_EXIT="NativeStakingValidatorsExit",t.NATIVE_STAKING_WITHDRAW="NativeStakingWithdraw"})(tI||(Kt.TransactionInfoType=tI={}));var nI;(function(t){t.NONE="None",t.HAS_NEXT="HasNext",t.END="End"})(nI||(Kt.ConflictType=nI={}));var rI;(function(t){t.TRANSACTION="TRANSACTION",t.LABEL="LABEL",t.CONFLICT_HEADER="CONFLICT_HEADER",t.DATE_LABEL="DATE_LABEL"})(rI||(Kt.TransactionListItemType=rI={}));var iI;(function(t){t.MULTISIG="MULTISIG",t.MODULE="MODULE"})(iI||(Kt.DetailedExecutionInfoType=iI={}));var sI;(function(t){t.AUTO="AUTO",t.LIMIT_DURATION="LIMIT_DURATION"})(sI||(Kt.DurationType=sI={}));var oI;(function(t){t.AT_MINING_TIME="AT_MINING_TIME",t.AT_EPOCH="AT_EPOCH"})(oI||(Kt.StartTimeValue=oI={}));var aI;(function(t){t.Queued="Queued",t.Next="Next"})(aI||(Kt.LabelValue=aI={}));var Vl={};Object.defineProperty(Vl,"__esModule",{value:!0});Vl.FEATURES=Vl.GAS_PRICE_TYPE=Vl.RPC_AUTHENTICATION=void 0;var cI;(function(t){t.API_KEY_PATH="API_KEY_PATH",t.NO_AUTHENTICATION="NO_AUTHENTICATION",t.UNKNOWN="UNKNOWN"})(cI||(Vl.RPC_AUTHENTICATION=cI={}));var lI;(function(t){t.ORACLE="ORACLE",t.FIXED="FIXED",t.FIXED_1559="FIXED1559",t.UNKNOWN="UNKNOWN"})(lI||(Vl.GAS_PRICE_TYPE=lI={}));var uI;(function(t){t.ERC721="ERC721",t.SAFE_APPS="SAFE_APPS",t.CONTRACT_INTERACTION="CONTRACT_INTERACTION",t.DOMAIN_LOOKUP="DOMAIN_LOOKUP",t.SPENDING_LIMIT="SPENDING_LIMIT",t.EIP1559="EIP1559",t.SAFE_TX_GAS_OPTIONAL="SAFE_TX_GAS_OPTIONAL",t.TX_SIMULATION="TX_SIMULATION",t.EIP1271="EIP1271"})(uI||(Vl.FEATURES=uI={}));var X3={};Object.defineProperty(X3,"__esModule",{value:!0});X3.TokenType=void 0;var dI;(function(t){t.ERC20="ERC20",t.ERC721="ERC721",t.NATIVE_TOKEN="NATIVE_TOKEN",t.UNKNOWN="UNKNOWN"})(dI||(X3.TokenType=dI={}));var ZB={};Object.defineProperty(ZB,"__esModule",{value:!0});var H0={};Object.defineProperty(H0,"__esModule",{value:!0});H0.NativeStakingStatus=H0.ConfirmationViewTypes=void 0;var hI;(function(t){t.GENERIC="GENERIC",t.COW_SWAP_ORDER="COW_SWAP_ORDER",t.COW_SWAP_TWAP_ORDER="COW_SWAP_TWAP_ORDER",t.KILN_NATIVE_STAKING_DEPOSIT="KILN_NATIVE_STAKING_DEPOSIT",t.KILN_NATIVE_STAKING_VALIDATORS_EXIT="KILN_NATIVE_STAKING_VALIDATORS_EXIT",t.KILN_NATIVE_STAKING_WITHDRAW="KILN_NATIVE_STAKING_WITHDRAW"})(hI||(H0.ConfirmationViewTypes=hI={}));var fI;(function(t){t.NOT_STAKED="NOT_STAKED",t.ACTIVATING="ACTIVATING",t.DEPOSIT_IN_PROGRESS="DEPOSIT_IN_PROGRESS",t.ACTIVE="ACTIVE",t.EXIT_REQUESTED="EXIT_REQUESTED",t.EXITING="EXITING",t.EXITED="EXITED",t.SLASHED="SLASHED"})(fI||(H0.NativeStakingStatus=fI={}));var z0={};Object.defineProperty(z0,"__esModule",{value:!0});z0.SafeMessageStatus=z0.SafeMessageListItemType=void 0;var pI;(function(t){t.DATE_LABEL="DATE_LABEL",t.MESSAGE="MESSAGE"})(pI||(z0.SafeMessageListItemType=pI={}));var gI;(function(t){t.NEEDS_CONFIRMATION="NEEDS_CONFIRMATION",t.CONFIRMED="CONFIRMED"})(gI||(z0.SafeMessageStatus=gI={}));var ex={};Object.defineProperty(ex,"__esModule",{value:!0});ex.DeviceType=void 0;var mI;(function(t){t.ANDROID="ANDROID",t.IOS="IOS",t.WEB="WEB"})(mI||(ex.DeviceType=mI={}));var YB={};Object.defineProperty(YB,"__esModule",{value:!0});(function(t){var e=Tn&&Tn.__createBinding||(Object.create?function(oe,fe,De,ot){ot===void 0&&(ot=De);var Jr=Object.getOwnPropertyDescriptor(fe,De);(!Jr||("get"in Jr?!fe.__esModule:Jr.writable||Jr.configurable))&&(Jr={enumerable:!0,get:function(){return fe[De]}}),Object.defineProperty(oe,ot,Jr)}:function(oe,fe,De,ot){ot===void 0&&(ot=De),oe[ot]=fe[De]}),n=Tn&&Tn.__exportStar||function(oe,fe){for(var De in oe)De!=="default"&&!Object.prototype.hasOwnProperty.call(fe,De)&&e(fe,oe,De)};Object.defineProperty(t,"__esModule",{value:!0}),t.setBaseUrl=void 0,t.relayTransaction=a,t.getRelayCount=c,t.getSafeInfo=l,t.getIncomingTransfers=u,t.getModuleTransactions=d,t.getMultisigTransactions=h,t.getBalances=f,t.getFiatCurrencies=g,t.getOwnedSafes=p,t.getAllOwnedSafes=m,t.getCollectibles=b,t.getCollectiblesPage=C,t.getTransactionHistory=x,t.getTransactionQueue=A,t.getTransactionDetails=I,t.deleteTransaction=P,t.postSafeGasEstimation=B,t.getNonces=F,t.proposeTransaction=L,t.getConfirmationView=j,t.getTxPreview=z,t.getChainsConfig=W,t.getChainConfig=D,t.getSafeApps=U,t.getMasterCopies=w,t.getDecodedData=E,t.getSafeMessages=T,t.getSafeMessage=O,t.proposeSafeMessage=R,t.confirmSafeMessage=$,t.getDelegates=q,t.registerDevice=Y,t.unregisterSafe=le,t.unregisterDevice=ne,t.registerEmail=ce,t.changeEmail=be,t.resendEmailVerificationCode=xe,t.verifyEmail=Ke,t.getRegisteredEmail=Ee,t.deleteRegisteredEmail=Ue,t.registerRecoveryModule=lt,t.unsubscribeSingle=yt,t.unsubscribeAll=ut,t.getSafeOverviews=Qt,t.getContract=Yr,t.getAuthNonce=Ri,t.verifyAuth=tx,t.createAccount=nx,t.getAccount=Rw,t.deleteAccount=Ow,t.getAccountDataTypes=mg,t.getAccountDataSettings=Pw,t.putAccountDataSettings=kw,t.getIndexingStatus=$w;const r=pg,i=J3;n(Q3,t),n(zl,t),n(Kt,t),n(Vl,t),n(X3,t),n(ZB,t),n(H0,t),n(z0,t),n(ex,t),n(YB,t);let s=i.DEFAULT_BASE_URL;const o=oe=>{s=oe};t.setBaseUrl=o;function a(oe,fe){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/relay",{path:{chainId:oe},body:fe})}function c(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/relay/{address}",{path:{chainId:oe,address:fe}})}function l(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}",{path:{chainId:oe,address:fe}})}function u(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/incoming-transfers/",{path:{chainId:oe,address:fe},query:De},ot)}function d(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/module-transactions/",{path:{chainId:oe,address:fe},query:De},ot)}function h(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/multisig-transactions/",{path:{chainId:oe,address:fe},query:De},ot)}function f(oe,fe,De="usd",ot={}){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/balances/{currency}",{path:{chainId:oe,address:fe,currency:De},query:ot})}function g(){return(0,r.getEndpoint)(s,"/v1/balances/supported-fiat-codes")}function p(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/owners/{address}/safes",{path:{chainId:oe,address:fe}})}function m(oe){return(0,r.getEndpoint)(s,"/v1/owners/{address}/safes",{path:{address:oe}})}function b(oe,fe,De={}){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{address}/collectibles",{path:{chainId:oe,address:fe},query:De})}function C(oe,fe,De={},ot){return(0,r.getEndpoint)(s,"/v2/chains/{chainId}/safes/{address}/collectibles",{path:{chainId:oe,address:fe},query:De},ot)}function x(oe,fe,De={},ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/transactions/history",{path:{chainId:oe,safe_address:fe},query:De},ot)}function A(oe,fe,De={},ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/transactions/queued",{path:{chainId:oe,safe_address:fe},query:De},ot)}function I(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/transactions/{transactionId}",{path:{chainId:oe,transactionId:fe}})}function P(oe,fe,De){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/transactions/{safeTxHash}",{path:{chainId:oe,safeTxHash:fe},body:{signature:De}})}function B(oe,fe,De){return(0,r.postEndpoint)(s,"/v2/chains/{chainId}/safes/{safe_address}/multisig-transactions/estimations",{path:{chainId:oe,safe_address:fe},body:De})}function F(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/nonces",{path:{chainId:oe,safe_address:fe}})}function L(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/transactions/{safe_address}/propose",{path:{chainId:oe,safe_address:fe},body:De})}function j(oe,fe,De,ot,Jr,wg){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/views/transaction-confirmation",{path:{chainId:oe,safe_address:fe},body:{operation:De,data:ot,to:Jr,value:wg}})}function z(oe,fe,De,ot,Jr,wg){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/transactions/{safe_address}/preview",{path:{chainId:oe,safe_address:fe},body:{operation:De,data:ot,to:Jr,value:wg}})}function W(oe){return(0,r.getEndpoint)(s,"/v1/chains",{query:oe})}function D(oe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}",{path:{chainId:oe}})}function U(oe,fe={}){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safe-apps",{path:{chainId:oe},query:fe})}function w(oe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/about/master-copies",{path:{chainId:oe}})}function E(oe,fe,De,ot){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/data-decoder",{path:{chainId:oe},body:{operation:fe,data:De,to:ot}})}function T(oe,fe,De){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/messages",{path:{chainId:oe,safe_address:fe},query:{}},De)}function O(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/messages/{message_hash}",{path:{chainId:oe,message_hash:fe}})}function R(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/messages",{path:{chainId:oe,safe_address:fe},body:De})}function $(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/messages/{message_hash}/signatures",{path:{chainId:oe,message_hash:fe},body:De})}function q(oe,fe={}){return(0,r.getEndpoint)(s,"/v2/chains/{chainId}/delegates",{path:{chainId:oe},query:fe})}function Y(oe){return(0,r.postEndpoint)(s,"/v1/register/notifications",{body:oe})}function le(oe,fe,De){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/notifications/devices/{uuid}/safes/{safe_address}",{path:{chainId:oe,safe_address:fe,uuid:De}})}function ne(oe,fe){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/notifications/devices/{uuid}",{path:{chainId:oe,uuid:fe}})}function ce(oe,fe,De,ot){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails",{path:{chainId:oe,safe_address:fe},body:De,headers:ot})}function be(oe,fe,De,ot,Jr){return(0,r.putEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}",{path:{chainId:oe,safe_address:fe,signer:De},body:ot,headers:Jr})}function xe(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}/verify-resend",{path:{chainId:oe,safe_address:fe,signer:De},body:""})}function Ke(oe,fe,De,ot){return(0,r.putEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}/verify",{path:{chainId:oe,safe_address:fe,signer:De},body:ot})}function Ee(oe,fe,De,ot){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}",{path:{chainId:oe,safe_address:fe,signer:De},headers:ot})}function Ue(oe,fe,De,ot){return(0,r.deleteEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/emails/{signer}",{path:{chainId:oe,safe_address:fe,signer:De},headers:ot})}function lt(oe,fe,De){return(0,r.postEndpoint)(s,"/v1/chains/{chainId}/safes/{safe_address}/recovery",{path:{chainId:oe,safe_address:fe},body:De})}function yt(oe){return(0,r.deleteEndpoint)(s,"/v1/subscriptions",{query:oe})}function ut(oe){return(0,r.deleteEndpoint)(s,"/v1/subscriptions/all",{query:oe})}function Qt(oe,fe){return(0,r.getEndpoint)(s,"/v1/safes",{query:Object.assign(Object.assign({},fe),{safes:oe.join(",")})})}function Yr(oe,fe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/contracts/{contractAddress}",{path:{chainId:oe,contractAddress:fe}})}function Ri(){return(0,r.getEndpoint)(s,"/v1/auth/nonce",{credentials:"include"})}function tx(oe){return(0,r.postEndpoint)(s,"/v1/auth/verify",{body:oe,credentials:"include"})}function nx(oe){return(0,r.postEndpoint)(s,"/v1/accounts",{body:oe,credentials:"include"})}function Rw(oe){return(0,r.getEndpoint)(s,"/v1/accounts/{address}",{path:{address:oe},credentials:"include"})}function Ow(oe){return(0,r.deleteEndpoint)(s,"/v1/accounts/{address}",{path:{address:oe},credentials:"include"})}function mg(){return(0,r.getEndpoint)(s,"/v1/accounts/data-types")}function Pw(oe){return(0,r.getEndpoint)(s,"/v1/accounts/{address}/data-settings",{path:{address:oe},credentials:"include"})}function kw(oe,fe){return(0,r.putEndpoint)(s,"/v1/accounts/{address}/data-settings",{path:{address:oe},body:fe,credentials:"include"})}function $w(oe){return(0,r.getEndpoint)(s,"/v1/chains/{chainId}/about/indexing",{path:{chainId:oe}})}})(om);class Mye{constructor(e){this.communicator=e}async getBySafeTxHash(e){if(!e)throw new Error("Invalid safeTxHash");return(await this.communicator.send(Wn.getTxBySafeTxHash,{safeTxHash:e})).data}async signMessage(e){const n={message:e};return(await this.communicator.send(Wn.signMessage,n)).data}async signTypedMessage(e){if(!eA(e))throw new Error("Invalid typed data");return(await this.communicator.send(Wn.signTypedMessage,{typedData:e})).data}async send({txs:e,params:n}){if(!e||!e.length)throw new Error("No transactions were passed");const r={txs:e,params:n};return(await this.communicator.send(Wn.sendTransactions,r)).data}}const xr={eth_call:"eth_call",eth_gasPrice:"eth_gasPrice",eth_getLogs:"eth_getLogs",eth_getBalance:"eth_getBalance",eth_getCode:"eth_getCode",eth_getBlockByHash:"eth_getBlockByHash",eth_getBlockByNumber:"eth_getBlockByNumber",eth_getStorageAt:"eth_getStorageAt",eth_getTransactionByHash:"eth_getTransactionByHash",eth_getTransactionReceipt:"eth_getTransactionReceipt",eth_getTransactionCount:"eth_getTransactionCount",eth_estimateGas:"eth_estimateGas",safe_setSettings:"safe_setSettings"},ka={defaultBlockParam:(t="latest")=>t,returnFullTxObjectParam:(t=!1)=>t,blockNumberToHex:t=>Number.isInteger(t)?`0x${t.toString(16)}`:t};class Fye{constructor(e){this.communicator=e,this.call=this.buildRequest({call:xr.eth_call,formatters:[null,ka.defaultBlockParam]}),this.getBalance=this.buildRequest({call:xr.eth_getBalance,formatters:[null,ka.defaultBlockParam]}),this.getCode=this.buildRequest({call:xr.eth_getCode,formatters:[null,ka.defaultBlockParam]}),this.getStorageAt=this.buildRequest({call:xr.eth_getStorageAt,formatters:[null,ka.blockNumberToHex,ka.defaultBlockParam]}),this.getPastLogs=this.buildRequest({call:xr.eth_getLogs}),this.getBlockByHash=this.buildRequest({call:xr.eth_getBlockByHash,formatters:[null,ka.returnFullTxObjectParam]}),this.getBlockByNumber=this.buildRequest({call:xr.eth_getBlockByNumber,formatters:[ka.blockNumberToHex,ka.returnFullTxObjectParam]}),this.getTransactionByHash=this.buildRequest({call:xr.eth_getTransactionByHash}),this.getTransactionReceipt=this.buildRequest({call:xr.eth_getTransactionReceipt}),this.getTransactionCount=this.buildRequest({call:xr.eth_getTransactionCount,formatters:[null,ka.defaultBlockParam]}),this.getGasPrice=this.buildRequest({call:xr.eth_gasPrice}),this.getEstimateGas=n=>this.buildRequest({call:xr.eth_estimateGas})([n]),this.setSafeSettings=this.buildRequest({call:xr.safe_setSettings})}buildRequest(e){const{call:n,formatters:r}=e;return async i=>{r&&Array.isArray(i)&&r.forEach((a,c)=>{a&&(i[c]=a(i[c]))});const s={call:n,params:i||[]};return(await this.communicator.send(Wn.rpcCall,s)).data}}}const Wye="0x1626ba7e",jye="0x20c13b0b",N4=4001;class w1 extends Error{constructor(e,n,r){super(e),this.code=n,this.data=r,Object.setPrototypeOf(this,w1.prototype)}}class JB{constructor(e){this.communicator=e}async getPermissions(){return(await this.communicator.send(Wn.wallet_getPermissions,void 0)).data}async requestPermissions(e){if(!this.isPermissionRequestValid(e))throw new w1("Permissions request is invalid",N4);try{return(await this.communicator.send(Wn.wallet_requestPermissions,e)).data}catch{throw new w1("Permissions rejected",N4)}}isPermissionRequestValid(e){return e.every(n=>typeof n=="object"?Object.keys(n).every(r=>!!Object.values(_2).includes(r)):!1)}}const wI=(t,e)=>e.some(n=>n.parentCapability===t),Hye=()=>(t,e,n)=>{const r=n.value;return n.value=async function(){const i=new JB(this.communicator);let s=await i.getPermissions();if(wI(e,s)||(s=await i.requestPermissions([{[e]:{}}])),!wI(e,s))throw new w1("Permissions rejected",N4);return r.apply(this)},n};var zye=function(t,e,n,r){var i=arguments.length,s=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(t,e,n,r);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(s=(i<3?o(s):i>3?o(e,n,s):o(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s};class QB{constructor(e){this.communicator=e}async getChainInfo(){return(await this.communicator.send(Wn.getChainInfo,void 0)).data}async getInfo(){return(await this.communicator.send(Wn.getSafeInfo,void 0)).data}async experimental_getBalances({currency:e="usd"}={}){return(await this.communicator.send(Wn.getSafeBalances,{currency:e})).data}async check1271Signature(e,n="0x"){const r=await this.getInfo(),i=wv({abi:[{constant:!1,inputs:[{name:"_dataHash",type:"bytes32"},{name:"_signature",type:"bytes"}],name:"isValidSignature",outputs:[{name:"",type:"bytes4"}],payable:!1,stateMutability:"nonpayable",type:"function"}],functionName:"isValidSignature",args:[e,n]}),s={call:xr.eth_call,params:[{to:r.safeAddress,data:i},"latest"]};try{return(await this.communicator.send(Wn.rpcCall,s)).data.slice(0,10).toLowerCase()===Wye}catch{return!1}}async check1271SignatureBytes(e,n="0x"){const r=await this.getInfo(),i=wv({abi:[{constant:!1,inputs:[{name:"_data",type:"bytes"},{name:"_signature",type:"bytes"}],name:"isValidSignature",outputs:[{name:"",type:"bytes4"}],payable:!1,stateMutability:"nonpayable",type:"function"}],functionName:"isValidSignature",args:[e,n]}),s={call:xr.eth_call,params:[{to:r.safeAddress,data:i},"latest"]};try{return(await this.communicator.send(Wn.rpcCall,s)).data.slice(0,10).toLowerCase()===jye}catch{return!1}}calculateMessageHash(e){return dN(e)}calculateTypedMessageHash(e){const n=typeof e.domain.chainId=="object"?e.domain.chainId.toNumber():Number(e.domain.chainId);let r=e.primaryType;if(!r){const i=Object.values(e.types),s=Object.keys(e.types).filter(o=>i.every(a=>a.every(({type:c})=>c.replace("[","").replace("]","")!==o)));if(s.length===0||s.length>1)throw new Error("Please specify primaryType");r=s[0]}return wN({message:e.message,domain:{...e.domain,chainId:n,verifyingContract:e.domain.verifyingContract,salt:e.domain.salt},types:e.types,primaryType:r})}async getOffChainSignature(e){return(await this.communicator.send(Wn.getOffChainSignature,e)).data}async isMessageSigned(e,n="0x"){let r;if(typeof e=="string"&&(r=async()=>{const i=this.calculateMessageHash(e);return await this.isMessageHashSigned(i,n)}),eA(e)&&(r=async()=>{const i=this.calculateTypedMessageHash(e);return await this.isMessageHashSigned(i,n)}),r)return await r();throw new Error("Invalid message type")}async isMessageHashSigned(e,n="0x"){const r=[this.check1271Signature.bind(this),this.check1271SignatureBytes.bind(this)];for(const i of r)if(await i(e,n))return!0;return!1}async getEnvironmentInfo(){return(await this.communicator.send(Wn.getEnvironmentInfo,void 0)).data}async requestAddressBook(){return(await this.communicator.send(Wn.requestAddressBook,void 0)).data}}zye([Hye()],QB.prototype,"requestAddressBook",null);class Vye{constructor(e={}){const{allowedDomains:n=null,debug:r=!1}=e;this.communicator=new Tye(n,r),this.eth=new Fye(this.communicator),this.txs=new Mye(this.communicator),this.safe=new QB(this.communicator),this.wallet=new JB(this.communicator)}}const XB=Object.freeze(Object.defineProperty({__proto__:null,MessageFormatter:Tw,get Methods(){return Wn},Operation:om.Operation,RPC_CALLS:xr,get RestrictedMethods(){return _2},TokenType:om.TokenType,TransactionStatus:om.TransactionStatus,TransferDirection:om.TransferDirection,default:Vye,getSDKVersion:GB,isObjectEIP712TypedData:eA},Symbol.toStringTag,{value:"Module"})),qye=PI(XB);var V0={};Object.defineProperty(V0,"__esModule",{value:!0});V0.numberToHex=V0.getLowerCase=void 0;function Gye(t){return t&&t.toLowerCase()}V0.getLowerCase=Gye;function Kye(t){return`0x${t.toString(16)}`}V0.numberToHex=Kye;Object.defineProperty(Z3,"__esModule",{value:!0});Z3.SafeAppProvider=void 0;const of=qye,Zye=Xi,us=V0;class Yye extends Zye.EventEmitter{constructor(e,n){super(),this.submittedTxs=new Map,this.safe=e,this.sdk=n}async connect(){this.emit("connect",{chainId:this.chainId})}async disconnect(){}get chainId(){return this.safe.chainId}async request(e){var i,s,o,a;const{method:n,params:r=[]}=e;switch(n){case"eth_accounts":return[this.safe.safeAddress];case"net_version":case"eth_chainId":return(0,us.numberToHex)(this.chainId);case"personal_sign":{const[h,f]=r;if(this.safe.safeAddress.toLowerCase()!==f.toLowerCase())throw new Error("The address or message hash is invalid");const g=await this.sdk.txs.signMessage(h);return("signature"in g?g.signature:void 0)||"0x"}case"eth_sign":{const[h,f]=r;if(this.safe.safeAddress.toLowerCase()!==h.toLowerCase()||!f.startsWith("0x"))throw new Error("The address or message hash is invalid");const g=await this.sdk.txs.signMessage(f);return("signature"in g?g.signature:void 0)||"0x"}case"eth_signTypedData":case"eth_signTypedData_v4":{const[h,f]=r,g=typeof f=="string"?JSON.parse(f):f;if(this.safe.safeAddress.toLowerCase()!==h.toLowerCase())throw new Error("The address is invalid");const p=await this.sdk.txs.signTypedMessage(g);return("signature"in p?p.signature:void 0)||"0x"}case"eth_sendTransaction":const c={...r[0],value:r[0].value||"0",data:r[0].data||"0x"};typeof c.gas=="string"&&c.gas.startsWith("0x")&&(c.gas=parseInt(c.gas,16));const l=await this.sdk.txs.send({txs:[c],params:{safeTxGas:c.gas}});return this.submittedTxs.set(l.safeTxHash,{from:this.safe.safeAddress,hash:l.safeTxHash,gas:0,gasPrice:"0x00",nonce:0,input:c.data,value:c.value,to:c.to,blockHash:null,blockNumber:null,transactionIndex:null}),l.safeTxHash;case"eth_blockNumber":return(await this.sdk.eth.getBlockByNumber(["latest"])).number;case"eth_getBalance":return this.sdk.eth.getBalance([(0,us.getLowerCase)(r[0]),r[1]]);case"eth_getCode":return this.sdk.eth.getCode([(0,us.getLowerCase)(r[0]),r[1]]);case"eth_getTransactionCount":return this.sdk.eth.getTransactionCount([(0,us.getLowerCase)(r[0]),r[1]]);case"eth_getStorageAt":return this.sdk.eth.getStorageAt([(0,us.getLowerCase)(r[0]),r[1],r[2]]);case"eth_getBlockByNumber":return this.sdk.eth.getBlockByNumber([r[0],r[1]]);case"eth_getBlockByHash":return this.sdk.eth.getBlockByHash([r[0],r[1]]);case"eth_getTransactionByHash":let d=r[0];try{d=(await this.sdk.txs.getBySafeTxHash(d)).txHash||d}catch{}return this.submittedTxs.has(d)?this.submittedTxs.get(d):this.sdk.eth.getTransactionByHash([d]).then(h=>(h&&(h.hash=r[0]),h));case"eth_getTransactionReceipt":{let h=r[0];try{h=(await this.sdk.txs.getBySafeTxHash(h)).txHash||h}catch{}return this.sdk.eth.getTransactionReceipt([h]).then(f=>(f&&(f.transactionHash=r[0]),f))}case"eth_estimateGas":return this.sdk.eth.getEstimateGas(r[0]);case"eth_call":return this.sdk.eth.call([r[0],r[1]]);case"eth_getLogs":return this.sdk.eth.getPastLogs([r[0]]);case"eth_gasPrice":return this.sdk.eth.getGasPrice();case"wallet_getPermissions":return this.sdk.wallet.getPermissions();case"wallet_requestPermissions":return this.sdk.wallet.requestPermissions(r[0]);case"safe_setSettings":return this.sdk.eth.setSafeSettings([r[0]]);case"wallet_sendCalls":{const{from:h,calls:f,chainId:g}=r[0];if(g!==(0,us.numberToHex)(this.chainId))throw new Error(`Safe is not on chain ${g}`);if(h!==this.safe.safeAddress)throw Error("Invalid from address");const p=f.map((C,x)=>{if(!C.to)throw new Error(`Invalid call #${x}: missing "to" field`);return{to:C.to,data:C.data??"0x",value:C.value??(0,us.numberToHex)(0)}}),{safeTxHash:m}=await this.sdk.txs.send({txs:p});return{id:m}}case"wallet_getCallsStatus":{const h=r[0],f={[of.TransactionStatus.AWAITING_CONFIRMATIONS]:100,[of.TransactionStatus.AWAITING_EXECUTION]:100,[of.TransactionStatus.SUCCESS]:200,[of.TransactionStatus.CANCELLED]:400,[of.TransactionStatus.FAILED]:500},g=await this.sdk.txs.getBySafeTxHash(h),p={version:"1.0",id:h,chainId:(0,us.numberToHex)(this.chainId),status:f[g.txStatus]};if(!g.txHash)return p;const m=await this.sdk.eth.getTransactionReceipt([g.txHash]);if(!m)return p;const b=((s=(i=g.txData)==null?void 0:i.dataDecoded)==null?void 0:s.method)!=="multiSend"?1:((a=(o=g.txData.dataDecoded.parameters)==null?void 0:o[0].valueDecoded)==null?void 0:a.length)??1,C=Number(m.blockNumber),x=Number(m.gasUsed);return p.receipts=Array(b).fill({logs:m.logs,status:(0,us.numberToHex)(g.txStatus===of.TransactionStatus.SUCCESS?1:0),blockHash:m.blockHash,blockNumber:(0,us.numberToHex)(C),gasUsed:(0,us.numberToHex)(x),transactionHash:g.txHash}),p}case"wallet_showCallsStatus":throw new Error(`"${e.method}" not supported`);case"wallet_getCapabilities":return{[(0,us.numberToHex)(this.chainId)]:{atomicBatch:{supported:!0}}};default:throw Error(`"${e.method}" not implemented`)}}send(e,n){e||n("Undefined request"),this.request(e).then(r=>n(null,{jsonrpc:"2.0",id:e.id,result:r})).catch(r=>n(r,null))}}Z3.SafeAppProvider=Yye;(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.SafeAppProvider=void 0;var e=Z3;Object.defineProperty(t,"SafeAppProvider",{enumerable:!0,get:function(){return e.SafeAppProvider}})})(qB);class Jye extends qB.SafeAppProvider{request(e){return e.method==="eth_requestAccounts"?this.request({method:"eth_accounts",params:[]}):super.request(e)}}class Qye extends X6{async initialize(){const{default:e}=await Promise.resolve().then(()=>XB),n=new e,r=await n.safe.getInfo(),i=new Jye(r,n);await i.connect().catch(s=>{console.info("Failed to auto-connect to Safe:",s)}),this.provider=i,this.initialized=!0}async getProvider(){return Promise.resolve(this.provider)}}class Xye extends X6{async initialize(){if(!(typeof window>"u")&&window.ethereum)return this.provider=window.ethereum,this.initialized=!0,Promise.resolve()}}const af={signMessage:async(t,e,n)=>{if(!e)throw new Error("signMessage - provider is undefined");const r=Vt(t)?t:de(Sr(t));return await e.request({method:"personal_sign",params:[r,n]})},estimateGas:async(t,e,n,r)=>{if(!e)throw new Error("estimateGas - provider is undefined");if(!n)throw new Error("estimateGas - address is undefined");if(t.chainNamespace&&t.chainNamespace!=="eip155")throw new Error("estimateGas - chainNamespace is not eip155");const i={from:t.address,to:t.to,data:t.data,type:0},s=new qf(e,r);return await new Vf(s,n).estimateGas(i)},sendTransaction:async(t,e,n,r)=>{if(!e)throw new Error("sendTransaction - provider is undefined");if(!n)throw new Error("sendTransaction - address is undefined");if(t.chainNamespace&&t.chainNamespace!=="eip155")throw new Error("sendTransaction - chainNamespace is not eip155");const i={to:t.to,value:t.value,gasLimit:t.gas,gasPrice:t.gasPrice,data:t.data,type:0},s=new qf(e,r),c=await(await new Vf(s,n).sendTransaction(i)).wait();return(c==null?void 0:c.hash)||null},writeContract:async(t,e,n,r)=>{if(!e)throw new Error("writeContract - provider is undefined");if(!n)throw new Error("writeContract - address is undefined");const i=new qf(e,r),s=new Vf(i,n),o=new kd(t.tokenAddress,t.abi,s);if(!o||!t.method)throw new Error("Contract method is undefined");const a=o[t.method];if(a)return await a(...t.args);throw new Error("Contract method is undefined")},parseWalletCapabilities:t=>{try{return JSON.parse(t)}catch{throw new Error("Error parsing wallet capabilities")}},parseUnits:m0e,formatUnits:R$};class ebe extends dk{constructor(){super({adapterType:H.ADAPTER_TYPES.ETHERS,namespace:H.CHAIN.EVM}),this.balancePromises={},this.ethersProviders={}}async createEthersConfig(){const{metadata:e,enableCoinbase:n,enableInjected:r,enableEIP6963:i}=V.state;if(e){if(r!==!1){const s=new Xye;await s.initialize(),this.ethersProviders.injected=s}if(n!==!1&&(this.ethersProviders.baseAccount=new Aye),ee.isSafeApp()){const s=new Qye;await s.initialize(),this.ethersProviders.safe=s}return{...this.ethersProviders,EIP6963:i!==!1,metadata:e}}}async signMessage(e){const{message:n,address:r,provider:i}=e;if(!i)throw new Error("Provider is undefined");try{return{signature:await af.signMessage(n,i,r)}}catch{throw new Error("EthersAdapter:signMessage - Sign message failed")}}async sendTransaction(e){var i,s;if(!e.provider)throw new Error("Provider is undefined");const n=(i=v.getAccountData(H.CHAIN.EVM))==null?void 0:i.address;if(!n)throw new Error("Address is undefined");return{hash:await af.sendTransaction({value:Number.isNaN(Number(e.value))?BigInt(0):BigInt(e.value),to:e.to,data:e.data?e.data:"0x",gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,address:n},e.provider,n,Number((s=e.caipNetwork)==null?void 0:s.id))}}async writeContract(e){var i;if(!e.provider)throw new Error("Provider is undefined");const{address:n}=hn.parseCaipAddress(e.caipAddress);return{hash:await af.writeContract(e,e.provider,n,Number((i=e.caipNetwork)==null?void 0:i.id))}}async estimateGas(e){const{provider:n,caipNetwork:r,address:i}=e;if(!n)throw new Error("Provider is undefined");try{return{gas:await af.estimateGas({data:e.data,to:e.to,address:i},n,i,Number(r==null?void 0:r.id))}}catch{throw new Error("EthersAdapter:estimateGas - Estimate gas failed")}}parseUnits(e){return af.parseUnits(e.value,e.decimals)}formatUnits(e){return af.formatUnits(e.value,e.decimals)}async syncConnection(e){const{id:n,chainId:r}=e,i=this.connectors.find(c=>c.id===n),s=i==null?void 0:i.provider;if(!s)throw new Error("Provider not found");const o=await s.request({method:"eth_requestAccounts"}),a=await s.request({method:"eth_chainId"});if(this.listenProviderEvents(n,s),!o[0])throw new Error("No accounts found");if(!(i!=null&&i.type))throw new Error("Connector type not found");return{address:this.toChecksummedAddress(o[0]),chainId:Number(a)||Number(r),provider:s,type:i.type,id:n}}async syncConnectors(){var r;this.ethersConfig=await this.createEthersConfig(),(r=this.ethersConfig)!=null&&r.EIP6963&&this.listenInjectedConnector(!0);const n=Object.keys(this.ethersConfig||{}).filter(i=>i!=="metadata"&&i!=="EIP6963").map(async i=>{var o;const s=i===H.CONNECTOR_ID.INJECTED;if(this.namespace){const a=this.ethersProviders[i];this.addConnector({id:i,explorerId:Hi.ConnectorExplorerIds[i],imageUrl:(o=gn.state.connectorImages)==null?void 0:o[i],name:Hi.ConnectorNamesMap[i]||"Unknown",imageId:Hi.ConnectorImageIds[i],type:Hi.ConnectorTypesMap[i]??"EXTERNAL",info:s?void 0:{rdns:i},chain:this.namespace,chains:[],provider:await(a==null?void 0:a.getProvider())})}});await Promise.all(n)}async disconnectAll(){return{connections:await Promise.all(this.connections.map(async n=>{const r=this.connectors.find(i=>dn.isLowerCaseMatch(i.id,n.connectorId));if(!r)throw new Error("Connector not found");return await this.disconnect({id:r.id}),n}))}}async writeSolanaTransaction(){return Promise.resolve({hash:""})}async syncConnections({connectToFirstConnector:e}){const n=this.getCaipNetworks();await Promise.all(this.connectors.filter(r=>{const{hasDisconnected:i,hasConnected:s}=dn.getConnectorStorageInfo(r.id,this.namespace);return!i&&s}).map(async r=>{if(r.id===H.CONNECTOR_ID.WALLET_CONNECT){const i=sa.getWalletConnectAccounts(this.universalProvider,this.namespace),s=n.find(o=>{var a,c;return o.chainNamespace===this.namespace&&o.id.toString()===((c=(a=i[0])==null?void 0:a.chainId)==null?void 0:c.toString())});i.length>0&&this.addConnection({connectorId:r.id,accounts:i.map(o=>({address:o.address})),caipNetwork:s})}else{const{accounts:i,chainId:s}=await Pn.fetchProviderData(r);if(i.length>0&&s){const o=n.find(a=>a.chainNamespace===this.namespace&&a.id.toString()===s.toString());this.addConnection({connectorId:r.id,accounts:i.map(a=>({address:a})),caipNetwork:o}),r.provider&&r.id!==H.CONNECTOR_ID.AUTH&&r.id!==H.CONNECTOR_ID.WALLET_CONNECT&&this.listenProviderEvents(r.id,r.provider)}}})),e&&this.emitFirstAvailableConnection()}async setUniversalProvider(e){this.universalProvider=e;const n=H.CONNECTOR_ID.WALLET_CONNECT;return sa.listenWcProvider({universalProvider:e,namespace:H.CHAIN.EVM,onConnect:r=>this.onConnect(r,n),onDisconnect:()=>this.onDisconnect(n),onAccountsChanged:r=>this.onAccountsChanged(r,n,!1),onChainChanged:r=>this.onChainChanged(r,n)}),this.addConnector(new hk({provider:e,caipNetworks:this.getCaipNetworks(),namespace:H.CHAIN.EVM})),Promise.resolve()}eip6963EventHandler(e){var n;if(e.detail){const{info:r,provider:i}=e.detail;if(!((n=this.connectors)==null?void 0:n.find(o=>o.name===(r==null?void 0:r.name)))){const o=Hi.ConnectorTypesMap[H.CONNECTOR_ID.EIP6963],a=(r==null?void 0:r.rdns)||(r==null?void 0:r.name)||(r==null?void 0:r.uuid);this.namespace&&a&&this.addConnector({id:a,type:o,explorerId:Hi.ConnectorExplorerIds[r.rdns||""]??Hi.ConnectorExplorerIds[r.name||""],imageUrl:r==null?void 0:r.icon,name:(r==null?void 0:r.name)||"Unknown",provider:i,info:r,chain:this.namespace,chains:[]})}}}listenInjectedConnector(e){if(typeof window<"u"&&e){const n=this.eip6963EventHandler.bind(this);window.addEventListener(H.EIP6963_ANNOUNCE_EVENT,n),window.dispatchEvent(new Event(H.EIP6963_REQUEST_EVENT))}}async connect({id:e,address:n,type:r,chainId:i,socialUri:s}){try{const o=this.connectors.find(h=>dn.isLowerCaseMatch(h.id,e));if(!o)throw new Error("Connector not found");const a=this.getConnection({address:n,connectorId:e,connections:this.connections,connectors:this.connectors});if(a){const h=a.caipNetwork;if(!h)throw new Error("EthersAdapter:connect - could not find the caipNetwork to connect");if(a.account)return this.emit("accountChanged",{address:this.toChecksummedAddress(a.account.address),chainId:h.id,connector:o}),{address:this.toChecksummedAddress(a.account.address),chainId:h.id,provider:o.provider,type:o.type,id:e}}let c=o==null?void 0:o.provider;const l=this.ethersProviders[o.id];if(l&&(await l.initialize(),c=await l.getProvider()),!c)throw new Error("Provider not found");o.provider=c;let u=[],d;if(r===H.CONNECTOR_TYPE_AUTH){const{address:h,accounts:f}=await Hn.authConnectorAuthenticate({authConnector:c,chainNamespace:H.CHAIN.EVM,chainId:i,socialUri:s,preferredAccountType:rn("eip155")}),g=this.getCaipNetworks().find(p=>p.id.toString()===(i==null?void 0:i.toString()));u=[h],this.addConnection({connectorId:e,accounts:f?f.map(p=>({address:p.address})):u.map(p=>({address:p})),caipNetwork:g,auth:{name:re.getConnectedSocialProvider(),username:re.getConnectedSocialUsername()}}),this.emit("accountChanged",{address:this.toChecksummedAddress(u[0]),chainId:Number(i),connector:o})}else{u=await c.request({method:"eth_requestAccounts"}),d=await c.request({method:"eth_chainId"});const h=this.getCaipNetworks().find(f=>f.id.toString()===(i==null?void 0:i.toString()));if(d!==i){if(!h)throw new Error("EthersAdapter:connect - could not find the caipNetwork to switch");try{await(c==null?void 0:c.request({method:"wallet_switchEthereumChain",params:[{chainId:Gf.numberToHexString(h.id)}]}))}catch{throw new Error("EthersAdapter:connect - Switch network failed")}}this.emit("accountChanged",{address:this.toChecksummedAddress(u[0]),chainId:Number(i),connector:o}),this.addConnection({connectorId:e,accounts:u.map(f=>({address:f})),caipNetwork:h}),o.id!==H.CONNECTOR_ID.WALLET_CONNECT&&this.listenProviderEvents(e,c)}return{address:this.toChecksummedAddress(u[0]),chainId:Number(i),provider:c,type:r,id:e}}catch(o){throw fi.isUserRejectedRequestError(o)?new j4(o):o}}async reconnect(e){const{id:n,chainId:r}=e,i=this.connectors.find(s=>s.id===n);i&&i.type==="AUTH"&&r&&await Hn.authConnectorAuthenticate({authConnector:i.provider,chainNamespace:H.CHAIN.EVM,chainId:r,preferredAccountType:rn("eip155")})}async getAccounts(e){const n=this.connectors.find(o=>o.id===e.id),r=n==null?void 0:n.provider;if(!r||!n)throw new Error("Provider not found");const i=this.getConnection({connectorId:e.id,connections:this.connections,connectors:this.connectors});if(i)return{accounts:i.accounts.map(({address:o})=>ee.createAccount(H.CHAIN.EVM,o,"eoa"))};if(e.id===H.CONNECTOR_ID.AUTH){const o=n.provider;if(!o.user)return{accounts:[]};const{accounts:a,address:c}=o.user;return Promise.resolve({accounts:(a||[{address:c,type:"eoa"}]).map(l=>ee.createAccount(H.CHAIN.EVM,l.address,l.type))})}return{accounts:(await r.request({method:"eth_requestAccounts"})).map(o=>ee.createAccount(H.CHAIN.EVM,o,"eoa"))}}async disconnect(e){var n;if(e.id){const r=this.connectors.find(s=>dn.isLowerCaseMatch(s.id,e.id));if(!r)throw new Error("Connector not found");const i=this.getConnection({connectorId:e.id,connections:this.connections,connectors:this.connectors});switch(r.type){case H.CONNECTOR_TYPE_WALLET_CONNECT:r.provider.session&&r.provider.disconnect();break;case H.CONNECTOR_TYPE_AUTH:await((n=r.provider)==null?void 0:n.disconnect());break;case H.CONNECTOR_TYPE_ANNOUNCED:case H.CONNECTOR_TYPE_EXTERNAL:await this.revokeProviderPermissions(r.provider);break;default:throw new Error("Unsupported provider type")}return r.id&&(this.removeProviderListeners(r.id),this.deleteConnection(r.id)),this.connections.length===0?this.emit("disconnect"):this.emitFirstAvailableConnection(),{connections:i?[i]:[]}}return this.disconnectAll()}async getBalance(e){const n=e.address,r=this.getCaipNetworks().find(i=>{var s;return i.id.toString()===((s=e.chainId)==null?void 0:s.toString())});if(!n)return Promise.resolve({balance:"0.00",symbol:"ETH"});if(r&&r.chainNamespace===H.CHAIN.EVM){const i=`${r.caipNetworkId}:${n}`,s=this.balancePromises[i];if(s)return s;const o=re.getNativeBalanceCacheForCaipAddress(i);if(o)return{balance:o.balance,symbol:o.symbol};const a=new $B(r.rpcUrls.default.http[0],{chainId:r.id,name:r.name});if(a)try{return this.balancePromises[i]=new Promise(async c=>{try{const l=await a.getBalance(n),u=w0e(l);re.updateNativeBalanceCache({caipAddress:i,balance:u,symbol:r.nativeCurrency.symbol,timestamp:Date.now()}),c({balance:u,symbol:r.nativeCurrency.symbol})}catch{c({balance:"0.00",symbol:"ETH"})}}).finally(()=>{delete this.balancePromises[i]}),this.balancePromises[i]||{balance:"0.00",symbol:"ETH"}}catch{return{balance:"0.00",symbol:"ETH"}}}return{balance:"0.00",symbol:"ETH"}}async switchNetwork(e){var s,o;const{caipNetwork:n}=e,r=dt.getProviderId(n.chainNamespace),i=dt.getProvider(n.chainNamespace);if(r==="AUTH"||r==="WALLET_CONNECT"){await super.switchNetwork(e);return}if(!i)throw new Error("Provider not found");try{await(i==null?void 0:i.request({method:"wallet_switchEthereumChain",params:[{chainId:Gf.numberToHexString(n.id)}]}))}catch(a){if(a.code===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||a.code===Bl.ERROR_INVALID_CHAIN_ID||a.code===Bl.ERROR_CODE_DEFAULT||((o=(s=a==null?void 0:a.data)==null?void 0:s.originalError)==null?void 0:o.code)===Bl.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)await Gf.addEthereumChain(i,n);else if(r==="ANNOUNCED"||r==="EXTERNAL"||r==="INJECTED")throw new Error("Chain is not supported")}}getWalletConnectProvider(){var e;return(e=this.connectors.find(n=>n.type==="WALLET_CONNECT"))==null?void 0:e.provider}async revokeProviderPermissions(e){try{(await e.request({method:"wallet_getPermissions"})).find(i=>i.parentCapability==="eth_accounts")&&await e.request({method:"wallet_revokePermissions",params:[{eth_accounts:{}}]})}catch(n){console.info("Could not revoke permissions from wallet. Disconnecting...",n)}}async getCapabilities(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_getCapabilities",params:[e]})}async grantPermissions(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_grantPermissions",params:e})}async revokePermissions(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_revokePermissions",params:[e]})}async walletGetAssets(e){const n=dt.getProvider(H.CHAIN.EVM);if(!n)throw new Error("Provider is undefined");return await n.request({method:"wallet_getAssets",params:[e]})}toChecksummedAddress(e){try{return ft(e.toLowerCase())}catch{return e}}}var eU={exports:{}},tU={exports:{}};(function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e={rotl:function(n,r){return n<<r|n>>>32-r},rotr:function(n,r){return n<<32-r|n>>>r},endian:function(n){if(n.constructor==Number)return e.rotl(n,8)&16711935|e.rotl(n,24)&4278255360;for(var r=0;r<n.length;r++)n[r]=e.endian(n[r]);return n},randomBytes:function(n){for(var r=[];n>0;n--)r.push(Math.floor(Math.random()*256));return r},bytesToWords:function(n){for(var r=[],i=0,s=0;i<n.length;i++,s+=8)r[s>>>5]|=n[i]<<24-s%32;return r},wordsToBytes:function(n){for(var r=[],i=0;i<n.length*32;i+=8)r.push(n[i>>>5]>>>24-i%32&255);return r},bytesToHex:function(n){for(var r=[],i=0;i<n.length;i++)r.push((n[i]>>>4).toString(16)),r.push((n[i]&15).toString(16));return r.join("")},hexToBytes:function(n){for(var r=[],i=0;i<n.length;i+=2)r.push(parseInt(n.substr(i,2),16));return r},bytesToBase64:function(n){for(var r=[],i=0;i<n.length;i+=3)for(var s=n[i]<<16|n[i+1]<<8|n[i+2],o=0;o<4;o++)i*8+o*6<=n.length*8?r.push(t.charAt(s>>>6*(3-o)&63)):r.push("=");return r.join("")},base64ToBytes:function(n){n=n.replace(/[^A-Z0-9+\/]/ig,"");for(var r=[],i=0,s=0;i<n.length;s=++i%4)s!=0&&r.push((t.indexOf(n.charAt(i-1))&Math.pow(2,-2*s+8)-1)<<s*2|t.indexOf(n.charAt(i))>>>6-s*2);return r}};tU.exports=e})();var tbe=tU.exports,R4={utf8:{stringToBytes:function(t){return R4.bin.stringToBytes(unescape(encodeURIComponent(t)))},bytesToString:function(t){return decodeURIComponent(escape(R4.bin.bytesToString(t)))}},bin:{stringToBytes:function(t){for(var e=[],n=0;n<t.length;n++)e.push(t.charCodeAt(n)&255);return e},bytesToString:function(t){for(var e=[],n=0;n<t.length;n++)e.push(String.fromCharCode(t[n]));return e.join("")}}},yI=R4;/*!
|
|
7199
7199
|
* Determine if an object is a Buffer
|
|
7200
7200
|
*
|
|
7201
7201
|
* @author Feross Aboukhadijeh <https://feross.org>
|
|
7202
7202
|
* @license MIT
|
|
7203
|
-
*/var nbe=function(t){return t!=null&&(nU(t)||rbe(t)||!!t._isBuffer)};function nU(t){return!!t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}function rbe(t){return typeof t.readFloatLE=="function"&&typeof t.slice=="function"&&nU(t.slice(0,0))}(function(){var t=tbe,e=yI.utf8,n=nbe,r=yI.bin,i=function(s,o){s.constructor==String?o&&o.encoding==="binary"?s=r.stringToBytes(s):s=e.stringToBytes(s):n(s)?s=Array.prototype.slice.call(s,0):!Array.isArray(s)&&s.constructor!==Uint8Array&&(s=s.toString());for(var a=t.bytesToWords(s),c=s.length*8,l=1732584193,u=-271733879,d=-1732584194,h=271733878,f=0;f<a.length;f++)a[f]=(a[f]<<8|a[f]>>>24)&16711935|(a[f]<<24|a[f]>>>8)&4278255360;a[c>>>5]|=128<<c%32,a[(c+64>>>9<<4)+14]=c;for(var g=i._ff,p=i._gg,m=i._hh,b=i._ii,f=0;f<a.length;f+=16){var C=l,x=u,A=d,I=h;l=g(l,u,d,h,a[f+0],7,-680876936),h=g(h,l,u,d,a[f+1],12,-389564586),d=g(d,h,l,u,a[f+2],17,606105819),u=g(u,d,h,l,a[f+3],22,-1044525330),l=g(l,u,d,h,a[f+4],7,-176418897),h=g(h,l,u,d,a[f+5],12,1200080426),d=g(d,h,l,u,a[f+6],17,-1473231341),u=g(u,d,h,l,a[f+7],22,-45705983),l=g(l,u,d,h,a[f+8],7,1770035416),h=g(h,l,u,d,a[f+9],12,-1958414417),d=g(d,h,l,u,a[f+10],17,-42063),u=g(u,d,h,l,a[f+11],22,-1990404162),l=g(l,u,d,h,a[f+12],7,1804603682),h=g(h,l,u,d,a[f+13],12,-40341101),d=g(d,h,l,u,a[f+14],17,-1502002290),u=g(u,d,h,l,a[f+15],22,1236535329),l=p(l,u,d,h,a[f+1],5,-165796510),h=p(h,l,u,d,a[f+6],9,-1069501632),d=p(d,h,l,u,a[f+11],14,643717713),u=p(u,d,h,l,a[f+0],20,-373897302),l=p(l,u,d,h,a[f+5],5,-701558691),h=p(h,l,u,d,a[f+10],9,38016083),d=p(d,h,l,u,a[f+15],14,-660478335),u=p(u,d,h,l,a[f+4],20,-405537848),l=p(l,u,d,h,a[f+9],5,568446438),h=p(h,l,u,d,a[f+14],9,-1019803690),d=p(d,h,l,u,a[f+3],14,-187363961),u=p(u,d,h,l,a[f+8],20,1163531501),l=p(l,u,d,h,a[f+13],5,-1444681467),h=p(h,l,u,d,a[f+2],9,-51403784),d=p(d,h,l,u,a[f+7],14,1735328473),u=p(u,d,h,l,a[f+12],20,-1926607734),l=m(l,u,d,h,a[f+5],4,-378558),h=m(h,l,u,d,a[f+8],11,-2022574463),d=m(d,h,l,u,a[f+11],16,1839030562),u=m(u,d,h,l,a[f+14],23,-35309556),l=m(l,u,d,h,a[f+1],4,-1530992060),h=m(h,l,u,d,a[f+4],11,1272893353),d=m(d,h,l,u,a[f+7],16,-155497632),u=m(u,d,h,l,a[f+10],23,-1094730640),l=m(l,u,d,h,a[f+13],4,681279174),h=m(h,l,u,d,a[f+0],11,-358537222),d=m(d,h,l,u,a[f+3],16,-722521979),u=m(u,d,h,l,a[f+6],23,76029189),l=m(l,u,d,h,a[f+9],4,-640364487),h=m(h,l,u,d,a[f+12],11,-421815835),d=m(d,h,l,u,a[f+15],16,530742520),u=m(u,d,h,l,a[f+2],23,-995338651),l=b(l,u,d,h,a[f+0],6,-198630844),h=b(h,l,u,d,a[f+7],10,1126891415),d=b(d,h,l,u,a[f+14],15,-1416354905),u=b(u,d,h,l,a[f+5],21,-57434055),l=b(l,u,d,h,a[f+12],6,1700485571),h=b(h,l,u,d,a[f+3],10,-1894986606),d=b(d,h,l,u,a[f+10],15,-1051523),u=b(u,d,h,l,a[f+1],21,-2054922799),l=b(l,u,d,h,a[f+8],6,1873313359),h=b(h,l,u,d,a[f+15],10,-30611744),d=b(d,h,l,u,a[f+6],15,-1560198380),u=b(u,d,h,l,a[f+13],21,1309151649),l=b(l,u,d,h,a[f+4],6,-145523070),h=b(h,l,u,d,a[f+11],10,-1120210379),d=b(d,h,l,u,a[f+2],15,718787259),u=b(u,d,h,l,a[f+9],21,-343485551),l=l+C>>>0,u=u+x>>>0,d=d+A>>>0,h=h+I>>>0}return t.endian([l,u,d,h])};i._ff=function(s,o,a,c,l,u,d){var h=s+(o&a|~o&c)+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._gg=function(s,o,a,c,l,u,d){var h=s+(o&c|a&~c)+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._hh=function(s,o,a,c,l,u,d){var h=s+(o^a^c)+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._ii=function(s,o,a,c,l,u,d){var h=s+(a^(o|~c))+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._blocksize=16,i._digestsize=16,eU.exports=function(s,o){if(s==null)throw new Error("Illegal argument "+s);var a=t.wordsToBytes(i(s,o));return o&&o.asBytes?a:o&&o.asString?r.bytesToString(a):t.bytesToHex(a)}})();var ibe=eU.exports;const bI=su(ibe);function ma(t){return{formatters:void 0,fees:void 0,serializers:void 0,...t}}ma({id:"5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",name:"Solana",network:"solana-mainnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!1,chainNamespace:"solana",caipNetworkId:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",deprecatedCaipNetworkId:"solana:4sGjMW1sUnHzSxGspuhpqLDx6wiyjNtZ"});ma({id:"EtWTRABZaYq6iMfeYKouRu166VU2xqa1",name:"Solana Devnet",network:"solana-devnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!0,chainNamespace:"solana",caipNetworkId:"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1",deprecatedCaipNetworkId:"solana:8E9rvCKLFQia2Y35HXjjpWzj8weVo44K"});ma({id:"4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z",name:"Solana Testnet",network:"solana-testnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!0,chainNamespace:"solana",caipNetworkId:"solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z"});ma({id:"000000000019d6689c085ae165831e93",caipNetworkId:"bip122:000000000019d6689c085ae165831e93",chainNamespace:"bip122",name:"Bitcoin",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}}});ma({id:"000000000933ea01ad0ee984209779ba",caipNetworkId:"bip122:000000000933ea01ad0ee984209779ba",chainNamespace:"bip122",name:"Bitcoin Testnet",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},testnet:!0});ma({id:"00000008819873e925422c1ff0f99f7c",caipNetworkId:"bip122:00000008819873e925422c1ff0f99f7c",chainNamespace:"bip122",name:"Bitcoin Signet",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},testnet:!0});ma({id:"-239",name:"TON",network:"ton-mainnet",nativeCurrency:{name:"TON",symbol:"TON",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Tonscan",url:"https://tonscan.org"}},testnet:!1,chainNamespace:"ton",caipNetworkId:"ton:-239"});ma({id:"-3",name:"TON Testnet",network:"ton-testnet",nativeCurrency:{name:"TON",symbol:"TON",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Tonscan",url:"https://testnet.tonscan.org"}},testnet:!0,chainNamespace:"ton",caipNetworkId:"ton:-3"});const sbe=[{network:ma({id:31337,chainNamespace:"eip155",name:"networkTest",rpcUrls:{default:{http:["http://127.0.0.1:8545"]}}}),token:"0x512F7469BcC83089497506b5df64c6E246B39925",receiver:"0xA3f7BF5b0fa93176c260BBa57ceE85525De2BaF4",publicRpc:"http://127.0.0.1:8545"},{network:ma({id:14188,chainNamespace:"eip155",name:"networkTest2",rpcUrls:{default:{http:["http://127.0.0.1:8546"]}}}),token:"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0",receiver:"0x5eb3Bc0a489C5A8288765d2336659EbCA68FCd00",publicRpc:"http://127.0.0.1:8546"}],nv=[...sbe].filter(({network:t})=>(t.chainId===14188||t.chainId===31337,!0)).filter(({token:t,receiver:e})=>t&&e),ht={networks:nv.map(({network:t})=>t),blockChainsData:nv,address:nv.reduce((t,{network:e,token:n,receiver:r})=>(t[e.id]={token:n,receiver:r},t),{}),ABI:{token:[{inputs:[{internalType:"string",name:"_name",type:"string"},{internalType:"string",name:"_symbol",type:"string"},{internalType:"uint256",name:"_initialSupply",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"OwnableInvalidOwner",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[],name:"_owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"pure",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}],receiver:[{inputs:[{internalType:"address",name:"_ownerToken",type:"address"},{internalType:"uint256",name:"_ownerCommission",type:"uint256"},{internalType:"uint256",name:"_ownerCertificateCommission",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"certificateCommissionID",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getCertificateCommission",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"string",name:"id",type:"string"}],name:"getCommissionID",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"}],name:"privateRead",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"privateWrite",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"},{internalType:"address",name:"_address",type:"address"}],name:"publicRead",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"publicWrite",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"index",type:"string"}],name:"tableRowRead",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"index",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"tableRowUpdate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"tableRowWrite",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"}],name:"tableRowsCount",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"}]}},rU=({children:t,config:e})=>(window.GOBAL_REACT_WEB3_useAppKit=vue,window.GOBAL_REACT_WEB3_useAppKitAccount=Rle,window.GOBAL_REACT_WEB3_useAppKitProvider=Nle,window.GOBAL_REACT_WEB3_BrowserProvider=qf,window.GOBAL_REACT_WEB3_Contract=kd,window.GOBAL_REACT_WEB3_JsonRpcProvider=$B,window.GOBAL_REACT_WEB3_Wallet=Cye,window.GOBAL_REACT_WEB3_STORAGE_createdAppKit||(window.GOBAL_REACT_WEB3_STORAGE_createdAppKit=!0,f$({projectId:e.projectId,adapters:[new ebe],networks:ht.networks,metadata:e.metadata})),e.host&&(window.GOBAL_REACT_WEB3_hostHash=bI(e.host)||bI(window.location.host)),zpe({children:t,...e}));class nA extends Error{constructor(n,r){var i;super(n,r);G(this,"name","TimeoutError");(i=Error.captureStackTrace)==null||i.call(Error,this,nA)}}const xI=t=>t.reason??new DOMException("This operation was aborted.","AbortError");function obe(t,e){const{milliseconds:n,fallback:r,message:i,customTimers:s={setTimeout,clearTimeout},signal:o}=e;let a,c;const u=new Promise((d,h)=>{if(typeof n!="number"||Math.sign(n)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${n}\``);if(o!=null&&o.aborted){h(xI(o));return}if(o&&(c=()=>{h(xI(o))},o.addEventListener("abort",c,{once:!0})),t.then(d,h),n===Number.POSITIVE_INFINITY)return;const f=new nA;a=s.setTimeout.call(void 0,()=>{if(r){try{d(r())}catch(g){h(g)}return}typeof t.cancel=="function"&&t.cancel(),i===!1?d():i instanceof Error?h(i):(f.message=i??`Promise timed out after ${n} milliseconds`,h(f))},n)}).finally(()=>{u.clear(),c&&o&&o.removeEventListener("abort",c)});return u.clear=()=>{s.clearTimeout.call(void 0,a),a=void 0},u}function abe(t,e,n){let r=0,i=t.length;for(;i>0;){const s=Math.trunc(i/2);let o=r+s;n(t[o],e)<=0?(r=++o,i-=s+1):i=s}return r}var Cs;class cbe{constructor(){K(this,Cs,[])}enqueue(e,n){const{priority:r=0,id:i}=n??{},s={priority:r,id:i,run:e};if(this.size===0||y(this,Cs)[this.size-1].priority>=r){y(this,Cs).push(s);return}const o=abe(y(this,Cs),s,(a,c)=>c.priority-a.priority);y(this,Cs).splice(o,0,s)}setPriority(e,n){const r=y(this,Cs).findIndex(s=>s.id===e);if(r===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);const[i]=y(this,Cs).splice(r,1);this.enqueue(i.run,{priority:n,id:e})}dequeue(){const e=y(this,Cs).shift();return e==null?void 0:e.run}filter(e){return y(this,Cs).filter(n=>n.priority===e.priority).map(n=>n.run)}get size(){return y(this,Cs).length}}Cs=new WeakMap;var Mp,ro,io,Pl,Ad,Fp,qo,$1,Wp,Go,rc,As,oi,Mr,vn,D1,rr,_d,ic,k2,Sd,Ie,ab,iU,sU,cb,oU,aU,cU,lU,uU,lb,ub,O4,db,P4,k4,hb,Du,dU,pf,hU,$4;class Nw extends KR{constructor(n){var r,i;super();K(this,Ie);K(this,Mp);K(this,ro);K(this,io,0);K(this,Pl);K(this,Ad,!1);K(this,Fp,!1);K(this,qo);K(this,$1,0);K(this,Wp,0);K(this,Go);K(this,rc);K(this,As);K(this,oi,[]);K(this,Mr,0);K(this,vn);K(this,D1);K(this,rr,0);K(this,_d);K(this,ic);K(this,k2,1n);K(this,Sd,new Map);G(this,"timeout");if(n={carryoverIntervalCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:cbe,strict:!1,...n},!(typeof n.intervalCap=="number"&&n.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${((r=n.intervalCap)==null?void 0:r.toString())??""}\` (${typeof n.intervalCap})`);if(n.interval===void 0||!(Number.isFinite(n.interval)&&n.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${((i=n.interval)==null?void 0:i.toString())??""}\` (${typeof n.interval})`);if(n.strict&&n.interval===0)throw new TypeError("The `strict` option requires a non-zero `interval`");if(n.strict&&n.intervalCap===Number.POSITIVE_INFINITY)throw new TypeError("The `strict` option requires a finite `intervalCap`");if(k(this,Mp,n.carryoverIntervalCount??n.carryoverConcurrencyCount??!1),k(this,ro,n.intervalCap===Number.POSITIVE_INFINITY||n.interval===0),k(this,Pl,n.intervalCap),k(this,qo,n.interval),k(this,As,n.strict),k(this,vn,new n.queueClass),k(this,D1,n.queueClass),this.concurrency=n.concurrency,n.timeout!==void 0&&!(Number.isFinite(n.timeout)&&n.timeout>0))throw new TypeError(`Expected \`timeout\` to be a positive finite number, got \`${n.timeout}\` (${typeof n.timeout})`);this.timeout=n.timeout,k(this,ic,n.autoStart===!1),X(this,Ie,dU).call(this)}get concurrency(){return y(this,_d)}set concurrency(n){if(!(typeof n=="number"&&n>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${n}\` (${typeof n})`);k(this,_d,n),X(this,Ie,hb).call(this)}setPriority(n,r){if(typeof r!="number"||!Number.isFinite(r))throw new TypeError(`Expected \`priority\` to be a finite number, got \`${r}\` (${typeof r})`);y(this,vn).setPriority(n,r)}async add(n,r={}){return r={timeout:this.timeout,...r,id:r.id??(Ms(this,k2)._++).toString()},new Promise((i,s)=>{const o=Symbol(`task-${r.id}`);y(this,vn).enqueue(async()=>{var c,l;Ms(this,rr)._++,y(this,Sd).set(o,{id:r.id,priority:r.priority??0,startTime:Date.now(),timeout:r.timeout});let a;try{try{(c=r.signal)==null||c.throwIfAborted()}catch(h){throw X(this,Ie,hU).call(this),y(this,Sd).delete(o),h}k(this,Wp,Date.now());let u=n({signal:r.signal});if(r.timeout&&(u=obe(Promise.resolve(u),{milliseconds:r.timeout,message:`Task timed out after ${r.timeout}ms (queue has ${y(this,rr)} running, ${y(this,vn).size} waiting)`})),r.signal){const{signal:h}=r;u=Promise.race([u,new Promise((f,g)=>{a=()=>{g(h.reason)},h.addEventListener("abort",a,{once:!0})})])}const d=await u;i(d),this.emit("completed",d)}catch(u){s(u),this.emit("error",u)}finally{a&&((l=r.signal)==null||l.removeEventListener("abort",a)),y(this,Sd).delete(o),queueMicrotask(()=>{X(this,Ie,cU).call(this)})}},r),this.emit("add"),X(this,Ie,db).call(this)})}async addAll(n,r){return Promise.all(n.map(async i=>this.add(i,r)))}start(){return y(this,ic)?(k(this,ic,!1),X(this,Ie,hb).call(this),this):this}pause(){k(this,ic,!0)}clear(){k(this,vn,new(y(this,D1))),X(this,Ie,ub).call(this),X(this,Ie,$4).call(this),this.emit("empty"),y(this,rr)===0&&(X(this,Ie,O4).call(this),this.emit("idle")),this.emit("next")}async onEmpty(){y(this,vn).size!==0&&await X(this,Ie,Du).call(this,"empty")}async onSizeLessThan(n){y(this,vn).size<n||await X(this,Ie,Du).call(this,"next",()=>y(this,vn).size<n)}async onIdle(){y(this,rr)===0&&y(this,vn).size===0||await X(this,Ie,Du).call(this,"idle")}async onPendingZero(){y(this,rr)!==0&&await X(this,Ie,Du).call(this,"pendingZero")}async onRateLimit(){this.isRateLimited||await X(this,Ie,Du).call(this,"rateLimit")}async onRateLimitCleared(){this.isRateLimited&&await X(this,Ie,Du).call(this,"rateLimitCleared")}onError(){return new Promise((n,r)=>{const i=s=>{this.off("error",i),r(s)};this.on("error",i)})}get size(){return y(this,vn).size}sizeBy(n){return y(this,vn).filter(n).length}get pending(){return y(this,rr)}get isPaused(){return y(this,ic)}get isRateLimited(){return y(this,Ad)}get isSaturated(){return y(this,rr)===y(this,_d)&&y(this,vn).size>0||this.isRateLimited&&y(this,vn).size>0}get runningTasks(){return[...y(this,Sd).values()].map(n=>({...n}))}}Mp=new WeakMap,ro=new WeakMap,io=new WeakMap,Pl=new WeakMap,Ad=new WeakMap,Fp=new WeakMap,qo=new WeakMap,$1=new WeakMap,Wp=new WeakMap,Go=new WeakMap,rc=new WeakMap,As=new WeakMap,oi=new WeakMap,Mr=new WeakMap,vn=new WeakMap,D1=new WeakMap,rr=new WeakMap,_d=new WeakMap,ic=new WeakMap,k2=new WeakMap,Sd=new WeakMap,Ie=new WeakSet,ab=function(n){for(;y(this,Mr)<y(this,oi).length;){const i=y(this,oi)[y(this,Mr)];if(i!==void 0&&n-i>=y(this,qo))Ms(this,Mr)._++;else break}(y(this,Mr)>100&&y(this,Mr)>y(this,oi).length/2||y(this,Mr)===y(this,oi).length)&&(k(this,oi,y(this,oi).slice(y(this,Mr))),k(this,Mr,0))},iU=function(n){y(this,As)?y(this,oi).push(n):Ms(this,io)._++},sU=function(){y(this,As)?y(this,oi).length>y(this,Mr)&&y(this,oi).pop():y(this,io)>0&&Ms(this,io)._--},cb=function(){return y(this,oi).length-y(this,Mr)},oU=function(){return y(this,ro)?!0:y(this,As)?X(this,Ie,cb).call(this)<y(this,Pl):y(this,io)<y(this,Pl)},aU=function(){return y(this,rr)<y(this,_d)},cU=function(){Ms(this,rr)._--,y(this,rr)===0&&this.emit("pendingZero"),X(this,Ie,db).call(this),this.emit("next")},lU=function(){k(this,rc,void 0),X(this,Ie,k4).call(this),X(this,Ie,P4).call(this)},uU=function(n){if(y(this,As)){if(X(this,Ie,ab).call(this,n),X(this,Ie,cb).call(this)>=y(this,Pl)){const i=y(this,oi)[y(this,Mr)],s=y(this,qo)-(n-i);return X(this,Ie,lb).call(this,s),!0}return!1}if(y(this,Go)===void 0){const r=y(this,$1)-n;if(r<0){if(y(this,Wp)>0){const i=n-y(this,Wp);if(i<y(this,qo))return X(this,Ie,lb).call(this,y(this,qo)-i),!0}k(this,io,y(this,Mp)?y(this,rr):0)}else return X(this,Ie,lb).call(this,r),!0}return!1},lb=function(n){y(this,rc)===void 0&&k(this,rc,setTimeout(()=>{X(this,Ie,lU).call(this)},n))},ub=function(){y(this,Go)&&(clearInterval(y(this,Go)),k(this,Go,void 0))},O4=function(){y(this,rc)&&(clearTimeout(y(this,rc)),k(this,rc,void 0))},db=function(){if(y(this,vn).size===0){if(X(this,Ie,ub).call(this),this.emit("empty"),y(this,rr)===0){if(X(this,Ie,O4).call(this),y(this,As)&&y(this,Mr)>0){const r=Date.now();X(this,Ie,ab).call(this,r)}this.emit("idle")}return!1}let n=!1;if(!y(this,ic)){const r=Date.now(),i=!X(this,Ie,uU).call(this,r);if(y(this,Ie,oU)&&y(this,Ie,aU)){const s=y(this,vn).dequeue();y(this,ro)||(X(this,Ie,iU).call(this,r),X(this,Ie,pf).call(this)),this.emit("active"),s(),i&&X(this,Ie,P4).call(this),n=!0}}return n},P4=function(){y(this,ro)||y(this,Go)!==void 0||y(this,As)||(k(this,Go,setInterval(()=>{X(this,Ie,k4).call(this)},y(this,qo))),k(this,$1,Date.now()+y(this,qo)))},k4=function(){y(this,As)||(y(this,io)===0&&y(this,rr)===0&&y(this,Go)&&X(this,Ie,ub).call(this),k(this,io,y(this,Mp)?y(this,rr):0)),X(this,Ie,hb).call(this),X(this,Ie,pf).call(this)},hb=function(){for(;X(this,Ie,db).call(this););},Du=async function(n,r){return new Promise(i=>{const s=()=>{r&&!r()||(this.off(n,s),i())};this.on(n,s)})},dU=function(){y(this,ro)||(this.on("add",()=>{y(this,vn).size>0&&X(this,Ie,pf).call(this)}),this.on("next",()=>{X(this,Ie,pf).call(this)}))},pf=function(){y(this,ro)||y(this,Fp)||(k(this,Fp,!0),queueMicrotask(()=>{k(this,Fp,!1),X(this,Ie,$4).call(this)}))},hU=function(){y(this,ro)||(X(this,Ie,sU).call(this),X(this,Ie,pf).call(this))},$4=function(){const n=y(this,Ad);if(y(this,ro)||y(this,vn).size===0){n&&(k(this,Ad,!1),this.emit("rateLimitCleared"));return}let r;if(y(this,As)){const s=Date.now();X(this,Ie,ab).call(this,s),r=X(this,Ie,cb).call(this)}else r=y(this,io);const i=r>=y(this,Pl);i!==n&&(k(this,Ad,i),this.emit(i?"rateLimit":"rateLimitCleared"))};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const lbe=t=>{const{open:e}=window.GOBAL_REACT_WEB3_useAppKit(),{address:n,isConnected:r}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:i}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[s,o]=Et.useState(0),[a,c]=Et.useState({type:"load",msg:null});let l=`${window.GOBAL_REACT_WEB3_hostHash}-${t}`;const u=async()=>{try{if(!i||!n){e();return}const g=new window.GOBAL_REACT_WEB3_BrowserProvider(i),p=await g.getNetwork();return[await g.getSigner(),parseInt(p.chainId)]}catch(g){c({type:"error",msg:g})}},d=async g=>{try{c({type:"upload",msg:null});const[p,m]=await u(),b=ht.address[m],C=new window.GOBAL_REACT_WEB3_Contract(b.token,ht.ABI.token,p),x=new window.GOBAL_REACT_WEB3_Contract(b.receiver,ht.ABI.receiver,p),A=await C.allowance(n,b.receiver),I=await x.getCertificateCommission();A<I&&await(await C.approve(b.receiver,I)).wait();const P=await x.certificateCommissionID(b.token,I,l,g),{status:B}=await P.wait();B===1?(c({type:"uploaded",msg:null}),await f()):c({type:"error",msg:null})}catch(p){c({type:"error",msg:p})}},h=async()=>{try{const[g,p]=await u(),m=ht.address[p],C=await new window.GOBAL_REACT_WEB3_Contract(m.receiver,ht.ABI.receiver,g).getCommissionID(l);return o(parseInt(C)),!0}catch(g){c({type:"error",msg:g})}},f=async()=>{c({type:"load",msg:null}),await h()&&c({type:"loaded",msg:null})};return Et.useEffect(()=>{if(r){c({type:"connected",msg:null});const g=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(f),1e3),p=setInterval(()=>{window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.size===0&&window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(f)},15e3);return()=>{clearTimeout(g),clearInterval(p)}}},[r,l]),[s,d,a]};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const fU=(t=!1)=>(e,n="")=>{const{open:r}=window.GOBAL_REACT_WEB3_useAppKit(),{address:i,isConnected:s}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:o}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[a,c]=Et.useState(n),[l,u]=Et.useState({type:"connect",msg:null});let d=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const h=async()=>{try{if(!o||!i){r();return}const m=new window.GOBAL_REACT_WEB3_BrowserProvider(o),b=await m.getNetwork();return[await m.getSigner(),parseInt(b.chainId)]}catch(m){u({type:"error",msg:m})}},f=async(m=!1)=>{try{u({type:"upload",msg:null});const[b,C]=await h(),x=ht.address[C],A=new window.GOBAL_REACT_WEB3_Contract(x.token,ht.ABI.token,b),I=new window.GOBAL_REACT_WEB3_Contract(x.receiver,ht.ABI.receiver,b),P=await A.allowance(i,x.receiver),B=t?await I.getCommissionID(d):0;P<B&&await(await A.approve(x.receiver,B)).wait();const F=await I.privateWrite(t,x.token,B,d,m||a),{status:L}=await F.wait();L===1?(u({type:"uploaded",msg:null}),await p()):u({type:"error",msg:null})}catch(b){u({type:"error",msg:b})}},g=async()=>{try{const[m,b]=await h(),C=ht.address[b],x=new window.GOBAL_REACT_WEB3_Contract(C.receiver,ht.ABI.receiver,m),A=await x.privateRead(t,d);return c(JSON.parse(A.toString()).text),!0}catch(m){u({type:"error",msg:m})}},p=async()=>{u({type:"load",msg:null}),await g()&&u({type:"loaded",msg:null})};return Et.useEffect(()=>{if(s){u({type:"connected",msg:null});const m=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(p),1e3);return()=>clearTimeout(m)}},[s]),[a,c,f,l]};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const pU=(t=!1)=>(e,n="")=>{const{open:r}=window.GOBAL_REACT_WEB3_useAppKit(),{address:i,isConnected:s}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:o}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[a,c]=Et.useState(n),[l,u]=Et.useState({type:"connect",msg:null});let d=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const h=async()=>{try{if(!o||!i){r();return}const m=new window.GOBAL_REACT_WEB3_BrowserProvider(o),b=await m.getNetwork();return[await m.getSigner(),parseInt(b.chainId)]}catch(m){u({type:"error",msg:m})}},f=async(m=!1)=>{try{u({type:"upload",msg:null});const[b,C]=await h(),x=ht.address[C],A=new window.GOBAL_REACT_WEB3_Contract(x.token,ht.ABI.token,b),I=new window.GOBAL_REACT_WEB3_Contract(x.receiver,ht.ABI.receiver,b),P=await A.allowance(i,x.receiver),B=t?await I.getCommissionID(d):0;P<B&&await(await A.approve(x.receiver,B)).wait();const F=await I.publicWrite(t,x.token,B,d,m||a),{status:L}=await F.wait();L===1?(u({type:"uploaded",msg:null}),window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(p)):u({type:"error",msg:null})}catch(b){u({type:"error",msg:b})}},g=async()=>{try{if(i){const m=[];for(let C=0;C<ht.blockChainsData.length;C++){const x=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:A,publicRpc:I}=ht.blockChainsData[C],P=new window.GOBAL_REACT_WEB3_JsonRpcProvider(I),B=new window.GOBAL_REACT_WEB3_Wallet(x.privateKey,P),F=new window.GOBAL_REACT_WEB3_Contract(A,ht.ABI.receiver,B),L=await F.publicRead(t,d,i);m.push(JSON.parse(L))}const b=m.sort((C,x)=>x.timestamp-C.timestamp);return b[0]&&c(b[0].text),!0}u({type:"error",msg:null})}catch(m){console.log(m),u({type:"error",msg:m})}},p=async()=>{u({type:"load",msg:null}),await g()&&u({type:"loaded",msg:null})};return Et.useEffect(()=>{if(s){u({type:"connected",msg:null});const m=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(p),1e3);return()=>clearTimeout(m)}},[s]),[a,c,f,l]};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const gU=(t=!1)=>(e,n,r="")=>{const{open:i}=window.GOBAL_REACT_WEB3_useAppKit(),{address:s,isConnected:o}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:a}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[c,l]=Et.useState(r),[u,d]=Et.useState({type:"load",msg:null});let h=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const f=async p=>{try{if(p||s){const m=[];for(let C=0;C<ht.blockChainsData.length;C++){const x=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:A,publicRpc:I}=ht.blockChainsData[C],P=new window.GOBAL_REACT_WEB3_JsonRpcProvider(I),B=new window.GOBAL_REACT_WEB3_Wallet(x.privateKey,P),F=new window.GOBAL_REACT_WEB3_Contract(A,ht.ABI.receiver,B),L=await F.publicRead(t,h,p||s);m.push(JSON.parse(L))}const b=m.sort((C,x)=>x.timestamp-C.timestamp);return b[0]&&l(b[0].text),!0}d({type:"error",msg:null})}catch(m){console.log(m),d({type:"error",msg:m})}},g=async()=>{d({type:"load",msg:null}),await f(n)&&d({type:"loaded",msg:null})};return Et.useEffect(()=>{const p=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(g),1e3),m=setInterval(()=>{window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.size===0&&window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(g)},15e3);return()=>{clearTimeout(p),clearInterval(m)}},[o,n]),[c,u]};var ube=setTimeout;function dbe(t,e){var n=e.useCachedSetTimeout?ube:setTimeout;return new Promise(function(r){n(r,t)})}function EI(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=e.useCachedSetTimeout,r=dbe(t,{useCachedSetTimeout:n});function i(s){return r.then(function(){return s})}return i.then=function(){return r.then.apply(r,arguments)},i.catch=Promise.resolve().catch,i}window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const mU=(t=!1)=>(e,n)=>{const{open:r}=window.GOBAL_REACT_WEB3_useAppKit(),{address:i,isConnected:s}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:o}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[a,c]=Et.useState(!1),[l,u]=Et.useState([0,0]),[d,h]=Et.useState(Array(ht.blockChainsData.length).fill(0)),[f,g]=Et.useState(Array(ht.blockChainsData.length).fill([])),[p,m]=Et.useState({type:"load",msg:null});let b=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const C=async()=>{if(!o||!i){r();return}const j=new window.GOBAL_REACT_WEB3_BrowserProvider(o),z=await j.getNetwork();return[await j.getSigner(),parseInt(z.chainId)]},x=async j=>{try{m({type:"upload",msg:null});const[z,W]=await C(),D=ht.address[W],U=new window.GOBAL_REACT_WEB3_Contract(D.token,ht.ABI.token,z),w=new window.GOBAL_REACT_WEB3_Contract(D.receiver,ht.ABI.receiver,z),E=await U.allowance(i,D.receiver),T=t?await w.getCommissionID(b):0;E<T&&await(await U.approve(D.receiver,T)).wait();const O=await w.tableRowWrite(t,D.token,T,b,j),{status:R}=await O.wait();R===1?(m({type:"uploaded",msg:null}),await I()):m({type:"error",msg:null})}catch(z){m({type:"error",msg:z})}},A=async(j,z)=>{try{m({type:"upload",msg:null});const[W,D]=await C(),U=ht.address[D],w=new window.GOBAL_REACT_WEB3_Contract(U.token,ht.ABI.token,W),E=new window.GOBAL_REACT_WEB3_Contract(U.receiver,ht.ABI.receiver,W),T=await w.allowance(i,U.receiver),O=t?await E.getCommissionID(b):0;T<O&&await(await w.approve(U.receiver,O)).wait();const R=await E.tableRowUpdate(t,U.token,O,b,j,z),{status:$}=await R.wait();if($===1){m({type:"uploaded",msg:null}),window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(I),U.receiver;const q=ht.blockChainsData.findIndex(({network:{id:Y}})=>Y===D);u([q,j])}else m({type:"error",msg:null})}catch(W){m({type:"error",msg:W})}},I=async()=>{try{for(let j=0;j<ht.blockChainsData.length;j++){const z=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:W,publicRpc:D}=ht.blockChainsData[j],U=new window.GOBAL_REACT_WEB3_JsonRpcProvider(D),w=new window.GOBAL_REACT_WEB3_Wallet(z.privateKey,U),E=new window.GOBAL_REACT_WEB3_Contract(W,ht.ABI.receiver,w),T=await E.tableRowsCount(t,b);h(O=>O.map((R,$)=>$===j?parseInt(T.toString()):R))}return!0}catch{}},P=async(j,z)=>{for(let W=0;W<100;W++)try{const D=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:U,publicRpc:w,network:{id:E}}=ht.blockChainsData[j],T=s?(await C())[1]:null,O=new window.GOBAL_REACT_WEB3_JsonRpcProvider(w),R=new window.GOBAL_REACT_WEB3_Wallet(D.privateKey,O),$=new window.GOBAL_REACT_WEB3_Contract(U,ht.ABI.receiver,R),q=await $.tableRowRead(t,b,z.toString());let Y=null;try{Y=JSON.parse(q.toString())}catch{}Y&&(g(le=>le.map((ne,ce)=>ce===j?[...ne.filter(be=>be.index!==Y.index),{...Y,isDelete:Y.text==="",hasEdit:s?T===E:!1}].sort((be,xe)=>be.index-xe.index):ne)),await EI(1));return}catch(D){console.log(D)}};Et.useEffect(()=>{const j=setInterval(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(I),2e3);return()=>clearInterval(j)},[s]),Et.useEffect(()=>{const j=d.map((z,W)=>{if(z!==0){const D=setTimeout(async()=>{const w=a?z-5:-1;window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(()=>P(...l));for(let E=z;E>w;E--)window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(()=>P(W,E)),await EI(1)},1e3),U=setInterval(()=>{if(a&&window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.size===0){const w=parseInt(z*Math.random());window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(()=>P(W,w))}},5e3);return[D,U]}return!1}).filter(z=>z);return()=>{j.forEach(([z,W])=>{clearTimeout(z),clearInterval(W)})}},[s,b,d,l,i,a]);const B=f.flat().sort((j,z)=>j.timestamp-z.timestamp),F=B.length,L=d.reduce((j,z)=>j+z,0);return Et.useEffect(()=>{F===L&&L!==0&&(m({type:"loaded",msg:null}),c(!0))},[F,L]),Et.useEffect(()=>{const j=setTimeout(()=>{L===0&&p.type!=="error"&&m({type:"loaded",msg:null})},5e3);return()=>clearTimeout(j)},[L,l,p]),[B,x,A,p]},wU=()=>{const{open:t}=window.GOBAL_REACT_WEB3_useAppKit(),{address:e,isConnected:n}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"});return{isConnected:n,open:t,address:e}},hbe=fU(),fbe=pU(),pbe=gU(),gbe=mU(),mbe={Provider:rU,useCertificateCommissionID:lbe,usePrivateStorage:fU(!0),useStorage:pU(!0),useReadStorage:gU(!0),useTableStorage:mU(!0),useApp:wU,config:ht};exports.AbiConstructorNotFoundError=vW;exports.AbiConstructorParamsNotFoundError=CW;exports.AbiDecodingDataSizeTooSmallError=AW;exports.AbiDecodingZeroDataError=_W;exports.AbiEncodingArrayLengthMismatchError=iT;exports.AbiEncodingBytesSizeMismatchError=sT;exports.AbiEncodingLengthMismatchError=oT;exports.AbiErrorInputsNotFoundError=SW;exports.AbiErrorNotFoundError=IW;exports.AbiErrorSignatureNotFoundError=TW;exports.AbiEventNotFoundError=OW;exports.AbiEventSignatureEmptyTopicsError=NW;exports.AbiEventSignatureNotFoundError=RW;exports.AbiFunctionNotFoundError=gv;exports.AbiFunctionOutputsNotFoundError=PW;exports.AbiFunctionSignatureNotFoundError=kW;exports.AdapterController=pC;exports.AlertController=On;exports.ApiController=he;exports.AppKitError=go;exports.AssetController=gn;exports.AssetUtil=Nt;exports.AtomicReadyWalletRejectedUpgradeError=p0;exports.AtomicityNotSupportedError=g0;exports.BalanceUtil=J2;exports.BaseError=Fe;exports.BlockchainApiController=qe;exports.BundleTooLargeError=f0;exports.BytesSizeMismatchError=aT;exports.ChainController=v;exports.ChainDisconnectedError=a0;exports.ConnectionController=te;exports.ConnectorController=J;exports.ConstantsUtil=H;exports.ConstantsUtil$1=We;exports.ConstantsUtil$2=ir;exports.ConstantsUtil$3=Jg;exports.ContractUtil=FI;exports.CoreHelperUtil=ee;exports.DecodeLogDataMismatch=DW;exports.DecodeLogTopicsMismatch=BW;exports.DuplicateIdError=d0;exports.EnsController=Lf;exports.ErrorUtil=Fn;exports.ErrorUtil$1=fi;exports.EventEmitter=KR;exports.EventsController=we;exports.ExchangeController=_n;exports.ExecutionRevertedError=Y2;exports.FeeCapTooHighError=HT;exports.FeeCapTooLowError=zT;exports.FetchUtil=G0;exports.HelpersUtil=Rd;exports.HelpersUtil$1=dn;exports.HttpRequestError=Of;exports.InsufficientFundsError=KT;exports.IntegerOutOfRangeError=F2;exports.InternalRpcError=Wd;exports.IntrinsicGasTooHighError=ZT;exports.IntrinsicGasTooLowError=YT;exports.InvalidAbiDecodingTypeError=UW;exports.InvalidAbiEncodingTypeError=cT;exports.InvalidAddressError=V2;exports.InvalidArrayError=lT;exports.InvalidBytesBooleanError=FW;exports.InvalidBytesLengthError=MW;exports.InvalidDefinitionTypeError=uT;exports.InvalidDomainError=hN;exports.InvalidHexBooleanError=hT;exports.InvalidInputRpcError=e0;exports.InvalidParamsRpcError=Xp;exports.InvalidPrimaryTypeError=fN;exports.InvalidRequestRpcError=Jp;exports.InvalidStructTypeError=pN;exports.JsonRpcVersionUnsupportedError=r0;exports.LimitExceededRpcError=Hd;exports.LruMap=q2;exports.MathUtil=Km;exports.MethodNotFoundRpcError=Qp;exports.MethodNotSupportedRpcError=$l;exports.ModalController=je;exports.NavigationUtil=WI;exports.NetworkUtil=W4;exports.NonceMaxValueError=GT;exports.NonceTooHighError=VT;exports.NonceTooLowError=qT;exports.NumberUtil=Bd;exports.OnRampController=Ib;exports.OptionsController=V;exports.OptionsStateController=Fl;exports.ParseRpcError=Yp;exports.ParseUtil=hn;exports.Provider=rU;exports.ProviderController=dt;exports.ProviderDisconnectedError=o0;exports.ProviderRpcError=Ai;exports.ResourceNotFoundRpcError=t0;exports.ResourceUnavailableRpcError=n0;exports.RouterController=Z;exports.RpcError=Gr;exports.RpcRequestError=lC;exports.SIWXUtil=Hn;exports.SafeLocalStorage=$e;exports.SafeLocalStorageKeys=Be;exports.SendController=tt;exports.SizeExceedsPaddingSizeError=Z4;exports.SizeOverflowError=fT;exports.SliceOffsetOutOfBoundsError=K4;exports.SnackController=nt;exports.StorageUtil=re;exports.SwapApiUtil=IN;exports.SwitchChainError=c0;exports.ThemeController=kn;exports.TimeoutError=yv;exports.TipAboveFeeCapError=QT;exports.TransactionRejectedRpcError=jd;exports.TransactionTypeNotSupportedError=JT;exports.UiHelperUtil=zt;exports.UnauthorizedProviderError=i0;exports.UnknownBundleIdError=h0;exports.UnknownNodeError=Mj;exports.UnknownRpcError=jT;exports.UnsupportedChainIdError=u0;exports.UnsupportedNonOptionalCapabilityError=l0;exports.UnsupportedPackedAbiType=LW;exports.UnsupportedProviderMethodError=s0;exports.UrlRequiredError=AN;exports.UserRejectedRequestError=Ll;exports.W3mFrameHelpers=di;exports.W3mFrameProvider=G4;exports.W3mFrameRpcConstants=$t;exports.W3mFrameStorage=Cn;exports.abytes=bc;exports.addressResolverAbi=tH;exports.ahash=bT;exports.anumber=Kp;exports.arrayRegex=Ij;exports.assertSize=kc;exports.b=_;exports.batchGatewayAbi=Jj;exports.boolToBytes=gT;exports.boolToHex=Y4;exports.bytesRegex=yW;exports.bytesRegex$1=BT;exports.bytesToHex=W2;exports.bytesToHex$1=lj;exports.checksumAddress=nC;exports.concat=xc;exports.concatBytes=OT;exports.concatBytes$1=vT;exports.concatHex=rC;exports.config=ht;exports.createBatchScheduler=sN;exports.createTransport=fC;exports.css=_e;exports.customElement=se;exports.e=ng;exports.e$1=E3;exports.elementStyles=Dt;exports.encodeAbiParameters=G2;exports.encodeFunctionData=wv;exports.erc1271Abi=nH;exports.erc20Abi=Vg;exports.erc6492SignatureValidatorAbi=rH;exports.etherUnits=Bj;exports.execTyped=eT;exports.executeSocialLogin=gk;exports.fallback=xv;exports.formatAbiItem=Lm;exports.formatAbiItem$1=tT;exports.formatAbiParameters=lf;exports.formatGwei=Mm;exports.formatUnits=K2;exports.getAbiItem=LT;exports.getActiveCaipNetwork=gf;exports.getActiveNetworkTokenAddress=Fm;exports.getAddress=_j;exports.getArrayComponents=UT;exports.getContractAddress=Uj;exports.getNativeTokenAddress=DH;exports.getPreferredAccountType=rn;exports.getTypesForEIP712Domain=mN;exports.getUrl=Z2;exports.getW3mThemeVariables=Hp;exports.gweiUnits=WT;exports.hashDomain=yN;exports.hashMessage=dN;exports.hashStruct=dC;exports.hashTypedData=wN;exports.hexToBigInt=pT;exports.hexToBool=WW;exports.hexToBytes=j2;exports.hexToBytes$1=uj;exports.hexToNumber=jW;exports.hexToString=HW;exports.hmac=hC;exports.http=qg;exports.i=ae;exports.i$1=Wt;exports.initializeTheming=oue;exports.integerRegex=bW;exports.integerRegex$1=sC;exports.isAddress=Fd;exports.isBytes=yT;exports.isHex=q0;exports.isTupleRegex=xW;exports.keccak256=lo;exports.keccak_256=eC;exports.multicall3Abi=Yj;exports.n=N;exports.n$1=rg;exports.numberToBytes=mT;exports.numberToHex=$c;exports.o=me;exports.pad=_h;exports.padBytes=dT;exports.padHex=dc;exports.prepareEncodeFunctionData=FT;exports.presignMessagePrefix=lN;exports.proxy=Lt;exports.r=Q;exports.randomBytes=CT;exports.resetStyles=Ve;exports.sha256=nN;exports.sha384=Zj;exports.sha512=Kj;exports.shouldThrow=CN;exports.size=Nr;exports.slice=iC;exports.sliceBytes=$T;exports.sliceHex=DT;exports.stas=mbe;exports.stringToBytes=Q4;exports.stringToHex=Gp;exports.stringify=hc;exports.subscribe=fn;exports.subscribeKey=xn;exports.textResolverAbi=eH;exports.toBytes=J4;exports.toEventSelector=RT;exports.toFunctionSelector=cC;exports.toHex=qp;exports.toPrefixedMessage=uN;exports.toSignature=NT;exports.toSignatureHash=tC;exports.trim=cm;exports.uid=aN;exports.universalResolverResolveAbi=Qj;exports.universalResolverReverseAbi=Xj;exports.useApp=wU;exports.usePrivateStorage=hbe;exports.useReadStorage=pbe;exports.useStorage=fbe;exports.useTableStorage=gbe;exports.validateTypedData=gN;exports.vars=Jt;exports.wait=uC;exports.withErrorBoundary=_i;exports.withResolvers=iN;exports.withRetry=oN;exports.withTimeout=cN;
|
|
7203
|
+
*/var nbe=function(t){return t!=null&&(nU(t)||rbe(t)||!!t._isBuffer)};function nU(t){return!!t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}function rbe(t){return typeof t.readFloatLE=="function"&&typeof t.slice=="function"&&nU(t.slice(0,0))}(function(){var t=tbe,e=yI.utf8,n=nbe,r=yI.bin,i=function(s,o){s.constructor==String?o&&o.encoding==="binary"?s=r.stringToBytes(s):s=e.stringToBytes(s):n(s)?s=Array.prototype.slice.call(s,0):!Array.isArray(s)&&s.constructor!==Uint8Array&&(s=s.toString());for(var a=t.bytesToWords(s),c=s.length*8,l=1732584193,u=-271733879,d=-1732584194,h=271733878,f=0;f<a.length;f++)a[f]=(a[f]<<8|a[f]>>>24)&16711935|(a[f]<<24|a[f]>>>8)&4278255360;a[c>>>5]|=128<<c%32,a[(c+64>>>9<<4)+14]=c;for(var g=i._ff,p=i._gg,m=i._hh,b=i._ii,f=0;f<a.length;f+=16){var C=l,x=u,A=d,I=h;l=g(l,u,d,h,a[f+0],7,-680876936),h=g(h,l,u,d,a[f+1],12,-389564586),d=g(d,h,l,u,a[f+2],17,606105819),u=g(u,d,h,l,a[f+3],22,-1044525330),l=g(l,u,d,h,a[f+4],7,-176418897),h=g(h,l,u,d,a[f+5],12,1200080426),d=g(d,h,l,u,a[f+6],17,-1473231341),u=g(u,d,h,l,a[f+7],22,-45705983),l=g(l,u,d,h,a[f+8],7,1770035416),h=g(h,l,u,d,a[f+9],12,-1958414417),d=g(d,h,l,u,a[f+10],17,-42063),u=g(u,d,h,l,a[f+11],22,-1990404162),l=g(l,u,d,h,a[f+12],7,1804603682),h=g(h,l,u,d,a[f+13],12,-40341101),d=g(d,h,l,u,a[f+14],17,-1502002290),u=g(u,d,h,l,a[f+15],22,1236535329),l=p(l,u,d,h,a[f+1],5,-165796510),h=p(h,l,u,d,a[f+6],9,-1069501632),d=p(d,h,l,u,a[f+11],14,643717713),u=p(u,d,h,l,a[f+0],20,-373897302),l=p(l,u,d,h,a[f+5],5,-701558691),h=p(h,l,u,d,a[f+10],9,38016083),d=p(d,h,l,u,a[f+15],14,-660478335),u=p(u,d,h,l,a[f+4],20,-405537848),l=p(l,u,d,h,a[f+9],5,568446438),h=p(h,l,u,d,a[f+14],9,-1019803690),d=p(d,h,l,u,a[f+3],14,-187363961),u=p(u,d,h,l,a[f+8],20,1163531501),l=p(l,u,d,h,a[f+13],5,-1444681467),h=p(h,l,u,d,a[f+2],9,-51403784),d=p(d,h,l,u,a[f+7],14,1735328473),u=p(u,d,h,l,a[f+12],20,-1926607734),l=m(l,u,d,h,a[f+5],4,-378558),h=m(h,l,u,d,a[f+8],11,-2022574463),d=m(d,h,l,u,a[f+11],16,1839030562),u=m(u,d,h,l,a[f+14],23,-35309556),l=m(l,u,d,h,a[f+1],4,-1530992060),h=m(h,l,u,d,a[f+4],11,1272893353),d=m(d,h,l,u,a[f+7],16,-155497632),u=m(u,d,h,l,a[f+10],23,-1094730640),l=m(l,u,d,h,a[f+13],4,681279174),h=m(h,l,u,d,a[f+0],11,-358537222),d=m(d,h,l,u,a[f+3],16,-722521979),u=m(u,d,h,l,a[f+6],23,76029189),l=m(l,u,d,h,a[f+9],4,-640364487),h=m(h,l,u,d,a[f+12],11,-421815835),d=m(d,h,l,u,a[f+15],16,530742520),u=m(u,d,h,l,a[f+2],23,-995338651),l=b(l,u,d,h,a[f+0],6,-198630844),h=b(h,l,u,d,a[f+7],10,1126891415),d=b(d,h,l,u,a[f+14],15,-1416354905),u=b(u,d,h,l,a[f+5],21,-57434055),l=b(l,u,d,h,a[f+12],6,1700485571),h=b(h,l,u,d,a[f+3],10,-1894986606),d=b(d,h,l,u,a[f+10],15,-1051523),u=b(u,d,h,l,a[f+1],21,-2054922799),l=b(l,u,d,h,a[f+8],6,1873313359),h=b(h,l,u,d,a[f+15],10,-30611744),d=b(d,h,l,u,a[f+6],15,-1560198380),u=b(u,d,h,l,a[f+13],21,1309151649),l=b(l,u,d,h,a[f+4],6,-145523070),h=b(h,l,u,d,a[f+11],10,-1120210379),d=b(d,h,l,u,a[f+2],15,718787259),u=b(u,d,h,l,a[f+9],21,-343485551),l=l+C>>>0,u=u+x>>>0,d=d+A>>>0,h=h+I>>>0}return t.endian([l,u,d,h])};i._ff=function(s,o,a,c,l,u,d){var h=s+(o&a|~o&c)+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._gg=function(s,o,a,c,l,u,d){var h=s+(o&c|a&~c)+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._hh=function(s,o,a,c,l,u,d){var h=s+(o^a^c)+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._ii=function(s,o,a,c,l,u,d){var h=s+(a^(o|~c))+(l>>>0)+d;return(h<<u|h>>>32-u)+o},i._blocksize=16,i._digestsize=16,eU.exports=function(s,o){if(s==null)throw new Error("Illegal argument "+s);var a=t.wordsToBytes(i(s,o));return o&&o.asBytes?a:o&&o.asString?r.bytesToString(a):t.bytesToHex(a)}})();var ibe=eU.exports;const bI=su(ibe);function ma(t){return{formatters:void 0,fees:void 0,serializers:void 0,...t}}ma({id:"5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",name:"Solana",network:"solana-mainnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!1,chainNamespace:"solana",caipNetworkId:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",deprecatedCaipNetworkId:"solana:4sGjMW1sUnHzSxGspuhpqLDx6wiyjNtZ"});ma({id:"EtWTRABZaYq6iMfeYKouRu166VU2xqa1",name:"Solana Devnet",network:"solana-devnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!0,chainNamespace:"solana",caipNetworkId:"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1",deprecatedCaipNetworkId:"solana:8E9rvCKLFQia2Y35HXjjpWzj8weVo44K"});ma({id:"4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z",name:"Solana Testnet",network:"solana-testnet",nativeCurrency:{name:"Solana",symbol:"SOL",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Solscan",url:"https://solscan.io"}},testnet:!0,chainNamespace:"solana",caipNetworkId:"solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z"});ma({id:"000000000019d6689c085ae165831e93",caipNetworkId:"bip122:000000000019d6689c085ae165831e93",chainNamespace:"bip122",name:"Bitcoin",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}}});ma({id:"000000000933ea01ad0ee984209779ba",caipNetworkId:"bip122:000000000933ea01ad0ee984209779ba",chainNamespace:"bip122",name:"Bitcoin Testnet",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},testnet:!0});ma({id:"00000008819873e925422c1ff0f99f7c",caipNetworkId:"bip122:00000008819873e925422c1ff0f99f7c",chainNamespace:"bip122",name:"Bitcoin Signet",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:8},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},testnet:!0});ma({id:"-239",name:"TON",network:"ton-mainnet",nativeCurrency:{name:"TON",symbol:"TON",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Tonscan",url:"https://tonscan.org"}},testnet:!1,chainNamespace:"ton",caipNetworkId:"ton:-239"});ma({id:"-3",name:"TON Testnet",network:"ton-testnet",nativeCurrency:{name:"TON",symbol:"TON",decimals:9},rpcUrls:{default:{http:["https://rpc.walletconnect.org/v1"]}},blockExplorers:{default:{name:"Tonscan",url:"https://testnet.tonscan.org"}},testnet:!0,chainNamespace:"ton",caipNetworkId:"ton:-3"});const sbe=[{network:ma({id:31337,chainNamespace:"eip155",name:"networkTest",rpcUrls:{default:{http:["http://127.0.0.1:8545"]}}}),token:"0x512F7469BcC83089497506b5df64c6E246B39925",receiver:"0xA3f7BF5b0fa93176c260BBa57ceE85525De2BaF4",publicRpc:"http://127.0.0.1:8545"},{network:ma({id:14188,chainNamespace:"eip155",name:"networkTest2",rpcUrls:{default:{http:["http://127.0.0.1:8546"]}}}),token:"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0",receiver:"0x5eb3Bc0a489C5A8288765d2336659EbCA68FCd00",publicRpc:"http://127.0.0.1:8546"}],nv=[...sbe].filter(({network:t})=>!(t.chainId===14188||t.chainId===31337)).filter(({token:t,receiver:e})=>t&&e),ht={networks:nv.map(({network:t})=>t),blockChainsData:nv,address:nv.reduce((t,{network:e,token:n,receiver:r})=>(t[e.id]={token:n,receiver:r},t),{}),ABI:{token:[{inputs:[{internalType:"string",name:"_name",type:"string"},{internalType:"string",name:"_symbol",type:"string"},{internalType:"uint256",name:"_initialSupply",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"allowance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientAllowance",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"}],name:"ERC20InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC20InvalidApprover",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC20InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC20InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"spender",type:"address"}],name:"ERC20InvalidSpender",type:"error"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"OwnableInvalidOwner",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[],name:"_owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"pure",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"value",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}],receiver:[{inputs:[{internalType:"address",name:"_ownerToken",type:"address"},{internalType:"uint256",name:"_ownerCommission",type:"uint256"},{internalType:"uint256",name:"_ownerCertificateCommission",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"ReentrancyGuardReentrantCall",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"certificateCommissionID",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getCertificateCommission",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"string",name:"id",type:"string"}],name:"getCommissionID",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"}],name:"privateRead",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"privateWrite",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"},{internalType:"address",name:"_address",type:"address"}],name:"publicRead",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"publicWrite",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"index",type:"string"}],name:"tableRowRead",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"index",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"tableRowUpdate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"string",name:"id",type:"string"},{internalType:"string",name:"text",type:"string"}],name:"tableRowWrite",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"isCommission",type:"bool"},{internalType:"string",name:"id",type:"string"}],name:"tableRowsCount",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"}]}},rU=({children:t,config:e})=>(window.GOBAL_REACT_WEB3_useAppKit=vue,window.GOBAL_REACT_WEB3_useAppKitAccount=Rle,window.GOBAL_REACT_WEB3_useAppKitProvider=Nle,window.GOBAL_REACT_WEB3_BrowserProvider=qf,window.GOBAL_REACT_WEB3_Contract=kd,window.GOBAL_REACT_WEB3_JsonRpcProvider=$B,window.GOBAL_REACT_WEB3_Wallet=Cye,window.GOBAL_REACT_WEB3_STORAGE_createdAppKit||(window.GOBAL_REACT_WEB3_STORAGE_createdAppKit=!0,f$({projectId:e.projectId,adapters:[new ebe],networks:ht.networks,metadata:e.metadata})),e.host&&(window.GOBAL_REACT_WEB3_hostHash=bI(e.host)||bI(window.location.host)),zpe({children:t,...e}));class nA extends Error{constructor(n,r){var i;super(n,r);G(this,"name","TimeoutError");(i=Error.captureStackTrace)==null||i.call(Error,this,nA)}}const xI=t=>t.reason??new DOMException("This operation was aborted.","AbortError");function obe(t,e){const{milliseconds:n,fallback:r,message:i,customTimers:s={setTimeout,clearTimeout},signal:o}=e;let a,c;const u=new Promise((d,h)=>{if(typeof n!="number"||Math.sign(n)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${n}\``);if(o!=null&&o.aborted){h(xI(o));return}if(o&&(c=()=>{h(xI(o))},o.addEventListener("abort",c,{once:!0})),t.then(d,h),n===Number.POSITIVE_INFINITY)return;const f=new nA;a=s.setTimeout.call(void 0,()=>{if(r){try{d(r())}catch(g){h(g)}return}typeof t.cancel=="function"&&t.cancel(),i===!1?d():i instanceof Error?h(i):(f.message=i??`Promise timed out after ${n} milliseconds`,h(f))},n)}).finally(()=>{u.clear(),c&&o&&o.removeEventListener("abort",c)});return u.clear=()=>{s.clearTimeout.call(void 0,a),a=void 0},u}function abe(t,e,n){let r=0,i=t.length;for(;i>0;){const s=Math.trunc(i/2);let o=r+s;n(t[o],e)<=0?(r=++o,i-=s+1):i=s}return r}var Cs;class cbe{constructor(){K(this,Cs,[])}enqueue(e,n){const{priority:r=0,id:i}=n??{},s={priority:r,id:i,run:e};if(this.size===0||y(this,Cs)[this.size-1].priority>=r){y(this,Cs).push(s);return}const o=abe(y(this,Cs),s,(a,c)=>c.priority-a.priority);y(this,Cs).splice(o,0,s)}setPriority(e,n){const r=y(this,Cs).findIndex(s=>s.id===e);if(r===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);const[i]=y(this,Cs).splice(r,1);this.enqueue(i.run,{priority:n,id:e})}dequeue(){const e=y(this,Cs).shift();return e==null?void 0:e.run}filter(e){return y(this,Cs).filter(n=>n.priority===e.priority).map(n=>n.run)}get size(){return y(this,Cs).length}}Cs=new WeakMap;var Mp,ro,io,Pl,Ad,Fp,qo,$1,Wp,Go,rc,As,oi,Mr,vn,D1,rr,_d,ic,k2,Sd,Ie,ab,iU,sU,cb,oU,aU,cU,lU,uU,lb,ub,O4,db,P4,k4,hb,Du,dU,pf,hU,$4;class Nw extends KR{constructor(n){var r,i;super();K(this,Ie);K(this,Mp);K(this,ro);K(this,io,0);K(this,Pl);K(this,Ad,!1);K(this,Fp,!1);K(this,qo);K(this,$1,0);K(this,Wp,0);K(this,Go);K(this,rc);K(this,As);K(this,oi,[]);K(this,Mr,0);K(this,vn);K(this,D1);K(this,rr,0);K(this,_d);K(this,ic);K(this,k2,1n);K(this,Sd,new Map);G(this,"timeout");if(n={carryoverIntervalCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:cbe,strict:!1,...n},!(typeof n.intervalCap=="number"&&n.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${((r=n.intervalCap)==null?void 0:r.toString())??""}\` (${typeof n.intervalCap})`);if(n.interval===void 0||!(Number.isFinite(n.interval)&&n.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${((i=n.interval)==null?void 0:i.toString())??""}\` (${typeof n.interval})`);if(n.strict&&n.interval===0)throw new TypeError("The `strict` option requires a non-zero `interval`");if(n.strict&&n.intervalCap===Number.POSITIVE_INFINITY)throw new TypeError("The `strict` option requires a finite `intervalCap`");if(k(this,Mp,n.carryoverIntervalCount??n.carryoverConcurrencyCount??!1),k(this,ro,n.intervalCap===Number.POSITIVE_INFINITY||n.interval===0),k(this,Pl,n.intervalCap),k(this,qo,n.interval),k(this,As,n.strict),k(this,vn,new n.queueClass),k(this,D1,n.queueClass),this.concurrency=n.concurrency,n.timeout!==void 0&&!(Number.isFinite(n.timeout)&&n.timeout>0))throw new TypeError(`Expected \`timeout\` to be a positive finite number, got \`${n.timeout}\` (${typeof n.timeout})`);this.timeout=n.timeout,k(this,ic,n.autoStart===!1),X(this,Ie,dU).call(this)}get concurrency(){return y(this,_d)}set concurrency(n){if(!(typeof n=="number"&&n>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${n}\` (${typeof n})`);k(this,_d,n),X(this,Ie,hb).call(this)}setPriority(n,r){if(typeof r!="number"||!Number.isFinite(r))throw new TypeError(`Expected \`priority\` to be a finite number, got \`${r}\` (${typeof r})`);y(this,vn).setPriority(n,r)}async add(n,r={}){return r={timeout:this.timeout,...r,id:r.id??(Ms(this,k2)._++).toString()},new Promise((i,s)=>{const o=Symbol(`task-${r.id}`);y(this,vn).enqueue(async()=>{var c,l;Ms(this,rr)._++,y(this,Sd).set(o,{id:r.id,priority:r.priority??0,startTime:Date.now(),timeout:r.timeout});let a;try{try{(c=r.signal)==null||c.throwIfAborted()}catch(h){throw X(this,Ie,hU).call(this),y(this,Sd).delete(o),h}k(this,Wp,Date.now());let u=n({signal:r.signal});if(r.timeout&&(u=obe(Promise.resolve(u),{milliseconds:r.timeout,message:`Task timed out after ${r.timeout}ms (queue has ${y(this,rr)} running, ${y(this,vn).size} waiting)`})),r.signal){const{signal:h}=r;u=Promise.race([u,new Promise((f,g)=>{a=()=>{g(h.reason)},h.addEventListener("abort",a,{once:!0})})])}const d=await u;i(d),this.emit("completed",d)}catch(u){s(u),this.emit("error",u)}finally{a&&((l=r.signal)==null||l.removeEventListener("abort",a)),y(this,Sd).delete(o),queueMicrotask(()=>{X(this,Ie,cU).call(this)})}},r),this.emit("add"),X(this,Ie,db).call(this)})}async addAll(n,r){return Promise.all(n.map(async i=>this.add(i,r)))}start(){return y(this,ic)?(k(this,ic,!1),X(this,Ie,hb).call(this),this):this}pause(){k(this,ic,!0)}clear(){k(this,vn,new(y(this,D1))),X(this,Ie,ub).call(this),X(this,Ie,$4).call(this),this.emit("empty"),y(this,rr)===0&&(X(this,Ie,O4).call(this),this.emit("idle")),this.emit("next")}async onEmpty(){y(this,vn).size!==0&&await X(this,Ie,Du).call(this,"empty")}async onSizeLessThan(n){y(this,vn).size<n||await X(this,Ie,Du).call(this,"next",()=>y(this,vn).size<n)}async onIdle(){y(this,rr)===0&&y(this,vn).size===0||await X(this,Ie,Du).call(this,"idle")}async onPendingZero(){y(this,rr)!==0&&await X(this,Ie,Du).call(this,"pendingZero")}async onRateLimit(){this.isRateLimited||await X(this,Ie,Du).call(this,"rateLimit")}async onRateLimitCleared(){this.isRateLimited&&await X(this,Ie,Du).call(this,"rateLimitCleared")}onError(){return new Promise((n,r)=>{const i=s=>{this.off("error",i),r(s)};this.on("error",i)})}get size(){return y(this,vn).size}sizeBy(n){return y(this,vn).filter(n).length}get pending(){return y(this,rr)}get isPaused(){return y(this,ic)}get isRateLimited(){return y(this,Ad)}get isSaturated(){return y(this,rr)===y(this,_d)&&y(this,vn).size>0||this.isRateLimited&&y(this,vn).size>0}get runningTasks(){return[...y(this,Sd).values()].map(n=>({...n}))}}Mp=new WeakMap,ro=new WeakMap,io=new WeakMap,Pl=new WeakMap,Ad=new WeakMap,Fp=new WeakMap,qo=new WeakMap,$1=new WeakMap,Wp=new WeakMap,Go=new WeakMap,rc=new WeakMap,As=new WeakMap,oi=new WeakMap,Mr=new WeakMap,vn=new WeakMap,D1=new WeakMap,rr=new WeakMap,_d=new WeakMap,ic=new WeakMap,k2=new WeakMap,Sd=new WeakMap,Ie=new WeakSet,ab=function(n){for(;y(this,Mr)<y(this,oi).length;){const i=y(this,oi)[y(this,Mr)];if(i!==void 0&&n-i>=y(this,qo))Ms(this,Mr)._++;else break}(y(this,Mr)>100&&y(this,Mr)>y(this,oi).length/2||y(this,Mr)===y(this,oi).length)&&(k(this,oi,y(this,oi).slice(y(this,Mr))),k(this,Mr,0))},iU=function(n){y(this,As)?y(this,oi).push(n):Ms(this,io)._++},sU=function(){y(this,As)?y(this,oi).length>y(this,Mr)&&y(this,oi).pop():y(this,io)>0&&Ms(this,io)._--},cb=function(){return y(this,oi).length-y(this,Mr)},oU=function(){return y(this,ro)?!0:y(this,As)?X(this,Ie,cb).call(this)<y(this,Pl):y(this,io)<y(this,Pl)},aU=function(){return y(this,rr)<y(this,_d)},cU=function(){Ms(this,rr)._--,y(this,rr)===0&&this.emit("pendingZero"),X(this,Ie,db).call(this),this.emit("next")},lU=function(){k(this,rc,void 0),X(this,Ie,k4).call(this),X(this,Ie,P4).call(this)},uU=function(n){if(y(this,As)){if(X(this,Ie,ab).call(this,n),X(this,Ie,cb).call(this)>=y(this,Pl)){const i=y(this,oi)[y(this,Mr)],s=y(this,qo)-(n-i);return X(this,Ie,lb).call(this,s),!0}return!1}if(y(this,Go)===void 0){const r=y(this,$1)-n;if(r<0){if(y(this,Wp)>0){const i=n-y(this,Wp);if(i<y(this,qo))return X(this,Ie,lb).call(this,y(this,qo)-i),!0}k(this,io,y(this,Mp)?y(this,rr):0)}else return X(this,Ie,lb).call(this,r),!0}return!1},lb=function(n){y(this,rc)===void 0&&k(this,rc,setTimeout(()=>{X(this,Ie,lU).call(this)},n))},ub=function(){y(this,Go)&&(clearInterval(y(this,Go)),k(this,Go,void 0))},O4=function(){y(this,rc)&&(clearTimeout(y(this,rc)),k(this,rc,void 0))},db=function(){if(y(this,vn).size===0){if(X(this,Ie,ub).call(this),this.emit("empty"),y(this,rr)===0){if(X(this,Ie,O4).call(this),y(this,As)&&y(this,Mr)>0){const r=Date.now();X(this,Ie,ab).call(this,r)}this.emit("idle")}return!1}let n=!1;if(!y(this,ic)){const r=Date.now(),i=!X(this,Ie,uU).call(this,r);if(y(this,Ie,oU)&&y(this,Ie,aU)){const s=y(this,vn).dequeue();y(this,ro)||(X(this,Ie,iU).call(this,r),X(this,Ie,pf).call(this)),this.emit("active"),s(),i&&X(this,Ie,P4).call(this),n=!0}}return n},P4=function(){y(this,ro)||y(this,Go)!==void 0||y(this,As)||(k(this,Go,setInterval(()=>{X(this,Ie,k4).call(this)},y(this,qo))),k(this,$1,Date.now()+y(this,qo)))},k4=function(){y(this,As)||(y(this,io)===0&&y(this,rr)===0&&y(this,Go)&&X(this,Ie,ub).call(this),k(this,io,y(this,Mp)?y(this,rr):0)),X(this,Ie,hb).call(this),X(this,Ie,pf).call(this)},hb=function(){for(;X(this,Ie,db).call(this););},Du=async function(n,r){return new Promise(i=>{const s=()=>{r&&!r()||(this.off(n,s),i())};this.on(n,s)})},dU=function(){y(this,ro)||(this.on("add",()=>{y(this,vn).size>0&&X(this,Ie,pf).call(this)}),this.on("next",()=>{X(this,Ie,pf).call(this)}))},pf=function(){y(this,ro)||y(this,Fp)||(k(this,Fp,!0),queueMicrotask(()=>{k(this,Fp,!1),X(this,Ie,$4).call(this)}))},hU=function(){y(this,ro)||(X(this,Ie,sU).call(this),X(this,Ie,pf).call(this))},$4=function(){const n=y(this,Ad);if(y(this,ro)||y(this,vn).size===0){n&&(k(this,Ad,!1),this.emit("rateLimitCleared"));return}let r;if(y(this,As)){const s=Date.now();X(this,Ie,ab).call(this,s),r=X(this,Ie,cb).call(this)}else r=y(this,io);const i=r>=y(this,Pl);i!==n&&(k(this,Ad,i),this.emit(i?"rateLimit":"rateLimitCleared"))};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const lbe=t=>{const{open:e}=window.GOBAL_REACT_WEB3_useAppKit(),{address:n,isConnected:r}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:i}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[s,o]=Et.useState(0),[a,c]=Et.useState({type:"load",msg:null});let l=`${window.GOBAL_REACT_WEB3_hostHash}-${t}`;const u=async()=>{try{if(!i||!n){e();return}const g=new window.GOBAL_REACT_WEB3_BrowserProvider(i),p=await g.getNetwork();return[await g.getSigner(),parseInt(p.chainId)]}catch(g){c({type:"error",msg:g})}},d=async g=>{try{c({type:"upload",msg:null});const[p,m]=await u(),b=ht.address[m],C=new window.GOBAL_REACT_WEB3_Contract(b.token,ht.ABI.token,p),x=new window.GOBAL_REACT_WEB3_Contract(b.receiver,ht.ABI.receiver,p),A=await C.allowance(n,b.receiver),I=await x.getCertificateCommission();A<I&&await(await C.approve(b.receiver,I)).wait();const P=await x.certificateCommissionID(b.token,I,l,g),{status:B}=await P.wait();B===1?(c({type:"uploaded",msg:null}),await f()):c({type:"error",msg:null})}catch(p){c({type:"error",msg:p})}},h=async()=>{try{const[g,p]=await u(),m=ht.address[p],C=await new window.GOBAL_REACT_WEB3_Contract(m.receiver,ht.ABI.receiver,g).getCommissionID(l);return o(parseInt(C)),!0}catch(g){c({type:"error",msg:g})}},f=async()=>{c({type:"load",msg:null}),await h()&&c({type:"loaded",msg:null})};return Et.useEffect(()=>{if(r){c({type:"connected",msg:null});const g=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(f),1e3),p=setInterval(()=>{window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.size===0&&window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(f)},15e3);return()=>{clearTimeout(g),clearInterval(p)}}},[r,l]),[s,d,a]};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const fU=(t=!1)=>(e,n="")=>{const{open:r}=window.GOBAL_REACT_WEB3_useAppKit(),{address:i,isConnected:s}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:o}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[a,c]=Et.useState(n),[l,u]=Et.useState({type:"connect",msg:null});let d=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const h=async()=>{try{if(!o||!i){r();return}const m=new window.GOBAL_REACT_WEB3_BrowserProvider(o),b=await m.getNetwork();return[await m.getSigner(),parseInt(b.chainId)]}catch(m){u({type:"error",msg:m})}},f=async(m=!1)=>{try{u({type:"upload",msg:null});const[b,C]=await h(),x=ht.address[C],A=new window.GOBAL_REACT_WEB3_Contract(x.token,ht.ABI.token,b),I=new window.GOBAL_REACT_WEB3_Contract(x.receiver,ht.ABI.receiver,b),P=await A.allowance(i,x.receiver),B=t?await I.getCommissionID(d):0;P<B&&await(await A.approve(x.receiver,B)).wait();const F=await I.privateWrite(t,x.token,B,d,m||a),{status:L}=await F.wait();L===1?(u({type:"uploaded",msg:null}),await p()):u({type:"error",msg:null})}catch(b){u({type:"error",msg:b})}},g=async()=>{try{const[m,b]=await h(),C=ht.address[b],x=new window.GOBAL_REACT_WEB3_Contract(C.receiver,ht.ABI.receiver,m),A=await x.privateRead(t,d);return c(JSON.parse(A.toString()).text),!0}catch(m){u({type:"error",msg:m})}},p=async()=>{u({type:"load",msg:null}),await g()&&u({type:"loaded",msg:null})};return Et.useEffect(()=>{if(s){u({type:"connected",msg:null});const m=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(p),1e3);return()=>clearTimeout(m)}},[s]),[a,c,f,l]};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const pU=(t=!1)=>(e,n="")=>{const{open:r}=window.GOBAL_REACT_WEB3_useAppKit(),{address:i,isConnected:s}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:o}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[a,c]=Et.useState(n),[l,u]=Et.useState({type:"connect",msg:null});let d=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const h=async()=>{try{if(!o||!i){r();return}const m=new window.GOBAL_REACT_WEB3_BrowserProvider(o),b=await m.getNetwork();return[await m.getSigner(),parseInt(b.chainId)]}catch(m){u({type:"error",msg:m})}},f=async(m=!1)=>{try{u({type:"upload",msg:null});const[b,C]=await h(),x=ht.address[C],A=new window.GOBAL_REACT_WEB3_Contract(x.token,ht.ABI.token,b),I=new window.GOBAL_REACT_WEB3_Contract(x.receiver,ht.ABI.receiver,b),P=await A.allowance(i,x.receiver),B=t?await I.getCommissionID(d):0;P<B&&await(await A.approve(x.receiver,B)).wait();const F=await I.publicWrite(t,x.token,B,d,m||a),{status:L}=await F.wait();L===1?(u({type:"uploaded",msg:null}),window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(p)):u({type:"error",msg:null})}catch(b){u({type:"error",msg:b})}},g=async()=>{try{if(i){const m=[];for(let C=0;C<ht.blockChainsData.length;C++){const x=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:A,publicRpc:I}=ht.blockChainsData[C],P=new window.GOBAL_REACT_WEB3_JsonRpcProvider(I),B=new window.GOBAL_REACT_WEB3_Wallet(x.privateKey,P),F=new window.GOBAL_REACT_WEB3_Contract(A,ht.ABI.receiver,B),L=await F.publicRead(t,d,i);m.push(JSON.parse(L))}const b=m.sort((C,x)=>x.timestamp-C.timestamp);return b[0]&&c(b[0].text),!0}u({type:"error",msg:null})}catch(m){console.log(m),u({type:"error",msg:m})}},p=async()=>{u({type:"load",msg:null}),await g()&&u({type:"loaded",msg:null})};return Et.useEffect(()=>{if(s){u({type:"connected",msg:null});const m=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(p),1e3);return()=>clearTimeout(m)}},[s]),[a,c,f,l]};window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const gU=(t=!1)=>(e,n,r="")=>{const{open:i}=window.GOBAL_REACT_WEB3_useAppKit(),{address:s,isConnected:o}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:a}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[c,l]=Et.useState(r),[u,d]=Et.useState({type:"load",msg:null});let h=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const f=async p=>{try{if(p||s){const m=[];for(let C=0;C<ht.blockChainsData.length;C++){const x=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:A,publicRpc:I}=ht.blockChainsData[C],P=new window.GOBAL_REACT_WEB3_JsonRpcProvider(I),B=new window.GOBAL_REACT_WEB3_Wallet(x.privateKey,P),F=new window.GOBAL_REACT_WEB3_Contract(A,ht.ABI.receiver,B),L=await F.publicRead(t,h,p||s);m.push(JSON.parse(L))}const b=m.sort((C,x)=>x.timestamp-C.timestamp);return b[0]&&l(b[0].text),!0}d({type:"error",msg:null})}catch(m){console.log(m),d({type:"error",msg:m})}},g=async()=>{d({type:"load",msg:null}),await f(n)&&d({type:"loaded",msg:null})};return Et.useEffect(()=>{const p=setTimeout(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(g),1e3),m=setInterval(()=>{window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.size===0&&window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(g)},15e3);return()=>{clearTimeout(p),clearInterval(m)}},[o,n]),[c,u]};var ube=setTimeout;function dbe(t,e){var n=e.useCachedSetTimeout?ube:setTimeout;return new Promise(function(r){n(r,t)})}function EI(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=e.useCachedSetTimeout,r=dbe(t,{useCachedSetTimeout:n});function i(s){return r.then(function(){return s})}return i.then=function(){return r.then.apply(r,arguments)},i.catch=Promise.resolve().catch,i}window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE||(window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE=new Nw({concurrency:1,interval:1e3}));const mU=(t=!1)=>(e,n)=>{const{open:r}=window.GOBAL_REACT_WEB3_useAppKit(),{address:i,isConnected:s}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"}),{walletProvider:o}=window.GOBAL_REACT_WEB3_useAppKitProvider("eip155"),[a,c]=Et.useState(!1),[l,u]=Et.useState([0,0]),[d,h]=Et.useState(Array(ht.blockChainsData.length).fill(0)),[f,g]=Et.useState(Array(ht.blockChainsData.length).fill([])),[p,m]=Et.useState({type:"load",msg:null});let b=`${window.GOBAL_REACT_WEB3_hostHash}-${e}`;const C=async()=>{if(!o||!i){r();return}const j=new window.GOBAL_REACT_WEB3_BrowserProvider(o),z=await j.getNetwork();return[await j.getSigner(),parseInt(z.chainId)]},x=async j=>{try{m({type:"upload",msg:null});const[z,W]=await C(),D=ht.address[W],U=new window.GOBAL_REACT_WEB3_Contract(D.token,ht.ABI.token,z),w=new window.GOBAL_REACT_WEB3_Contract(D.receiver,ht.ABI.receiver,z),E=await U.allowance(i,D.receiver),T=t?await w.getCommissionID(b):0;E<T&&await(await U.approve(D.receiver,T)).wait();const O=await w.tableRowWrite(t,D.token,T,b,j),{status:R}=await O.wait();R===1?(m({type:"uploaded",msg:null}),await I()):m({type:"error",msg:null})}catch(z){m({type:"error",msg:z})}},A=async(j,z)=>{try{m({type:"upload",msg:null});const[W,D]=await C(),U=ht.address[D],w=new window.GOBAL_REACT_WEB3_Contract(U.token,ht.ABI.token,W),E=new window.GOBAL_REACT_WEB3_Contract(U.receiver,ht.ABI.receiver,W),T=await w.allowance(i,U.receiver),O=t?await E.getCommissionID(b):0;T<O&&await(await w.approve(U.receiver,O)).wait();const R=await E.tableRowUpdate(t,U.token,O,b,j,z),{status:$}=await R.wait();if($===1){m({type:"uploaded",msg:null}),window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(I),U.receiver;const q=ht.blockChainsData.findIndex(({network:{id:Y}})=>Y===D);u([q,j])}else m({type:"error",msg:null})}catch(W){m({type:"error",msg:W})}},I=async()=>{try{for(let j=0;j<ht.blockChainsData.length;j++){const z=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:W,publicRpc:D}=ht.blockChainsData[j],U=new window.GOBAL_REACT_WEB3_JsonRpcProvider(D),w=new window.GOBAL_REACT_WEB3_Wallet(z.privateKey,U),E=new window.GOBAL_REACT_WEB3_Contract(W,ht.ABI.receiver,w),T=await E.tableRowsCount(t,b);h(O=>O.map((R,$)=>$===j?parseInt(T.toString()):R))}return!0}catch{}},P=async(j,z)=>{for(let W=0;W<100;W++)try{const D=window.GOBAL_REACT_WEB3_Wallet.createRandom(),{receiver:U,publicRpc:w,network:{id:E}}=ht.blockChainsData[j],T=s?(await C())[1]:null,O=new window.GOBAL_REACT_WEB3_JsonRpcProvider(w),R=new window.GOBAL_REACT_WEB3_Wallet(D.privateKey,O),$=new window.GOBAL_REACT_WEB3_Contract(U,ht.ABI.receiver,R),q=await $.tableRowRead(t,b,z.toString());let Y=null;try{Y=JSON.parse(q.toString())}catch{}Y&&(g(le=>le.map((ne,ce)=>ce===j?[...ne.filter(be=>be.index!==Y.index),{...Y,isDelete:Y.text==="",hasEdit:s?T===E:!1}].sort((be,xe)=>be.index-xe.index):ne)),await EI(1));return}catch(D){console.log(D)}};Et.useEffect(()=>{const j=setInterval(()=>window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(I),2e3);return()=>clearInterval(j)},[s]),Et.useEffect(()=>{const j=d.map((z,W)=>{if(z!==0){const D=setTimeout(async()=>{const w=a?z-5:-1;window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(()=>P(...l));for(let E=z;E>w;E--)window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(()=>P(W,E)),await EI(1)},1e3),U=setInterval(()=>{if(a&&window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.size===0){const w=parseInt(z*Math.random());window.GOBAL_PROMISE_QUEUE_WEB3_STORAGE.add(()=>P(W,w))}},5e3);return[D,U]}return!1}).filter(z=>z);return()=>{j.forEach(([z,W])=>{clearTimeout(z),clearInterval(W)})}},[s,b,d,l,i,a]);const B=f.flat().sort((j,z)=>j.timestamp-z.timestamp),F=B.length,L=d.reduce((j,z)=>j+z,0);return Et.useEffect(()=>{F===L&&L!==0&&(m({type:"loaded",msg:null}),c(!0))},[F,L]),Et.useEffect(()=>{const j=setTimeout(()=>{L===0&&p.type!=="error"&&m({type:"loaded",msg:null})},5e3);return()=>clearTimeout(j)},[L,l,p]),[B,x,A,p]},wU=()=>{const{open:t}=window.GOBAL_REACT_WEB3_useAppKit(),{address:e,isConnected:n}=window.GOBAL_REACT_WEB3_useAppKitAccount({namespace:"eip155"});return{isConnected:n,open:t,address:e}},hbe=fU(),fbe=pU(),pbe=gU(),gbe=mU(),mbe={Provider:rU,useCertificateCommissionID:lbe,usePrivateStorage:fU(!0),useStorage:pU(!0),useReadStorage:gU(!0),useTableStorage:mU(!0),useApp:wU,config:ht};exports.AbiConstructorNotFoundError=vW;exports.AbiConstructorParamsNotFoundError=CW;exports.AbiDecodingDataSizeTooSmallError=AW;exports.AbiDecodingZeroDataError=_W;exports.AbiEncodingArrayLengthMismatchError=iT;exports.AbiEncodingBytesSizeMismatchError=sT;exports.AbiEncodingLengthMismatchError=oT;exports.AbiErrorInputsNotFoundError=SW;exports.AbiErrorNotFoundError=IW;exports.AbiErrorSignatureNotFoundError=TW;exports.AbiEventNotFoundError=OW;exports.AbiEventSignatureEmptyTopicsError=NW;exports.AbiEventSignatureNotFoundError=RW;exports.AbiFunctionNotFoundError=gv;exports.AbiFunctionOutputsNotFoundError=PW;exports.AbiFunctionSignatureNotFoundError=kW;exports.AdapterController=pC;exports.AlertController=On;exports.ApiController=he;exports.AppKitError=go;exports.AssetController=gn;exports.AssetUtil=Nt;exports.AtomicReadyWalletRejectedUpgradeError=p0;exports.AtomicityNotSupportedError=g0;exports.BalanceUtil=J2;exports.BaseError=Fe;exports.BlockchainApiController=qe;exports.BundleTooLargeError=f0;exports.BytesSizeMismatchError=aT;exports.ChainController=v;exports.ChainDisconnectedError=a0;exports.ConnectionController=te;exports.ConnectorController=J;exports.ConstantsUtil=H;exports.ConstantsUtil$1=We;exports.ConstantsUtil$2=ir;exports.ConstantsUtil$3=Jg;exports.ContractUtil=FI;exports.CoreHelperUtil=ee;exports.DecodeLogDataMismatch=DW;exports.DecodeLogTopicsMismatch=BW;exports.DuplicateIdError=d0;exports.EnsController=Lf;exports.ErrorUtil=Fn;exports.ErrorUtil$1=fi;exports.EventEmitter=KR;exports.EventsController=we;exports.ExchangeController=_n;exports.ExecutionRevertedError=Y2;exports.FeeCapTooHighError=HT;exports.FeeCapTooLowError=zT;exports.FetchUtil=G0;exports.HelpersUtil=Rd;exports.HelpersUtil$1=dn;exports.HttpRequestError=Of;exports.InsufficientFundsError=KT;exports.IntegerOutOfRangeError=F2;exports.InternalRpcError=Wd;exports.IntrinsicGasTooHighError=ZT;exports.IntrinsicGasTooLowError=YT;exports.InvalidAbiDecodingTypeError=UW;exports.InvalidAbiEncodingTypeError=cT;exports.InvalidAddressError=V2;exports.InvalidArrayError=lT;exports.InvalidBytesBooleanError=FW;exports.InvalidBytesLengthError=MW;exports.InvalidDefinitionTypeError=uT;exports.InvalidDomainError=hN;exports.InvalidHexBooleanError=hT;exports.InvalidInputRpcError=e0;exports.InvalidParamsRpcError=Xp;exports.InvalidPrimaryTypeError=fN;exports.InvalidRequestRpcError=Jp;exports.InvalidStructTypeError=pN;exports.JsonRpcVersionUnsupportedError=r0;exports.LimitExceededRpcError=Hd;exports.LruMap=q2;exports.MathUtil=Km;exports.MethodNotFoundRpcError=Qp;exports.MethodNotSupportedRpcError=$l;exports.ModalController=je;exports.NavigationUtil=WI;exports.NetworkUtil=W4;exports.NonceMaxValueError=GT;exports.NonceTooHighError=VT;exports.NonceTooLowError=qT;exports.NumberUtil=Bd;exports.OnRampController=Ib;exports.OptionsController=V;exports.OptionsStateController=Fl;exports.ParseRpcError=Yp;exports.ParseUtil=hn;exports.Provider=rU;exports.ProviderController=dt;exports.ProviderDisconnectedError=o0;exports.ProviderRpcError=Ai;exports.ResourceNotFoundRpcError=t0;exports.ResourceUnavailableRpcError=n0;exports.RouterController=Z;exports.RpcError=Gr;exports.RpcRequestError=lC;exports.SIWXUtil=Hn;exports.SafeLocalStorage=$e;exports.SafeLocalStorageKeys=Be;exports.SendController=tt;exports.SizeExceedsPaddingSizeError=Z4;exports.SizeOverflowError=fT;exports.SliceOffsetOutOfBoundsError=K4;exports.SnackController=nt;exports.StorageUtil=re;exports.SwapApiUtil=IN;exports.SwitchChainError=c0;exports.ThemeController=kn;exports.TimeoutError=yv;exports.TipAboveFeeCapError=QT;exports.TransactionRejectedRpcError=jd;exports.TransactionTypeNotSupportedError=JT;exports.UiHelperUtil=zt;exports.UnauthorizedProviderError=i0;exports.UnknownBundleIdError=h0;exports.UnknownNodeError=Mj;exports.UnknownRpcError=jT;exports.UnsupportedChainIdError=u0;exports.UnsupportedNonOptionalCapabilityError=l0;exports.UnsupportedPackedAbiType=LW;exports.UnsupportedProviderMethodError=s0;exports.UrlRequiredError=AN;exports.UserRejectedRequestError=Ll;exports.W3mFrameHelpers=di;exports.W3mFrameProvider=G4;exports.W3mFrameRpcConstants=$t;exports.W3mFrameStorage=Cn;exports.abytes=bc;exports.addressResolverAbi=tH;exports.ahash=bT;exports.anumber=Kp;exports.arrayRegex=Ij;exports.assertSize=kc;exports.b=_;exports.batchGatewayAbi=Jj;exports.boolToBytes=gT;exports.boolToHex=Y4;exports.bytesRegex=yW;exports.bytesRegex$1=BT;exports.bytesToHex=W2;exports.bytesToHex$1=lj;exports.checksumAddress=nC;exports.concat=xc;exports.concatBytes=OT;exports.concatBytes$1=vT;exports.concatHex=rC;exports.config=ht;exports.createBatchScheduler=sN;exports.createTransport=fC;exports.css=_e;exports.customElement=se;exports.e=ng;exports.e$1=E3;exports.elementStyles=Dt;exports.encodeAbiParameters=G2;exports.encodeFunctionData=wv;exports.erc1271Abi=nH;exports.erc20Abi=Vg;exports.erc6492SignatureValidatorAbi=rH;exports.etherUnits=Bj;exports.execTyped=eT;exports.executeSocialLogin=gk;exports.fallback=xv;exports.formatAbiItem=Lm;exports.formatAbiItem$1=tT;exports.formatAbiParameters=lf;exports.formatGwei=Mm;exports.formatUnits=K2;exports.getAbiItem=LT;exports.getActiveCaipNetwork=gf;exports.getActiveNetworkTokenAddress=Fm;exports.getAddress=_j;exports.getArrayComponents=UT;exports.getContractAddress=Uj;exports.getNativeTokenAddress=DH;exports.getPreferredAccountType=rn;exports.getTypesForEIP712Domain=mN;exports.getUrl=Z2;exports.getW3mThemeVariables=Hp;exports.gweiUnits=WT;exports.hashDomain=yN;exports.hashMessage=dN;exports.hashStruct=dC;exports.hashTypedData=wN;exports.hexToBigInt=pT;exports.hexToBool=WW;exports.hexToBytes=j2;exports.hexToBytes$1=uj;exports.hexToNumber=jW;exports.hexToString=HW;exports.hmac=hC;exports.http=qg;exports.i=ae;exports.i$1=Wt;exports.initializeTheming=oue;exports.integerRegex=bW;exports.integerRegex$1=sC;exports.isAddress=Fd;exports.isBytes=yT;exports.isHex=q0;exports.isTupleRegex=xW;exports.keccak256=lo;exports.keccak_256=eC;exports.multicall3Abi=Yj;exports.n=N;exports.n$1=rg;exports.numberToBytes=mT;exports.numberToHex=$c;exports.o=me;exports.pad=_h;exports.padBytes=dT;exports.padHex=dc;exports.prepareEncodeFunctionData=FT;exports.presignMessagePrefix=lN;exports.proxy=Lt;exports.r=Q;exports.randomBytes=CT;exports.resetStyles=Ve;exports.sha256=nN;exports.sha384=Zj;exports.sha512=Kj;exports.shouldThrow=CN;exports.size=Nr;exports.slice=iC;exports.sliceBytes=$T;exports.sliceHex=DT;exports.stas=mbe;exports.stringToBytes=Q4;exports.stringToHex=Gp;exports.stringify=hc;exports.subscribe=fn;exports.subscribeKey=xn;exports.textResolverAbi=eH;exports.toBytes=J4;exports.toEventSelector=RT;exports.toFunctionSelector=cC;exports.toHex=qp;exports.toPrefixedMessage=uN;exports.toSignature=NT;exports.toSignatureHash=tC;exports.trim=cm;exports.uid=aN;exports.universalResolverResolveAbi=Qj;exports.universalResolverReverseAbi=Xj;exports.useApp=wU;exports.usePrivateStorage=hbe;exports.useReadStorage=pbe;exports.useStorage=fbe;exports.useTableStorage=gbe;exports.validateTypedData=gN;exports.vars=Jt;exports.wait=uC;exports.withErrorBoundary=_i;exports.withResolvers=iN;exports.withRetry=oN;exports.withTimeout=cN;
|