@reown/appkit-cdn 1.0.7 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{W3MFrameProviderSingleton-CTz2n0lO.js → W3MFrameProviderSingleton--HSg3nEz.js} +4029 -3503
- package/dist/{W3MFrameProviderSingleton-DQTwz0Iu.cjs → W3MFrameProviderSingleton-SRLqDWgO.cjs} +103 -103
- package/dist/ethers.cjs +1 -1
- package/dist/ethers.js +1529 -1609
- package/dist/{hooks.module-DqUWzNtD.js → hooks.module-B_N3JvEN.js} +1 -1
- package/dist/{hooks.module-LKtd6ff7.cjs → hooks.module-CmpdbiRp.cjs} +1 -1
- package/dist/{index-D5YBEcNb.js → index-2d-aRmQF.js} +20 -20
- package/dist/{index-CmzUtRNr.js → index-3Tles8GF.js} +2 -2
- package/dist/{index-Dq2Qc6hQ.cjs → index-3jinrfKR.cjs} +1 -1
- package/dist/{index-ChPlSHaF.cjs → index-BBwc05vi.cjs} +2 -2
- package/dist/{index-CBKmOjAo.cjs → index-BmU807V9.cjs} +1 -1
- package/dist/{index-DFW14Awr.cjs → index-CDAn9JfZ.cjs} +1 -1
- package/dist/{index-DSbDKpqj.cjs → index-CIzqgU5q.cjs} +1 -1
- package/dist/{index-Bmk1Ohcq.js → index-CJq05jyL.js} +17 -17
- package/dist/{index-BtFTDllB.js → index-CO1X8Cxc.js} +2 -2
- package/dist/{index-C7kbNRtJ.cjs → index-CQ4-w5mp.cjs} +1 -1
- package/dist/{index-CzyxiVR0.js → index-DDwvGjhD.js} +1 -1
- package/dist/{index-B7Uy57AM.js → index-DSzXjBUF.js} +2 -2
- package/dist/{index-Bn6ujDok.js → index-Dlv7g3Jh.js} +2 -2
- package/dist/{index-uB2KGMj2.js → index-_Sw9VWRf.js} +2 -2
- package/dist/{index-XWvMwQij.cjs → index-sfhFJZJt.cjs} +1 -1
- package/dist/{index-CERtK4zq.cjs → index-v7RnFZTP.cjs} +1 -1
- package/dist/{index.es-RYrbKE7v.cjs → index.es-CXs4mA1g.cjs} +2 -2
- package/dist/{index.es-Cgrh4cUP.js → index.es-TVTbcEaP.js} +2 -2
- package/dist/{metamask-sdk-C0m1muMC.js → metamask-sdk-CaVruToV.js} +1 -1
- package/dist/{metamask-sdk-vXyt2FVd.cjs → metamask-sdk-CsUP8MhX.cjs} +1 -1
- package/dist/{native-C9YiZkE_.js → native-BiFy-msx.js} +1 -1
- package/dist/{native-D13cmGux.cjs → native-gXKXtBE3.cjs} +1 -1
- package/dist/{w3m-modal-CHMPq1Um.cjs → w3m-modal-Dc1peoIh.cjs} +4 -4
- package/dist/{w3m-modal-7h2X-uBO.js → w3m-modal-DwtACkc9.js} +40 -37
- package/dist/wagmi-GgXheXd8.cjs +46 -0
- package/dist/wagmi-IogORaa7.js +18186 -0
- package/dist/wagmi.cjs +1 -1
- package/dist/wagmi.js +7 -7
- package/package.json +8 -6
- package/dist/wagmi-C7gaobmd.js +0 -26828
- package/dist/wagmi-DSpqRjMY.cjs +0 -47
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";const T=require("./W3MFrameProviderSingleton-SRLqDWgO.cjs"),$c="2.21.4";let zt={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:n})=>t?`${e??"https://viem.sh"}${t}${n?`#${n}`:""}`:void 0,version:$c};function Bf(e){zt=e}let P=class vo extends Error{constructor(t,n={}){var i;const r=(()=>{var c;return n.cause instanceof vo?n.cause.details:(c=n.cause)!=null&&c.message?n.cause.message:n.details})(),s=n.cause instanceof vo&&n.cause.docsPath||n.docsPath,o=(i=zt.getDocsUrl)==null?void 0:i.call(zt,{...n,docsPath:s}),a=[t||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...o?[`Docs: ${o}`]:[],...r?[`Details: ${r}`]:[],...zt.version?[`Version: ${zt.version}`]:[]].join(`
|
|
2
|
+
`);super(a,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=r,this.docsPath=s,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=$c}walk(t){return jc(this,t)}};function jc(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e?jc(e.cause,t):t?null:e}class qc extends P{constructor({max:t,min:n,signed:r,size:s,value:o}){super(`Number "${o}" is not in safe ${s?`${s*8}-bit ${r?"signed":"unsigned"} `:""}integer range ${t?`(${n} to ${t})`:`(above ${n})`}`,{name:"IntegerOutOfRangeError"})}}class zc extends P{constructor(t){super(`Bytes value "${t}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class _c extends P{constructor(t){super(`Hex value "${t}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}}class Gc extends P{constructor(t){super(`Hex value "${t}" is an odd length (${t.length}). It must be an even length.`,{name:"InvalidHexValueError"})}}class Hc extends P{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed ${n} bytes. Given size: ${t} bytes.`,{name:"SizeOverflowError"})}}class Zo extends P{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset "${t}" is out-of-bounds (size: ${r}).`,{name:"SliceOffsetOutOfBoundsError"})}}class Yo extends P{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (${t}) exceeds padding size (${n}).`,{name:"SizeExceedsPaddingSizeError"})}}class Na extends P{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} is expected to be ${n} ${r} long, but is ${t} ${r} long.`,{name:"InvalidBytesLengthError"})}}function Ne(e,{dir:t,size:n=32}={}){return typeof e=="string"?ke(e,{dir:t,size:n}):Qc(e,{dir:t,size:n})}function ke(e,{dir:t,size:n=32}={}){if(n===null)return e;const r=e.replace("0x","");if(r.length>n*2)throw new Yo({size:Math.ceil(r.length/2),targetSize:n,type:"hex"});return`0x${r[t==="right"?"padEnd":"padStart"](n*2,"0")}`}function Qc(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new Yo({size:e.length,targetSize:n,type:"bytes"});const r=new Uint8Array(n);for(let s=0;s<n;s++){const o=t==="right";r[o?s:n-s-1]=e[o?s:e.length-s-1]}return r}function F(e,{strict:t=!0}={}){return!e||typeof e!="string"?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")}function J(e){return F(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}function re(e,{dir:t="left"}={}){let n=typeof e=="string"?e.replace("0x",""):e,r=0;for(let s=0;s<n.length-1&&n[t==="left"?s:n.length-s-1].toString()==="0";s++)r++;return n=t==="left"?n.slice(r):n.slice(0,n.length-r),typeof e=="string"?(n.length===1&&t==="right"&&(n=`${n}0`),`0x${n.length%2===1?`0${n}`:n}`):n}const Nf=new TextEncoder;function ie(e,t={}){return typeof e=="number"||typeof e=="bigint"?Wc(e,t):typeof e=="boolean"?Kc(e,t):F(e)?se(e,t):et(e,t)}function Kc(e,t={}){const n=new Uint8Array(1);return n[0]=Number(e),typeof t.size=="number"?(xe(n,{size:t.size}),Ne(n,{size:t.size})):n}const $e={zero:48,nine:57,A:65,F:70,a:97,f:102};function ka(e){if(e>=$e.zero&&e<=$e.nine)return e-$e.zero;if(e>=$e.A&&e<=$e.F)return e-($e.A-10);if(e>=$e.a&&e<=$e.f)return e-($e.a-10)}function se(e,t={}){let n=e;t.size&&(xe(n,{size:t.size}),n=Ne(n,{dir:"right",size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);const s=r.length/2,o=new Uint8Array(s);for(let a=0,i=0;a<s;a++){const c=ka(r.charCodeAt(i++)),u=ka(r.charCodeAt(i++));if(c===void 0||u===void 0)throw new P(`Invalid byte sequence ("${r[i-2]}${r[i-1]}" in "${r}").`);o[a]=c*16+u}return o}function Wc(e,t){const n=N(e,t);return se(n)}function et(e,t={}){const n=Nf.encode(e);return typeof t.size=="number"?(xe(n,{size:t.size}),Ne(n,{dir:"right",size:t.size})):n}function xe(e,{size:t}){if(J(e)>t)throw new Hc({givenSize:J(e),maxSize:t})}function Co(e,t){const n=typeof t=="string"?{to:t}:t,r=n.to;return r==="number"?K(e,n):r==="bigint"?H(e,n):r==="string"?nt(e,n):r==="boolean"?Vc(e,n):se(e,n)}function H(e,t={}){const{signed:n}=t;t.size&&xe(e,{size:t.size});const r=BigInt(e);if(!n)return r;const s=(e.length-2)/2,o=(1n<<BigInt(s)*8n-1n)-1n;return r<=o?r:r-BigInt(`0x${"f".padStart(s*2,"f")}`)-1n}function Vc(e,t={}){let n=e;if(t.size&&(xe(n,{size:t.size}),n=re(n)),re(n)==="0x00")return!1;if(re(n)==="0x01")return!0;throw new _c(n)}function K(e,t={}){return Number(H(e,t))}function nt(e,t={}){let n=se(e);return t.size&&(xe(n,{size:t.size}),n=re(n,{dir:"right"})),new TextDecoder().decode(n)}const kf=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function L(e,t={}){return typeof e=="number"||typeof e=="bigint"?N(e,t):typeof e=="string"?_e(e,t):typeof e=="boolean"?is(e,t):W(e,t)}function is(e,t={}){const n=`0x${Number(e)}`;return typeof t.size=="number"?(xe(n,{size:t.size}),Ne(n,{size:t.size})):n}function W(e,t={}){let n="";for(let s=0;s<e.length;s++)n+=kf[e[s]];const r=`0x${n}`;return typeof t.size=="number"?(xe(r,{size:t.size}),Ne(r,{dir:"right",size:t.size})):r}function N(e,t={}){const{signed:n,size:r}=t,s=BigInt(e);let o;r?n?o=(1n<<BigInt(r)*8n-1n)-1n:o=2n**(BigInt(r)*8n)-1n:typeof e=="number"&&(o=BigInt(Number.MAX_SAFE_INTEGER));const a=typeof o=="bigint"&&n?-o-1n:0;if(o&&s>o||s<a){const c=typeof e=="bigint"?"n":"";throw new qc({max:o?`${o}${c}`:void 0,min:`${a}${c}`,signed:n,size:r,value:`${e}${c}`})}const i=`0x${(n&&s<0?(1n<<BigInt(r*8))+BigInt(s):s).toString(16)}`;return r?Ne(i,{size:r}):i}const Mf=new TextEncoder;function _e(e,t={}){const n=Mf.encode(e);return W(n,t)}async function Tf(e,{chain:t}){const{id:n,name:r,nativeCurrency:s,rpcUrls:o,blockExplorers:a}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:N(n),chainName:r,nativeCurrency:s,rpcUrls:o.default.http,blockExplorerUrls:a?Object.values(a).map(({url:i})=>i):void 0}]},{dedupe:!0,retryCount:0})}function Te(e,{includeName:t=!1}={}){if(e.type!=="function"&&e.type!=="event"&&e.type!=="error")throw new su(e.type);return`${e.name}(${as(e.inputs,{includeName:t})})`}function as(e,{includeName:t=!1}={}){return e?e.map(n=>Rf(n,{includeName:t})).join(t?", ":","):""}function Rf(e,{includeName:t}){return e.type.startsWith("tuple")?`(${as(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:"")}class Xo extends P{constructor({docsPath:t}){super(["A constructor was not found on the ABI.","Make sure you are using the correct ABI and that the constructor exists on it."].join(`
|
|
3
|
+
`),{docsPath:t,name:"AbiConstructorNotFoundError"})}}class Tn extends P{constructor({docsPath:t}){super(["Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.","Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists."].join(`
|
|
4
|
+
`),{docsPath:t,name:"AbiConstructorParamsNotFoundError"})}}class Df extends P{constructor({data:t,size:n}){super([`Data size of ${n} bytes is invalid.`,"Size must be in increments of 32 bytes (size % 32 === 0)."].join(`
|
|
5
|
+
`),{metaMessages:[`Data: ${t} (${n} bytes)`],name:"AbiDecodingDataSizeInvalidError"})}}class ei extends P{constructor({data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for given parameters.`].join(`
|
|
6
|
+
`),{metaMessages:[`Params: (${as(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:"AbiDecodingDataSizeTooSmallError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t,this.params=n,this.size=r}}class Hn extends P{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}}class Jc extends P{constructor({expectedLength:t,givenLength:n,type:r}){super([`ABI encoding array length mismatch for type ${r}.`,`Expected length: ${t}`,`Given length: ${n}`].join(`
|
|
7
|
+
`),{name:"AbiEncodingArrayLengthMismatchError"})}}class Zc extends P{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${J(n)}) does not match expected size (bytes${t}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class ti extends P{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${n}`].join(`
|
|
8
|
+
`),{name:"AbiEncodingLengthMismatchError"})}}class Yc extends P{constructor(t,{docsPath:n}){super([`Arguments (\`args\`) were provided to "${t}", but "${t}" on the ABI does not contain any parameters (\`inputs\`).`,"Cannot encode error result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the inputs exist on it."].join(`
|
|
9
|
+
`),{docsPath:n,name:"AbiErrorInputsNotFoundError"})}}class Io extends P{constructor(t,{docsPath:n}={}){super([`Error ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join(`
|
|
10
|
+
`),{docsPath:n,name:"AbiErrorNotFoundError"})}}class ni extends P{constructor(t,{docsPath:n}){super([`Encoded error signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${t}.`].join(`
|
|
11
|
+
`),{docsPath:n,name:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=t}}class Xc extends P{constructor({docsPath:t}){super("Cannot extract event signature from empty topics.",{docsPath:t,name:"AbiEventSignatureEmptyTopicsError"})}}class ri extends P{constructor(t,{docsPath:n}){super([`Encoded event signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${t}.`].join(`
|
|
12
|
+
`),{docsPath:n,name:"AbiEventSignatureNotFoundError"})}}class xo extends P{constructor(t,{docsPath:n}={}){super([`Event ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it."].join(`
|
|
13
|
+
`),{docsPath:n,name:"AbiEventNotFoundError"})}}class It extends P{constructor(t,{docsPath:n}={}){super([`Function ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(`
|
|
14
|
+
`),{docsPath:n,name:"AbiFunctionNotFoundError"})}}class si extends P{constructor(t,{docsPath:n}){super([`Function "${t}" does not contain any \`outputs\` on ABI.`,"Cannot decode function result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the function exists on it."].join(`
|
|
15
|
+
`),{docsPath:n,name:"AbiFunctionOutputsNotFoundError"})}}class eu extends P{constructor(t,{docsPath:n}){super([`Encoded function signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${t}.`].join(`
|
|
16
|
+
`),{docsPath:n,name:"AbiFunctionSignatureNotFoundError"})}}class Uf extends P{constructor(t,n){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${t.type}\` in \`${Te(t.abiItem)}\`, and`,`\`${n.type}\` in \`${Te(n.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}class oi extends P{constructor({expectedSize:t,givenSize:n}){super(`Expected bytes${t}, got bytes${n}.`,{name:"BytesSizeMismatchError"})}}class Vt extends P{constructor({abiItem:t,data:n,params:r,size:s}){super([`Data size of ${s} bytes is too small for non-indexed event parameters.`].join(`
|
|
17
|
+
`),{metaMessages:[`Params: (${as(r,{includeName:!0})})`,`Data: ${n} (${s} bytes)`],name:"DecodeLogDataMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t,this.data=n,this.params=r,this.size=s}}class Qn extends P{constructor({abiItem:t,param:n}){super([`Expected a topic for indexed event parameter${n.name?` "${n.name}"`:""} on event "${Te(t,{includeName:!0})}".`].join(`
|
|
18
|
+
`),{name:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t}}class tu extends P{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
|
|
19
|
+
`),{docsPath:n,name:"InvalidAbiEncodingType"})}}class nu extends P{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
|
|
20
|
+
`),{docsPath:n,name:"InvalidAbiDecodingType"})}}class ru extends P{constructor(t){super([`Value "${t}" is not a valid array.`].join(`
|
|
21
|
+
`),{name:"InvalidArrayError"})}}class su extends P{constructor(t){super([`"${t}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
|
|
22
|
+
`),{name:"InvalidDefinitionTypeError"})}}class ou extends P{constructor(t){super(`Type "${t}" is not supported for packed encoding.`,{name:"UnsupportedPackedAbiType"})}}function ve(e){return typeof e[0]=="string"?we(e):iu(e)}function iu(e){let t=0;for(const s of e)t+=s.length;const n=new Uint8Array(t);let r=0;for(const s of e)n.set(s,r),r+=s.length;return n}function we(e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}class ce extends P{constructor({address:t}){super(`Address "${t}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}class cs extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){const n=super.get(t);return super.has(t)&&n!==void 0&&(this.delete(t),super.set(t,n)),n}set(t,n){if(super.set(t,n),this.maxSize&&this.size>this.maxSize){const r=this.keys().next().value;r&&this.delete(r)}return this}}function Dr(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function Of(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Kn(e,...t){if(!Of(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Ff(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Dr(e.outputLen),Dr(e.blockLen)}function Jt(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function au(e,t){Kn(e);const n=t.outputLen;if(e.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}const gr=BigInt(2**32-1),Ma=BigInt(32);function Lf(e,t=!1){return t?{h:Number(e&gr),l:Number(e>>Ma&gr)}:{h:Number(e>>Ma&gr)|0,l:Number(e&gr)|0}}function $f(e,t=!1){let n=new Uint32Array(e.length),r=new Uint32Array(e.length);for(let s=0;s<e.length;s++){const{h:o,l:a}=Lf(e[s],t);[n[s],r[s]]=[o,a]}return[n,r]}const jf=(e,t,n)=>e<<n|t>>>32-n,qf=(e,t,n)=>t<<n|e>>>32-n,zf=(e,t,n)=>t<<n-32|e>>>64-n,_f=(e,t,n)=>e<<n-32|t>>>64-n,Ks=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Gf=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),Ws=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),De=(e,t)=>e<<32-t|e>>>t,yr=(e,t)=>e<<t|e>>>32-t>>>0,Ta=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Hf=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;function Ra(e){for(let t=0;t<e.length;t++)e[t]=Hf(e[t])}function Qf(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function us(e){return typeof e=="string"&&(e=Qf(e)),Kn(e),e}function Kf(...e){let t=0;for(let r=0;r<e.length;r++){const s=e[r];Kn(s),t+=s.length}const n=new Uint8Array(t);for(let r=0,s=0;r<e.length;r++){const o=e[r];n.set(o,s),s+=o.length}return n}class ii{clone(){return this._cloneInto()}}function ai(e){const t=r=>e().update(us(r)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Wf(e=32){if(Ks&&typeof Ks.getRandomValues=="function")return Ks.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}const cu=[],uu=[],lu=[],Vf=BigInt(0),xn=BigInt(1),Jf=BigInt(2),Zf=BigInt(7),Yf=BigInt(256),Xf=BigInt(113);for(let e=0,t=xn,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],cu.push(2*(5*r+n)),uu.push((e+1)*(e+2)/2%64);let s=Vf;for(let o=0;o<7;o++)t=(t<<xn^(t>>Zf)*Xf)%Yf,t&Jf&&(s^=xn<<(xn<<BigInt(o))-xn);lu.push(s)}const[eh,th]=$f(lu,!0),Da=(e,t,n)=>n>32?zf(e,t,n):jf(e,t,n),Ua=(e,t,n)=>n>32?_f(e,t,n):qf(e,t,n);function nh(e,t=24){const n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let a=0;a<10;a++)n[a]=e[a]^e[a+10]^e[a+20]^e[a+30]^e[a+40];for(let a=0;a<10;a+=2){const i=(a+8)%10,c=(a+2)%10,u=n[c],l=n[c+1],d=Da(u,l,1)^n[i],f=Ua(u,l,1)^n[i+1];for(let h=0;h<50;h+=10)e[a+h]^=d,e[a+h+1]^=f}let s=e[2],o=e[3];for(let a=0;a<24;a++){const i=uu[a],c=Da(s,o,i),u=Ua(s,o,i),l=cu[a];s=e[l],o=e[l+1],e[l]=c,e[l+1]=u}for(let a=0;a<50;a+=10){for(let i=0;i<10;i++)n[i]=e[a+i];for(let i=0;i<10;i++)e[a+i]^=~n[(i+2)%10]&n[(i+4)%10]}e[0]^=eh[r],e[1]^=th[r]}n.fill(0)}class ci extends ii{constructor(t,n,r,s=!1,o=24){if(super(),this.blockLen=t,this.suffix=n,this.outputLen=r,this.enableXOF=s,this.rounds=o,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,Dr(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=Gf(this.state)}keccak(){Ta||Ra(this.state32),nh(this.state32,this.rounds),Ta||Ra(this.state32),this.posOut=0,this.pos=0}update(t){Jt(this);const{blockLen:n,state:r}=this;t=us(t);const s=t.length;for(let o=0;o<s;){const a=Math.min(n-this.pos,s-o);for(let i=0;i<a;i++)r[this.pos++]^=t[o++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:t,suffix:n,pos:r,blockLen:s}=this;t[r]^=n,n&128&&r===s-1&&this.keccak(),t[s-1]^=128,this.keccak()}writeInto(t){Jt(this,!1),Kn(t),this.finish();const n=this.state,{blockLen:r}=this;for(let s=0,o=t.length;s<o;){this.posOut>=r&&this.keccak();const a=Math.min(r-this.posOut,o-s);t.set(n.subarray(this.posOut,this.posOut+a),s),this.posOut+=a,s+=a}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return Dr(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(au(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:n,suffix:r,outputLen:s,rounds:o,enableXOF:a}=this;return t||(t=new ci(n,r,s,a,o)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=o,t.suffix=r,t.outputLen=s,t.enableXOF=a,t.destroyed=this.destroyed,t}}const rh=(e,t,n)=>ai(()=>new ci(t,e,n)),sh=rh(1,136,256/8);function Z(e,t){const n=t||"hex",r=sh(F(e,{strict:!1})?ie(e):e);return n==="bytes"?r:L(r)}const Vs=new cs(8192);function pn(e,t){if(Vs.has(`${e}.${t}`))return Vs.get(`${e}.${t}`);const n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Z(et(n),"bytes"),s=(t?n.substring(`${t}0x`.length):n).split("");for(let a=0;a<40;a+=2)r[a>>1]>>4>=8&&s[a]&&(s[a]=s[a].toUpperCase()),(r[a>>1]&15)>=8&&s[a+1]&&(s[a+1]=s[a+1].toUpperCase());const o=`0x${s.join("")}`;return Vs.set(`${e}.${t}`,o),o}function $(e,t){if(!ee(e,{strict:!1}))throw new ce({address:e});return pn(e,t)}const oh=/^0x[a-fA-F0-9]{40}$/,Js=new cs(8192);function ee(e,t){const{strict:n=!0}=t??{},r=`${e}.${n}`;if(Js.has(r))return Js.get(r);const s=oh.test(e)?e.toLowerCase()===e?!0:n?pn(e)===e:!0:!1;return Js.set(r,s),s}function Ge(e,t,n,{strict:r}={}){return F(e,{strict:!1})?ls(e,t,n,{strict:r}):ui(e,t,n,{strict:r})}function du(e,t){if(typeof t=="number"&&t>0&&t>J(e)-1)throw new Zo({offset:t,position:"start",size:J(e)})}function fu(e,t,n){if(typeof t=="number"&&typeof n=="number"&&J(e)!==n-t)throw new Zo({offset:n,position:"end",size:J(e)})}function ui(e,t,n,{strict:r}={}){du(e,t);const s=e.slice(t,n);return r&&fu(s,t,n),s}function ls(e,t,n,{strict:r}={}){du(e,t);const s=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return r&&fu(s,t,n),s}function Oe(e,t){if(e.length!==t.length)throw new ti({expectedLength:e.length,givenLength:t.length});const n=ih({params:e,values:t}),r=di(n);return r.length===0?"0x":r}function ih({params:e,values:t}){const n=[];for(let r=0;r<e.length;r++)n.push(li({param:e[r],value:t[r]}));return n}function li({param:e,value:t}){const n=fi(e.type);if(n){const[r,s]=n;return ch(t,{length:r,param:{...e,type:s}})}if(e.type==="tuple")return hh(t,{param:e});if(e.type==="address")return ah(t);if(e.type==="bool")return lh(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){const r=e.type.startsWith("int");return dh(t,{signed:r})}if(e.type.startsWith("bytes"))return uh(t,{param:e});if(e.type==="string")return fh(t);throw new tu(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function di(e){let t=0;for(let o=0;o<e.length;o++){const{dynamic:a,encoded:i}=e[o];a?t+=32:t+=J(i)}const n=[],r=[];let s=0;for(let o=0;o<e.length;o++){const{dynamic:a,encoded:i}=e[o];a?(n.push(N(t+s,{size:32})),r.push(i),s+=J(i)):n.push(i)}return ve([...n,...r])}function ah(e){if(!ee(e))throw new ce({address:e});return{dynamic:!1,encoded:ke(e.toLowerCase())}}function ch(e,{length:t,param:n}){const r=t===null;if(!Array.isArray(e))throw new ru(e);if(!r&&e.length!==t)throw new Jc({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let s=!1;const o=[];for(let a=0;a<e.length;a++){const i=li({param:n,value:e[a]});i.dynamic&&(s=!0),o.push(i)}if(r||s){const a=di(o);if(r){const i=N(o.length,{size:32});return{dynamic:!0,encoded:o.length>0?ve([i,a]):i}}if(s)return{dynamic:!0,encoded:a}}return{dynamic:!1,encoded:ve(o.map(({encoded:a})=>a))}}function uh(e,{param:t}){const[,n]=t.type.split("bytes"),r=J(e);if(!n){let s=e;return r%32!==0&&(s=ke(s,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:ve([ke(N(r,{size:32})),s])}}if(r!==Number.parseInt(n))throw new Zc({expectedSize:Number.parseInt(n),value:e});return{dynamic:!1,encoded:ke(e,{dir:"right"})}}function lh(e){if(typeof e!="boolean")throw new P(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:ke(is(e))}}function dh(e,{signed:t}){return{dynamic:!1,encoded:N(e,{size:32,signed:t})}}function fh(e){const t=_e(e),n=Math.ceil(J(t)/32),r=[];for(let s=0;s<n;s++)r.push(ke(Ge(t,s*32,(s+1)*32),{dir:"right"}));return{dynamic:!0,encoded:ve([ke(N(J(t),{size:32})),...r])}}function hh(e,{param:t}){let n=!1;const r=[];for(let s=0;s<t.components.length;s++){const o=t.components[s],a=Array.isArray(e)?s:o.name,i=li({param:o,value:e[a]});r.push(i),i.dynamic&&(n=!0)}return{dynamic:n,encoded:n?di(r):ve(r.map(({encoded:s})=>s))}}function fi(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}const Zs="/docs/contract/encodeDeployData";function Wn(e){const{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;const s=t.find(a=>"type"in a&&a.type==="constructor");if(!s)throw new Xo({docsPath:Zs});if(!("inputs"in s))throw new Tn({docsPath:Zs});if(!s.inputs||s.inputs.length===0)throw new Tn({docsPath:Zs});const o=Oe(s.inputs,n);return we([r,o])}function le(e){return typeof e=="string"?{address:e,type:"json-rpc"}:e}class Vn extends P{constructor({docsPath:t}={}){super(["Could not find an Account to execute with this Action.","Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."].join(`
|
|
23
|
+
`),{docsPath:t,docsSlug:"account",name:"AccountNotFoundError"})}}class Ys extends P{constructor({docsPath:t,metaMessages:n,type:r}){super(`Account type "${r}" is not supported.`,{docsPath:t,metaMessages:n,name:"AccountTypeNotSupportedError"})}}function ph(e){const t=Z(`0x${e.substring(4)}`).substring(26);return pn(`0x${t}`)}async function hu({hash:e,signature:t}){const n=F(e)?e:L(e),{secp256k1:r}=await Promise.resolve().then(()=>bw);return`0x${(()=>{if(typeof t=="object"&&"r"in t&&"s"in t){const{r:u,s:l,v:d,yParity:f}=t,h=Number(f??d),p=Oa(h);return new r.Signature(H(u),H(l)).addRecoveryBit(p)}const a=F(t)?t:L(t),i=K(`0x${a.slice(130)}`),c=Oa(i);return r.Signature.fromCompact(a.substring(2,130)).addRecoveryBit(c)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Oa(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw new Error("Invalid yParityOrV value")}async function Mt({hash:e,signature:t}){return ph(await hu({hash:e,signature:t}))}class Fa extends P{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`,{name:"NegativeOffsetError"})}}class pu extends P{constructor({length:t,position:n}){super(`Position \`${n}\` is out of bounds (\`0 < position < ${t}\`).`,{name:"PositionOutOfBoundsError"})}}class mh extends P{constructor({count:t,limit:n}){super(`Recursive read limit of \`${n}\` exceeded (recursive read count: \`${t}\`).`,{name:"RecursiveReadLimitExceededError"})}}const gh={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new mh({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new pu({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Fa({offset:e});const t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Fa({offset:e});const t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){const n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){const t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){const t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){const t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();const e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();const n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();const e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();const e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();const e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();const e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){const t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Zt(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(gh);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}function Re(e,t="hex"){const n=mu(e),r=Zt(new Uint8Array(n.length));return n.encode(r),t==="hex"?W(r.bytes):r.bytes}function yh(e,t="bytes"){return Re(e,t)}function wh(e,t="hex"){return Re(e,t)}function mu(e){return Array.isArray(e)?bh(e.map(t=>mu(t))):Ah(e)}function bh(e){const t=e.reduce((s,o)=>s+o.length,0),n=gu(t);return{length:t<=55?1+t:1+n+t,encode(s){t<=55?s.pushByte(192+t):(s.pushByte(247+n),n===1?s.pushUint8(t):n===2?s.pushUint16(t):n===3?s.pushUint24(t):s.pushUint32(t));for(const{encode:o}of e)o(s)}}}function Ah(e){const t=typeof e=="string"?se(e):e,n=gu(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(s){t.length===1&&t[0]<128?s.pushBytes(t):t.length<=55?(s.pushByte(128+t.length),s.pushBytes(t)):(s.pushByte(183+n),n===1?s.pushUint8(t.length):n===2?s.pushUint16(t.length):n===3?s.pushUint24(t.length):s.pushUint32(t.length),s.pushBytes(t))}}}function gu(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new P("Length is too large.")}function vh(e){const{chainId:t,contractAddress:n,nonce:r,to:s}=e,o=Z(we(["0x05",Re([N(t),n,N(r)])]));return s==="bytes"?se(o):o}async function yu(e){const{authorization:t,signature:n}=e;return Mt({hash:vh(t),signature:n??t})}class Ur extends P{constructor({blockNumber:t,chain:n,contract:r}){super(`Chain "${n.name}" does not support contract "${r.name}".`,{metaMessages:["This could be due to any of the following:",...t&&r.blockCreated&&r.blockCreated>t?[`- The contract "${r.name}" was not deployed until block ${r.blockCreated} (current block ${t}).`]:[`- The chain does not have the contract "${r.name}" configured.`]],name:"ChainDoesNotSupportContract"})}}class wu extends P{constructor({chain:t,currentChainId:n}){super(`The current chain of the wallet (id: ${n}) does not match the target chain for the transaction (id: ${t.id} – ${t.name}).`,{metaMessages:[`Current Chain ID: ${n}`,`Expected Chain ID: ${t.id} – ${t.name}`],name:"ChainMismatchError"})}}class bu extends P{constructor(){super(["No chain was provided to the request.","Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient."].join(`
|
|
24
|
+
`),{name:"ChainNotFoundError"})}}class hi extends P{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}class Jn extends P{constructor({chainId:t}){super(typeof t=="number"?`Chain ID "${t}" is invalid.`:"Chain ID is invalid.",{name:"InvalidChainIdError"})}}function pi({chain:e,currentChainId:t}){if(!e)throw new bu;if(t!==e.id)throw new wu({chain:e,currentChainId:t})}const mi={gwei:9,wei:18},gi={ether:-9,wei:9},yi={ether:-18,gwei:-9};function ye(e,t){let n=e.toString();const r=n.startsWith("-");r&&(n=n.slice(1)),n=n.padStart(t,"0");let[s,o]=[n.slice(0,n.length-t),n.slice(n.length-t)];return o=o.replace(/(0+)$/,""),`${r?"-":""}${s||"0"}${o?`.${o}`:""}`}function ue(e,t="wei"){return ye(e,gi[t])}class wt extends P{constructor({cause:t,message:n}={}){var s;const r=(s=n==null?void 0:n.replace("execution reverted: ",""))==null?void 0:s.replace("execution reverted","");super(`Execution reverted ${r?`with reason: ${r}`:"for an unknown reason"}.`,{cause:t,name:"ExecutionRevertedError"})}}Object.defineProperty(wt,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(wt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class rt extends P{constructor({cause:t,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${ue(n)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:t,name:"FeeCapTooHighError"})}}Object.defineProperty(rt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});class Or extends P{constructor({cause:t,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${ue(n)}`:""} gwei) cannot be lower than the block base fee.`,{cause:t,name:"FeeCapTooLowError"})}}Object.defineProperty(Or,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/});class Fr extends P{constructor({cause:t,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:""}is higher than the next one expected.`,{cause:t,name:"NonceTooHighError"})}}Object.defineProperty(Fr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class Lr extends P{constructor({cause:t,nonce:n}={}){super([`Nonce provided for the transaction ${n?`(${n}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(`
|
|
25
|
+
`),{cause:t,name:"NonceTooLowError"})}}Object.defineProperty(Lr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class $r extends P{constructor({cause:t,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:""}exceeds the maximum allowed nonce.`,{cause:t,name:"NonceMaxValueError"})}}Object.defineProperty($r,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class jr extends P{constructor({cause:t}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
|
|
26
|
+
`),{cause:t,metaMessages:["This error could arise when the account does not have enough funds to:"," - pay for the total gas fee,"," - pay for the value to send."," ","The cost of the transaction is calculated as `gas * gas fee + value`, where:"," - `gas` is the amount of gas needed for transaction to execute,"," - `gas fee` is the gas fee,"," - `value` is the amount of ether to send to the recipient."],name:"InsufficientFundsError"})}}Object.defineProperty(jr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class qr extends P{constructor({cause:t,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:t,name:"IntrinsicGasTooHighError"})}}Object.defineProperty(qr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class zr extends P{constructor({cause:t,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:""}provided for the transaction is too low.`,{cause:t,name:"IntrinsicGasTooLowError"})}}Object.defineProperty(zr,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class _r extends P{constructor({cause:t}){super("The transaction type is not supported for this chain.",{cause:t,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(_r,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class Yt extends P{constructor({cause:t,maxPriorityFeePerGas:n,maxFeePerGas:r}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${n?` = ${ue(n)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${r?` = ${ue(r)} gwei`:""}).`].join(`
|
|
27
|
+
`),{cause:t,name:"TipAboveFeeCapError"})}}Object.defineProperty(Yt,"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 Zn extends P{constructor({cause:t}){super(`An error occurred while executing: ${t==null?void 0:t.shortMessage}`,{cause:t,name:"UnknownNodeError"})}}function ds(e,t="wei"){return ye(e,mi[t])}function Yn(e){const t=Object.entries(e).map(([r,s])=>s===void 0||s===!1?null:[r,s]).filter(Boolean),n=t.reduce((r,[s])=>Math.max(r,s.length),0);return t.map(([r,s])=>` ${`${r}:`.padEnd(n+1)} ${s}`).join(`
|
|
28
|
+
`)}class Au extends P{constructor(){super(["Cannot specify both a `gasPrice` and a `maxFeePerGas`/`maxPriorityFeePerGas`.","Use `maxFeePerGas`/`maxPriorityFeePerGas` for EIP-1559 compatible networks, and `gasPrice` for others."].join(`
|
|
29
|
+
`),{name:"FeeConflictError"})}}class wi extends P{constructor({v:t}){super(`Invalid \`v\` value "${t}". Expected 27 or 28.`,{name:"InvalidLegacyVError"})}}class vu extends P{constructor({transaction:t}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",Yn(t),"}","","To infer the type, either provide:","- a `type` to the Transaction, or","- an EIP-1559 Transaction with `maxFeePerGas`, or","- an EIP-2930 Transaction with `gasPrice` & `accessList`, or","- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or","- an EIP-7702 Transaction with `authorizationList`, or","- a Legacy Transaction with `gasPrice`"],name:"InvalidSerializableTransactionError"})}}class Cu extends P{constructor({serializedType:t}){super(`Serialized transaction type "${t}" is invalid.`,{name:"InvalidSerializedTransactionType"}),Object.defineProperty(this,"serializedType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=t}}class mn extends P{constructor({attributes:t,serializedTransaction:n,type:r}){const s=Object.entries(t).map(([o,a])=>typeof a>"u"?o:void 0).filter(Boolean);super(`Invalid serialized transaction of type "${r}" was provided.`,{metaMessages:[`Serialized Transaction: "${n}"`,s.length>0?`Missing Attributes: ${s.join(", ")}`:""].filter(Boolean),name:"InvalidSerializedTransactionError"}),Object.defineProperty(this,"serializedTransaction",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=n,this.type=r}}class Iu extends P{constructor({storageKey:t}){super(`Size for storage key "${t}" is invalid. Expected 32 bytes. Got ${Math.floor((t.length-2)/2)} bytes.`,{name:"InvalidStorageKeySizeError"})}}class xu extends P{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:a,gasPrice:i,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:l,to:d,value:f}){var p;const h=Yn({chain:s&&`${s==null?void 0:s.name} (id: ${s==null?void 0:s.id})`,from:n==null?void 0:n.address,to:d,value:typeof f<"u"&&`${ds(f)} ${((p=s==null?void 0:s.nativeCurrency)==null?void 0:p.symbol)||"ETH"}`,data:o,gas:a,gasPrice:typeof i<"u"&&`${ue(i)} gwei`,maxFeePerGas:typeof c<"u"&&`${ue(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${ue(u)} gwei`,nonce:l});super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Request Arguments:",h].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class bi extends P{constructor({blockHash:t,blockNumber:n,blockTag:r,hash:s,index:o}){let a="Transaction";r&&o!==void 0&&(a=`Transaction at block time "${r}" at index "${o}"`),t&&o!==void 0&&(a=`Transaction at block hash "${t}" at index "${o}"`),n&&o!==void 0&&(a=`Transaction at block number "${n}" at index "${o}"`),s&&(a=`Transaction with hash "${s}"`),super(`${a} could not be found.`,{name:"TransactionNotFoundError"})}}class Ai extends P{constructor({hash:t}){super(`Transaction receipt with hash "${t}" could not be found. The Transaction may not be processed on a block yet.`,{name:"TransactionReceiptNotFoundError"})}}class Eo extends P{constructor({hash:t}){super(`Timed out while waiting for transaction with hash "${t}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}const X=(e,t,n)=>JSON.stringify(e,(r,s)=>{const o=typeof s=="bigint"?s.toString():s;return typeof t=="function"?t(r,o):o},n),Ch=e=>e,Tt=e=>e;class tt extends P{constructor({body:t,cause:n,details:r,headers:s,status:o,url:a}){super("HTTP request failed.",{cause:n,details:r,metaMessages:[o&&`Status: ${o}`,`URL: ${Tt(a)}`,t&&`Request body: ${X(t)}`].filter(Boolean),name:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=t,this.headers=s,this.status=o,this.url=a}}class Po extends P{constructor({body:t,cause:n,details:r,url:s}){super("WebSocket request failed.",{cause:n,details:r,metaMessages:[`URL: ${Tt(s)}`,t&&`Request body: ${X(t)}`].filter(Boolean),name:"WebSocketRequestError"})}}class vt extends P{constructor({body:t,error:n,url:r}){super("RPC Request failed.",{cause:n,details:n.message,metaMessages:[`URL: ${Tt(r)}`,`Request body: ${X(t)}`],name:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=n.code}}class Rn extends P{constructor({url:t}={}){super("The socket has been closed.",{metaMessages:[t&&`URL: ${Tt(t)}`].filter(Boolean),name:"SocketClosedError"})}}class Gr extends P{constructor({body:t,url:n}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${Tt(n)}`,`Request body: ${X(t)}`],name:"TimeoutError"})}}const Ih=-1;class de extends P{constructor(t,{code:n,docsPath:r,metaMessages:s,name:o,shortMessage:a}){super(a,{cause:t,docsPath:r,metaMessages:s||(t==null?void 0:t.metaMessages),name:o||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=o||t.name,this.code=t instanceof vt?t.code:n??Ih}}let Rt=class extends de{constructor(t,n){super(t,n),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=n.data}};class Xt extends de{constructor(t){super(t,{code:Xt.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(Xt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class en extends de{constructor(t){super(t,{code:en.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(en,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class tn extends de{constructor(t,{method:n}={}){super(t,{code:tn.code,name:"MethodNotFoundRpcError",shortMessage:`The method${n?` "${n}"`:""} does not exist / is not available.`})}}Object.defineProperty(tn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class nn extends de{constructor(t){super(t,{code:nn.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
|
|
30
|
+
`)})}}Object.defineProperty(nn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class st extends de{constructor(t){super(t,{code:st.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(st,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class ot extends de{constructor(t){super(t,{code:ot.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
|
|
31
|
+
`)})}}Object.defineProperty(ot,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class rn extends de{constructor(t){super(t,{code:rn.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(rn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class pe extends de{constructor(t){super(t,{code:pe.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(pe,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class xt extends de{constructor(t){super(t,{code:xt.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(xt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class sn extends de{constructor(t,{method:n}={}){super(t,{code:sn.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${n?` "${n}"`:""} is not implemented.`})}}Object.defineProperty(sn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class Et extends de{constructor(t){super(t,{code:Et.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(Et,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class on extends de{constructor(t){super(t,{code:on.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(on,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class D extends Rt{constructor(t){super(t,{code:D.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(D,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class an extends Rt{constructor(t){super(t,{code:an.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(an,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class cn extends Rt{constructor(t,{method:n}={}){super(t,{code:cn.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${n?` " ${n}"`:""}.`})}}Object.defineProperty(cn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class it extends Rt{constructor(t){super(t,{code:it.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(it,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class Pt extends Rt{constructor(t){super(t,{code:Pt.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(Pt,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class V extends Rt{constructor(t){super(t,{code:V.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(V,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Eu extends de{constructor(t){super(t,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}function vi(e,t){const n=(e.details||"").toLowerCase(),r=e instanceof P?e.walk(s=>s.code===wt.code):e;return r instanceof P?new wt({cause:e,message:r.details}):wt.nodeMessage.test(n)?new wt({cause:e,message:e.details}):rt.nodeMessage.test(n)?new rt({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):Or.nodeMessage.test(n)?new Or({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):Fr.nodeMessage.test(n)?new Fr({cause:e,nonce:t==null?void 0:t.nonce}):Lr.nodeMessage.test(n)?new Lr({cause:e,nonce:t==null?void 0:t.nonce}):$r.nodeMessage.test(n)?new $r({cause:e,nonce:t==null?void 0:t.nonce}):jr.nodeMessage.test(n)?new jr({cause:e}):qr.nodeMessage.test(n)?new qr({cause:e,gas:t==null?void 0:t.gas}):zr.nodeMessage.test(n)?new zr({cause:e,gas:t==null?void 0:t.gas}):_r.nodeMessage.test(n)?new _r({cause:e}):Yt.nodeMessage.test(n)?new Yt({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas,maxPriorityFeePerGas:t==null?void 0:t.maxPriorityFeePerGas}):new Zn({cause:e})}function xh(e,{docsPath:t,...n}){const r=(()=>{const s=vi(e,n);return s instanceof Zn?e:s})();return new xu(r,{docsPath:t,...n})}function fs(e,{format:t}){if(!t)return{};const n={};function r(o){const a=Object.keys(o);for(const i of a)i in e&&(n[i]=e[i]),o[i]&&typeof o[i]=="object"&&!Array.isArray(o[i])&&r(o[i])}const s=t(e||{});return r(s),n}function hs(e,t){return({exclude:n,format:r})=>({exclude:n,format:s=>{const o=t(s);if(n)for(const a of n)delete o[a];return{...o,...r(s)}},type:e})}const Pu={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function Dt(e){const t={};return typeof e.authorizationList<"u"&&(t.authorizationList=Ph(e.authorizationList)),typeof e.accessList<"u"&&(t.accessList=e.accessList),typeof e.blobVersionedHashes<"u"&&(t.blobVersionedHashes=e.blobVersionedHashes),typeof e.blobs<"u"&&(typeof e.blobs[0]!="string"?t.blobs=e.blobs.map(n=>W(n)):t.blobs=e.blobs),typeof e.data<"u"&&(t.data=e.data),typeof e.from<"u"&&(t.from=e.from),typeof e.gas<"u"&&(t.gas=N(e.gas)),typeof e.gasPrice<"u"&&(t.gasPrice=N(e.gasPrice)),typeof e.maxFeePerBlobGas<"u"&&(t.maxFeePerBlobGas=N(e.maxFeePerBlobGas)),typeof e.maxFeePerGas<"u"&&(t.maxFeePerGas=N(e.maxFeePerGas)),typeof e.maxPriorityFeePerGas<"u"&&(t.maxPriorityFeePerGas=N(e.maxPriorityFeePerGas)),typeof e.nonce<"u"&&(t.nonce=N(e.nonce)),typeof e.to<"u"&&(t.to=e.to),typeof e.type<"u"&&(t.type=Pu[e.type]),typeof e.value<"u"&&(t.value=N(e.value)),t}const Eh=hs("transactionRequest",Dt);function Ph(e){return e.map(t=>({address:t.contractAddress,r:t.r,s:t.s,chainId:N(t.chainId),nonce:N(t.nonce),...typeof t.yParity<"u"?{yParity:N(t.yParity)}:{},...typeof t.v<"u"&&typeof t.yParity>"u"?{v:N(t.v)}:{}}))}function U(e,t,n){const r=e[t.name];if(typeof r=="function")return r;const s=e[n];return typeof s=="function"?s:o=>t(e,o)}const Sh=2n**(8n-1n)-1n,Bh=2n**(16n-1n)-1n,Nh=2n**(24n-1n)-1n,kh=2n**(32n-1n)-1n,Mh=2n**(40n-1n)-1n,Th=2n**(48n-1n)-1n,Rh=2n**(56n-1n)-1n,Dh=2n**(64n-1n)-1n,Uh=2n**(72n-1n)-1n,Oh=2n**(80n-1n)-1n,Fh=2n**(88n-1n)-1n,Lh=2n**(96n-1n)-1n,$h=2n**(104n-1n)-1n,jh=2n**(112n-1n)-1n,qh=2n**(120n-1n)-1n,zh=2n**(128n-1n)-1n,_h=2n**(136n-1n)-1n,Gh=2n**(144n-1n)-1n,Hh=2n**(152n-1n)-1n,Qh=2n**(160n-1n)-1n,Kh=2n**(168n-1n)-1n,Wh=2n**(176n-1n)-1n,Vh=2n**(184n-1n)-1n,Jh=2n**(192n-1n)-1n,Zh=2n**(200n-1n)-1n,Yh=2n**(208n-1n)-1n,Xh=2n**(216n-1n)-1n,ep=2n**(224n-1n)-1n,tp=2n**(232n-1n)-1n,np=2n**(240n-1n)-1n,rp=2n**(248n-1n)-1n,sp=2n**(256n-1n)-1n,op=-(2n**(8n-1n)),ip=-(2n**(16n-1n)),ap=-(2n**(24n-1n)),cp=-(2n**(32n-1n)),up=-(2n**(40n-1n)),lp=-(2n**(48n-1n)),dp=-(2n**(56n-1n)),fp=-(2n**(64n-1n)),hp=-(2n**(72n-1n)),pp=-(2n**(80n-1n)),mp=-(2n**(88n-1n)),gp=-(2n**(96n-1n)),yp=-(2n**(104n-1n)),wp=-(2n**(112n-1n)),bp=-(2n**(120n-1n)),Ap=-(2n**(128n-1n)),vp=-(2n**(136n-1n)),Cp=-(2n**(144n-1n)),Ip=-(2n**(152n-1n)),xp=-(2n**(160n-1n)),Ep=-(2n**(168n-1n)),Pp=-(2n**(176n-1n)),Sp=-(2n**(184n-1n)),Bp=-(2n**(192n-1n)),Np=-(2n**(200n-1n)),kp=-(2n**(208n-1n)),Mp=-(2n**(216n-1n)),Tp=-(2n**(224n-1n)),Rp=-(2n**(232n-1n)),Dp=-(2n**(240n-1n)),Up=-(2n**(248n-1n)),Op=-(2n**(256n-1n)),Fp=2n**8n-1n,Lp=2n**16n-1n,$p=2n**24n-1n,jp=2n**32n-1n,qp=2n**40n-1n,zp=2n**48n-1n,_p=2n**56n-1n,Gp=2n**64n-1n,Hp=2n**72n-1n,Qp=2n**80n-1n,Kp=2n**88n-1n,Wp=2n**96n-1n,Vp=2n**104n-1n,Jp=2n**112n-1n,Zp=2n**120n-1n,Yp=2n**128n-1n,Xp=2n**136n-1n,e0=2n**144n-1n,t0=2n**152n-1n,n0=2n**160n-1n,r0=2n**168n-1n,s0=2n**176n-1n,o0=2n**184n-1n,i0=2n**192n-1n,a0=2n**200n-1n,c0=2n**208n-1n,u0=2n**216n-1n,l0=2n**224n-1n,d0=2n**232n-1n,f0=2n**240n-1n,h0=2n**248n-1n,Xn=2n**256n-1n;function gn(e){const{account:t,gasPrice:n,maxFeePerGas:r,maxPriorityFeePerGas:s,to:o}=e,a=t?le(t):void 0;if(a&&!ee(a.address))throw new ce({address:a.address});if(o&&!ee(o))throw new ce({address:o});if(typeof n<"u"&&(typeof r<"u"||typeof s<"u"))throw new Au;if(r&&r>Xn)throw new rt({maxFeePerGas:r});if(s&&r&&s>r)throw new Yt({maxFeePerGas:r,maxPriorityFeePerGas:s})}async function er(e){const t=await e.request({method:"eth_chainId"},{dedupe:!0});return K(t)}class Su extends P{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class ps extends P{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class Bu extends P{constructor({maxPriorityFeePerGas:t}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${ue(t)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class Ci extends P{constructor({blockHash:t,blockNumber:n}){let r="Block";t&&(r=`Block at hash "${t}"`),n&&(r=`Block at number "${n}"`),super(`${r} could not be found.`,{name:"BlockNotFoundError"})}}const Ii={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function ms(e){const t={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?K(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?K(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Ii[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(t.authorizationList=m0(e.authorizationList)),t.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof t.v=="bigint"){if(t.v===0n||t.v===27n)return 0;if(t.v===1n||t.v===28n)return 1;if(t.v>=35n)return t.v%2n===0n?1:0}})(),t.type==="legacy"&&(delete t.accessList,delete t.maxFeePerBlobGas,delete t.maxFeePerGas,delete t.maxPriorityFeePerGas,delete t.yParity),t.type==="eip2930"&&(delete t.maxFeePerBlobGas,delete t.maxFeePerGas,delete t.maxPriorityFeePerGas),t.type==="eip1559"&&delete t.maxFeePerBlobGas,t}const p0=hs("transaction",ms);function m0(e){return e.map(t=>({contractAddress:t.address,r:t.r,s:t.s,chainId:Number(t.chainId),nonce:Number(t.nonce),...typeof t.yParity<"u"?{yParity:Number(t.yParity)}:{},...typeof t.v<"u"&&typeof t.yParity>"u"?{v:Number(t.v)}:{}}))}function gs(e){var n;const t=(n=e.transactions)==null?void 0:n.map(r=>typeof r=="string"?r:ms(r));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:t,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}const g0=hs("block",gs);async function He(e,{blockHash:t,blockNumber:n,blockTag:r,includeTransactions:s}={}){var l,d,f;const o=r??"latest",a=s??!1,i=n!==void 0?N(n):void 0;let c=null;if(t?c=await e.request({method:"eth_getBlockByHash",params:[t,a]},{dedupe:!0}):c=await e.request({method:"eth_getBlockByNumber",params:[i||o,a]},{dedupe:!!i}),!c)throw new Ci({blockHash:t,blockNumber:n});return(((f=(d=(l=e.chain)==null?void 0:l.formatters)==null?void 0:d.block)==null?void 0:f.format)||gs)(c)}async function ys(e){const t=await e.request({method:"eth_gasPrice"});return BigInt(t)}async function Nu(e,t){return ku(e,t)}async function ku(e,t){var o,a;const{block:n,chain:r=e.chain,request:s}=t||{};try{const i=((o=r==null?void 0:r.fees)==null?void 0:o.maxPriorityFeePerGas)??((a=r==null?void 0:r.fees)==null?void 0:a.defaultPriorityFee);if(typeof i=="function"){const u=n||await U(e,He,"getBlock")({}),l=await i({block:u,client:e,request:s});if(l===null)throw new Error;return l}if(typeof i<"u")return i;const c=await e.request({method:"eth_maxPriorityFeePerGas"});return H(c)}catch{const[i,c]=await Promise.all([n?Promise.resolve(n):U(e,He,"getBlock")({}),U(e,ys,"getGasPrice")({})]);if(typeof i.baseFeePerGas!="bigint")throw new ps;const u=c-i.baseFeePerGas;return u<0n?0n:u}}async function Mu(e,t){return So(e,t)}async function So(e,t){var f,h;const{block:n,chain:r=e.chain,request:s,type:o="eip1559"}=t||{},a=await(async()=>{var p,m;return typeof((p=r==null?void 0:r.fees)==null?void 0:p.baseFeeMultiplier)=="function"?r.fees.baseFeeMultiplier({block:n,client:e,request:s}):((m=r==null?void 0:r.fees)==null?void 0:m.baseFeeMultiplier)??1.2})();if(a<1)throw new Su;const c=10**(((f=a.toString().split(".")[1])==null?void 0:f.length)??0),u=p=>p*BigInt(Math.ceil(a*c))/BigInt(c),l=n||await U(e,He,"getBlock")({});if(typeof((h=r==null?void 0:r.fees)==null?void 0:h.estimateFeesPerGas)=="function"){const p=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:u,request:s,type:o});if(p!==null)return p}if(o==="eip1559"){if(typeof l.baseFeePerGas!="bigint")throw new ps;const p=typeof(s==null?void 0:s.maxPriorityFeePerGas)=="bigint"?s.maxPriorityFeePerGas:await ku(e,{block:l,chain:r,request:s}),m=u(l.baseFeePerGas);return{maxFeePerGas:(s==null?void 0:s.maxFeePerGas)??m+p,maxPriorityFeePerGas:p}}return{gasPrice:(s==null?void 0:s.gasPrice)??u(await U(e,ys,"getGasPrice")({}))}}class Tu extends P{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:a,gasPrice:i,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:l,to:d,value:f}){var p;const h=Yn({from:n==null?void 0:n.address,to:d,value:typeof f<"u"&&`${ds(f)} ${((p=s==null?void 0:s.nativeCurrency)==null?void 0:p.symbol)||"ETH"}`,data:o,gas:a,gasPrice:typeof i<"u"&&`${ue(i)} gwei`,maxFeePerGas:typeof c<"u"&&`${ue(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${ue(u)} gwei`,nonce:l});super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Estimate Gas Arguments:",h].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}function y0(e,{docsPath:t,...n}){const r=(()=>{const s=vi(e,n);return s instanceof Zn?e:s})();return new Tu(r,{docsPath:t,...n})}class Ru extends P{constructor({address:t}){super(`State for account "${t}" is set multiple times.`,{name:"AccountStateConflictError"})}}class Du extends P{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function La(e){return e.reduce((t,{slot:n,value:r})=>`${t} ${n}: ${r}
|
|
32
|
+
`,"")}function w0(e){return e.reduce((t,{address:n,...r})=>{let s=`${t} ${n}:
|
|
33
|
+
`;return r.nonce&&(s+=` nonce: ${r.nonce}
|
|
34
|
+
`),r.balance&&(s+=` balance: ${r.balance}
|
|
35
|
+
`),r.code&&(s+=` code: ${r.code}
|
|
36
|
+
`),r.state&&(s+=` state:
|
|
37
|
+
`,s+=La(r.state)),r.stateDiff&&(s+=` stateDiff:
|
|
38
|
+
`,s+=La(r.stateDiff)),s},` State Override:
|
|
39
|
+
`).slice(0,-1)}function $a(e){if(!(!e||e.length===0))return e.reduce((t,{slot:n,value:r})=>{if(n.length!==66)throw new Na({size:n.length,targetSize:66,type:"hex"});if(r.length!==66)throw new Na({size:r.length,targetSize:66,type:"hex"});return t[n]=r,t},{})}function b0(e){const{balance:t,nonce:n,state:r,stateDiff:s,code:o}=e,a={};if(o!==void 0&&(a.code=o),t!==void 0&&(a.balance=N(t)),n!==void 0&&(a.nonce=N(n)),r!==void 0&&(a.state=$a(r)),s!==void 0){if(a.state)throw new Du;a.stateDiff=$a(s)}return a}function Uu(e){if(!e)return;const t={};for(const{address:n,...r}of e){if(!ee(n,{strict:!1}))throw new ce({address:n});if(t[n])throw new Ru({address:n});t[n]=b0(r)}return t}async function ws(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=n?N(n):void 0,o=await e.request({method:"eth_getBalance",params:[t,s||r]});return BigInt(o)}async function Ut(e,t){var s,o,a;const n=t.account??e.account,r=n?le(n):void 0;try{let G=function(S){const{block:O,request:q,rpcStateOverride:_}=S;return e.request({method:"eth_estimateGas",params:_?[q,O??"latest",_]:O?[q,O]:[q]})};const{accessList:i,authorizationList:c,blobs:u,blobVersionedHashes:l,blockNumber:d,blockTag:f,data:h,gas:p,gasPrice:m,maxFeePerBlobGas:g,maxFeePerGas:y,maxPriorityFeePerGas:w,nonce:C,value:I,stateOverride:b,...A}=await yn(e,{...t,parameters:(r==null?void 0:r.type)==="local"?void 0:["blobVersionedHashes"]}),x=(d?N(d):void 0)||f,E=Uu(b),k=await(async()=>{if(A.to)return A.to;if(c&&c.length>0)return await yu({authorization:c[0]}).catch(()=>{throw new P("`to` is required. Could not infer from `authorizationList`")})})();gn(t);const M=(a=(o=(s=e.chain)==null?void 0:s.formatters)==null?void 0:o.transactionRequest)==null?void 0:a.format,R=(M||Dt)({...fs(A,{format:M}),from:r==null?void 0:r.address,accessList:i,authorizationList:c,blobs:u,blobVersionedHashes:l,data:h,gas:p,gasPrice:m,maxFeePerBlobGas:g,maxFeePerGas:y,maxPriorityFeePerGas:w,nonce:C,to:k,value:I});let B=BigInt(await G({block:x,request:R,rpcStateOverride:E}));if(c){const S=await ws(e,{address:R.from}),O=await Promise.all(c.map(async q=>{const{contractAddress:_}=q,Q=await G({block:x,request:{authorizationList:void 0,data:h,from:r==null?void 0:r.address,to:_,value:N(S)},rpcStateOverride:E}).catch(()=>100000n);return 2n*BigInt(Q)}));B+=O.reduce((q,_)=>q+_,0n)}return B}catch(i){throw y0(i,{...t,account:r,chain:e.chain})}}async function bs(e,{address:t,blockTag:n="latest",blockNumber:r}){const s=await e.request({method:"eth_getTransactionCount",params:[t,r?N(r):n]},{dedupe:!!r});return K(s)}function As(e){const{kzg:t}=e,n=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),r=typeof e.blobs[0]=="string"?e.blobs.map(o=>se(o)):e.blobs,s=[];for(const o of r)s.push(Uint8Array.from(t.blobToKzgCommitment(o)));return n==="bytes"?s:s.map(o=>W(o))}function vs(e){const{kzg:t}=e,n=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),r=typeof e.blobs[0]=="string"?e.blobs.map(a=>se(a)):e.blobs,s=typeof e.commitments[0]=="string"?e.commitments.map(a=>se(a)):e.commitments,o=[];for(let a=0;a<r.length;a++){const i=r[a],c=s[a];o.push(Uint8Array.from(t.computeBlobKzgProof(i,c)))}return n==="bytes"?o:o.map(a=>W(a))}function A0(e,t,n,r){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,n,r);const s=BigInt(32),o=BigInt(4294967295),a=Number(n>>s&o),i=Number(n&o),c=r?4:0,u=r?0:4;e.setUint32(t+c,a,r),e.setUint32(t+u,i,r)}const v0=(e,t,n)=>e&t^~e&n,C0=(e,t,n)=>e&t^e&n^t&n;class Ou extends ii{constructor(t,n,r,s){super(),this.blockLen=t,this.outputLen=n,this.padOffset=r,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=Ws(this.buffer)}update(t){Jt(this);const{view:n,buffer:r,blockLen:s}=this;t=us(t);const o=t.length;for(let a=0;a<o;){const i=Math.min(s-this.pos,o-a);if(i===s){const c=Ws(t);for(;s<=o-a;a+=s)this.process(c,a);continue}r.set(t.subarray(a,a+i),this.pos),this.pos+=i,a+=i,this.pos===s&&(this.process(n,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Jt(this),au(t,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:o}=this;let{pos:a}=this;n[a++]=128,this.buffer.subarray(a).fill(0),this.padOffset>s-a&&(this.process(r,0),a=0);for(let d=a;d<s;d++)n[d]=0;A0(r,s-8,BigInt(this.length*8),o),this.process(r,0);const i=Ws(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=c/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d<u;d++)i.setUint32(4*d,l[d],o)}digest(){const{buffer:t,outputLen:n}=this;this.digestInto(t);const r=t.slice(0,n);return this.destroy(),r}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());const{blockLen:n,buffer:r,length:s,finished:o,destroyed:a,pos:i}=this;return t.length=s,t.pos=i,t.finished=o,t.destroyed=a,s%n&&t.buffer.set(r),t}}const I0=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]),Ze=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ye=new Uint32Array(64);class x0 extends Ou{constructor(){super(64,32,8,!1),this.A=Ze[0]|0,this.B=Ze[1]|0,this.C=Ze[2]|0,this.D=Ze[3]|0,this.E=Ze[4]|0,this.F=Ze[5]|0,this.G=Ze[6]|0,this.H=Ze[7]|0}get(){const{A:t,B:n,C:r,D:s,E:o,F:a,G:i,H:c}=this;return[t,n,r,s,o,a,i,c]}set(t,n,r,s,o,a,i,c){this.A=t|0,this.B=n|0,this.C=r|0,this.D=s|0,this.E=o|0,this.F=a|0,this.G=i|0,this.H=c|0}process(t,n){for(let d=0;d<16;d++,n+=4)Ye[d]=t.getUint32(n,!1);for(let d=16;d<64;d++){const f=Ye[d-15],h=Ye[d-2],p=De(f,7)^De(f,18)^f>>>3,m=De(h,17)^De(h,19)^h>>>10;Ye[d]=m+Ye[d-7]+p+Ye[d-16]|0}let{A:r,B:s,C:o,D:a,E:i,F:c,G:u,H:l}=this;for(let d=0;d<64;d++){const f=De(i,6)^De(i,11)^De(i,25),h=l+f+v0(i,c,u)+I0[d]+Ye[d]|0,m=(De(r,2)^De(r,13)^De(r,22))+C0(r,s,o)|0;l=u,u=c,c=i,i=a+h|0,a=o,o=s,s=r,r=h+m|0}r=r+this.A|0,s=s+this.B|0,o=o+this.C|0,a=a+this.D|0,i=i+this.E|0,c=c+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(r,s,o,a,i,c,u,l)}roundClean(){Ye.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const Fu=ai(()=>new x0);function Lu(e,t){const n=t||"hex",r=Fu(F(e,{strict:!1})?ie(e):e);return n==="bytes"?r:L(r)}function xi(e){const{commitment:t,version:n=1}=e,r=e.to??(typeof t=="string"?"hex":"bytes"),s=Lu(t,"bytes");return s.set([n],0),r==="bytes"?s:W(s)}function Ei(e){const{commitments:t,version:n}=e,r=e.to??(typeof t[0]=="string"?"hex":"bytes"),s=[];for(const o of t)s.push(xi({commitment:o,to:r,version:n}));return s}const ja=6,$u=32,Pi=4096,ju=$u*Pi,qa=ju*ja-1-1*Pi*ja,qu=1;class E0 extends P{constructor({maxSize:t,size:n}){super("Blob size is too large.",{metaMessages:[`Max: ${t} bytes`,`Given: ${n} bytes`],name:"BlobSizeTooLargeError"})}}class zu extends P{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}class P0 extends P{constructor({hash:t,size:n}){super(`Versioned hash "${t}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${n}`],name:"InvalidVersionedHashSizeError"})}}class S0 extends P{constructor({hash:t,version:n}){super(`Versioned hash "${t}" version is invalid.`,{metaMessages:[`Expected: ${qu}`,`Received: ${n}`],name:"InvalidVersionedHashVersionError"})}}function _u(e){const t=e.to??(typeof e.data=="string"?"hex":"bytes"),n=typeof e.data=="string"?se(e.data):e.data,r=J(n);if(!r)throw new zu;if(r>qa)throw new E0({maxSize:qa,size:r});const s=[];let o=!0,a=0;for(;o;){const i=Zt(new Uint8Array(ju));let c=0;for(;c<Pi;){const u=n.slice(a,a+($u-1));if(i.pushByte(0),i.pushBytes(u),u.length<31){i.pushByte(128),o=!1;break}c++,a+=31}s.push(i)}return t==="bytes"?s.map(i=>i.bytes):s.map(i=>W(i.bytes))}function Cs(e){const{data:t,kzg:n,to:r}=e,s=e.blobs??_u({data:t,to:r}),o=e.commitments??As({blobs:s,kzg:n,to:r}),a=e.proofs??vs({blobs:s,commitments:o,kzg:n,to:r}),i=[];for(let c=0;c<s.length;c++)i.push({blob:s[c],commitment:o[c],proof:a[c]});return i}function Si(e){if(e.type)return e.type;if(typeof e.authorizationList<"u")return"eip7702";if(typeof e.blobs<"u"||typeof e.blobVersionedHashes<"u"||typeof e.maxFeePerBlobGas<"u"||typeof e.sidecars<"u")return"eip4844";if(typeof e.maxFeePerGas<"u"||typeof e.maxPriorityFeePerGas<"u")return"eip1559";if(typeof e.gasPrice<"u")return typeof e.accessList<"u"?"eip2930":"legacy";throw new vu({transaction:e})}const Gu=["blobVersionedHashes","chainId","fees","gas","nonce","type"];async function yn(e,t){const{account:n=e.account,blobs:r,chain:s,gas:o,kzg:a,nonce:i,nonceManager:c,parameters:u=Gu,type:l}=t,d=n?le(n):void 0,f={...t,...d?{from:d==null?void 0:d.address}:{}};let h;async function p(){return h||(h=await U(e,He,"getBlock")({blockTag:"latest"}),h)}let m;async function g(){return m||(s?s.id:typeof t.chainId<"u"?t.chainId:(m=await U(e,er,"getChainId")({}),m))}if((u.includes("blobVersionedHashes")||u.includes("sidecars"))&&r&&a){const y=As({blobs:r,kzg:a});if(u.includes("blobVersionedHashes")){const w=Ei({commitments:y,to:"hex"});f.blobVersionedHashes=w}if(u.includes("sidecars")){const w=vs({blobs:r,commitments:y,kzg:a}),C=Cs({blobs:r,commitments:y,proofs:w,to:"hex"});f.sidecars=C}}if(u.includes("chainId")&&(f.chainId=await g()),u.includes("nonce")&&typeof i>"u"&&d)if(c){const y=await g();f.nonce=await c.consume({address:d.address,chainId:y,client:e})}else f.nonce=await U(e,bs,"getTransactionCount")({address:d.address,blockTag:"pending"});if((u.includes("fees")||u.includes("type"))&&typeof l>"u")try{f.type=Si(f)}catch{const y=await p();f.type=typeof(y==null?void 0:y.baseFeePerGas)=="bigint"?"eip1559":"legacy"}if(u.includes("fees"))if(f.type!=="legacy"&&f.type!=="eip2930"){if(typeof f.maxFeePerGas>"u"||typeof f.maxPriorityFeePerGas>"u"){const y=await p(),{maxFeePerGas:w,maxPriorityFeePerGas:C}=await So(e,{block:y,chain:s,request:f});if(typeof t.maxPriorityFeePerGas>"u"&&t.maxFeePerGas&&t.maxFeePerGas<C)throw new Bu({maxPriorityFeePerGas:C});f.maxPriorityFeePerGas=C,f.maxFeePerGas=w}}else{if(typeof t.maxFeePerGas<"u"||typeof t.maxPriorityFeePerGas<"u")throw new ps;const y=await p(),{gasPrice:w}=await So(e,{block:y,chain:s,request:f,type:"legacy"});f.gasPrice=w}return u.includes("gas")&&typeof o>"u"&&(f.gas=await U(e,Ut,"estimateGas")({...f,account:d?{address:d.address,type:"json-rpc"}:void 0})),gn(f),delete f.parameters,f}async function Bi(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}async function tr(e,t){var y,w,C,I;const{account:n=e.account,chain:r=e.chain,accessList:s,authorizationList:o,blobs:a,data:i,gas:c,gasPrice:u,maxFeePerBlobGas:l,maxFeePerGas:d,maxPriorityFeePerGas:f,nonce:h,value:p,...m}=t;if(!n)throw new Vn({docsPath:"/docs/actions/wallet/sendTransaction"});const g=le(n);try{gn(t);const b=await(async()=>{if(t.to)return t.to;if(o&&o.length>0)return await yu({authorization:o[0]}).catch(()=>{throw new P("`to` is required. Could not infer from `authorizationList`.")})})();if(g.type==="json-rpc"){let A;r!==null&&(A=await U(e,er,"getChainId")({}),pi({currentChainId:A,chain:r}));const v=(C=(w=(y=e.chain)==null?void 0:y.formatters)==null?void 0:w.transactionRequest)==null?void 0:C.format,E=(v||Dt)({...fs(m,{format:v}),accessList:s,authorizationList:o,blobs:a,chainId:A,data:i,from:g.address,gas:c,gasPrice:u,maxFeePerBlobGas:l,maxFeePerGas:d,maxPriorityFeePerGas:f,nonce:h,to:b,value:p});return await e.request({method:"eth_sendTransaction",params:[E]},{retryCount:0})}if(g.type==="local"){const A=await U(e,yn,"prepareTransactionRequest")({account:g,accessList:s,authorizationList:o,blobs:a,chain:r,data:i,gas:c,gasPrice:u,maxFeePerBlobGas:l,maxFeePerGas:d,maxPriorityFeePerGas:f,nonce:h,nonceManager:g.nonceManager,parameters:[...Gu,"sidecars"],value:p,...m,to:b}),v=(I=r==null?void 0:r.serializers)==null?void 0:I.transaction,x=await g.signTransaction(A,{serializer:v});return await U(e,Bi,"sendRawTransaction")({serializedTransaction:x})}throw g.type==="smart"?new Ys({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new Ys({docsPath:"/docs/actions/wallet/sendTransaction",type:g.type})}catch(b){throw b instanceof Ys?b:xh(b,{...t,account:g,chain:t.chain||void 0})}}function Hu(e,t){const{abi:n,args:r,bytecode:s,...o}=t,a=Wn({abi:n,args:r,bytecode:s});return tr(e,{...o,data:a})}const Hr=[{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"}],Qu=[{inputs:[],name:"ResolverNotFound",type:"error"},{inputs:[],name:"ResolverWildcardNotSupported",type:"error"},{inputs:[],name:"ResolverNotContract",type:"error"},{inputs:[{name:"returnData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{components:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"errors",type:"tuple[]"}],name:"HttpError",type:"error"}],Ku=[...Qu,{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]},{name:"resolve",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"}]}],B0=[...Qu,{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]},{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]}],za=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],_a=[{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"}]}],Wu=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"}],N0=[{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"}]}],k0=[{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:"bytes32"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"bytes32"}]},{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"}]}],M0=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!0,name:"tokenId",type:"uint256"}]},{type:"event",name:"ApprovalForAll",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"operator",type:"address"},{indexed:!1,name:"approved",type:"bool"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!0,name:"tokenId",type:"uint256"}]},{type:"function",name:"approve",stateMutability:"payable",inputs:[{name:"spender",type:"address"},{name:"tokenId",type:"uint256"}],outputs:[]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"getApproved",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{type:"address"}]},{type:"function",name:"isApprovedForAll",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"operator",type:"address"}],outputs:[{type:"bool"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"ownerOf",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"owner",type:"address"}]},{type:"function",name:"safeTransferFrom",stateMutability:"payable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"tokenId",type:"uint256"}],outputs:[]},{type:"function",name:"safeTransferFrom",stateMutability:"nonpayable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"id",type:"uint256"},{name:"data",type:"bytes"}],outputs:[]},{type:"function",name:"setApprovalForAll",stateMutability:"nonpayable",inputs:[{name:"operator",type:"address"},{name:"approved",type:"bool"}],outputs:[]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"tokenByIndex",stateMutability:"view",inputs:[{name:"index",type:"uint256"}],outputs:[{type:"uint256"}]},{type:"function",name:"tokenByIndex",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"index",type:"uint256"}],outputs:[{name:"tokenId",type:"uint256"}]},{type:"function",name:"tokenURI",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transferFrom",stateMutability:"payable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"tokeId",type:"uint256"}],outputs:[]}],T0=[{anonymous:!1,inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"receiver",type:"address"},{indexed:!1,name:"assets",type:"uint256"},{indexed:!1,name:"shares",type:"uint256"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"receiver",type:"address"},{indexed:!0,name:"owner",type:"address"},{indexed:!1,name:"assets",type:"uint256"},{indexed:!1,name:"shares",type:"uint256"}],name:"Withdraw",type:"event"},{inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],name:"allowance",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],name:"approve",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"asset",outputs:[{name:"assetTokenAddress",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"address"}],name:"balanceOf",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"convertToAssets",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"convertToShares",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"},{name:"receiver",type:"address"}],name:"deposit",outputs:[{name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"caller",type:"address"}],name:"maxDeposit",outputs:[{name:"maxAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"caller",type:"address"}],name:"maxMint",outputs:[{name:"maxShares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"maxRedeem",outputs:[{name:"maxShares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"maxWithdraw",outputs:[{name:"maxAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"},{name:"receiver",type:"address"}],name:"mint",outputs:[{name:"assets",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"previewDeposit",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"previewMint",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"previewRedeem",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"previewWithdraw",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"},{name:"receiver",type:"address"},{name:"owner",type:"address"}],name:"redeem",outputs:[{name:"assets",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalAssets",outputs:[{name:"totalManagedAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"to",type:"address"},{name:"amount",type:"uint256"}],name:"transfer",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"assets",type:"uint256"},{name:"receiver",type:"address"},{name:"owner",type:"address"}],name:"withdraw",outputs:[{name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"}];function R0(e,t){const n=typeof t=="string"?{to:t}:t,r=n.to;return r==="number"?Me(e,n):r==="bigint"?Ni(e,n):r==="boolean"?ki(e,n):r==="string"?Mi(e,n):W(e,n)}function Ni(e,t={}){typeof t.size<"u"&&xe(e,{size:t.size});const n=W(e,t);return H(n,t)}function ki(e,t={}){let n=e;if(typeof t.size<"u"&&(xe(n,{size:t.size}),n=re(n)),n.length>1||n[0]>1)throw new zc(n);return!!n[0]}function Me(e,t={}){typeof t.size<"u"&&xe(e,{size:t.size});const n=W(e,t);return K(n,t)}function Mi(e,t={}){let n=e;return typeof t.size<"u"&&(xe(n,{size:t.size}),n=re(n,{dir:"right"})),new TextDecoder().decode(n)}function lt(e,t){const n=typeof t=="string"?se(t):t,r=Zt(n);if(J(n)===0&&e.length>0)throw new Hn;if(J(t)&&J(t)<32)throw new ei({data:typeof t=="string"?t:W(t),params:e,size:J(t)});let s=0;const o=[];for(let a=0;a<e.length;++a){const i=e[a];r.setPosition(s);const[c,u]=Kt(r,i,{staticPosition:0});s+=u,o.push(c)}return o}function Kt(e,t,{staticPosition:n}){const r=fi(t.type);if(r){const[s,o]=r;return U0(e,{...t,type:o},{length:s,staticPosition:n})}if(t.type==="tuple")return $0(e,t,{staticPosition:n});if(t.type==="address")return D0(e);if(t.type==="bool")return O0(e);if(t.type.startsWith("bytes"))return F0(e,t,{staticPosition:n});if(t.type.startsWith("uint")||t.type.startsWith("int"))return L0(e,t);if(t.type==="string")return j0(e,{staticPosition:n});throw new nu(t.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const Ga=32,Bo=32;function D0(e){const t=e.readBytes(32);return[pn(W(ui(t,-20))),32]}function U0(e,t,{length:n,staticPosition:r}){if(!n){const a=Me(e.readBytes(Bo)),i=r+a,c=i+Ga;e.setPosition(i);const u=Me(e.readBytes(Ga)),l=Dn(t);let d=0;const f=[];for(let h=0;h<u;++h){e.setPosition(c+(l?h*32:d));const[p,m]=Kt(e,t,{staticPosition:c});d+=m,f.push(p)}return e.setPosition(r+32),[f,32]}if(Dn(t)){const a=Me(e.readBytes(Bo)),i=r+a,c=[];for(let u=0;u<n;++u){e.setPosition(i+u*32);const[l]=Kt(e,t,{staticPosition:i});c.push(l)}return e.setPosition(r+32),[c,32]}let s=0;const o=[];for(let a=0;a<n;++a){const[i,c]=Kt(e,t,{staticPosition:r+s});s+=c,o.push(i)}return[o,s]}function O0(e){return[ki(e.readBytes(32),{size:32}),32]}function F0(e,t,{staticPosition:n}){const[r,s]=t.type.split("bytes");if(!s){const a=Me(e.readBytes(32));e.setPosition(n+a);const i=Me(e.readBytes(32));if(i===0)return e.setPosition(n+32),["0x",32];const c=e.readBytes(i);return e.setPosition(n+32),[W(c),32]}return[W(e.readBytes(Number.parseInt(s),32)),32]}function L0(e,t){const n=t.type.startsWith("int"),r=Number.parseInt(t.type.split("int")[1]||"256"),s=e.readBytes(32);return[r>48?Ni(s,{signed:n}):Me(s,{signed:n}),32]}function $0(e,t,{staticPosition:n}){const r=t.components.length===0||t.components.some(({name:a})=>!a),s=r?[]:{};let o=0;if(Dn(t)){const a=Me(e.readBytes(Bo)),i=n+a;for(let c=0;c<t.components.length;++c){const u=t.components[c];e.setPosition(i+o);const[l,d]=Kt(e,u,{staticPosition:i});o+=d,s[r?c:u==null?void 0:u.name]=l}return e.setPosition(n+32),[s,32]}for(let a=0;a<t.components.length;++a){const i=t.components[a],[c,u]=Kt(e,i,{staticPosition:n});s[r?a:i==null?void 0:i.name]=c,o+=u}return[s,o]}function j0(e,{staticPosition:t}){const n=Me(e.readBytes(32)),r=t+n;e.setPosition(r);const s=Me(e.readBytes(32));if(s===0)return e.setPosition(t+32),["",32];const o=e.readBytes(s,32),a=Mi(re(o));return e.setPosition(t+32),[a,32]}function Dn(e){var r;const{type:t}=e;if(t==="string"||t==="bytes"||t.endsWith("[]"))return!0;if(t==="tuple")return(r=e.components)==null?void 0:r.some(Dn);const n=fi(e.type);return!!(n&&Dn({...e,type:n[1]}))}const q0=e=>Z(ie(e));function z0(e){return q0(e)}const _0="1.0.5";let fe=class No extends Error{constructor(t,n={}){var a;const r=n.cause instanceof No?n.cause.details:(a=n.cause)!=null&&a.message?n.cause.message:n.details,s=n.cause instanceof No&&n.cause.docsPath||n.docsPath,o=[t||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...s?[`Docs: https://abitype.dev${s}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${_0}`].join(`
|
|
40
|
+
`);super(o),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiTypeError"}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=s,this.metaMessages=n.metaMessages,this.shortMessage=t}};function dt(e,t){const n=e.exec(t);return n==null?void 0:n.groups}const Vu=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Ju=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Zu=/^\(.+?\).*?$/,Ha=/^tuple(?<array>(\[(\d*)\])*)$/;function ko(e){let t=e.type;if(Ha.test(e.type)&&"components"in e){t="(";const n=e.components.length;for(let s=0;s<n;s++){const o=e.components[s];t+=ko(o),s<n-1&&(t+=", ")}const r=dt(Ha,e.type);return t+=`)${(r==null?void 0:r.array)??""}`,ko({...e,type:t})}return"indexed"in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function En(e){let t="";const n=e.length;for(let r=0;r<n;r++){const s=e[r];t+=ko(s),r!==n-1&&(t+=", ")}return t}function G0(e){return e.type==="function"?`function ${e.name}(${En(e.inputs)})${e.stateMutability&&e.stateMutability!=="nonpayable"?` ${e.stateMutability}`:""}${e.outputs.length?` returns (${En(e.outputs)})`:""}`:e.type==="event"?`event ${e.name}(${En(e.inputs)})`:e.type==="error"?`error ${e.name}(${En(e.inputs)})`:e.type==="constructor"?`constructor(${En(e.inputs)})${e.stateMutability==="payable"?" payable":""}`:e.type==="fallback"?"fallback()":"receive() external payable"}const Yu=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function H0(e){return Yu.test(e)}function Q0(e){return dt(Yu,e)}const Xu=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function K0(e){return Xu.test(e)}function W0(e){return dt(Xu,e)}const el=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;function V0(e){return el.test(e)}function J0(e){return dt(el,e)}const tl=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function nr(e){return tl.test(e)}function Z0(e){return dt(tl,e)}const nl=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;function Y0(e){return nl.test(e)}function X0(e){return dt(nl,e)}const em=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;function tm(e){return em.test(e)}const nm=/^receive\(\) external payable$/;function rm(e){return nm.test(e)}const Qr=new Set(["memory","indexed","storage","calldata"]),sm=new Set(["indexed"]),Mo=new Set(["calldata","memory","storage"]);class rl extends fe{constructor({signature:t}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify(t,null,2)})`,docsPath:"/api/human#parseabiitem-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}}class sl extends fe{constructor({type:t}){super("Unknown type.",{metaMessages:[`Type "${t}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownTypeError"})}}class om extends fe{constructor({type:t}){super("Unknown type.",{metaMessages:[`Type "${t}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class ol extends fe{constructor({param:t}){super("Failed to parse ABI parameter.",{details:`parseAbiParameter(${JSON.stringify(t,null,2)})`,docsPath:"/api/human#parseabiparameter-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParameterError"})}}class il extends fe{constructor({params:t}){super("Failed to parse ABI parameters.",{details:`parseAbiParameters(${JSON.stringify(t,null,2)})`,docsPath:"/api/human#parseabiparameters-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParametersError"})}}class al extends fe{constructor({param:t}){super("Invalid ABI parameter.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class cl extends fe{constructor({param:t,name:n}){super("Invalid ABI parameter.",{details:t,metaMessages:[`"${n}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SolidityProtectedKeywordError"})}}class ul extends fe{constructor({param:t,type:n,modifier:r}){super("Invalid ABI parameter.",{details:t,metaMessages:[`Modifier "${r}" not allowed${n?` in "${n}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class ll extends fe{constructor({param:t,type:n,modifier:r}){super("Invalid ABI parameter.",{details:t,metaMessages:[`Modifier "${r}" not allowed${n?` in "${n}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${r}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class dl extends fe{constructor({abiParameter:t}){super("Invalid ABI parameter.",{details:JSON.stringify(t,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class Ht extends fe{constructor({signature:t,type:n}){super(`Invalid ${n} signature.`,{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class fl extends fe{constructor({signature:t}){super("Unknown signature.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class hl extends fe{constructor({signature:t}){super("Invalid struct signature.",{details:t,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class pl extends fe{constructor({type:t}){super("Circular reference detected.",{metaMessages:[`Struct "${t}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class ml extends fe{constructor({current:t,depth:n}){super("Unbalanced parentheses.",{metaMessages:[`"${t.trim()}" has too many ${n>0?"opening":"closing"} parentheses.`],details:`Depth "${n}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}function im(e,t){return t?`${t}:${e}`:e}const Xs=new Map([["address",{type:"address"}],["bool",{type:"bool"}],["bytes",{type:"bytes"}],["bytes32",{type:"bytes32"}],["int",{type:"int256"}],["int256",{type:"int256"}],["string",{type:"string"}],["uint",{type:"uint256"}],["uint8",{type:"uint8"}],["uint16",{type:"uint16"}],["uint24",{type:"uint24"}],["uint32",{type:"uint32"}],["uint64",{type:"uint64"}],["uint96",{type:"uint96"}],["uint112",{type:"uint112"}],["uint160",{type:"uint160"}],["uint192",{type:"uint192"}],["uint256",{type:"uint256"}],["address owner",{type:"address",name:"owner"}],["address to",{type:"address",name:"to"}],["bool approved",{type:"bool",name:"approved"}],["bytes _data",{type:"bytes",name:"_data"}],["bytes data",{type:"bytes",name:"data"}],["bytes signature",{type:"bytes",name:"signature"}],["bytes32 hash",{type:"bytes32",name:"hash"}],["bytes32 r",{type:"bytes32",name:"r"}],["bytes32 root",{type:"bytes32",name:"root"}],["bytes32 s",{type:"bytes32",name:"s"}],["string name",{type:"string",name:"name"}],["string symbol",{type:"string",name:"symbol"}],["string tokenURI",{type:"string",name:"tokenURI"}],["uint tokenId",{type:"uint256",name:"tokenId"}],["uint8 v",{type:"uint8",name:"v"}],["uint256 balance",{type:"uint256",name:"balance"}],["uint256 tokenId",{type:"uint256",name:"tokenId"}],["uint256 value",{type:"uint256",name:"value"}],["event:address indexed from",{type:"address",name:"from",indexed:!0}],["event:address indexed to",{type:"address",name:"to",indexed:!0}],["event:uint indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}],["event:uint256 indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}]]);function To(e,t={}){if(V0(e)){const n=J0(e);if(!n)throw new Ht({signature:e,type:"function"});const r=ge(n.parameters),s=[],o=r.length;for(let i=0;i<o;i++)s.push(Be(r[i],{modifiers:Mo,structs:t,type:"function"}));const a=[];if(n.returns){const i=ge(n.returns),c=i.length;for(let u=0;u<c;u++)a.push(Be(i[u],{modifiers:Mo,structs:t,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:s,outputs:a}}if(K0(e)){const n=W0(e);if(!n)throw new Ht({signature:e,type:"event"});const r=ge(n.parameters),s=[],o=r.length;for(let a=0;a<o;a++)s.push(Be(r[a],{modifiers:sm,structs:t,type:"event"}));return{name:n.name,type:"event",inputs:s}}if(H0(e)){const n=Q0(e);if(!n)throw new Ht({signature:e,type:"error"});const r=ge(n.parameters),s=[],o=r.length;for(let a=0;a<o;a++)s.push(Be(r[a],{structs:t,type:"error"}));return{name:n.name,type:"error",inputs:s}}if(Y0(e)){const n=X0(e);if(!n)throw new Ht({signature:e,type:"constructor"});const r=ge(n.parameters),s=[],o=r.length;for(let a=0;a<o;a++)s.push(Be(r[a],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:s}}if(tm(e))return{type:"fallback"};if(rm(e))return{type:"receive",stateMutability:"payable"};throw new fl({signature:e})}const am=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,cm=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,um=/^u?int$/;function Be(e,t){var d,f;const n=im(e,t==null?void 0:t.type);if(Xs.has(n))return Xs.get(n);const r=Zu.test(e),s=dt(r?cm:am,e);if(!s)throw new al({param:e});if(s.name&&dm(s.name))throw new cl({param:e,name:s.name});const o=s.name?{name:s.name}:{},a=s.modifier==="indexed"?{indexed:!0}:{},i=(t==null?void 0:t.structs)??{};let c,u={};if(r){c="tuple";const h=ge(s.type),p=[],m=h.length;for(let g=0;g<m;g++)p.push(Be(h[g],{structs:i}));u={components:p}}else if(s.type in i)c="tuple",u={components:i[s.type]};else if(um.test(s.type))c=`${s.type}256`;else if(c=s.type,(t==null?void 0:t.type)!=="struct"&&!gl(c))throw new om({type:c});if(s.modifier){if(!((f=(d=t==null?void 0:t.modifiers)==null?void 0:d.has)!=null&&f.call(d,s.modifier)))throw new ul({param:e,type:t==null?void 0:t.type,modifier:s.modifier});if(Mo.has(s.modifier)&&!fm(c,!!s.array))throw new ll({param:e,type:t==null?void 0:t.type,modifier:s.modifier})}const l={type:`${c}${s.array??""}`,...o,...a,...u};return Xs.set(n,l),l}function ge(e,t=[],n="",r=0){const s=e.trim().length;for(let o=0;o<s;o++){const a=e[o],i=e.slice(o+1);switch(a){case",":return r===0?ge(i,[...t,n.trim()]):ge(i,t,`${n}${a}`,r);case"(":return ge(i,t,`${n}${a}`,r+1);case")":return ge(i,t,`${n}${a}`,r-1);default:return ge(i,t,`${n}${a}`,r)}}if(n==="")return t;if(r!==0)throw new ml({current:n,depth:r});return t.push(n.trim()),t}function gl(e){return e==="address"||e==="bool"||e==="function"||e==="string"||Vu.test(e)||Ju.test(e)}const lm=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function dm(e){return e==="address"||e==="bool"||e==="function"||e==="string"||e==="tuple"||Vu.test(e)||Ju.test(e)||lm.test(e)}function fm(e,t){return t||e==="bytes"||e==="string"||e==="tuple"}function Is(e){const t={},n=e.length;for(let a=0;a<n;a++){const i=e[a];if(!nr(i))continue;const c=Z0(i);if(!c)throw new Ht({signature:i,type:"struct"});const u=c.properties.split(";"),l=[],d=u.length;for(let f=0;f<d;f++){const p=u[f].trim();if(!p)continue;const m=Be(p,{type:"struct"});l.push(m)}if(!l.length)throw new hl({signature:i});t[c.name]=l}const r={},s=Object.entries(t),o=s.length;for(let a=0;a<o;a++){const[i,c]=s[a];r[i]=yl(c,t)}return r}const hm=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function yl(e,t,n=new Set){const r=[],s=e.length;for(let o=0;o<s;o++){const a=e[o];if(Zu.test(a.type))r.push(a);else{const c=dt(hm,a.type);if(!(c!=null&&c.type))throw new dl({abiParameter:a});const{array:u,type:l}=c;if(l in t){if(n.has(l))throw new pl({type:l});r.push({...a,type:`tuple${u??""}`,components:yl(t[l]??[],t,new Set([...n,l]))})}else if(gl(l))r.push(a);else throw new sl({type:l})}}return r}function Ti(e){const t=Is(e),n=[],r=e.length;for(let s=0;s<r;s++){const o=e[s];nr(o)||n.push(To(o,t))}return n}function pm(e){let t;if(typeof e=="string")t=To(e);else{const n=Is(e),r=e.length;for(let s=0;s<r;s++){const o=e[s];if(!nr(o)){t=To(o,n);break}}}if(!t)throw new rl({signature:e});return t}function mm(e){let t;if(typeof e=="string")t=Be(e,{modifiers:Qr});else{const n=Is(e),r=e.length;for(let s=0;s<r;s++){const o=e[s];if(!nr(o)){t=Be(o,{modifiers:Qr,structs:n});break}}}if(!t)throw new ol({param:e});return t}function gm(e){const t=[];if(typeof e=="string"){const n=ge(e),r=n.length;for(let s=0;s<r;s++)t.push(Be(n[s],{modifiers:Qr}))}else{const n=Is(e),r=e.length;for(let s=0;s<r;s++){const o=e[s];if(nr(o))continue;const a=ge(o),i=a.length;for(let c=0;c<i;c++)t.push(Be(a[c],{modifiers:Qr,structs:n}))}}if(t.length===0)throw new il({params:e});return t}function ym(e){let t=!0,n="",r=0,s="",o=!1;for(let a=0;a<e.length;a++){const i=e[a];if(["(",")",","].includes(i)&&(t=!0),i==="("&&r++,i===")"&&r--,!!t){if(r===0){if(i===" "&&["event","function",""].includes(s))s="";else if(s+=i,i===")"){o=!0;break}continue}if(i===" "){e[a-1]!==","&&n!==","&&n!==",("&&(n="",t=!1);continue}s+=i,n+=i}}if(!o)throw new P("Unable to normalize signature.");return s}const Pn=e=>{const t=typeof e=="string"?e:G0(e);return ym(t)};function Kr(e){return z0(Pn(e))}const Un=Kr,St=e=>Ge(Kr(e),0,4);function Ke(e){const{abi:t,args:n=[],name:r}=e,s=F(r,{strict:!1}),o=t.filter(i=>s?i.type==="function"?St(i)===r:i.type==="event"?Un(i)===r:!1:"name"in i&&i.name===r);if(o.length===0)return;if(o.length===1)return o[0];let a;for(const i of o){if(!("inputs"in i))continue;if(!n||n.length===0){if(!i.inputs||i.inputs.length===0)return i;continue}if(!i.inputs||i.inputs.length===0||i.inputs.length!==n.length)continue;if(n.every((u,l)=>{const d="inputs"in i&&i.inputs[l];return d?Ro(u,d):!1})){if(a&&"inputs"in a&&a.inputs){const u=wl(i.inputs,a.inputs,n);if(u)throw new Uf({abiItem:i,type:u[0]},{abiItem:a,type:u[1]})}a=i}}return a||o[0]}function Ro(e,t){const n=typeof e,r=t.type;switch(r){case"address":return ee(e,{strict:!1});case"bool":return n==="boolean";case"function":return n==="string";case"string":return n==="string";default:return r==="tuple"&&"components"in t?Object.values(t.components).every((s,o)=>Ro(Object.values(e)[o],s)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n==="number"||n==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)?Array.isArray(e)&&e.every(s=>Ro(s,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function wl(e,t,n){for(const r in e){const s=e[r],o=t[r];if(s.type==="tuple"&&o.type==="tuple"&&"components"in s&&"components"in o)return wl(s.components,o.components,n[r]);const a=[s.type,o.type];if(a.includes("address")&&a.includes("bytes20")?!0:a.includes("address")&&a.includes("string")?ee(n[r],{strict:!1}):a.includes("address")&&a.includes("bytes")?ee(n[r],{strict:!1}):!1)return a}}const eo="/docs/contract/decodeFunctionResult";function Ot(e){const{abi:t,args:n,functionName:r,data:s}=e;let o=t[0];if(r){const i=Ke({abi:t,args:n,name:r});if(!i)throw new It(r,{docsPath:eo});o=i}if(o.type!=="function")throw new It(void 0,{docsPath:eo});if(!o.outputs)throw new si(o.name,{docsPath:eo});const a=lt(o.outputs,s);if(a&&a.length>1)return a;if(a&&a.length===1)return a[0]}const Qa="/docs/contract/encodeFunctionData";function bl(e){const{abi:t,args:n,functionName:r}=e;let s=t[0];if(r){const o=Ke({abi:t,args:n,name:r});if(!o)throw new It(r,{docsPath:Qa});s=o}if(s.type!=="function")throw new It(void 0,{docsPath:Qa});return{abi:[s],functionName:St(Te(s))}}function Fe(e){const{args:t}=e,{abi:n,functionName:r}=(()=>{var i;return e.abi.length===1&&((i=e.functionName)!=null&&i.startsWith("0x"))?e:bl(e)})(),s=n[0],o=r,a="inputs"in s&&s.inputs?Oe(s.inputs,t??[]):void 0;return we([o,a??"0x"])}function Ft({blockNumber:e,chain:t,contract:n}){var s;const r=(s=t==null?void 0:t.contracts)==null?void 0:s[n];if(!r)throw new Ur({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Ur({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}const Al={1:"An `assert` condition failed.",17:"Arithmetic operation resulted in underflow or overflow.",18:"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).",33:"Attempted to convert to an invalid type.",34:"Attempted to access a storage byte array that is incorrectly encoded.",49:"Performed `.pop()` on an empty array",50:"Array index is out of bounds.",65:"Allocated too much memory or created an array which is too large.",81:"Attempted to call a zero-initialized variable of internal function type."},wm={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},bm={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};function Ri(e){const{abi:t,data:n}=e,r=Ge(n,0,4);if(r==="0x")throw new Hn;const o=[...t||[],wm,bm].find(a=>a.type==="error"&&r===St(Te(a)));if(!o)throw new ni(r,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:o,args:"inputs"in o&&o.inputs&&o.inputs.length>0?lt(o.inputs,Ge(n,4)):void 0,errorName:o.name}}function vl({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if("name"in e&&"inputs"in e&&e.inputs)return`${n?e.name:""}(${e.inputs.map((s,o)=>`${r&&s.name?`${s.name}: `:""}${typeof t[o]=="object"?X(t[o]):t[o]}`).join(", ")})`}class Di extends P{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:a,gasPrice:i,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:l,to:d,value:f,stateOverride:h}){var g;const p=n?le(n):void 0;let m=Yn({from:p==null?void 0:p.address,to:d,value:typeof f<"u"&&`${ds(f)} ${((g=s==null?void 0:s.nativeCurrency)==null?void 0:g.symbol)||"ETH"}`,data:o,gas:a,gasPrice:typeof i<"u"&&`${ue(i)} gwei`,maxFeePerGas:typeof c<"u"&&`${ue(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${ue(u)} gwei`,nonce:l});h&&(m+=`
|
|
41
|
+
${w0(h)}`),super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Raw Call Arguments:",m].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class ze extends P{constructor(t,{abi:n,args:r,contractAddress:s,docsPath:o,functionName:a,sender:i}){const c=Ke({abi:n,args:r,name:a}),u=c?vl({abiItem:c,args:r,includeFunctionName:!1,includeName:!1}):void 0,l=c?Te(c,{includeName:!0}):void 0,d=Yn({address:s&&Ch(s),function:l,args:u&&u!=="()"&&`${[...Array((a==null?void 0:a.length)??0).keys()].map(()=>" ").join("")}${u}`,sender:i});super(t.shortMessage||`An unknown error occurred while executing the contract function "${a}".`,{cause:t,docsPath:o,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],d&&"Contract Call:",d].filter(Boolean),name:"ContractFunctionExecutionError"}),Object.defineProperty(this,"abi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"args",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"contractAddress",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"formattedArgs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"functionName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sender",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abi=n,this.args=r,this.cause=t,this.contractAddress=s,this.functionName=a,this.sender=i}}class Wr extends P{constructor({abi:t,data:n,functionName:r,message:s}){let o,a,i,c;if(n&&n!=="0x")try{a=Ri({abi:t,data:n});const{abiItem:l,errorName:d,args:f}=a;if(d==="Error")c=f[0];else if(d==="Panic"){const[h]=f;c=Al[h]}else{const h=l?Te(l,{includeName:!0}):void 0,p=l&&f?vl({abiItem:l,args:f,includeFunctionName:!1,includeName:!1}):void 0;i=[h?`Error: ${h}`:"",p&&p!=="()"?` ${[...Array((d==null?void 0:d.length)??0).keys()].map(()=>" ").join("")}${p}`:""]}}catch(l){o=l}else s&&(c=s);let u;o instanceof ni&&(u=o.signature,i=[`Unable to decode signature "${u}" as it was not found on the provided ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${u}.`]),super(c&&c!=="execution reverted"||u?[`The contract function "${r}" reverted with the following ${u?"signature":"reason"}:`,c||u].join(`
|
|
42
|
+
`):`The contract function "${r}" reverted.`,{cause:o,metaMessages:i,name:"ContractFunctionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"reason",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=a,this.reason=c,this.signature=u}}class Cl extends P{constructor({functionName:t}){super(`The contract function "${t}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${t}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}}class Il extends P{constructor({factory:t}){super(`Deployment for counterfactual contract call failed${t?` for factory "${t}".`:""}`,{metaMessages:["Please ensure:","- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).","- The `factoryData` is a valid encoded function call for contract deployment function on the factory."],name:"CounterfactualDeploymentFailedError"})}}class xs extends P{constructor({data:t,message:n}){super(n||"",{name:"RawContractError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t}}function Ui(e,t){var r,s,o,a,i,c;if(!(e instanceof P))return!1;const n=e.walk(u=>u instanceof Wr);return n instanceof Wr?!!(((r=n.data)==null?void 0:r.errorName)==="ResolverNotFound"||((s=n.data)==null?void 0:s.errorName)==="ResolverWildcardNotSupported"||((o=n.data)==null?void 0:o.errorName)==="ResolverNotContract"||((a=n.data)==null?void 0:a.errorName)==="ResolverError"||((i=n.data)==null?void 0:i.errorName)==="HttpError"||(c=n.reason)!=null&&c.includes("Wildcard on non-extended resolvers is not supported")||t==="reverse"&&n.reason===Al[50]):!1}function xl(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return F(t)?t:null}function Bn(e){let t=new Uint8Array(32).fill(0);if(!e)return W(t);const n=e.split(".");for(let r=n.length-1;r>=0;r-=1){const s=xl(n[r]),o=s?ie(s):Z(et(n[r]),"bytes");t=Z(ve([t,o]),"bytes")}return W(t)}function Am(e){return`[${e.slice(2)}]`}function El(e){const t=new Uint8Array(32).fill(0);return e?xl(e)||Z(et(e)):W(t)}function Es(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const n=new Uint8Array(et(t).byteLength+2);let r=0;const s=t.split(".");for(let o=0;o<s.length;o++){let a=et(s[o]);a.byteLength>255&&(a=et(Am(El(s[o])))),n[r]=a.length,n.set(a,r+1),r+=a.length+1}return n.byteLength!==r+1?n.slice(0,r+1):n}const vm=3;function Bt(e,{abi:t,address:n,args:r,docsPath:s,functionName:o,sender:a}){const{code:i,data:c,message:u,shortMessage:l}=e instanceof xs?e:e instanceof P?e.walk(f=>"data"in f)||e.walk():{},d=e instanceof Hn?new Cl({functionName:o}):[vm,st.code].includes(i)&&(c||u||l)?new Wr({abi:t,data:typeof c=="object"?c.data:c,functionName:o,message:l??u}):e;return new ze(d,{abi:t,args:r,contractAddress:n,docsPath:s,functionName:o,sender:a})}const Cm="0x82ad56cb",Pl="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",Sl="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",Bl="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572";function Im(e,{docsPath:t,...n}){const r=(()=>{const s=vi(e,n);return s instanceof Zn?e:s})();return new Di(r,{docsPath:t,...n})}const to=new Map;function Oi({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:s}){const o=async()=>{const l=c();a();const d=l.map(({args:f})=>f);d.length!==0&&e(d).then(f=>{var h;s&&Array.isArray(f)&&f.sort(s);for(let p=0;p<l.length;p++){const{pendingPromise:m}=l[p];(h=m.resolve)==null||h.call(m,[f[p],f])}}).catch(f=>{var h;for(let p=0;p<l.length;p++){const{pendingPromise:m}=l[p];(h=m.reject)==null||h.call(m,f)}})},a=()=>to.delete(t),i=()=>c().map(({args:l})=>l),c=()=>to.get(t)||[],u=l=>to.set(t,[...c(),l]);return{flush:a,async schedule(l){const d={},f=new Promise((m,g)=>{d.resolve=m,d.reject=g});return(n==null?void 0:n([...i(),l]))&&o(),c().length>0?(u({args:l,pendingPromise:d}),f):(u({args:l,pendingPromise:d}),setTimeout(o,r),f)}}}async function ft(e,t){var M,z,R,G;const{account:n=e.account,batch:r=!!((M=e.batch)!=null&&M.multicall),blockNumber:s,blockTag:o="latest",accessList:a,blobs:i,code:c,data:u,factory:l,factoryData:d,gas:f,gasPrice:h,maxFeePerBlobGas:p,maxFeePerGas:m,maxPriorityFeePerGas:g,nonce:y,to:w,value:C,stateOverride:I,...b}=t,A=n?le(n):void 0;if(c&&(l||d))throw new P("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(c&&w)throw new P("Cannot provide both `code` & `to` as parameters.");const v=c&&u,x=l&&d&&w&&u,E=v||x,k=v?Pm({code:c,data:u}):x?Sm({data:u,factory:l,factoryData:d,to:w}):u;try{gn(t);const S=(s?N(s):void 0)||o,O=Uu(I),q=(G=(R=(z=e.chain)==null?void 0:z.formatters)==null?void 0:R.transactionRequest)==null?void 0:G.format,Q=(q||Dt)({...fs(b,{format:q}),from:A==null?void 0:A.address,accessList:a,blobs:i,data:k,gas:f,gasPrice:h,maxFeePerBlobGas:p,maxFeePerGas:m,maxPriorityFeePerGas:g,nonce:y,to:E?void 0:w,value:C});if(r&&xm({request:Q})&&!O)try{return await Em(e,{...Q,blockNumber:s,blockTag:o})}catch(te){if(!(te instanceof hi)&&!(te instanceof Ur))throw te}const oe=await e.request({method:"eth_call",params:O?[Q,S,O]:[Q,S]});return oe==="0x"?{data:void 0}:{data:oe}}catch(B){const S=Bm(B),{offchainLookup:O,offchainLookupSignature:q}=await Promise.resolve().then(()=>yg);if(e.ccipRead!==!1&&(S==null?void 0:S.slice(0,10))===q&&w)return{data:await O(e,{data:S,to:w})};throw E&&(S==null?void 0:S.slice(0,10))==="0x101bb98d"?new Il({factory:l}):Im(B,{...t,account:A,chain:e.chain})}}function xm({request:e}){const{data:t,to:n,...r}=e;return!(!t||t.startsWith(Cm)||!n||Object.values(r).filter(s=>typeof s<"u").length>0)}async function Em(e,t){var m;const{batchSize:n=1024,wait:r=0}=typeof((m=e.batch)==null?void 0:m.multicall)=="object"?e.batch.multicall:{},{blockNumber:s,blockTag:o="latest",data:a,multicallAddress:i,to:c}=t;let u=i;if(!u){if(!e.chain)throw new hi;u=Ft({blockNumber:s,chain:e.chain,contract:"multicall3"})}const d=(s?N(s):void 0)||o,{schedule:f}=Oi({id:`${e.uid}.${d}`,wait:r,shouldSplitBatch(g){return g.reduce((w,{data:C})=>w+(C.length-2),0)>n*2},fn:async g=>{const y=g.map(I=>({allowFailure:!0,callData:I.data,target:I.to})),w=Fe({abi:Hr,args:[y],functionName:"aggregate3"}),C=await e.request({method:"eth_call",params:[{data:w,to:u},d]});return Ot({abi:Hr,args:[y],functionName:"aggregate3",data:C||"0x"})}}),[{returnData:h,success:p}]=await f({data:a,to:c});if(!p)throw new xs({data:h});return h==="0x"?{data:void 0}:{data:h}}function Pm(e){const{code:t,data:n}=e;return Wn({abi:Ti(["constructor(bytes, bytes)"]),bytecode:Pl,args:[t,n]})}function Sm(e){const{data:t,factory:n,factoryData:r,to:s}=e;return Wn({abi:Ti(["constructor(address, bytes, address, bytes)"]),bytecode:Sl,args:[s,t,n,r]})}function Bm(e){var n;if(!(e instanceof P))return;const t=e.walk();return typeof(t==null?void 0:t.data)=="object"?(n=t.data)==null?void 0:n.data:t.data}async function Ce(e,t){const{abi:n,address:r,args:s,functionName:o,...a}=t,i=Fe({abi:n,args:s,functionName:o});try{const{data:c}=await U(e,ft,"call")({...a,data:i,to:r});return Ot({abi:n,args:s,functionName:o,data:c||"0x"})}catch(c){throw Bt(c,{abi:n,address:r,args:s,docsPath:"/docs/contract/readContract",functionName:o})}}async function Fi(e,{blockNumber:t,blockTag:n,coinType:r,name:s,gatewayUrls:o,strict:a,universalResolverAddress:i}){let c=i;if(!c){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");c=Ft({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const u=Fe({abi:_a,functionName:"addr",...r!=null?{args:[Bn(s),BigInt(r)]}:{args:[Bn(s)]}}),l={address:c,abi:Ku,functionName:"resolve",args:[L(Es(s)),u],blockNumber:t,blockTag:n},d=U(e,Ce,"readContract"),f=o?await d({...l,args:[...l.args,o]}):await d(l);if(f[0]==="0x")return null;const h=Ot({abi:_a,args:r!=null?[Bn(s),BigInt(r)]:void 0,functionName:"addr",data:f[0]});return h==="0x"||re(h)==="0x00"?null:h}catch(u){if(a)throw u;if(Ui(u,"resolve"))return null;throw u}}class Nm extends P{constructor({data:t}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(t)}`],name:"EnsAvatarInvalidMetadataError"})}}class _t extends P{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class Ps extends P{constructor({uri:t}){super(`Unable to resolve ENS avatar URI "${t}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class Nl extends P{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const km=/(?<protocol>https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,Mm=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,Tm=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,Rm=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function Dm(e){try{const t=await fetch(e,{method:"HEAD"});if(t.status===200){const n=t.headers.get("content-type");return n==null?void 0:n.startsWith("image/")}return!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(n=>{const r=new Image;r.onload=()=>{n(!0)},r.onerror=()=>{n(!1)},r.src=e})}}function Ka(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function kl({uri:e,gatewayUrls:t}){const n=Tm.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=Ka(t==null?void 0:t.ipfs,"https://ipfs.io"),s=Ka(t==null?void 0:t.arweave,"https://arweave.net"),o=e.match(km),{protocol:a,subpath:i,target:c,subtarget:u=""}=(o==null?void 0:o.groups)||{},l=a==="ipns:/"||i==="ipns/",d=a==="ipfs:/"||i==="ipfs/"||Mm.test(e);if(e.startsWith("http")&&!l&&!d){let h=e;return t!=null&&t.arweave&&(h=e.replace(/https:\/\/arweave.net/g,t==null?void 0:t.arweave)),{uri:h,isOnChain:!1,isEncoded:!1}}if((l||d)&&c)return{uri:`${r}/${l?"ipns":"ipfs"}/${c}${u}`,isOnChain:!1,isEncoded:!1};if(a==="ar:/"&&c)return{uri:`${s}/${c}${u||""}`,isOnChain:!1,isEncoded:!1};let f=e.replace(Rm,"");if(f.startsWith("<svg")&&(f=`data:image/svg+xml;base64,${btoa(f)}`),f.startsWith("data:")||f.startsWith("{"))return{uri:f,isOnChain:!0,isEncoded:!1};throw new Ps({uri:e})}function Ml(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new Nm({data:e});return e.image||e.image_url||e.image_data}async function Um({gatewayUrls:e,uri:t}){try{const n=await fetch(t).then(s=>s.json());return await Li({gatewayUrls:e,uri:Ml(n)})}catch{throw new Ps({uri:t})}}async function Li({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=kl({uri:t,gatewayUrls:e});if(r||await Dm(n))return n;throw new Ps({uri:t})}function Om(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[n,r,s]=t.split("/"),[o,a]=n.split(":"),[i,c]=r.split(":");if(!o||o.toLowerCase()!=="eip155")throw new _t({reason:"Only EIP-155 supported"});if(!a)throw new _t({reason:"Chain ID not found"});if(!c)throw new _t({reason:"Contract address not found"});if(!s)throw new _t({reason:"Token ID not found"});if(!i)throw new _t({reason:"ERC namespace not found"});return{chainID:Number.parseInt(a),namespace:i.toLowerCase(),contractAddress:c,tokenID:s}}async function Fm(e,{nft:t}){if(t.namespace==="erc721")return Ce(e,{address:t.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(t.tokenID)]});if(t.namespace==="erc1155")return Ce(e,{address:t.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(t.tokenID)]});throw new Nl({namespace:t.namespace})}async function Lm(e,{gatewayUrls:t,record:n}){return/eip155:/i.test(n)?$m(e,{gatewayUrls:t,record:n}):Li({uri:n,gatewayUrls:t})}async function $m(e,{gatewayUrls:t,record:n}){const r=Om(n),s=await Fm(e,{nft:r}),{uri:o,isOnChain:a,isEncoded:i}=kl({uri:s,gatewayUrls:t});if(a&&(o.includes("data:application/json;base64,")||o.startsWith("{"))){const u=i?atob(o.replace("data:application/json;base64,","")):o,l=JSON.parse(u);return Li({uri:Ml(l),gatewayUrls:t})}let c=r.tokenID;return r.namespace==="erc1155"&&(c=c.replace("0x","").padStart(64,"0")),Um({gatewayUrls:t,uri:o.replace(/(?:0x)?{id}/,c)})}async function $i(e,{blockNumber:t,blockTag:n,name:r,key:s,gatewayUrls:o,strict:a,universalResolverAddress:i}){let c=i;if(!c){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");c=Ft({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const u={address:c,abi:Ku,functionName:"resolve",args:[L(Es(r)),Fe({abi:za,functionName:"text",args:[Bn(r),s]})],blockNumber:t,blockTag:n},l=U(e,Ce,"readContract"),d=o?await l({...u,args:[...u.args,o]}):await l(u);if(d[0]==="0x")return null;const f=Ot({abi:za,functionName:"text",data:d[0]});return f===""?null:f}catch(u){if(a)throw u;if(Ui(u,"resolve"))return null;throw u}}async function ji(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:s,gatewayUrls:o,strict:a,universalResolverAddress:i}){const c=await U(e,$i,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:s,universalResolverAddress:i,gatewayUrls:o,strict:a});if(!c)return null;try{return await Lm(e,{record:c,gatewayUrls:r})}catch{return null}}async function qi(e,{address:t,blockNumber:n,blockTag:r,gatewayUrls:s,strict:o,universalResolverAddress:a}){let i=a;if(!i){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");i=Ft({blockNumber:n,chain:e.chain,contract:"ensUniversalResolver"})}const c=`${t.toLowerCase().substring(2)}.addr.reverse`;try{const u={address:i,abi:B0,functionName:"reverse",args:[L(Es(c))],blockNumber:n,blockTag:r},l=U(e,Ce,"readContract"),[d,f]=s?await l({...u,args:[...u.args,s]}):await l(u);return t.toLowerCase()!==f.toLowerCase()?null:d}catch(u){if(o)throw u;if(Ui(u,"reverse"))return null;throw u}}async function Tl(e,{blockNumber:t,blockTag:n,name:r,universalResolverAddress:s}){let o=s;if(!o){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");o=Ft({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}const[a]=await U(e,Ce,"readContract")({address:o,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[L(Es(r))],blockNumber:t,blockTag:n});return a}function Ss(e,{method:t}){var r,s;const n={};return e.transport.type==="fallback"&&((s=(r=e.transport).onResponse)==null||s.call(r,({method:o,response:a,status:i,transport:c})=>{i==="success"&&t===o&&(n[a]=c.request)})),o=>n[o]||e.request}async function jm(e){const t=Ss(e,{method:"eth_newBlockFilter"}),n=await e.request({method:"eth_newBlockFilter"});return{id:n,request:t(n),type:"block"}}class Rl extends P{constructor(t){super(`Filter type "${t}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}const Wa="/docs/contract/encodeEventTopics";function wn(e){var c;const{abi:t,eventName:n,args:r}=e;let s=t[0];if(n){const u=Ke({abi:t,name:n});if(!u)throw new xo(n,{docsPath:Wa});s=u}if(s.type!=="event")throw new xo(void 0,{docsPath:Wa});const o=Te(s),a=Un(o);let i=[];if(r&&"inputs"in s){const u=(c=s.inputs)==null?void 0:c.filter(d=>"indexed"in d&&d.indexed),l=Array.isArray(r)?r:Object.values(r).length>0?(u==null?void 0:u.map(d=>r[d.name]))??[]:[];l.length>0&&(i=(u==null?void 0:u.map((d,f)=>Array.isArray(l[f])?l[f].map((h,p)=>Va({param:d,value:l[f][p]})):l[f]?Va({param:d,value:l[f]}):null))??[])}return[a,...i]}function Va({param:e,value:t}){if(e.type==="string"||e.type==="bytes")return Z(ie(t));if(e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/))throw new Rl(e.type);return Oe([e],[t])}async function zi(e,t){const{address:n,abi:r,args:s,eventName:o,fromBlock:a,strict:i,toBlock:c}=t,u=Ss(e,{method:"eth_newFilter"}),l=o?wn({abi:r,args:s,eventName:o}):void 0,d=await e.request({method:"eth_newFilter",params:[{address:n,fromBlock:typeof a=="bigint"?N(a):a,toBlock:typeof c=="bigint"?N(c):c,topics:l}]});return{abi:r,args:s,eventName:o,id:d,request:u(d),strict:!!i,type:"event"}}async function Dl(e,{address:t,args:n,event:r,events:s,fromBlock:o,strict:a,toBlock:i}={}){const c=s??(r?[r]:void 0),u=Ss(e,{method:"eth_newFilter"});let l=[];c&&(l=[c.flatMap(h=>wn({abi:[h],eventName:h.name,args:n}))],r&&(l=l[0]));const d=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof o=="bigint"?N(o):o,toBlock:typeof i=="bigint"?N(i):i,...l.length?{topics:l}:{}}]});return{abi:c,args:n,eventName:r?r.name:void 0,fromBlock:o,id:d,request:u(d),strict:!!a,toBlock:i,type:"event"}}async function Ul(e){const t=Ss(e,{method:"eth_newPendingTransactionFilter"}),n=await e.request({method:"eth_newPendingTransactionFilter"});return{id:n,request:t(n),type:"transaction"}}async function qm(e){return e.request({method:`${e.mode}_dumpState`})}async function Ol(e,t){const{abi:n,address:r,args:s,functionName:o,...a}=t,i=Fe({abi:n,args:s,functionName:o});try{return await U(e,Ut,"estimateGas")({data:i,to:r,...a})}catch(c){const u=a.account?le(a.account):void 0;throw Bt(c,{abi:n,address:r,args:s,docsPath:"/docs/contract/estimateContractGas",functionName:o,sender:u==null?void 0:u.address})}}async function zm(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}const _m=new Map,Gm=new Map;function Hm(e){const t=(s,o)=>({clear:()=>o.delete(s),get:()=>o.get(s),set:a=>o.set(s,a)}),n=t(e,_m),r=t(e,Gm);return{clear:()=>{n.clear(),r.clear()},promise:n,response:r}}async function Qm(e,{cacheKey:t,cacheTime:n=Number.POSITIVE_INFINITY}){const r=Hm(t),s=r.response.get();if(s&&n>0&&new Date().getTime()-s.created.getTime()<n)return s.data;let o=r.promise.get();o||(o=e(),r.promise.set(o));try{const a=await o;return r.response.set({created:new Date,data:a}),a}finally{r.promise.clear()}}const Km=e=>`blockNumber.${e}`;async function bn(e,{cacheTime:t=e.cacheTime}={}){const n=await Qm(()=>e.request({method:"eth_blockNumber"}),{cacheKey:Km(e.uid),cacheTime:t});return BigInt(n)}async function Fl(e,{blockHash:t,blockNumber:n,blockTag:r="latest"}={}){const s=n!==void 0?N(n):void 0;let o;return t?o=await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]},{dedupe:!0}):o=await e.request({method:"eth_getBlockTransactionCountByNumber",params:[s||r]},{dedupe:!!s}),K(o)}async function Do(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=n!==void 0?N(n):void 0,o=await e.request({method:"eth_getCode",params:[t,s||r]},{dedupe:!!s});if(o!=="0x")return o}function ht(e,t){if(!ee(e,{strict:!1}))throw new ce({address:e});if(!ee(t,{strict:!1}))throw new ce({address:t});return e.toLowerCase()===t.toLowerCase()}const Ja="/docs/contract/decodeEventLog";function Bs(e){const{abi:t,data:n,strict:r,topics:s}=e,o=r??!0,[a,...i]=s;if(!a)throw new Xc({docsPath:Ja});const c=t.find(m=>m.type==="event"&&a===Un(Te(m)));if(!(c&&"name"in c)||c.type!=="event")throw new ri(a,{docsPath:Ja});const{name:u,inputs:l}=c,d=l==null?void 0:l.some(m=>!("name"in m&&m.name));let f=d?[]:{};const h=l.filter(m=>"indexed"in m&&m.indexed);for(let m=0;m<h.length;m++){const g=h[m],y=i[m];if(!y)throw new Qn({abiItem:c,param:g});f[d?m:g.name||m]=Wm({param:g,value:y})}const p=l.filter(m=>!("indexed"in m&&m.indexed));if(p.length>0){if(n&&n!=="0x")try{const m=lt(p,n);if(m)if(d)f=[...f,...m];else for(let g=0;g<p.length;g++)f[p[g].name]=m[g]}catch(m){if(o)throw m instanceof ei||m instanceof pu?new Vt({abiItem:c,data:n,params:p,size:J(n)}):m}else if(o)throw new Vt({abiItem:c,data:"0x",params:p,size:0})}return{eventName:u,args:Object.values(f).length>0?f:void 0}}function Wm({param:e,value:t}){return e.type==="string"||e.type==="bytes"||e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/)?t:(lt([e],t)||[])[0]}function Ns(e){const{abi:t,args:n,logs:r,strict:s=!0}=e,o=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})();return r.map(a=>{var i;try{const c=Ke({abi:t,name:a.topics[0]});if(!c)return null;const u=Bs({...a,abi:[c],strict:s});return o&&!o.includes(u.eventName)||!Vm({args:u.args,inputs:c.inputs,matchArgs:n})?null:{...u,...a}}catch(c){let u,l;if(c instanceof ri)return null;if(c instanceof Vt||c instanceof Qn){if(s)return null;u=c.abiItem.name,l=(i=c.abiItem.inputs)==null?void 0:i.some(d=>!("name"in d&&d.name))}return{...a,args:l?[]:{},eventName:u}}}).filter(Boolean)}function Vm(e){const{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function s(o,a,i){try{return o.type==="address"?ht(a,i):o.type==="string"||o.type==="bytes"?Z(ie(a))===i:a===i}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((o,a)=>{if(!o)return!0;const i=n[a];return i?(Array.isArray(o)?o:[o]).some(u=>s(i,u,t[a])):!1}):typeof t=="object"&&!Array.isArray(t)&&typeof r=="object"&&!Array.isArray(r)?Object.entries(r).every(([o,a])=>{if(!a)return!0;const i=n.find(u=>u.name===o);return i?(Array.isArray(a)?a:[a]).some(u=>s(i,u,t[o])):!1}):!1}function Qe(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}async function _i(e,{address:t,blockHash:n,fromBlock:r,toBlock:s,event:o,events:a,args:i,strict:c}={}){const u=c??!1,l=a??(o?[o]:void 0);let d=[];l&&(d=[l.flatMap(m=>wn({abi:[m],eventName:m.name,args:a?void 0:i}))],o&&(d=d[0]));let f;n?f=await e.request({method:"eth_getLogs",params:[{address:t,topics:d,blockHash:n}]}):f=await e.request({method:"eth_getLogs",params:[{address:t,topics:d,fromBlock:typeof r=="bigint"?N(r):r,toBlock:typeof s=="bigint"?N(s):s}]});const h=f.map(p=>Qe(p));return l?Ns({abi:l,args:i,logs:h,strict:u}):h}async function Gi(e,t){const{abi:n,address:r,args:s,blockHash:o,eventName:a,fromBlock:i,toBlock:c,strict:u}=t,l=a?Ke({abi:n,name:a}):void 0,d=l?void 0:n.filter(f=>f.type==="event");return U(e,_i,"getLogs")({address:r,args:s,blockHash:o,event:l,events:d,fromBlock:i,toBlock:c,strict:u})}class Jm extends P{constructor({address:t}){super(`No EIP-712 domain found on contract "${t}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${t}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function Zm(e,t){const{address:n,factory:r,factoryData:s}=t;try{const[o,a,i,c,u,l,d]=await U(e,Ce,"readContract")({abi:Ym,address:n,functionName:"eip712Domain",factory:r,factoryData:s});return{domain:{name:a,version:i,chainId:Number(c),verifyingContract:u,salt:l},extensions:d,fields:o}}catch(o){const a=o;throw a.name==="ContractFunctionExecutionError"&&a.cause.name==="ContractFunctionZeroDataError"?new Jm({address:n}):a}}const Ym=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];function Xm(e){var t;return{baseFeePerGas:e.baseFeePerGas.map(n=>BigInt(n)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:(t=e.reward)==null?void 0:t.map(n=>n.map(r=>BigInt(r)))}}async function Ll(e,{blockCount:t,blockNumber:n,blockTag:r="latest",rewardPercentiles:s}){const o=n?N(n):void 0,a=await e.request({method:"eth_feeHistory",params:[N(t),o||r,s]},{dedupe:!!o});return Xm(a)}async function ks(e,{filter:t}){const n="strict"in t&&t.strict,r=await t.request({method:"eth_getFilterChanges",params:[t.id]});if(typeof r[0]=="string")return r;const s=r.map(o=>Qe(o));return!("abi"in t)||!t.abi?s:Ns({abi:t.abi,logs:s,strict:n})}async function eg(e,{filter:t}){const n=t.strict??!1,s=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(o=>Qe(o));return t.abi?Ns({abi:t.abi,logs:s,strict:n}):s}async function $l(e,{address:t,blockNumber:n,blockTag:r="latest",slot:s}){const o=n!==void 0?N(n):void 0;return await e.request({method:"eth_getStorageAt",params:[t,s,o||r]})}async function An(e,{blockHash:t,blockNumber:n,blockTag:r,hash:s,index:o}){var l,d,f;const a=r||"latest",i=n!==void 0?N(n):void 0;let c=null;if(s?c=await e.request({method:"eth_getTransactionByHash",params:[s]},{dedupe:!0}):t?c=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,N(o)]},{dedupe:!0}):(i||a)&&(c=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[i||a,N(o)]},{dedupe:!!i})),!c)throw new bi({blockHash:t,blockNumber:n,blockTag:a,hash:s,index:o});return(((f=(d=(l=e.chain)==null?void 0:l.formatters)==null?void 0:d.transaction)==null?void 0:f.format)||ms)(c)}async function jl(e,{hash:t,transactionReceipt:n}){const[r,s]=await Promise.all([U(e,bn,"getBlockNumber")({}),t?U(e,An,"getTransaction")({hash:t}):void 0]),o=(n==null?void 0:n.blockNumber)||(s==null?void 0:s.blockNumber);return o?r-o+1n:0n}const tg={"0x0":"reverted","0x1":"success"};function Hi(e){const t={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(n=>Qe(n)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?K(e.transactionIndex):null,status:e.status?tg[e.status]:null,type:e.type?Ii[e.type]||e.type:null};return e.blobGasPrice&&(t.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(t.blobGasUsed=BigInt(e.blobGasUsed)),t}const ng=hs("transactionReceipt",Hi);async function Vr(e,{hash:t}){var s,o,a;const n=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!n)throw new Ai({hash:t});return(((a=(o=(s=e.chain)==null?void 0:s.formatters)==null?void 0:o.transactionReceipt)==null?void 0:a.format)||Hi)(n)}async function rg(e,{address:t}){await e.request({method:`${e.mode}_impersonateAccount`,params:[t]})}async function sg(e,{seconds:t}){return await e.request({method:"evm_increaseTime",params:[N(t)]})}async function og(e,{state:t}){await e.request({method:`${e.mode}_loadState`,params:[t]})}async function ig(e,{blocks:t,interval:n}){e.mode==="ganache"?await e.request({method:"evm_mine",params:[{blocks:N(t)}]}):await e.request({method:`${e.mode}_mine`,params:[N(t),N(n||0)]})}async function Qi(e,t){var g;const{allowFailure:n=!0,batchSize:r,blockNumber:s,blockTag:o,multicallAddress:a,stateOverride:i}=t,c=t.contracts,u=r??(typeof((g=e.batch)==null?void 0:g.multicall)=="object"&&e.batch.multicall.batchSize||1024);let l=a;if(!l){if(!e.chain)throw new Error("client chain not configured. multicallAddress is required.");l=Ft({blockNumber:s,chain:e.chain,contract:"multicall3"})}const d=[[]];let f=0,h=0;for(let y=0;y<c.length;y++){const{abi:w,address:C,args:I,functionName:b}=c[y];try{const A=Fe({abi:w,args:I,functionName:b});h+=(A.length-2)/2,u>0&&h>u&&d[f].length>0&&(f++,h=(A.length-2)/2,d[f]=[]),d[f]=[...d[f],{allowFailure:!0,callData:A,target:C}]}catch(A){const v=Bt(A,{abi:w,address:C,args:I,docsPath:"/docs/contract/multicall",functionName:b});if(!n)throw v;d[f]=[...d[f],{allowFailure:!0,callData:"0x",target:C}]}}const p=await Promise.allSettled(d.map(y=>U(e,Ce,"readContract")({abi:Hr,address:l,args:[y],blockNumber:s,blockTag:o,functionName:"aggregate3",stateOverride:i}))),m=[];for(let y=0;y<p.length;y++){const w=p[y];if(w.status==="rejected"){if(!n)throw w.reason;for(let I=0;I<d[y].length;I++)m.push({status:"failure",error:w.reason,result:void 0});continue}const C=w.value;for(let I=0;I<C.length;I++){const{returnData:b,success:A}=C[I],{callData:v}=d[y][I],{abi:x,address:E,functionName:k,args:M}=c[m.length];try{if(v==="0x")throw new Hn;if(!A)throw new xs({data:b});const z=Ot({abi:x,args:M,data:b,functionName:k});m.push(n?{result:z,status:"success"}:z)}catch(z){const R=Bt(z,{abi:x,address:E,args:M,docsPath:"/docs/contract/multicall",functionName:k});if(!n)throw R;m.push({error:R,result:void 0,status:"failure"})}}}if(m.length!==c.length)throw new P("multicall results mismatch");return m}const no=new Map,Za=new Map;let ag=0;function at(e,t,n){const r=++ag,s=()=>no.get(e)||[],o=()=>{const l=s();no.set(e,l.filter(d=>d.id!==r))},a=()=>{const l=Za.get(e);s().length===1&&l&&l(),o()},i=s();if(no.set(e,[...i,{id:r,fns:t}]),i&&i.length>0)return a;const c={};for(const l in t)c[l]=(...d)=>{var h,p;const f=s();if(f.length!==0)for(const m of f)(p=(h=m.fns)[l])==null||p.call(h,...d)};const u=n(c);return typeof u=="function"&&Za.set(e,u),a}async function Jr(e){return new Promise(t=>setTimeout(t,e))}function rr(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let s=!0;const o=()=>s=!1;return(async()=>{let i;t&&(i=await e({unpoll:o}));const c=await(n==null?void 0:n(i))??r;await Jr(c);const u=async()=>{s&&(await e({unpoll:o}),await Jr(r),u())};u()})(),o}function ql(e,{blockTag:t="latest",emitMissed:n=!1,emitOnBegin:r=!1,onBlock:s,onError:o,includeTransactions:a,poll:i,pollingInterval:c=e.pollingInterval}){const u=typeof i<"u"?i:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"),l=a??!1;let d;return u?(()=>{const p=X(["watchBlocks",e.uid,t,n,r,l,c]);return at(p,{onBlock:s,onError:o},m=>rr(async()=>{var g;try{const y=await U(e,He,"getBlock")({blockTag:t,includeTransactions:l});if(y.number&&(d!=null&&d.number)){if(y.number===d.number)return;if(y.number-d.number>1&&n)for(let w=(d==null?void 0:d.number)+1n;w<y.number;w++){const C=await U(e,He,"getBlock")({blockNumber:w,includeTransactions:l});m.onBlock(C,d),d=C}}(!(d!=null&&d.number)||t==="pending"&&!(y!=null&&y.number)||y.number&&y.number>d.number)&&(m.onBlock(y,d),d=y)}catch(y){(g=m.onError)==null||g.call(m,y)}},{emitOnBegin:r,interval:c}))})():(()=>{let p=!0,m=()=>p=!1;return(async()=>{try{const g=(()=>{if(e.transport.type==="fallback"){const w=e.transport.transports.find(C=>C.config.type==="webSocket");return w?w.value:e.transport}return e.transport})(),{unsubscribe:y}=await g.subscribe({params:["newHeads"],onData(w){var b,A,v;if(!p)return;const I=(((v=(A=(b=e.chain)==null?void 0:b.formatters)==null?void 0:A.block)==null?void 0:v.format)||gs)(w.result);s(I,d),d=I},onError(w){o==null||o(w)}});m=y,p||m()}catch(g){o==null||o(g)}})(),()=>m()})()}function Ki(e,{emitOnBegin:t=!1,emitMissed:n=!1,onBlockNumber:r,onError:s,poll:o,pollingInterval:a=e.pollingInterval}){const i=typeof o<"u"?o:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket");let c;return i?(()=>{const d=X(["watchBlockNumber",e.uid,t,n,a]);return at(d,{onBlockNumber:r,onError:s},f=>rr(async()=>{var h;try{const p=await U(e,bn,"getBlockNumber")({cacheTime:0});if(c){if(p===c)return;if(p-c>1&&n)for(let m=c+1n;m<p;m++)f.onBlockNumber(m,c),c=m}(!c||p>c)&&(f.onBlockNumber(p,c),c=p)}catch(p){(h=f.onError)==null||h.call(f,p)}},{emitOnBegin:t,interval:a}))})():(()=>{const d=X(["watchBlockNumber",e.uid,t,n]);return at(d,{onBlockNumber:r,onError:s},f=>{let h=!0,p=()=>h=!1;return(async()=>{try{const m=(()=>{if(e.transport.type==="fallback"){const y=e.transport.transports.find(w=>w.config.type==="webSocket");return y?y.value:e.transport}return e.transport})(),{unsubscribe:g}=await m.subscribe({params:["newHeads"],onData(y){var C;if(!h)return;const w=H((C=y.result)==null?void 0:C.number);f.onBlockNumber(w,c),c=w},onError(y){var w;(w=f.onError)==null||w.call(f,y)}});p=g,h||p()}catch(m){s==null||s(m)}})(),()=>p()})})()}async function Ms(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function cg(e,{address:t,args:n,batch:r=!0,event:s,events:o,fromBlock:a,onError:i,onLogs:c,poll:u,pollingInterval:l=e.pollingInterval,strict:d}){const f=typeof u<"u"?u:typeof a=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"),h=d??!1;return f?(()=>{const g=X(["watchEvent",t,n,r,e.uid,s,l,a]);return at(g,{onLogs:c,onError:i},y=>{let w;a!==void 0&&(w=a-1n);let C,I=!1;const b=rr(async()=>{var A;if(!I){try{C=await U(e,Dl,"createEventFilter")({address:t,args:n,event:s,events:o,strict:h,fromBlock:a})}catch{}I=!0;return}try{let v;if(C)v=await U(e,ks,"getFilterChanges")({filter:C});else{const x=await U(e,bn,"getBlockNumber")({});w&&w!==x?v=await U(e,_i,"getLogs")({address:t,args:n,event:s,events:o,fromBlock:w+1n,toBlock:x}):v=[],w=x}if(v.length===0)return;if(r)y.onLogs(v);else for(const x of v)y.onLogs([x])}catch(v){C&&v instanceof ot&&(I=!1),(A=y.onError)==null||A.call(y,v)}},{emitOnBegin:!0,interval:l});return async()=>{C&&await U(e,Ms,"uninstallFilter")({filter:C}),b()}})})():(()=>{let g=!0,y=()=>g=!1;return(async()=>{try{const w=(()=>{if(e.transport.type==="fallback"){const A=e.transport.transports.find(v=>v.config.type==="webSocket");return A?A.value:e.transport}return e.transport})(),C=o??(s?[s]:void 0);let I=[];C&&(I=[C.flatMap(v=>wn({abi:[v],eventName:v.name,args:n}))],s&&(I=I[0]));const{unsubscribe:b}=await w.subscribe({params:["logs",{address:t,topics:I}],onData(A){var x;if(!g)return;const v=A.result;try{const{eventName:E,args:k}=Bs({abi:C??[],data:v.data,topics:v.topics,strict:h}),M=Qe(v,{args:k,eventName:E});c([M])}catch(E){let k,M;if(E instanceof Vt||E instanceof Qn){if(d)return;k=E.abiItem.name,M=(x=E.abiItem.inputs)==null?void 0:x.some(R=>!("name"in R&&R.name))}const z=Qe(v,{args:M?[]:{},eventName:k});c([z])}},onError(A){i==null||i(A)}});y=b,g||y()}catch(w){i==null||i(w)}})(),()=>y()})()}function zl(e,{batch:t=!0,onError:n,onTransactions:r,poll:s,pollingInterval:o=e.pollingInterval}){return(typeof s<"u"?s:e.transport.type!=="webSocket")?(()=>{const u=X(["watchPendingTransactions",e.uid,t,o]);return at(u,{onTransactions:r,onError:n},l=>{let d;const f=rr(async()=>{var h;try{if(!d)try{d=await U(e,Ul,"createPendingTransactionFilter")({});return}catch(m){throw f(),m}const p=await U(e,ks,"getFilterChanges")({filter:d});if(p.length===0)return;if(t)l.onTransactions(p);else for(const m of p)l.onTransactions([m])}catch(p){(h=l.onError)==null||h.call(l,p)}},{emitOnBegin:!0,interval:o});return async()=>{d&&await U(e,Ms,"uninstallFilter")({filter:d}),f()}})})():(()=>{let u=!0,l=()=>u=!1;return(async()=>{try{const{unsubscribe:d}=await e.transport.subscribe({params:["newPendingTransactions"],onData(f){if(!u)return;const h=f.result;r([h])},onError(f){n==null||n(f)}});l=d,u||l()}catch(d){n==null||n(d)}})(),()=>l()})()}async function ug(e){var n;return((n=e.account)==null?void 0:n.type)==="local"?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map(r=>pn(r))}async function lg(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}const wr=new cs(8192);function dg(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(wr.get(n))return wr.get(n);const r=e().finally(()=>wr.delete(n));return wr.set(n,r),r}function ct(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((s,o)=>{const a=async({count:i=0}={})=>{const c=async({error:u})=>{const l=typeof t=="function"?t({count:i,error:u}):t;l&&await Jr(l),a({count:i+1})};try{const u=await e();s(u)}catch(u){if(i<n&&await r({count:i,error:u}))return c({error:u});o(u)}};a()})}function fg(e,t={}){return async(n,r={})=>{const{dedupe:s=!1,retryDelay:o=150,retryCount:a=3,uid:i}={...t,...r},c=s?Z(_e(`${i}.${X(n)}`)):void 0;return dg(()=>ct(async()=>{try{return await e(n)}catch(u){const l=u;switch(l.code){case Xt.code:throw new Xt(l);case en.code:throw new en(l);case tn.code:throw new tn(l,{method:n.method});case nn.code:throw new nn(l);case st.code:throw new st(l);case ot.code:throw new ot(l);case rn.code:throw new rn(l);case pe.code:throw new pe(l);case xt.code:throw new xt(l);case sn.code:throw new sn(l,{method:n.method});case Et.code:throw new Et(l);case on.code:throw new on(l);case D.code:throw new D(l);case an.code:throw new an(l);case cn.code:throw new cn(l);case it.code:throw new it(l);case Pt.code:throw new Pt(l);case V.code:throw new V(l);case 5e3:throw new D(l);default:throw u instanceof P?u:new Eu(l)}}},{delay:({count:u,error:l})=>{var d;if(l&&l instanceof tt){const f=(d=l==null?void 0:l.headers)==null?void 0:d.get("Retry-After");if(f!=null&&f.match(/\d/))return Number.parseInt(f)*1e3}return~~(1<<u)*o},retryCount:a,shouldRetry:({error:u})=>hg(u)}),{enabled:s,id:c})}}function hg(e){return"code"in e&&typeof e.code=="number"?e.code===-1||e.code===Et.code||e.code===st.code:e instanceof tt&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}class pg extends P{constructor({callbackSelector:t,cause:n,data:r,extraData:s,sender:o,urls:a}){var i;super(n.shortMessage||"An error occurred while fetching for an offchain result.",{cause:n,metaMessages:[...n.metaMessages||[],(i=n.metaMessages)!=null&&i.length?"":[],"Offchain Gateway Call:",a&&[" Gateway URL(s):",...a.map(c=>` ${Tt(c)}`)],` Sender: ${o}`,` Data: ${r}`,` Callback selector: ${t}`,` Extra data: ${s}`].flat(),name:"OffchainLookupError"})}}class mg extends P{constructor({result:t,url:n}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${Tt(n)}`,`Response: ${X(t)}`],name:"OffchainLookupResponseMalformedError"})}}class gg extends P{constructor({sender:t,to:n}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${n}`,`OffchainLookup sender address: ${t}`],name:"OffchainLookupSenderMismatchError"})}}const _l="0x556f1830",Wi={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function Gl(e,{blockNumber:t,blockTag:n,data:r,to:s}){const{args:o}=Ri({data:r,abi:[Wi]}),[a,i,c,u,l]=o,{ccipRead:d}=e,f=d&&typeof(d==null?void 0:d.request)=="function"?d.request:Zr;try{if(!ht(s,a))throw new gg({sender:a,to:s});const h=await f({data:c,sender:a,urls:i}),{data:p}=await ft(e,{blockNumber:t,blockTag:n,data:ve([u,Oe([{type:"bytes"},{type:"bytes"}],[h,l])]),to:s});return p}catch(h){throw new pg({callbackSelector:u,cause:h,data:r,extraData:l,sender:a,urls:i})}}async function Zr({data:e,sender:t,urls:n}){var s;let r=new Error("An unknown error occurred.");for(let o=0;o<n.length;o++){const a=n[o],i=a.includes("{data}")?"GET":"POST",c=i==="POST"?{data:e,sender:t}:void 0;try{const u=await fetch(a.replace("{sender}",t).replace("{data}",e),{body:JSON.stringify(c),method:i});let l;if((s=u.headers.get("Content-Type"))!=null&&s.startsWith("application/json")?l=(await u.json()).data:l=await u.text(),!u.ok){r=new tt({body:c,details:l!=null&&l.error?X(l.error):u.statusText,headers:u.headers,status:u.status,url:a});continue}if(!F(l)){r=new mg({result:l,url:a});continue}return l}catch(u){r=new tt({body:c,details:u.message,url:a})}}throw r}const yg=Object.freeze(Object.defineProperty({__proto__:null,ccipRequest:Zr,offchainLookup:Gl,offchainLookupAbiItem:Wi,offchainLookupSignature:_l},Symbol.toStringTag,{value:"Module"}));function Hl(e){return{formatters:void 0,fees:void 0,serializers:void 0,...e}}function wg({chains:e,id:t}){return e.find(n=>n.id===t)}const bg=/^(.*)\[([0-9]*)\]$/,Ql=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Kl=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;function pt(e,{errorInstance:t=new Error("timed out"),timeout:n,signal:r}){return new Promise((s,o)=>{(async()=>{let a;try{const i=new AbortController;n>0&&(a=setTimeout(()=>{r?i.abort():o(t)},n)),s(await e({signal:(i==null?void 0:i.signal)||null}))}catch(i){(i==null?void 0:i.name)==="AbortError"&&o(t),o(i)}finally{clearTimeout(a)}})()})}function Ag(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Uo=Ag();function Wl(e,t={}){return{async request(n){var d;const{body:r,onRequest:s=t.onRequest,onResponse:o=t.onResponse,timeout:a=t.timeout??1e4}=n,i={...t.fetchOptions??{},...n.fetchOptions??{}},{headers:c,method:u,signal:l}=i;try{const f=await pt(async({signal:p})=>{const m={...i,body:Array.isArray(r)?X(r.map(w=>({jsonrpc:"2.0",id:w.id??Uo.take(),...w}))):X({jsonrpc:"2.0",id:r.id??Uo.take(),...r}),headers:{"Content-Type":"application/json",...c},method:u||"POST",signal:l||(a>0?p:null)},g=new Request(e,m);return s&&await s(g),await fetch(e,m)},{errorInstance:new Gr({body:r,url:e}),timeout:a,signal:!0});o&&await o(f);let h;if((d=f.headers.get("Content-Type"))!=null&&d.startsWith("application/json")?h=await f.json():(h=await f.text(),h=JSON.parse(h||"{}")),!f.ok)throw new tt({body:r,details:X(h.error)||f.statusText,headers:f.headers,status:f.status,url:e});return h}catch(f){throw f instanceof tt||f instanceof Gr?f:new tt({body:r,cause:f,url:e})}}}}const ro=new Map;async function vg(e){const{getSocket:t,keepAlive:n=!0,key:r="socket",reconnect:s=!0,url:o}=e,{interval:a=3e4}=typeof n=="object"?n:{},{attempts:i=5,delay:c=2e3}=typeof s=="object"?s:{};let u=ro.get(`${r}:${o}`);if(u)return u;let l=0;const{schedule:d}=Oi({id:`${r}:${o}`,fn:async()=>{const p=new Map,m=new Map;let g,y,w;async function C(){const I=await t({onClose(){var b,A;for(const v of p.values())(b=v.onError)==null||b.call(v,new Rn({url:o}));for(const v of m.values())(A=v.onError)==null||A.call(v,new Rn({url:o}));p.clear(),m.clear(),s&&l<i&&setTimeout(async()=>{l++,await C().catch(console.error)},c)},onError(b){var A,v;g=b;for(const x of p.values())(A=x.onError)==null||A.call(x,g);for(const x of m.values())(v=x.onError)==null||v.call(x,g);p.clear(),m.clear(),s&&l<i&&setTimeout(async()=>{l++,await C().catch(console.error)},c)},onOpen(){g=void 0,l=0},onResponse(b){const A=b.method==="eth_subscription",v=A?b.params.subscription:b.id,x=A?m:p,E=x.get(v);E&&E.onResponse(b),A||x.delete(v)}});return y=I,n&&(w&&clearInterval(w),w=setInterval(()=>{var b;return(b=y.ping)==null?void 0:b.call(y)},a)),I}return await C(),g=void 0,u={close(){w&&clearInterval(w),y.close(),ro.delete(`${r}:${o}`)},get socket(){return y},request({body:I,onError:b,onResponse:A}){g&&b&&b(g);const v=I.id??Uo.take(),x=E=>{var k;typeof E.id=="number"&&v!==E.id||(I.method==="eth_subscribe"&&typeof E.result=="string"&&m.set(E.result,{onResponse:x,onError:b}),I.method==="eth_unsubscribe"&&m.delete((k=I.params)==null?void 0:k[0]),A(E))};p.set(v,{onResponse:x,onError:b});try{y.request({body:{jsonrpc:"2.0",id:v,...I}})}catch(E){b==null||b(E)}},requestAsync({body:I,timeout:b=1e4}){return pt(()=>new Promise((A,v)=>this.request({body:I,onError:v,onResponse:A})),{errorInstance:new Gr({body:I,url:o}),timeout:b})},requests:p,subscriptions:m,url:o},ro.set(`${r}:${o}`,u),[u]}}),[f,[h]]=await d();return h}async function Nr(e,t={}){const{keepAlive:n,reconnect:r}=t;return vg({async getSocket({onClose:s,onError:o,onOpen:a,onResponse:i}){const c=await Promise.resolve().then(()=>require("./native-gXKXtBE3.cjs")).then(h=>h.WebSocket),u=new c(e);function l(){s(),u.removeEventListener("close",l),u.removeEventListener("message",d),u.removeEventListener("error",o),u.removeEventListener("open",a)}function d({data:h}){i(JSON.parse(h))}u.addEventListener("close",l),u.addEventListener("message",d),u.addEventListener("error",o),u.addEventListener("open",a),u.readyState===c.CONNECTING&&await new Promise((h,p)=>{u&&(u.onopen=h,u.onerror=p)});const{close:f}=u;return Object.assign(u,{close(){f.bind(u)(),s()},ping(){try{if(u.readyState===u.CLOSED||u.readyState===u.CLOSING)throw new Po({url:u.url,cause:new Rn({url:u.url})});const h={jsonrpc:"2.0",method:"net_version",params:[]};u.send(JSON.stringify(h))}catch(h){o(h)}},request({body:h}){if(u.readyState===u.CLOSED||u.readyState===u.CLOSING)throw new Po({body:h,url:u.url,cause:new Rn({url:u.url})});return u.send(JSON.stringify(h))}})},keepAlive:n,reconnect:r,url:e})}function Cg(e,{body:t,onError:n,onResponse:r}){return e.request({body:t,onError:n,onResponse:r}),e}async function Ig(e,{body:t,timeout:n=1e4}){return e.requestAsync({body:t,timeout:n})}async function xg(e){const t=await Nr(e);return Object.assign(t.socket,{requests:t.requests,subscriptions:t.subscriptions})}const so={http(e,t){return Wl(e).request(t)},webSocket:Cg,webSocketAsync:Ig};function Ts(e){const{domain:t={},message:n,primaryType:r}=e,s={EIP712Domain:Rs({domain:t}),...e.types};Ji({domain:t,message:n,primaryType:r,types:s});const o=["0x1901"];return t&&o.push(Vi({domain:t,types:s})),r!=="EIP712Domain"&&o.push(Vl({data:n,primaryType:r,types:s})),Z(ve(o))}function Vi({domain:e,types:t}){return Vl({data:e,primaryType:"EIP712Domain",types:t})}function Vl({data:e,primaryType:t,types:n}){const r=Jl({data:e,primaryType:t,types:n});return Z(r)}function Jl({data:e,primaryType:t,types:n}){const r=[{type:"bytes32"}],s=[Eg({primaryType:t,types:n})];for(const o of n[t]){const[a,i]=Yl({types:n,name:o.name,type:o.type,value:e[o.name]});r.push(a),s.push(i)}return Oe(r,s)}function Eg({primaryType:e,types:t}){const n=L(Pg({primaryType:e,types:t}));return Z(n)}function Pg({primaryType:e,types:t}){let n="";const r=Zl({primaryType:e,types:t});r.delete(e);const s=[e,...Array.from(r).sort()];for(const o of s)n+=`${o}(${t[o].map(({name:a,type:i})=>`${i} ${a}`).join(",")})`;return n}function Zl({primaryType:e,types:t},n=new Set){const r=e.match(/^\w*/u),s=r==null?void 0:r[0];if(n.has(s)||t[s]===void 0)return n;n.add(s);for(const o of t[s])Zl({primaryType:o.type,types:t},n);return n}function Yl({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:"bytes32"},Z(Jl({data:r,primaryType:n,types:e}))];if(n==="bytes")return r=`0x${(r.length%2?"0":"")+r.slice(2)}`,[{type:"bytes32"},Z(r)];if(n==="string")return[{type:"bytes32"},Z(L(r))];if(n.lastIndexOf("]")===n.length-1){const s=n.slice(0,n.lastIndexOf("[")),o=r.map(a=>Yl({name:t,type:s,types:e,value:a}));return[{type:"bytes32"},Z(Oe(o.map(([a])=>a),o.map(([,a])=>a)))]}return[{type:n},r]}function Xl(e){const{domain:t,message:n,primaryType:r,types:s}=e,o=(c,u)=>{const l={...u};for(const d of c){const{name:f,type:h}=d;h==="address"&&(l[f]=l[f].toLowerCase())}return l},a=s.EIP712Domain?t?o(s.EIP712Domain,t):{}:{},i=(()=>{if(r!=="EIP712Domain")return o(s[r],n)})();return X({domain:a,message:i,primaryType:r,types:s})}function Ji(e){const{domain:t,message:n,primaryType:r,types:s}=e,o=(a,i)=>{for(const c of a){const{name:u,type:l}=c,d=i[u],f=l.match(Kl);if(f&&(typeof d=="number"||typeof d=="bigint")){const[m,g,y]=f;N(d,{signed:g==="int",size:Number.parseInt(y)/8})}if(l==="address"&&typeof d=="string"&&!ee(d))throw new ce({address:d});const h=l.match(Ql);if(h){const[m,g]=h;if(g&&J(d)!==Number.parseInt(g))throw new oi({expectedSize:Number.parseInt(g),givenSize:J(d)})}const p=s[l];p&&o(p,d)}};s.EIP712Domain&&t&&o(s.EIP712Domain,t),r!=="EIP712Domain"&&o(s[r],n)}function Rs({domain:e}){return[typeof(e==null?void 0:e.name)=="string"&&{name:"name",type:"string"},(e==null?void 0:e.version)&&{name:"version",type:"string"},typeof(e==null?void 0:e.chainId)=="number"&&{name:"chainId",type:"uint256"},(e==null?void 0:e.verifyingContract)&&{name:"verifyingContract",type:"address"},(e==null?void 0:e.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Sg({domain:e}){return Vi({domain:e,types:{EIP712Domain:Rs({domain:e})}})}function Bg(e){const{abi:t,data:n}=e,r=Ge(n,0,4),s=t.find(o=>o.type==="function"&&r===St(Te(o)));if(!s)throw new eu(r,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:s.name,args:"inputs"in s&&s.inputs&&s.inputs.length>0?lt(s.inputs,Ge(n,4)):void 0}}const oo="/docs/contract/encodeErrorResult";function Ng(e){const{abi:t,errorName:n,args:r}=e;let s=t[0];if(n){const c=Ke({abi:t,args:r,name:n});if(!c)throw new Io(n,{docsPath:oo});s=c}if(s.type!=="error")throw new Io(void 0,{docsPath:oo});const o=Te(s),a=St(o);let i="0x";if(r&&r.length>0){if(!s.inputs)throw new Yc(s.name,{docsPath:oo});i=Oe(s.inputs,r)}return we([a,i])}const io="/docs/contract/encodeFunctionResult";function kg(e){const{abi:t,functionName:n,result:r}=e;let s=t[0];if(n){const a=Ke({abi:t,name:n});if(!a)throw new It(n,{docsPath:io});s=a}if(s.type!=="function")throw new It(void 0,{docsPath:io});if(!s.outputs)throw new si(s.name,{docsPath:io});let o=Array.isArray(r)?r:[r];return s.outputs.length===0&&!o[0]&&(o=[]),Oe(s.outputs,o)}function Mg(e,t){if(e.length!==t.length)throw new ti({expectedLength:e.length,givenLength:t.length});const n=[];for(let r=0;r<e.length;r++){const s=e[r],o=t[r];n.push(ed(s,o))}return we(n)}function ed(e,t,n=!1){if(e==="address"){const a=t;if(!ee(a))throw new ce({address:a});return Ne(a.toLowerCase(),{size:n?32:null})}if(e==="string")return _e(t);if(e==="bytes")return t;if(e==="bool")return Ne(is(t),{size:n?32:1});const r=e.match(Kl);if(r){const[a,i,c="256"]=r,u=Number.parseInt(c)/8;return N(t,{size:n?32:u,signed:i==="int"})}const s=e.match(Ql);if(s){const[a,i]=s;if(Number.parseInt(i)!==(t.length-2)/2)throw new oi({expectedSize:Number.parseInt(i),givenSize:(t.length-2)/2});return Ne(t,{dir:"right",size:n?32:null})}const o=e.match(bg);if(o&&Array.isArray(t)){const[a,i]=o,c=[];for(let u=0;u<t.length;u++)c.push(ed(i,t[u],!0));return c.length===0?"0x":we(c)}throw new ou(e)}function Oo(e){return!e||typeof e!="object"||!("BYTES_PER_ELEMENT"in e)?!1:e.BYTES_PER_ELEMENT===1&&e.constructor.name==="Uint8Array"}function Tg(e){return e.opcode==="CREATE2"?nd(e):td(e)}function td(e){const t=ie($(e.from));let n=ie(e.nonce);return n[0]===0&&(n=new Uint8Array([])),$(`0x${Z(Re([t,n],"bytes")).slice(26)}`)}function nd(e){const t=ie($(e.from)),n=Ne(Oo(e.salt)?e.salt:ie(e.salt),{size:32}),r="bytecodeHash"in e?Oo(e.bytecodeHash)?e.bytecodeHash:ie(e.bytecodeHash):Z(e.bytecode,"bytes");return $(Ge(Z(ve([ie("0xff"),t,n,r])),12))}function Zi(e,t="hex"){const n=(()=>{if(typeof e=="string"){if(e.length>3&&e.length%2!==0)throw new Gc(e);return se(e)}return e})(),r=Zt(n,{recursiveReadLimit:Number.POSITIVE_INFINITY});return rd(r,t)}function rd(e,t="hex"){if(e.bytes.length===0)return t==="hex"?W(e.bytes):e.bytes;const n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){const s=Ya(e,n,128),o=e.readBytes(s);return t==="hex"?W(o):o}const r=Ya(e,n,192);return Rg(e,r,t)}function Ya(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new P("Invalid RLP prefix")}function Rg(e,t,n){const r=e.position,s=[];for(;e.position-r<t;)s.push(rd(e,n));return s}function sd(e){return F(e)&&J(e)===32}const Dg=new Uint8Array([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),od=new Uint8Array(new Array(16).fill(0).map((e,t)=>t)),Ug=od.map(e=>(9*e+5)%16);let Yi=[od],Xi=[Ug];for(let e=0;e<4;e++)for(let t of[Yi,Xi])t.push(t[e].map(n=>Dg[n]));const id=[[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(e=>new Uint8Array(e)),Og=Yi.map((e,t)=>e.map(n=>id[t][n])),Fg=Xi.map((e,t)=>e.map(n=>id[t][n])),Lg=new Uint32Array([0,1518500249,1859775393,2400959708,2840853838]),$g=new Uint32Array([1352829926,1548603684,1836072691,2053994217,0]);function Xa(e,t,n,r){return e===0?t^n^r:e===1?t&n|~t&r:e===2?(t|~n)^r:e===3?t&r|n&~r:t^(n|~r)}const br=new Uint32Array(16);class jg extends Ou{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){const{h0:t,h1:n,h2:r,h3:s,h4:o}=this;return[t,n,r,s,o]}set(t,n,r,s,o){this.h0=t|0,this.h1=n|0,this.h2=r|0,this.h3=s|0,this.h4=o|0}process(t,n){for(let h=0;h<16;h++,n+=4)br[h]=t.getUint32(n,!0);let r=this.h0|0,s=r,o=this.h1|0,a=o,i=this.h2|0,c=i,u=this.h3|0,l=u,d=this.h4|0,f=d;for(let h=0;h<5;h++){const p=4-h,m=Lg[h],g=$g[h],y=Yi[h],w=Xi[h],C=Og[h],I=Fg[h];for(let b=0;b<16;b++){const A=yr(r+Xa(h,o,i,u)+br[y[b]]+m,C[b])+d|0;r=d,d=u,u=yr(i,10)|0,i=o,o=A}for(let b=0;b<16;b++){const A=yr(s+Xa(p,a,c,l)+br[w[b]]+g,I[b])+f|0;s=f,f=l,l=yr(c,10)|0,c=a,a=A}}this.set(this.h1+i+l|0,this.h2+u+f|0,this.h3+d+s|0,this.h4+r+a|0,this.h0+o+c|0)}roundClean(){br.fill(0)}destroy(){this.destroyed=!0,this.buffer.fill(0),this.set(0,0,0,0,0)}}const qg=ai(()=>new jg);function zg(e,t){const n=t||"hex",r=qg(F(e,{strict:!1})?ie(e):e);return n==="bytes"?r:L(r)}const ad=`Ethereum Signed Message:
|
|
43
|
+
`;function cd(e){const t=typeof e=="string"?_e(e):typeof e.raw=="string"?e.raw:W(e.raw),n=_e(`${ad}${J(t)}`);return ve([n,t])}function sr(e,t){return Z(cd(e),t)}async function ud({message:e,signature:t}){return Mt({hash:sr(e),signature:t})}async function ld(e){const{domain:t,message:n,primaryType:r,signature:s,types:o}=e;return Mt({hash:Ts({domain:t,message:n,primaryType:r,types:o}),signature:s})}async function _g({address:e,hash:t,signature:n}){return ht($(e),await Mt({hash:t,signature:n}))}async function Gg({address:e,message:t,signature:n}){return ht($(e),await ud({message:t,signature:n}))}async function Hg(e){const{address:t,domain:n,message:r,primaryType:s,signature:o,types:a}=e;return ht($(t),await ld({domain:n,message:r,primaryType:s,signature:o,types:a}))}const dd="0x6492649264926492649264926492649264926492649264926492649264926492",Qg="0x0000000000000000000000000000000000000000000000000000000000000000";function ea(e){return ls(e,-32)===dd}function Kg(e){if(!ea(e))return{signature:e};const[t,n,r]=lt([{type:"address"},{type:"bytes"},{type:"bytes"}],e);return{address:t,data:n,signature:r}}function fd(e){const{address:t,data:n,signature:r,to:s="hex"}=e,o=we([Oe([{type:"address"},{type:"bytes"},{type:"bytes"}],[t,n,r]),dd]);return s==="hex"?o:se(o)}function hd(e){const t=ls(e,0,1);if(t==="0x04")return"eip7702";if(t==="0x03")return"eip4844";if(t==="0x02")return"eip1559";if(t==="0x01")return"eip2930";if(t!=="0x"&&K(t)>=192)return"legacy";throw new Cu({serializedType:t})}function pd(e){const{authorizationList:t}=e;if(t)for(const n of t){const{contractAddress:r,chainId:s}=n;if(!ee(r))throw new ce({address:r});if(s<=0)throw new Jn({chainId:s})}or(e)}function md(e){const{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new zu;for(const n of t){const r=J(n),s=K(Ge(n,0,1));if(r!==32)throw new P0({hash:n,size:r});if(s!==qu)throw new S0({hash:n,version:s})}}or(e)}function or(e){const{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:s}=e;if(t<=0)throw new Jn({chainId:t});if(s&&!ee(s))throw new ce({address:s});if(r&&r>Xn)throw new rt({maxFeePerGas:r});if(n&&r&&n>r)throw new Yt({maxFeePerGas:r,maxPriorityFeePerGas:n})}function ta(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:s,to:o}=e;if(t<=0)throw new Jn({chainId:t});if(o&&!ee(o))throw new ce({address:o});if(n||s)throw new P("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(r&&r>Xn)throw new rt({maxFeePerGas:r})}function na(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:s,to:o}=e;if(o&&!ee(o))throw new ce({address:o});if(typeof t<"u"&&t<=0)throw new Jn({chainId:t});if(n||s)throw new P("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(r&&r>Xn)throw new rt({maxFeePerGas:r})}function gd(e){const t=hd(e);return t==="eip1559"?Jg(e):t==="eip2930"?Zg(e):t==="eip4844"?Vg(e):t==="eip7702"?Wg(e):Yg(e)}function Wg(e){const t=Ds(e),[n,r,s,o,a,i,c,u,l,d,f,h,p]=t;if(t.length!==10&&t.length!==13)throw new mn({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:s,maxFeePerGas:o,gas:a,to:i,value:c,data:u,accessList:l,authorizationList:d,...t.length>9?{v:f,r:h,s:p}:{}},serializedTransaction:e,type:"eip7702"});const m={chainId:K(n),type:"eip7702"};return F(i)&&i!=="0x"&&(m.to=i),F(a)&&a!=="0x"&&(m.gas=H(a)),F(u)&&u!=="0x"&&(m.data=u),F(r)&&r!=="0x"&&(m.nonce=K(r)),F(c)&&c!=="0x"&&(m.value=H(c)),F(o)&&o!=="0x"&&(m.maxFeePerGas=H(o)),F(s)&&s!=="0x"&&(m.maxPriorityFeePerGas=H(s)),l.length!==0&&l!=="0x"&&(m.accessList=Us(l)),d.length!==0&&d!=="0x"&&(m.authorizationList=Xg(d)),pd(m),{...t.length===13?ir(t):void 0,...m}}function Vg(e){const t=Ds(e),n=t.length===4,r=n?t[0]:t,s=n?t.slice(1):[],[o,a,i,c,u,l,d,f,h,p,m,g,y,w]=r,[C,I,b]=s;if(!(r.length===11||r.length===14))throw new mn({attributes:{chainId:o,nonce:a,maxPriorityFeePerGas:i,maxFeePerGas:c,gas:u,to:l,value:d,data:f,accessList:h,...r.length>9?{v:g,r:y,s:w}:{}},serializedTransaction:e,type:"eip4844"});const A={blobVersionedHashes:m,chainId:K(o),type:"eip4844"};return F(l)&&l!=="0x"&&(A.to=l),F(u)&&u!=="0x"&&(A.gas=H(u)),F(f)&&f!=="0x"&&(A.data=f),F(a)&&a!=="0x"&&(A.nonce=K(a)),F(d)&&d!=="0x"&&(A.value=H(d)),F(p)&&p!=="0x"&&(A.maxFeePerBlobGas=H(p)),F(c)&&c!=="0x"&&(A.maxFeePerGas=H(c)),F(i)&&i!=="0x"&&(A.maxPriorityFeePerGas=H(i)),h.length!==0&&h!=="0x"&&(A.accessList=Us(h)),C&&I&&b&&(A.sidecars=Cs({blobs:C,commitments:I,proofs:b})),md(A),{...r.length===14?ir(r):void 0,...A}}function Jg(e){const t=Ds(e),[n,r,s,o,a,i,c,u,l,d,f,h]=t;if(!(t.length===9||t.length===12))throw new mn({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:s,maxFeePerGas:o,gas:a,to:i,value:c,data:u,accessList:l,...t.length>9?{v:d,r:f,s:h}:{}},serializedTransaction:e,type:"eip1559"});const p={chainId:K(n),type:"eip1559"};return F(i)&&i!=="0x"&&(p.to=i),F(a)&&a!=="0x"&&(p.gas=H(a)),F(u)&&u!=="0x"&&(p.data=u),F(r)&&r!=="0x"&&(p.nonce=K(r)),F(c)&&c!=="0x"&&(p.value=H(c)),F(o)&&o!=="0x"&&(p.maxFeePerGas=H(o)),F(s)&&s!=="0x"&&(p.maxPriorityFeePerGas=H(s)),l.length!==0&&l!=="0x"&&(p.accessList=Us(l)),or(p),{...t.length===12?ir(t):void 0,...p}}function Zg(e){const t=Ds(e),[n,r,s,o,a,i,c,u,l,d,f]=t;if(!(t.length===8||t.length===11))throw new mn({attributes:{chainId:n,nonce:r,gasPrice:s,gas:o,to:a,value:i,data:c,accessList:u,...t.length>8?{v:l,r:d,s:f}:{}},serializedTransaction:e,type:"eip2930"});const h={chainId:K(n),type:"eip2930"};return F(a)&&a!=="0x"&&(h.to=a),F(o)&&o!=="0x"&&(h.gas=H(o)),F(c)&&c!=="0x"&&(h.data=c),F(r)&&r!=="0x"&&(h.nonce=K(r)),F(i)&&i!=="0x"&&(h.value=H(i)),F(s)&&s!=="0x"&&(h.gasPrice=H(s)),u.length!==0&&u!=="0x"&&(h.accessList=Us(u)),ta(h),{...t.length===11?ir(t):void 0,...h}}function Yg(e){const t=Zi(e,"hex"),[n,r,s,o,a,i,c,u,l]=t;if(!(t.length===6||t.length===9))throw new mn({attributes:{nonce:n,gasPrice:r,gas:s,to:o,value:a,data:i,...t.length>6?{v:c,r:u,s:l}:{}},serializedTransaction:e,type:"legacy"});const d={type:"legacy"};if(F(o)&&o!=="0x"&&(d.to=o),F(s)&&s!=="0x"&&(d.gas=H(s)),F(i)&&i!=="0x"&&(d.data=i),F(n)&&n!=="0x"&&(d.nonce=K(n)),F(a)&&a!=="0x"&&(d.value=H(a)),F(r)&&r!=="0x"&&(d.gasPrice=H(r)),na(d),t.length===6)return d;const f=F(c)&&c!=="0x"?H(c):0n;if(l==="0x"&&u==="0x")return f>0&&(d.chainId=Number(f)),d;const h=f,p=Number((h-35n)/2n);if(p>0)d.chainId=p;else if(h!==27n&&h!==28n)throw new wi({v:h});return d.v=h,d.s=l,d.r=u,d.yParity=h%2n===0n?1:0,d}function Ds(e){return Zi(`0x${e.slice(4)}`,"hex")}function Us(e){const t=[];for(let n=0;n<e.length;n++){const[r,s]=e[n];if(!ee(r,{strict:!1}))throw new ce({address:r});t.push({address:r,storageKeys:s.map(o=>sd(o)?o:re(o))})}return t}function Xg(e){const t=[];for(let n=0;n<e.length;n++){const[r,s,o,a,i,c]=e[n];t.push({chainId:K(r),contractAddress:s,nonce:K(o),...ir([a,i,c])})}return t}function ir(e){const t=e.slice(-3),n=t[0]==="0x"||H(t[0])===0n?27n:28n;return{r:ke(t[1],{size:32}),s:ke(t[2],{size:32}),v:n,yParity:n===27n?0:1}}function ey(e){if(!e||e.length===0)return[];const t=[];for(const n of e){const{contractAddress:r,chainId:s,nonce:o,...a}=n;t.push([L(s),r,L(o),...cr({},a)])}return t}function ar(e){if(!e||e.length===0)return[];const t=[];for(let n=0;n<e.length;n++){const{address:r,storageKeys:s}=e[n];for(let o=0;o<s.length;o++)if(s[o].length-2!==64)throw new Iu({storageKey:s[o]});if(!ee(r,{strict:!1}))throw new ce({address:r});t.push([r,s])}return t}function yd(e,t){const n=Si(e);return n==="eip1559"?ry(e,t):n==="eip2930"?sy(e,t):n==="eip4844"?ny(e,t):n==="eip7702"?ty(e,t):oy(e,t)}function ty(e,t){const{authorizationList:n,chainId:r,gas:s,nonce:o,to:a,value:i,maxFeePerGas:c,maxPriorityFeePerGas:u,accessList:l,data:d}=e;pd(e);const f=ar(l),h=ey(n);return we(["0x04",Re([L(r),o?L(o):"0x",u?L(u):"0x",c?L(c):"0x",s?L(s):"0x",a??"0x",i?L(i):"0x",d??"0x",f,h,...cr(e,t)])])}function ny(e,t){const{chainId:n,gas:r,nonce:s,to:o,value:a,maxFeePerBlobGas:i,maxFeePerGas:c,maxPriorityFeePerGas:u,accessList:l,data:d}=e;md(e);let f=e.blobVersionedHashes,h=e.sidecars;if(e.blobs&&(typeof f>"u"||typeof h>"u")){const C=typeof e.blobs[0]=="string"?e.blobs:e.blobs.map(A=>W(A)),I=e.kzg,b=As({blobs:C,kzg:I});if(typeof f>"u"&&(f=Ei({commitments:b})),typeof h>"u"){const A=vs({blobs:C,commitments:b,kzg:I});h=Cs({blobs:C,commitments:b,proofs:A})}}const p=ar(l),m=[L(n),s?L(s):"0x",u?L(u):"0x",c?L(c):"0x",r?L(r):"0x",o??"0x",a?L(a):"0x",d??"0x",p,i?L(i):"0x",f??[],...cr(e,t)],g=[],y=[],w=[];if(h)for(let C=0;C<h.length;C++){const{blob:I,commitment:b,proof:A}=h[C];g.push(I),y.push(b),w.push(A)}return we(["0x03",Re(h?[m,g,y,w]:m)])}function ry(e,t){const{chainId:n,gas:r,nonce:s,to:o,value:a,maxFeePerGas:i,maxPriorityFeePerGas:c,accessList:u,data:l}=e;or(e);const d=ar(u),f=[L(n),s?L(s):"0x",c?L(c):"0x",i?L(i):"0x",r?L(r):"0x",o??"0x",a?L(a):"0x",l??"0x",d,...cr(e,t)];return we(["0x02",Re(f)])}function sy(e,t){const{chainId:n,gas:r,data:s,nonce:o,to:a,value:i,accessList:c,gasPrice:u}=e;ta(e);const l=ar(c),d=[L(n),o?L(o):"0x",u?L(u):"0x",r?L(r):"0x",a??"0x",i?L(i):"0x",s??"0x",l,...cr(e,t)];return we(["0x01",Re(d)])}function oy(e,t){const{chainId:n=0,gas:r,data:s,nonce:o,to:a,value:i,gasPrice:c}=e;na(e);let u=[o?L(o):"0x",c?L(c):"0x",r?L(r):"0x",a??"0x",i?L(i):"0x",s??"0x"];if(t){const l=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);const h=27n+(t.v===27n?0n:1n);if(t.v!==h)throw new wi({v:t.v});return h})(),d=re(t.r),f=re(t.s);u=[...u,L(l),d==="0x00"?"0x":d,f==="0x00"?"0x":f]}else n>0&&(u=[...u,L(n),"0x","0x"]);return Re(u)}function cr(e,t){const n=t??e,{v:r,yParity:s}=n;if(typeof n.r>"u")return[];if(typeof n.s>"u")return[];if(typeof r>"u"&&typeof s>"u")return[];const o=re(n.r),a=re(n.s);return[typeof s=="number"?s?L(1):"0x":r===0n?"0x":r===1n?L(1):r===27n?"0x":L(1),o==="0x00"?"0x":o,a==="0x00"?"0x":a]}class wd extends P{constructor({value:t}){super(`Number \`${t}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}}function Os(e,t){if(!/^(-?)([0-9]*)\.?([0-9]*)$/.test(e))throw new wd({value:e});let[n,r="0"]=e.split(".");const s=n.startsWith("-");if(s&&(n=n.slice(1)),r=r.replace(/(0+)$/,""),t===0)Math.round(+`.${r}`)===1&&(n=`${BigInt(n)+1n}`),r="";else if(r.length>t){const[o,a,i]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],c=Math.round(+`${a}.${i}`);c>9?r=`${BigInt(o)+BigInt(1)}0`.padStart(o.length+1,"0"):r=`${o}${c}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,"0");return BigInt(`${s?"-":""}${n}${r}`)}function iy(e,t="wei"){return Os(e,mi[t])}function ay(e,t="wei"){return Os(e,gi[t])}function bd(e){const{source:t}=e,n=new Map,r=new cs(8192),s=new Map,o=({address:a,chainId:i})=>`${a}.${i}`;return{async consume({address:a,chainId:i,client:c}){const u=o({address:a,chainId:i}),l=this.get({address:a,chainId:i,client:c});this.increment({address:a,chainId:i});const d=await l;return await t.set({address:a,chainId:i},d),r.set(u,d),d},async increment({address:a,chainId:i}){const c=o({address:a,chainId:i}),u=n.get(c)??0;n.set(c,u+1)},async get({address:a,chainId:i,client:c}){const u=o({address:a,chainId:i});let l=s.get(u);return l||(l=(async()=>{try{const f=await t.get({address:a,chainId:i,client:c}),h=r.get(u)??0;return h>0&&f<=h?h+1:(r.delete(u),f)}finally{this.reset({address:a,chainId:i})}})(),s.set(u,l)),(n.get(u)??0)+await l},reset({address:a,chainId:i}){const c=o({address:a,chainId:i});n.delete(c),s.delete(c)}}}function cy(){return{async get(e){const{address:t,client:n}=e;return bs(n,{address:t,blockTag:"pending"})},set(){}}}const uy=bd({source:cy()});function ly(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function dy(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?K(e.nonce):void 0,storageProof:e.storageProof?ly(e.storageProof):void 0}}async function Ad(e,{address:t,blockNumber:n,blockTag:r,storageKeys:s}){const o=r??"latest",a=n!==void 0?N(n):void 0,i=await e.request({method:"eth_getProof",params:[t,s,a||o]});return dy(i)}async function ra(e,{confirmations:t=1,hash:n,onReplaced:r,pollingInterval:s=e.pollingInterval,retryCount:o=6,retryDelay:a=({count:c})=>~~(1<<c)*200,timeout:i}){const c=X(["waitForTransactionReceipt",e.uid,n]);let u=0,l,d,f,h=!1;return new Promise((p,m)=>{i&&setTimeout(()=>m(new Eo({hash:n})),i);const g=at(c,{onReplaced:r,resolve:p,reject:m},y=>{const w=U(e,Ki,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:s,async onBlockNumber(C){const I=A=>{w(),A(),g()};let b=C;if(!h){u>o&&I(()=>y.reject(new Eo({hash:n})));try{if(f){if(t>1&&(!f.blockNumber||b-f.blockNumber+1n<t))return;I(()=>y.resolve(f));return}if(l||(h=!0,await ct(async()=>{l=await U(e,An,"getTransaction")({hash:n}),l.blockNumber&&(b=l.blockNumber)},{delay:a,retryCount:o}),h=!1),f=await U(e,Vr,"getTransactionReceipt")({hash:n}),t>1&&(!f.blockNumber||b-f.blockNumber+1n<t))return;I(()=>y.resolve(f))}catch(A){if(A instanceof bi||A instanceof Ai){if(!l){h=!1;return}try{d=l,h=!0;const v=await ct(()=>U(e,He,"getBlock")({blockNumber:b,includeTransactions:!0}),{delay:a,retryCount:o,shouldRetry:({error:k})=>k instanceof Ci});h=!1;const x=v.transactions.find(({from:k,nonce:M})=>k===d.from&&M===d.nonce);if(!x||(f=await U(e,Vr,"getTransactionReceipt")({hash:x.hash}),t>1&&(!f.blockNumber||b-f.blockNumber+1n<t)))return;let E="replaced";x.to===d.to&&x.value===d.value?E="repriced":x.from===x.to&&x.value===0n&&(E="cancelled"),I(()=>{var k;(k=y.onReplaced)==null||k.call(y,{reason:E,replacedTransaction:d,transaction:x,transactionReceipt:f}),y.resolve(f)})}catch(v){I(()=>y.reject(v))}}else I(()=>y.reject(A))}finally{u++}}}})})})}async function fy(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(n=>$(n))}async function hy(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function py(e,{hash:t}){await e.request({method:`${e.mode}_dropTransaction`,params:[t]})}async function my(e){return e.mode==="ganache"?await e.request({method:"eth_mining"}):await e.request({method:`${e.mode}_getAutomine`})}async function gy(e){return await e.request({method:"txpool_content"})}async function yy(e){const{pending:t,queued:n}=await e.request({method:"txpool_status"});return{pending:K(t),queued:K(n)}}async function wy(e){return await e.request({method:"txpool_inspect"})}async function by(e){await e.request({method:`${e.mode}_removeBlockTimestampInterval`})}async function Ay(e,{blockNumber:t,jsonRpcUrl:n}={}){await e.request({method:`${e.mode}_reset`,params:[{forking:{blockNumber:Number(t),jsonRpcUrl:n}}]})}async function vy(e,{id:t}){await e.request({method:"evm_revert",params:[t]})}async function Cy(e,t){var u,l,d,f;const{account:n=e.account,chain:r=e.chain,...s}=t;if(!n)throw new Vn({docsPath:"/docs/actions/wallet/signTransaction"});const o=le(n);gn({account:o,...t});const a=await U(e,er,"getChainId")({});r!==null&&pi({currentChainId:a,chain:r});const i=(r==null?void 0:r.formatters)||((u=e.chain)==null?void 0:u.formatters),c=((l=i==null?void 0:i.transactionRequest)==null?void 0:l.format)||Dt;return o.signTransaction?o.signTransaction({...s,chainId:a},{serializer:(f=(d=e.chain)==null?void 0:d.serializers)==null?void 0:f.transaction}):await e.request({method:"eth_signTransaction",params:[{...c(s),chainId:N(a),from:o.address}]},{retryCount:0})}async function Iy(e,t){var y,w,C;const{accessList:n,data:r,from:s,gas:o,gasPrice:a,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:l,value:d,...f}=t,h=(C=(w=(y=e.chain)==null?void 0:y.formatters)==null?void 0:w.transactionRequest)==null?void 0:C.format,m=(h||Dt)({...fs(f,{format:h}),accessList:n,data:r,from:s,gas:o,gasPrice:a,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:l,value:d});return await e.request({method:"eth_sendUnsignedTransaction",params:[m]})}async function xy(e,{address:t,value:n}){e.mode==="ganache"?await e.request({method:"evm_setAccountBalance",params:[t,N(n)]}):await e.request({method:`${e.mode}_setBalance`,params:[t,N(n)]})}async function Ey(e,t){e.mode==="ganache"?t?await e.request({method:"miner_start"}):await e.request({method:"miner_stop"}):await e.request({method:"evm_setAutomine",params:[t]})}async function Py(e,{gasLimit:t}){await e.request({method:"evm_setBlockGasLimit",params:[N(t)]})}async function Sy(e,{interval:t}){const n=e.mode==="hardhat"?t*1e3:t;await e.request({method:`${e.mode}_setBlockTimestampInterval`,params:[n]})}async function By(e,{address:t,bytecode:n}){e.mode==="ganache"?await e.request({method:"evm_setAccountCode",params:[t,n]}):await e.request({method:`${e.mode}_setCode`,params:[t,n]})}async function Ny(e,{address:t}){await e.request({method:`${e.mode}_setCoinbase`,params:[t]})}async function ky(e,{interval:t}){const n=e.mode==="hardhat"?t*1e3:t;await e.request({method:"evm_setIntervalMining",params:[n]})}async function My(e,t){await e.request({method:`${e.mode}_setLoggingEnabled`,params:[t]})}async function Ty(e,{gasPrice:t}){await e.request({method:`${e.mode}_setMinGasPrice`,params:[N(t)]})}async function Ry(e,{baseFeePerGas:t}){await e.request({method:`${e.mode}_setNextBlockBaseFeePerGas`,params:[N(t)]})}async function Dy(e,{timestamp:t}){await e.request({method:"evm_setNextBlockTimestamp",params:[N(t)]})}async function Uy(e,{address:t,nonce:n}){await e.request({method:`${e.mode}_setNonce`,params:[t,N(n)]})}async function Oy(e,t){await e.request({method:`${e.mode}_setRpcUrl`,params:[t]})}async function Fy(e,{address:t,index:n,value:r}){await e.request({method:`${e.mode}_setStorageAt`,params:[t,typeof n=="number"?N(n):n,r]})}async function Ly(e){return await e.request({method:"evm_snapshot"})}async function sa(e,{account:t=e.account,message:n}){if(!t)throw new Vn({docsPath:"/docs/actions/wallet/signMessage"});const r=le(t);if(r.signMessage)return r.signMessage({message:n});const s=typeof n=="string"?_e(n):n.raw instanceof Uint8Array?L(n.raw):n.raw;return e.request({method:"personal_sign",params:[s,r.address]},{retryCount:0})}async function vd(e,t){const{account:n=e.account,domain:r,message:s,primaryType:o}=t;if(!n)throw new Vn({docsPath:"/docs/actions/wallet/signTypedData"});const a=le(n),i={EIP712Domain:Rs({domain:r}),...t.types};if(Ji({domain:r,message:s,primaryType:o,types:i}),a.signTypedData)return a.signTypedData({domain:r,message:s,primaryType:o,types:i});const c=Xl({domain:r,message:s,primaryType:o,types:i});return e.request({method:"eth_signTypedData_v4",params:[a.address,c]},{retryCount:0})}async function Fs(e,t){const{abi:n,address:r,args:s,dataSuffix:o,functionName:a,...i}=t,c=i.account?le(i.account):e.account,u=Fe({abi:n,args:s,functionName:a});try{const{data:l}=await U(e,ft,"call")({batch:!1,data:`${u}${o?o.replace("0x",""):""}`,to:r,...i,account:c}),d=Ot({abi:n,args:s,functionName:a,data:l||"0x"}),f=n.filter(h=>"name"in h&&h.name===t.functionName);return{result:d,request:{abi:f,address:r,args:s,dataSuffix:o,functionName:a,...i,account:c}}}catch(l){throw Bt(l,{abi:n,address:r,args:s,docsPath:"/docs/contract/simulateContract",functionName:a,sender:c==null?void 0:c.address})}}async function $y(e,{address:t}){await e.request({method:`${e.mode}_stopImpersonatingAccount`,params:[t]})}async function jy(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:N(t)}]},{retryCount:0})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Cd=BigInt(0),Ls=BigInt(1),qy=BigInt(2);function Nt(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function ur(e){if(!Nt(e))throw new Error("Uint8Array expected")}const zy=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function un(e){ur(e);let t="";for(let n=0;n<e.length;n++)t+=zy[e[n]];return t}function Id(e){const t=e.toString(16);return t.length&1?`0${t}`:t}function oa(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}const je={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function ec(e){if(e>=je._0&&e<=je._9)return e-je._0;if(e>=je._A&&e<=je._F)return e-(je._A-10);if(e>=je._a&&e<=je._f)return e-(je._a-10)}function ln(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const r=new Uint8Array(n);for(let s=0,o=0;s<n;s++,o+=2){const a=ec(e.charCodeAt(o)),i=ec(e.charCodeAt(o+1));if(a===void 0||i===void 0){const c=e[o]+e[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}r[s]=a*16+i}return r}function Ct(e){return oa(un(e))}function ia(e){return ur(e),oa(un(Uint8Array.from(e).reverse()))}function dn(e,t){return ln(e.toString(16).padStart(t*2,"0"))}function aa(e,t){return dn(e,t).reverse()}function _y(e){return ln(Id(e))}function Se(e,t,n){let r;if(typeof t=="string")try{r=ln(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(Nt(t))r=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);const s=r.length;if(typeof n=="number"&&s!==n)throw new Error(`${e} expected ${n} bytes, got ${s}`);return r}function On(...e){let t=0;for(let r=0;r<e.length;r++){const s=e[r];ur(s),t+=s.length}const n=new Uint8Array(t);for(let r=0,s=0;r<e.length;r++){const o=e[r];n.set(o,s),s+=o.length}return n}function xd(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function Gy(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Hy(e){let t;for(t=0;e>Cd;e>>=Ls,t+=1);return t}function Qy(e,t){return e>>BigInt(t)&Ls}function Ky(e,t,n){return e|(n?Ls:Cd)<<BigInt(t)}const ca=e=>(qy<<BigInt(e-1))-Ls,ao=e=>new Uint8Array(e),tc=e=>Uint8Array.from(e);function Ed(e,t,n){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");let r=ao(e),s=ao(e),o=0;const a=()=>{r.fill(1),s.fill(0),o=0},i=(...d)=>n(s,r,...d),c=(d=ao())=>{s=i(tc([0]),d),r=i(),d.length!==0&&(s=i(tc([1]),d),r=i())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let d=0;const f=[];for(;d<t;){r=i();const h=r.slice();f.push(h),d+=r.length}return On(...f)};return(d,f)=>{a(),c(d);let h;for(;!(h=f(u()));)c();return a(),h}}const Wy={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||Nt(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function lr(e,t,n={}){const r=(s,o,a)=>{const i=Wy[o];if(typeof i!="function")throw new Error(`Invalid validator "${o}", expected function`);const c=e[s];if(!(a&&c===void 0)&&!i(c,e))throw new Error(`Invalid param ${String(s)}=${c} (${typeof c}), expected ${o}`)};for(const[s,o]of Object.entries(t))r(s,o,!1);for(const[s,o]of Object.entries(n))r(s,o,!0);return e}const Vy=Object.freeze(Object.defineProperty({__proto__:null,abytes:ur,bitGet:Qy,bitLen:Hy,bitMask:ca,bitSet:Ky,bytesToHex:un,bytesToNumberBE:Ct,bytesToNumberLE:ia,concatBytes:On,createHmacDrbg:Ed,ensureBytes:Se,equalBytes:xd,hexToBytes:ln,hexToNumber:oa,isBytes:Nt,numberToBytesBE:dn,numberToBytesLE:aa,numberToHexUnpadded:Id,numberToVarBytesBE:_y,utf8ToBytes:Gy,validateObject:lr},Symbol.toStringTag,{value:"Module"}));function Jy(e,t){const n=F(e)?ie(e):e,r=F(t)?ie(t):t;return xd(n,r)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const ne=BigInt(0),Y=BigInt(1),yt=BigInt(2),Zy=BigInt(3),Fo=BigInt(4),nc=BigInt(5),rc=BigInt(8);BigInt(9);BigInt(16);function he(e,t){const n=e%t;return n>=ne?n:t+n}function Yy(e,t,n){if(n<=ne||t<ne)throw new Error("Expected power/modulo > 0");if(n===Y)return ne;let r=Y;for(;t>ne;)t&Y&&(r=r*e%n),e=e*e%n,t>>=Y;return r}function be(e,t,n){let r=e;for(;t-- >ne;)r*=r,r%=n;return r}function Lo(e,t){if(e===ne||t<=ne)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let n=he(e,t),r=t,s=ne,o=Y;for(;n!==ne;){const i=r/n,c=r%n,u=s-o*i;r=n,n=c,s=o,o=u}if(r!==Y)throw new Error("invert: does not exist");return he(s,t)}function Xy(e){const t=(e-Y)/yt;let n,r,s;for(n=e-Y,r=0;n%yt===ne;n/=yt,r++);for(s=yt;s<e&&Yy(s,t,e)!==e-Y;s++);if(r===1){const a=(e+Y)/Fo;return function(c,u){const l=c.pow(u,a);if(!c.eql(c.sqr(l),u))throw new Error("Cannot find square root");return l}}const o=(n+Y)/yt;return function(i,c){if(i.pow(c,t)===i.neg(i.ONE))throw new Error("Cannot find square root");let u=r,l=i.pow(i.mul(i.ONE,s),n),d=i.pow(c,o),f=i.pow(c,n);for(;!i.eql(f,i.ONE);){if(i.eql(f,i.ZERO))return i.ZERO;let h=1;for(let m=i.sqr(f);h<u&&!i.eql(m,i.ONE);h++)m=i.sqr(m);const p=i.pow(l,Y<<BigInt(u-h-1));l=i.sqr(p),d=i.mul(d,p),f=i.mul(f,l),u=h}return d}}function ew(e){if(e%Fo===Zy){const t=(e+Y)/Fo;return function(r,s){const o=r.pow(s,t);if(!r.eql(r.sqr(o),s))throw new Error("Cannot find square root");return o}}if(e%rc===nc){const t=(e-nc)/rc;return function(r,s){const o=r.mul(s,yt),a=r.pow(o,t),i=r.mul(s,a),c=r.mul(r.mul(i,yt),a),u=r.mul(i,r.sub(c,r.ONE));if(!r.eql(r.sqr(u),s))throw new Error("Cannot find square root");return u}}return Xy(e)}const tw=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function nw(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=tw.reduce((r,s)=>(r[s]="function",r),t);return lr(e,n)}function rw(e,t,n){if(n<ne)throw new Error("Expected power > 0");if(n===ne)return e.ONE;if(n===Y)return t;let r=e.ONE,s=t;for(;n>ne;)n&Y&&(r=e.mul(r,s)),s=e.sqr(s),n>>=Y;return r}function sw(e,t){const n=new Array(t.length),r=t.reduce((o,a,i)=>e.is0(a)?o:(n[i]=o,e.mul(o,a)),e.ONE),s=e.inv(r);return t.reduceRight((o,a,i)=>e.is0(a)?o:(n[i]=e.mul(o,n[i]),e.mul(o,a)),s),n}function Pd(e,t){const n=t!==void 0?t:e.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function ow(e,t,n=!1,r={}){if(e<=ne)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:s,nByteLength:o}=Pd(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");const a=ew(e),i=Object.freeze({ORDER:e,BITS:s,BYTES:o,MASK:ca(s),ZERO:ne,ONE:Y,create:c=>he(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return ne<=c&&c<e},is0:c=>c===ne,isOdd:c=>(c&Y)===Y,neg:c=>he(-c,e),eql:(c,u)=>c===u,sqr:c=>he(c*c,e),add:(c,u)=>he(c+u,e),sub:(c,u)=>he(c-u,e),mul:(c,u)=>he(c*u,e),pow:(c,u)=>rw(i,c,u),div:(c,u)=>he(c*Lo(u,e),e),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>Lo(c,e),sqrt:r.sqrt||(c=>a(i,c)),invertBatch:c=>sw(i,c),cmov:(c,u,l)=>l?u:c,toBytes:c=>n?aa(c,o):dn(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return n?ia(c):Ct(c)}});return Object.freeze(i)}function Sd(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function Bd(e){const t=Sd(e);return t+Math.ceil(t/2)}function iw(e,t,n=!1){const r=e.length,s=Sd(t),o=Bd(t);if(r<16||r<o||r>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${r}`);const a=n?Ct(e):ia(e),i=he(a,t-Y)+Y;return n?aa(i,s):dn(i,s)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const aw=BigInt(0),co=BigInt(1);function cw(e,t){const n=(s,o)=>{const a=o.negate();return s?a:o},r=s=>{const o=Math.ceil(t/s)+1,a=2**(s-1);return{windows:o,windowSize:a}};return{constTimeNegate:n,unsafeLadder(s,o){let a=e.ZERO,i=s;for(;o>aw;)o&co&&(a=a.add(i)),i=i.double(),o>>=co;return a},precomputeWindow(s,o){const{windows:a,windowSize:i}=r(o),c=[];let u=s,l=u;for(let d=0;d<a;d++){l=u,c.push(l);for(let f=1;f<i;f++)l=l.add(u),c.push(l);u=l.double()}return c},wNAF(s,o,a){const{windows:i,windowSize:c}=r(s);let u=e.ZERO,l=e.BASE;const d=BigInt(2**s-1),f=2**s,h=BigInt(s);for(let p=0;p<i;p++){const m=p*c;let g=Number(a&d);a>>=h,g>c&&(g-=f,a+=co);const y=m,w=m+Math.abs(g)-1,C=p%2!==0,I=g<0;g===0?l=l.add(n(C,o[y])):u=u.add(n(I,o[w]))}return{p:u,f:l}},wNAFCached(s,o,a,i){const c=s._WINDOW_SIZE||1;let u=o.get(s);return u||(u=this.precomputeWindow(s,c),c!==1&&o.set(s,i(u))),this.wNAF(c,u,a)}}}function Nd(e){return nw(e.Fp),lr(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Pd(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function uw(e){const t=Nd(e);lr(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:r,a:s}=t;if(n){if(!r.eql(s,r.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}const{bytesToNumberBE:lw,hexToBytes:dw}=Vy,bt={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){const{Err:t}=bt;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");const n=e[1],r=e.subarray(2,n+2);if(!n||r.length!==n)throw new t("Invalid signature integer: wrong length");if(r[0]&128)throw new t("Invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:lw(r),l:e.subarray(n+2)}},toSig(e){const{Err:t}=bt,n=typeof e=="string"?dw(e):e;ur(n);let r=n.length;if(r<2||n[0]!=48)throw new t("Invalid signature tag");if(n[1]!==r-2)throw new t("Invalid signature: incorrect length");const{d:s,l:o}=bt._parseInt(n.subarray(2)),{d:a,l:i}=bt._parseInt(o);if(i.length)throw new t("Invalid signature: left bytes after parsing");return{r:s,s:a}},hexFromSig(e){const t=u=>Number.parseInt(u[0],16)&8?"00"+u:u,n=u=>{const l=u.toString(16);return l.length&1?`0${l}`:l},r=t(n(e.s)),s=t(n(e.r)),o=r.length/2,a=s.length/2,i=n(o),c=n(a);return`30${n(a+o+4)}02${c}${s}02${i}${r}`}},qe=BigInt(0),Ae=BigInt(1);BigInt(2);const sc=BigInt(3);BigInt(4);function fw(e){const t=uw(e),{Fp:n}=t,r=t.toBytes||((p,m,g)=>{const y=m.toAffine();return On(Uint8Array.from([4]),n.toBytes(y.x),n.toBytes(y.y))}),s=t.fromBytes||(p=>{const m=p.subarray(1),g=n.fromBytes(m.subarray(0,n.BYTES)),y=n.fromBytes(m.subarray(n.BYTES,2*n.BYTES));return{x:g,y}});function o(p){const{a:m,b:g}=t,y=n.sqr(p),w=n.mul(y,p);return n.add(n.add(w,n.mul(p,m)),g)}if(!n.eql(n.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function a(p){return typeof p=="bigint"&&qe<p&&p<t.n}function i(p){if(!a(p))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(p){const{allowedPrivateKeyLengths:m,nByteLength:g,wrapPrivateKey:y,n:w}=t;if(m&&typeof p!="bigint"){if(Nt(p)&&(p=un(p)),typeof p!="string"||!m.includes(p.length))throw new Error("Invalid key");p=p.padStart(g*2,"0")}let C;try{C=typeof p=="bigint"?p:Ct(Se("private key",p,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof p}`)}return y&&(C=he(C,w)),i(C),C}const u=new Map;function l(p){if(!(p instanceof d))throw new Error("ProjectivePoint expected")}class d{constructor(m,g,y){if(this.px=m,this.py=g,this.pz=y,m==null||!n.isValid(m))throw new Error("x required");if(g==null||!n.isValid(g))throw new Error("y required");if(y==null||!n.isValid(y))throw new Error("z required")}static fromAffine(m){const{x:g,y}=m||{};if(!m||!n.isValid(g)||!n.isValid(y))throw new Error("invalid affine point");if(m instanceof d)throw new Error("projective point not allowed");const w=C=>n.eql(C,n.ZERO);return w(g)&&w(y)?d.ZERO:new d(g,y,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(m){const g=n.invertBatch(m.map(y=>y.pz));return m.map((y,w)=>y.toAffine(g[w])).map(d.fromAffine)}static fromHex(m){const g=d.fromAffine(s(Se("pointHex",m)));return g.assertValidity(),g}static fromPrivateKey(m){return d.BASE.multiply(c(m))}_setWindowSize(m){this._WINDOW_SIZE=m,u.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!n.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:m,y:g}=this.toAffine();if(!n.isValid(m)||!n.isValid(g))throw new Error("bad point: x or y not FE");const y=n.sqr(g),w=o(m);if(!n.eql(y,w))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:m}=this.toAffine();if(n.isOdd)return!n.isOdd(m);throw new Error("Field doesn't support isOdd")}equals(m){l(m);const{px:g,py:y,pz:w}=this,{px:C,py:I,pz:b}=m,A=n.eql(n.mul(g,b),n.mul(C,w)),v=n.eql(n.mul(y,b),n.mul(I,w));return A&&v}negate(){return new d(this.px,n.neg(this.py),this.pz)}double(){const{a:m,b:g}=t,y=n.mul(g,sc),{px:w,py:C,pz:I}=this;let b=n.ZERO,A=n.ZERO,v=n.ZERO,x=n.mul(w,w),E=n.mul(C,C),k=n.mul(I,I),M=n.mul(w,C);return M=n.add(M,M),v=n.mul(w,I),v=n.add(v,v),b=n.mul(m,v),A=n.mul(y,k),A=n.add(b,A),b=n.sub(E,A),A=n.add(E,A),A=n.mul(b,A),b=n.mul(M,b),v=n.mul(y,v),k=n.mul(m,k),M=n.sub(x,k),M=n.mul(m,M),M=n.add(M,v),v=n.add(x,x),x=n.add(v,x),x=n.add(x,k),x=n.mul(x,M),A=n.add(A,x),k=n.mul(C,I),k=n.add(k,k),x=n.mul(k,M),b=n.sub(b,x),v=n.mul(k,E),v=n.add(v,v),v=n.add(v,v),new d(b,A,v)}add(m){l(m);const{px:g,py:y,pz:w}=this,{px:C,py:I,pz:b}=m;let A=n.ZERO,v=n.ZERO,x=n.ZERO;const E=t.a,k=n.mul(t.b,sc);let M=n.mul(g,C),z=n.mul(y,I),R=n.mul(w,b),G=n.add(g,y),B=n.add(C,I);G=n.mul(G,B),B=n.add(M,z),G=n.sub(G,B),B=n.add(g,w);let S=n.add(C,b);return B=n.mul(B,S),S=n.add(M,R),B=n.sub(B,S),S=n.add(y,w),A=n.add(I,b),S=n.mul(S,A),A=n.add(z,R),S=n.sub(S,A),x=n.mul(E,B),A=n.mul(k,R),x=n.add(A,x),A=n.sub(z,x),x=n.add(z,x),v=n.mul(A,x),z=n.add(M,M),z=n.add(z,M),R=n.mul(E,R),B=n.mul(k,B),z=n.add(z,R),R=n.sub(M,R),R=n.mul(E,R),B=n.add(B,R),M=n.mul(z,B),v=n.add(v,M),M=n.mul(S,B),A=n.mul(G,A),A=n.sub(A,M),M=n.mul(G,z),x=n.mul(S,x),x=n.add(x,M),new d(A,v,x)}subtract(m){return this.add(m.negate())}is0(){return this.equals(d.ZERO)}wNAF(m){return h.wNAFCached(this,u,m,g=>{const y=n.invertBatch(g.map(w=>w.pz));return g.map((w,C)=>w.toAffine(y[C])).map(d.fromAffine)})}multiplyUnsafe(m){const g=d.ZERO;if(m===qe)return g;if(i(m),m===Ae)return this;const{endo:y}=t;if(!y)return h.unsafeLadder(this,m);let{k1neg:w,k1:C,k2neg:I,k2:b}=y.splitScalar(m),A=g,v=g,x=this;for(;C>qe||b>qe;)C&Ae&&(A=A.add(x)),b&Ae&&(v=v.add(x)),x=x.double(),C>>=Ae,b>>=Ae;return w&&(A=A.negate()),I&&(v=v.negate()),v=new d(n.mul(v.px,y.beta),v.py,v.pz),A.add(v)}multiply(m){i(m);let g=m,y,w;const{endo:C}=t;if(C){const{k1neg:I,k1:b,k2neg:A,k2:v}=C.splitScalar(g);let{p:x,f:E}=this.wNAF(b),{p:k,f:M}=this.wNAF(v);x=h.constTimeNegate(I,x),k=h.constTimeNegate(A,k),k=new d(n.mul(k.px,C.beta),k.py,k.pz),y=x.add(k),w=E.add(M)}else{const{p:I,f:b}=this.wNAF(g);y=I,w=b}return d.normalizeZ([y,w])[0]}multiplyAndAddUnsafe(m,g,y){const w=d.BASE,C=(b,A)=>A===qe||A===Ae||!b.equals(w)?b.multiplyUnsafe(A):b.multiply(A),I=C(this,g).add(C(m,y));return I.is0()?void 0:I}toAffine(m){const{px:g,py:y,pz:w}=this,C=this.is0();m==null&&(m=C?n.ONE:n.inv(w));const I=n.mul(g,m),b=n.mul(y,m),A=n.mul(w,m);if(C)return{x:n.ZERO,y:n.ZERO};if(!n.eql(A,n.ONE))throw new Error("invZ was invalid");return{x:I,y:b}}isTorsionFree(){const{h:m,isTorsionFree:g}=t;if(m===Ae)return!0;if(g)return g(d,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:m,clearCofactor:g}=t;return m===Ae?this:g?g(d,this):this.multiplyUnsafe(t.h)}toRawBytes(m=!0){return this.assertValidity(),r(d,this,m)}toHex(m=!0){return un(this.toRawBytes(m))}}d.BASE=new d(t.Gx,t.Gy,n.ONE),d.ZERO=new d(n.ZERO,n.ONE,n.ZERO);const f=t.nBitLength,h=cw(d,t.endo?Math.ceil(f/2):f);return{CURVE:t,ProjectivePoint:d,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:a}}function hw(e){const t=Nd(e);return lr(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function pw(e){const t=hw(e),{Fp:n,n:r}=t,s=n.BYTES+1,o=2*n.BYTES+1;function a(B){return qe<B&&B<n.ORDER}function i(B){return he(B,r)}function c(B){return Lo(B,r)}const{ProjectivePoint:u,normPrivateKeyToScalar:l,weierstrassEquation:d,isWithinCurveOrder:f}=fw({...t,toBytes(B,S,O){const q=S.toAffine(),_=n.toBytes(q.x),Q=On;return O?Q(Uint8Array.from([S.hasEvenY()?2:3]),_):Q(Uint8Array.from([4]),_,n.toBytes(q.y))},fromBytes(B){const S=B.length,O=B[0],q=B.subarray(1);if(S===s&&(O===2||O===3)){const _=Ct(q);if(!a(_))throw new Error("Point is not on curve");const Q=d(_);let oe;try{oe=n.sqrt(Q)}catch(Ee){const Ve=Ee instanceof Error?": "+Ee.message:"";throw new Error("Point is not on curve"+Ve)}const te=(oe&Ae)===Ae;return(O&1)===1!==te&&(oe=n.neg(oe)),{x:_,y:oe}}else if(S===o&&O===4){const _=n.fromBytes(q.subarray(0,n.BYTES)),Q=n.fromBytes(q.subarray(n.BYTES,2*n.BYTES));return{x:_,y:Q}}else throw new Error(`Point of length ${S} was invalid. Expected ${s} compressed bytes or ${o} uncompressed bytes`)}}),h=B=>un(dn(B,t.nByteLength));function p(B){const S=r>>Ae;return B>S}function m(B){return p(B)?i(-B):B}const g=(B,S,O)=>Ct(B.slice(S,O));class y{constructor(S,O,q){this.r=S,this.s=O,this.recovery=q,this.assertValidity()}static fromCompact(S){const O=t.nByteLength;return S=Se("compactSignature",S,O*2),new y(g(S,0,O),g(S,O,2*O))}static fromDER(S){const{r:O,s:q}=bt.toSig(Se("DER",S));return new y(O,q)}assertValidity(){if(!f(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!f(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(S){return new y(this.r,this.s,S)}recoverPublicKey(S){const{r:O,s:q,recovery:_}=this,Q=v(Se("msgHash",S));if(_==null||![0,1,2,3].includes(_))throw new Error("recovery id invalid");const oe=_===2||_===3?O+t.n:O;if(oe>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const te=_&1?"03":"02",We=u.fromHex(te+h(oe)),Ee=c(oe),Ve=i(-Q*Ee),In=i(q*Ee),Je=u.BASE.multiplyAndAddUnsafe(We,Ve,In);if(!Je)throw new Error("point at infinify");return Je.assertValidity(),Je}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new y(this.r,i(-this.s),this.recovery):this}toDERRawBytes(){return ln(this.toDERHex())}toDERHex(){return bt.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return ln(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}const w={isValidPrivateKey(B){try{return l(B),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const B=Bd(t.n);return iw(t.randomBytes(B),t.n)},precompute(B=8,S=u.BASE){return S._setWindowSize(B),S.multiply(BigInt(3)),S}};function C(B,S=!0){return u.fromPrivateKey(B).toRawBytes(S)}function I(B){const S=Nt(B),O=typeof B=="string",q=(S||O)&&B.length;return S?q===s||q===o:O?q===2*s||q===2*o:B instanceof u}function b(B,S,O=!0){if(I(B))throw new Error("first arg must be private key");if(!I(S))throw new Error("second arg must be public key");return u.fromHex(S).multiply(l(B)).toRawBytes(O)}const A=t.bits2int||function(B){const S=Ct(B),O=B.length*8-t.nBitLength;return O>0?S>>BigInt(O):S},v=t.bits2int_modN||function(B){return i(A(B))},x=ca(t.nBitLength);function E(B){if(typeof B!="bigint")throw new Error("bigint expected");if(!(qe<=B&&B<x))throw new Error(`bigint expected < 2^${t.nBitLength}`);return dn(B,t.nByteLength)}function k(B,S,O=M){if(["recovered","canonical"].some(gt=>gt in O))throw new Error("sign() legacy options not supported");const{hash:q,randomBytes:_}=t;let{lowS:Q,prehash:oe,extraEntropy:te}=O;Q==null&&(Q=!0),B=Se("msgHash",B),oe&&(B=Se("prehashed msgHash",q(B)));const We=v(B),Ee=l(S),Ve=[E(Ee),E(We)];if(te!=null&&te!==!1){const gt=te===!0?_(n.BYTES):te;Ve.push(Se("extraEntropy",gt))}const In=On(...Ve),Je=We;function Qs(gt){const $t=A(gt);if(!f($t))return;const Pa=c($t),jt=u.BASE.multiply($t).toAffine(),Pe=i(jt.x);if(Pe===qe)return;const qt=i(Pa*i(Je+Pe*Ee));if(qt===qe)return;let Sa=(jt.x===Pe?0:2)|Number(jt.y&Ae),Ba=qt;return Q&&p(qt)&&(Ba=m(qt),Sa^=1),new y(Pe,Ba,Sa)}return{seed:In,k2sig:Qs}}const M={lowS:t.lowS,prehash:!1},z={lowS:t.lowS,prehash:!1};function R(B,S,O=M){const{seed:q,k2sig:_}=k(B,S,O),Q=t;return Ed(Q.hash.outputLen,Q.nByteLength,Q.hmac)(q,_)}u.BASE._setWindowSize(8);function G(B,S,O,q=z){var jt;const _=B;if(S=Se("msgHash",S),O=Se("publicKey",O),"strict"in q)throw new Error("options.strict was renamed to lowS");const{lowS:Q,prehash:oe}=q;let te,We;try{if(typeof _=="string"||Nt(_))try{te=y.fromDER(_)}catch(Pe){if(!(Pe instanceof bt.Err))throw Pe;te=y.fromCompact(_)}else if(typeof _=="object"&&typeof _.r=="bigint"&&typeof _.s=="bigint"){const{r:Pe,s:qt}=_;te=new y(Pe,qt)}else throw new Error("PARSE");We=u.fromHex(O)}catch(Pe){if(Pe.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(Q&&te.hasHighS())return!1;oe&&(S=t.hash(S));const{r:Ee,s:Ve}=te,In=v(S),Je=c(Ve),Qs=i(In*Je),gt=i(Ee*Je),$t=(jt=u.BASE.multiplyAndAddUnsafe(We,Qs,gt))==null?void 0:jt.toAffine();return $t?i($t.x)===Ee:!1}return{CURVE:t,getPublicKey:C,getSharedSecret:b,sign:R,verify:G,ProjectivePoint:u,Signature:y,utils:w}}class kd extends ii{constructor(t,n){super(),this.finished=!1,this.destroyed=!1,Ff(t);const r=us(n);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const s=this.blockLen,o=new Uint8Array(s);o.set(r.length>s?t.create().update(r).digest():r);for(let a=0;a<o.length;a++)o[a]^=54;this.iHash.update(o),this.oHash=t.create();for(let a=0;a<o.length;a++)o[a]^=106;this.oHash.update(o),o.fill(0)}update(t){return Jt(this),this.iHash.update(t),this}digestInto(t){Jt(this),Kn(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){const t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:s,destroyed:o,blockLen:a,outputLen:i}=this;return t=t,t.finished=s,t.destroyed=o,t.blockLen=a,t.outputLen=i,t.oHash=n._cloneInto(t.oHash),t.iHash=r._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const Md=(e,t,n)=>new kd(e,t).update(n).digest();Md.create=(e,t)=>new kd(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function mw(e){return{hash:e,hmac:(t,...n)=>Md(e,t,Kf(...n)),randomBytes:Wf}}function gw(e,t){const n=r=>pw({...e,...mw(r)});return Object.freeze({...n(t),create:n})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Td=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),oc=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),yw=BigInt(1),$o=BigInt(2),ic=(e,t)=>(e+t/$o)/t;function ww(e){const t=Td,n=BigInt(3),r=BigInt(6),s=BigInt(11),o=BigInt(22),a=BigInt(23),i=BigInt(44),c=BigInt(88),u=e*e*e%t,l=u*u*e%t,d=be(l,n,t)*l%t,f=be(d,n,t)*l%t,h=be(f,$o,t)*u%t,p=be(h,s,t)*h%t,m=be(p,o,t)*p%t,g=be(m,i,t)*m%t,y=be(g,c,t)*g%t,w=be(y,i,t)*m%t,C=be(w,n,t)*l%t,I=be(C,a,t)*p%t,b=be(I,r,t)*u%t,A=be(b,$o,t);if(!jo.eql(jo.sqr(A),e))throw new Error("Cannot find square root");return A}const jo=ow(Td,void 0,void 0,{sqrt:ww}),vn=gw({a:BigInt(0),b:BigInt(7),Fp:jo,n:oc,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=oc,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-yw*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=n,a=BigInt("0x100000000000000000000000000000000"),i=ic(o*e,t),c=ic(-r*e,t);let u=he(e-i*n-c*s,t),l=he(-i*r-c*o,t);const d=u>a,f=l>a;if(d&&(u=t-u),f&&(l=t-l),u>a||l>a)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:d,k1:u,k2neg:f,k2:l}}}},Fu);BigInt(0);vn.ProjectivePoint;const bw=Object.freeze(Object.defineProperty({__proto__:null,secp256k1:vn},Symbol.toStringTag,{value:"Module"}));function qo({r:e,s:t,to:n="hex",v:r,yParity:s}){const o=(()=>{if(s===0||s===1)return s;if(r&&(r===27n||r===28n||r>=35n))return r%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),a=`0x${new vn.Signature(H(e),H(t)).toCompactHex()}${o===0?"1b":"1c"}`;return n==="hex"?a:se(a)}async function ua(e,t){const{address:n,factory:r,factoryData:s,hash:o,signature:a,...i}=t,c=F(a)?a:typeof a=="object"&&"r"in a&&"s"in a?qo(a):W(a),u=await(async()=>!r&&!s||ea(c)?c:fd({address:r,data:s,signature:c}))();try{const{data:l}=await U(e,ft,"call")({data:Wn({abi:Wu,args:[n,o,u],bytecode:Bl}),...i});return Jy(l??"0x0","0x1")}catch(l){try{if(ht($(n),await Mt({hash:o,signature:a})))return!0}catch{}if(l instanceof Di)return!1;throw l}}async function Rd(e,{address:t,message:n,factory:r,factoryData:s,signature:o,...a}){const i=sr(n);return ua(e,{address:t,factory:r,factoryData:s,hash:i,signature:o,...a})}async function Dd(e,t){const{address:n,factory:r,factoryData:s,signature:o,message:a,primaryType:i,types:c,domain:u,...l}=t,d=Ts({message:a,primaryType:i,types:c,domain:u});return ua(e,{address:n,factory:r,factoryData:s,hash:d,signature:o,...l})}async function Ud(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}function la(e,t){const{abi:n,address:r,args:s,batch:o=!0,eventName:a,fromBlock:i,onError:c,onLogs:u,poll:l,pollingInterval:d=e.pollingInterval,strict:f}=t;return(typeof l<"u"?l:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"))?(()=>{const g=f??!1,y=X(["watchContractEvent",r,s,o,e.uid,a,d,g,i]);return at(y,{onLogs:u,onError:c},w=>{let C;i!==void 0&&(C=i-1n);let I,b=!1;const A=rr(async()=>{var v;if(!b){try{I=await U(e,zi,"createContractEventFilter")({abi:n,address:r,args:s,eventName:a,strict:g,fromBlock:i})}catch{}b=!0;return}try{let x;if(I)x=await U(e,ks,"getFilterChanges")({filter:I});else{const E=await U(e,bn,"getBlockNumber")({});C&&C<E?x=await U(e,Gi,"getContractEvents")({abi:n,address:r,args:s,eventName:a,fromBlock:C+1n,toBlock:E,strict:g}):x=[],C=E}if(x.length===0)return;if(o)w.onLogs(x);else for(const E of x)w.onLogs([E])}catch(x){I&&x instanceof ot&&(b=!1),(v=w.onError)==null||v.call(w,x)}},{emitOnBegin:!0,interval:d});return async()=>{I&&await U(e,Ms,"uninstallFilter")({filter:I}),A()}})})():(()=>{const g=f??!1,y=X(["watchContractEvent",r,s,o,e.uid,a,d,g]);let w=!0,C=()=>w=!1;return at(y,{onLogs:u,onError:c},I=>((async()=>{try{const b=(()=>{if(e.transport.type==="fallback"){const x=e.transport.transports.find(E=>E.config.type==="webSocket");return x?x.value:e.transport}return e.transport})(),A=a?wn({abi:n,eventName:a,args:s}):[],{unsubscribe:v}=await b.subscribe({params:["logs",{address:r,topics:A}],onData(x){var k;if(!w)return;const E=x.result;try{const{eventName:M,args:z}=Bs({abi:n,data:E.data,topics:E.topics,strict:f}),R=Qe(E,{args:z,eventName:M});I.onLogs([R])}catch(M){let z,R;if(M instanceof Vt||M instanceof Qn){if(f)return;z=M.abiItem.name,R=(k=M.abiItem.inputs)==null?void 0:k.some(B=>!("name"in B&&B.name))}const G=Qe(E,{args:R?[]:{},eventName:z});I.onLogs([G])}},onError(x){var E;(E=I.onError)==null||E.call(I,x)}});C=v,w||C()}catch(b){c==null||c(b)}})(),()=>C()))})()}async function $s(e,t){const{abi:n,account:r=e.account,address:s,args:o,dataSuffix:a,functionName:i,...c}=t;if(!r)throw new Vn({docsPath:"/docs/contract/writeContract"});const u=le(r),l=Fe({abi:n,args:o,functionName:i});try{return await U(e,tr,"sendTransaction")({data:`${l}${a?a.replace("0x",""):""}`,to:s,account:u,...c})}catch(d){throw Bt(d,{abi:n,address:s,args:o,docsPath:"/docs/contract/writeContract",functionName:i,sender:u.address})}}function ae(e,t,n){const r=e[t.name];if(typeof r=="function")return r;const s=e[n];return typeof s=="function"?s:o=>t(e,o)}const kr="2.13.4",Aw=()=>`@wagmi/core@${kr}`;var Od=function(e,t,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(e):r?r.value:t.get(e)},Yr,Fd;let Lt=class zo extends Error{get docsBaseUrl(){return"https://wagmi.sh/core"}get version(){return Aw()}constructor(t,n={}){var o;super(),Yr.add(this),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"WagmiCoreError"});const r=n.cause instanceof zo?n.cause.details:(o=n.cause)!=null&&o.message?n.cause.message:n.details,s=n.cause instanceof zo&&n.cause.docsPath||n.docsPath;this.message=[t||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...s?[`Docs: ${this.docsBaseUrl}${s}.html${n.docsSlug?`#${n.docsSlug}`:""}`]:[],...r?[`Details: ${r}`]:[],`Version: ${this.version}`].join(`
|
|
44
|
+
`),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=s,this.metaMessages=n.metaMessages,this.shortMessage=t}walk(t){return Od(this,Yr,"m",Fd).call(this,this,t)}};Yr=new WeakSet,Fd=function e(t,n){return n!=null&&n(t)?t:t.cause?Od(this,Yr,"m",e).call(this,t.cause,n):t};let kt=class extends Lt{constructor(){super("Chain not configured."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ChainNotConfiguredError"})}},vw=class extends Lt{constructor(){super("Connector already connected."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorAlreadyConnectedError"})}},Ld=class extends Lt{constructor(){super("Connector not connected."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorNotConnectedError"})}},Cw=class extends Lt{constructor({address:t,connector:n}){super(`Account "${t}" not found for connector "${n.name}".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorAccountNotFoundError"})}},Iw=class extends Lt{constructor({connectionChainId:t,connectorChainId:n}){super(`The current chain of the connector (id: ${n}) does not match the connection's chain (id: ${t}).`,{metaMessages:[`Current Chain ID: ${n}`,`Expected Chain ID: ${t}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorChainMismatchError"})}};async function ac(e,t){var r;let n;if(typeof t.connector=="function"?n=e._internal.connectors.setup(t.connector):n=t.connector,n.uid===e.state.current)throw new vw;try{e.setState(a=>({...a,status:"connecting"})),n.emitter.emit("message",{type:"connecting"});const s=await n.connect({chainId:t.chainId}),o=s.accounts;return n.emitter.off("connect",e._internal.events.connect),n.emitter.on("change",e._internal.events.change),n.emitter.on("disconnect",e._internal.events.disconnect),await((r=e.storage)==null?void 0:r.setItem("recentConnectorId",n.id)),e.setState(a=>({...a,connections:new Map(a.connections).set(n.uid,{accounts:o,chainId:s.chainId,connector:n}),current:n.uid,status:"connected"})),{accounts:o,chainId:s.chainId}}catch(s){throw e.setState(o=>({...o,status:o.current?"connected":"disconnected"})),s}}function xw({abi:e,address:t,client:n}){const r=n,[s,o]=r?"public"in r&&"wallet"in r?[r.public,r.wallet]:"public"in r?[r.public,void 0]:"wallet"in r?[void 0,r.wallet]:[r,r]:[void 0,void 0],a=s!=null,i=o!=null,c={};let u=!1,l=!1,d=!1;for(const f of e)if(f.type==="function"?f.stateMutability==="view"||f.stateMutability==="pure"?u=!0:l=!0:f.type==="event"&&(d=!0),u&&l&&d)break;return a&&(u&&(c.read=new Proxy({},{get(f,h){return(...p)=>{const{args:m,options:g}=Ar(p);return U(s,Ce,"readContract")({abi:e,address:t,functionName:h,args:m,...g})}}})),l&&(c.simulate=new Proxy({},{get(f,h){return(...p)=>{const{args:m,options:g}=Ar(p);return U(s,Fs,"simulateContract")({abi:e,address:t,functionName:h,args:m,...g})}}})),d&&(c.createEventFilter=new Proxy({},{get(f,h){return(...p)=>{const m=e.find(w=>w.type==="event"&&w.name===h),{args:g,options:y}=uo(p,m);return U(s,zi,"createContractEventFilter")({abi:e,address:t,eventName:h,args:g,...y})}}}),c.getEvents=new Proxy({},{get(f,h){return(...p)=>{const m=e.find(w=>w.type==="event"&&w.name===h),{args:g,options:y}=uo(p,m);return U(s,Gi,"getContractEvents")({abi:e,address:t,eventName:h,args:g,...y})}}}),c.watchEvent=new Proxy({},{get(f,h){return(...p)=>{const m=e.find(w=>w.type==="event"&&w.name===h),{args:g,options:y}=uo(p,m);return U(s,la,"watchContractEvent")({abi:e,address:t,eventName:h,args:g,...y})}}}))),i&&l&&(c.write=new Proxy({},{get(f,h){return(...p)=>{const{args:m,options:g}=Ar(p);return U(o,$s,"writeContract")({abi:e,address:t,functionName:h,args:m,...g})}}})),(a||i)&&l&&(c.estimateGas=new Proxy({},{get(f,h){return(...p)=>{const{args:m,options:g}=Ar(p);return U(s??o,Ol,"estimateContractGas")({abi:e,address:t,functionName:h,args:m,...g,account:g.account??o.account})}}})),c.address=t,c.abi=e,c}function Ar(e){const t=e.length&&Array.isArray(e[0]),n=t?e[0]:[],r=(t?e[1]:e[0])??{};return{args:n,options:r}}function uo(e,t){let n=!1;Array.isArray(e[0])?n=!0:e.length===1?n=t.inputs.some(o=>o.indexed):e.length===2&&(n=!0);const r=n?e[0]:void 0,s=(n?e[1]:e[0])??{};return{args:r,options:s}}const _o=256;let vr=_o,Cr;function $d(e=11){if(!Cr||vr+e>_o*2){Cr="",vr=0;for(let t=0;t<_o;t++)Cr+=(256+Math.random()*256|0).toString(16).substring(1)}return Cr.substring(vr,vr+++e)}function mt(e){const{batch:t,cacheTime:n=e.pollingInterval??4e3,ccipRead:r,key:s="base",name:o="Base Client",pollingInterval:a=4e3,type:i="base"}=e,c=e.chain,u=e.account?le(e.account):void 0,{config:l,request:d,value:f}=e.transport({chain:c,pollingInterval:a}),h={...l,...f},p={account:u,batch:t,cacheTime:n,ccipRead:r,chain:c,key:s,name:o,pollingInterval:a,request:d,transport:h,type:i,uid:$d()};function m(g){return y=>{const w=y(g);for(const I in p)delete w[I];const C={...g,...w};return Object.assign(C,{extend:m(C)})}}return Object.assign(p,{extend:m(p)})}function Ew(){return null}function Cn({key:e,name:t,request:n,retryCount:r=3,retryDelay:s=150,timeout:o,type:a},i){const c=$d();return{config:{key:e,name:t,request:n,retryCount:r,retryDelay:s,timeout:o,type:a},request:fg(n,{retryCount:r,retryDelay:s,uid:c}),value:i}}function dr(e,t={}){const{key:n="custom",name:r="Custom Provider",retryDelay:s}=t;return({retryCount:o})=>Cn({key:n,name:r,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:s,type:"custom"})}function da(e,t={}){const{key:n="fallback",name:r="Fallback",rank:s=!1,retryCount:o,retryDelay:a}=t;return({chain:i,pollingInterval:c=4e3,timeout:u,...l})=>{let d=e,f=()=>{};const h=Cn({key:n,name:r,async request({method:p,params:m}){const g=async(y=0)=>{const w=d[y]({...l,chain:i,retryCount:0,timeout:u});try{const C=await w.request({method:p,params:m});return f({method:p,params:m,response:C,transport:w,status:"success"}),C}catch(C){if(f({error:C,method:p,params:m,transport:w,status:"error"}),Pw(C)||y===d.length-1)throw C;return g(y+1)}};return g()},retryCount:o,retryDelay:a,type:"fallback"},{onResponse:p=>f=p,transports:d.map(p=>p({chain:i,retryCount:0}))});if(s){const p=typeof s=="object"?s:{};Sw({chain:i,interval:p.interval??c,onTransports:m=>d=m,sampleCount:p.sampleCount,timeout:p.timeout,transports:d,weights:p.weights})}return h}}function Pw(e){return"code"in e&&typeof e.code=="number"&&(e.code===xt.code||e.code===D.code||e.code===5e3)}function Sw({chain:e,interval:t=4e3,onTransports:n,sampleCount:r=10,timeout:s=1e3,transports:o,weights:a={}}){const{stability:i=.7,latency:c=.3}=a,u=[],l=async()=>{const d=await Promise.all(o.map(async p=>{const m=p({chain:e,retryCount:0,timeout:s}),g=Date.now();let y,w;try{await m.request({method:"net_listening"}),w=1}catch{w=0}finally{y=Date.now()}return{latency:y-g,success:w}}));u.push(d),u.length>r&&u.shift();const f=Math.max(...u.map(p=>Math.max(...p.map(({latency:m})=>m)))),h=o.map((p,m)=>{const g=u.map(b=>b[m].latency),w=1-g.reduce((b,A)=>b+A,0)/g.length/f,C=u.map(b=>b[m].success),I=C.reduce((b,A)=>b+A,0)/C.length;return I===0?[0,m]:[c*w+i*I,m]}).sort((p,m)=>m[0]-p[0]);n(h.map(([,p])=>o[p])),await Jr(t),l()};l()}class fa extends P{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 Nn(e,t={}){const{batch:n,fetchOptions:r,key:s="http",name:o="HTTP JSON-RPC",onFetchRequest:a,onFetchResponse:i,retryDelay:c}=t;return({chain:u,retryCount:l,timeout:d})=>{const{batchSize:f=1e3,wait:h=0}=typeof n=="object"?n:{},p=t.retryCount??l,m=d??t.timeout??1e4,g=e||(u==null?void 0:u.rpcUrls.default.http[0]);if(!g)throw new fa;const y=Wl(g,{fetchOptions:r,onRequest:a,onResponse:i,timeout:m});return Cn({key:s,name:o,async request({method:w,params:C}){const I={method:w,params:C},{schedule:b}=Oi({id:g,wait:h,shouldSplitBatch(E){return E.length>f},fn:E=>y.request({body:E}),sort:(E,k)=>E.id-k.id}),A=async E=>n?b(E):[await y.request({body:E})],[{error:v,result:x}]=await A(I);if(v)throw new vt({body:I,error:v,url:g});return x},retryCount:p,retryDelay:c,timeout:m,type:"http"},{fetchOptions:r,url:g})}}function Bw(e){var d,f,h;const{scheme:t,statement:n,...r}=((d=e.match(Nw))==null?void 0:d.groups)??{},{chainId:s,expirationTime:o,issuedAt:a,notBefore:i,requestId:c,...u}=((f=e.match(kw))==null?void 0:f.groups)??{},l=(h=e.split("Resources:")[1])==null?void 0:h.split(`
|
|
45
|
+
- `).slice(1);return{...r,...u,...s?{chainId:Number(s)}:{},...o?{expirationTime:new Date(o)}:{},...a?{issuedAt:new Date(a)}:{},...i?{notBefore:new Date(i)}:{},...c?{requestId:c}:{},...l?{resources:l}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}const Nw=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,kw=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;function Mw(e){const{address:t,domain:n,message:r,nonce:s,scheme:o,time:a=new Date}=e;if(n&&r.domain!==n||s&&r.nonce!==s||o&&r.scheme!==o||r.expirationTime&&a>=r.expirationTime||r.notBefore&&a<r.notBefore)return!1;try{if(!r.address||t&&!ht(r.address,t))return!1}catch{return!1}return!0}async function Tw(e,t){const{address:n,domain:r,message:s,nonce:o,scheme:a,signature:i,time:c=new Date,...u}=t,l=Bw(s);if(!l.address||!Mw({address:n,domain:r,message:l,nonce:o,scheme:a,time:c}))return!1;const f=sr(s);return ua(e,{address:l.address,hash:f,signature:i,...u})}function ha(e){return{call:t=>ft(e,t),createBlockFilter:()=>jm(e),createContractEventFilter:t=>zi(e,t),createEventFilter:t=>Dl(e,t),createPendingTransactionFilter:()=>Ul(e),estimateContractGas:t=>Ol(e,t),estimateGas:t=>Ut(e,t),getBalance:t=>ws(e,t),getBlobBaseFee:()=>zm(e),getBlock:t=>He(e,t),getBlockNumber:t=>bn(e,t),getBlockTransactionCount:t=>Fl(e,t),getBytecode:t=>Do(e,t),getChainId:()=>er(e),getCode:t=>Do(e,t),getContractEvents:t=>Gi(e,t),getEip712Domain:t=>Zm(e,t),getEnsAddress:t=>Fi(e,t),getEnsAvatar:t=>ji(e,t),getEnsName:t=>qi(e,t),getEnsResolver:t=>Tl(e,t),getEnsText:t=>$i(e,t),getFeeHistory:t=>Ll(e,t),estimateFeesPerGas:t=>Mu(e,t),getFilterChanges:t=>ks(e,t),getFilterLogs:t=>eg(e,t),getGasPrice:()=>ys(e),getLogs:t=>_i(e,t),getProof:t=>Ad(e,t),estimateMaxPriorityFeePerGas:t=>Nu(e,t),getStorageAt:t=>$l(e,t),getTransaction:t=>An(e,t),getTransactionConfirmations:t=>jl(e,t),getTransactionCount:t=>bs(e,t),getTransactionReceipt:t=>Vr(e,t),multicall:t=>Qi(e,t),prepareTransactionRequest:t=>yn(e,t),readContract:t=>Ce(e,t),sendRawTransaction:t=>Bi(e,t),simulateContract:t=>Fs(e,t),verifyMessage:t=>Rd(e,t),verifySiweMessage:t=>Tw(e,t),verifyTypedData:t=>Dd(e,t),uninstallFilter:t=>Ms(e,t),waitForTransactionReceipt:t=>ra(e,t),watchBlocks:t=>ql(e,t),watchBlockNumber:t=>Ki(e,t),watchContractEvent:t=>la(e,t),watchEvent:t=>cg(e,t),watchPendingTransactions:t=>zl(e,t)}}function Rw(e){const{key:t="public",name:n="Public Client"}=e;return mt({...e,key:t,name:n,type:"publicClient"}).extend(ha)}function jd({mode:e}){return t=>{const n=t.extend(()=>({mode:e}));return{dropTransaction:r=>py(n,r),dumpState:()=>qm(n),getAutomine:()=>my(n),getTxpoolContent:()=>gy(n),getTxpoolStatus:()=>yy(n),impersonateAccount:r=>rg(n,r),increaseTime:r=>sg(n,r),inspectTxpool:()=>wy(n),loadState:r=>og(n,r),mine:r=>ig(n,r),removeBlockTimestampInterval:()=>by(n),reset:r=>Ay(n,r),revert:r=>vy(n,r),sendUnsignedTransaction:r=>Iy(n,r),setAutomine:r=>Ey(n,r),setBalance:r=>xy(n,r),setBlockGasLimit:r=>Py(n,r),setBlockTimestampInterval:r=>Sy(n,r),setCode:r=>By(n,r),setCoinbase:r=>Ny(n,r),setIntervalMining:r=>ky(n,r),setLoggingEnabled:r=>My(n,r),setMinGasPrice:r=>Ty(n,r),setNextBlockBaseFeePerGas:r=>Ry(n,r),setNextBlockTimestamp:r=>Dy(n,r),setNonce:r=>Uy(n,r),setRpcUrl:r=>Oy(n,r),setStorageAt:r=>Fy(n,r),snapshot:()=>Ly(n),stopImpersonatingAccount:r=>$y(n,r)}}}function Dw(e){const{key:t="test",name:n="Test Client",mode:r}=e;return mt({...e,key:t,name:n,type:"testClient"}).extend(o=>({mode:r,...jd({mode:r})(o)}))}function Xr(e){return{addChain:t=>Tf(e,t),deployContract:t=>Hu(e,t),getAddresses:()=>ug(e),getChainId:()=>er(e),getPermissions:()=>lg(e),prepareTransactionRequest:t=>yn(e,t),requestAddresses:()=>fy(e),requestPermissions:t=>hy(e,t),sendRawTransaction:t=>Bi(e,t),sendTransaction:t=>tr(e,t),signMessage:t=>sa(e,t),signTransaction:t=>Cy(e,t),signTypedData:t=>vd(e,t),switchChain:t=>jy(e,t),watchAsset:t=>Ud(e,t),writeContract:t=>$s(e,t)}}function Uw(e){const{key:t="wallet",name:n="Wallet Client",transport:r}=e;return mt({...e,key:t,name:n,transport:r,type:"walletClient"}).extend(Xr)}function qd(e,t={}){const{keepAlive:n,key:r="webSocket",name:s="WebSocket JSON-RPC",reconnect:o,retryDelay:a}=t;return({chain:i,retryCount:c,timeout:u})=>{var h;const l=t.retryCount??c,d=u??t.timeout??1e4,f=e||((h=i==null?void 0:i.rpcUrls.default.webSocket)==null?void 0:h[0]);if(!f)throw new fa;return Cn({key:r,name:s,async request({method:p,params:m}){const g={method:p,params:m},y=await Nr(f,{keepAlive:n,reconnect:o}),{error:w,result:C}=await y.requestAsync({body:g,timeout:d});if(w)throw new vt({body:g,error:w,url:f});return C},retryCount:l,retryDelay:a,timeout:d,type:"webSocket"},{getSocket(){return xg(f)},getRpcClient(){return Nr(f)},async subscribe({params:p,onData:m,onError:g}){const y=await Nr(f),{result:w}=await new Promise((C,I)=>y.request({body:{method:"eth_subscribe",params:p},onError(b){I(b),g==null||g(b)},onResponse(b){if(b.error){I(b.error),g==null||g(b.error);return}if(typeof b.id=="number"){C(b);return}b.method==="eth_subscription"&&m(b.params)}}));return{subscriptionId:w,async unsubscribe(){return new Promise(C=>y.request({body:{method:"eth_unsubscribe",params:[w]},onResponse:C}))}}}})}}const Ow="0x0000000000000000000000000000000000000000";class Fw extends Error{constructor(t,n){super(n),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t,this.details=n}}const lo="/docs/contract/decodeDeployData";function Lw(e){const{abi:t,bytecode:n,data:r}=e;if(r===n)return{bytecode:n};const s=t.find(a=>"type"in a&&a.type==="constructor");if(!s)throw new Xo({docsPath:lo});if(!("inputs"in s))throw new Tn({docsPath:lo});if(!s.inputs||s.inputs.length===0)throw new Tn({docsPath:lo});return{args:lt(s.inputs,`0x${r.replace(n,"")}`),bytecode:n}}function $w({r:e,yParityAndS:t}){const n=se(t),r=n[0]&128?1:0,s=n;return r===1&&(s[0]&=127),{r:e,s:W(s),yParity:r}}function cc(e){const{r:t,s:n}=vn.Signature.fromCompact(e.slice(2,130));return{r:N(t,{size:32}),yParityAndS:N(n,{size:32})}}function uc(e){const{r:t,s:n}=vn.Signature.fromCompact(e.slice(2,130)),r=+`0x${e.slice(130)}`,[s,o]=(()=>{if(r===0||r===1)return[void 0,r];if(r===27)return[BigInt(r),0];if(r===28)return[BigInt(r),1];throw new Error("Invalid yParityOrV value")})();return typeof s<"u"?{r:N(t,{size:32}),s:N(n,{size:32}),v:s,yParity:o}:{r:N(t,{size:32}),s:N(n,{size:32}),yParity:o}}async function jw(e){const{serializedTransaction:t,signature:n}=e,r=gd(t),s=n??{r:r.r,s:r.s,v:r.v,yParity:r.yParity},o=yd({...r,r:void 0,s:void 0,v:void 0,yParity:void 0,sidecars:void 0});return await Mt({hash:Z(o),signature:s})}function qw(e){const{r:t,s:n,v:r,yParity:s}=e,o=Number(s??r-27n);let a=n;if(o===1){const i=se(n);i[0]|=128,a=W(i)}return{r:t,yParityAndS:a}}function lc({r:e,yParityAndS:t}){return`0x${new vn.Signature(H(e),H(t)).toCompactHex()}`}function zw(e){const{sidecars:t,version:n}=e,r=e.to??(typeof t[0].blob=="string"?"hex":"bytes"),s=[];for(const{commitment:o}of t)s.push(xi({commitment:o,to:r,version:n}));return s}function _w(e){const t=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),n=typeof e.blobs[0]=="string"?e.blobs.map(i=>se(i)):e.blobs,r=n.reduce((i,c)=>i+c.length,0),s=Zt(new Uint8Array(r));let o=!0;for(const i of n){const c=Zt(i);for(;o&&c.position<i.length;){c.incrementPosition(1);let u=31;i.length-c.position<31&&(u=i.length-c.position);for(const l in Array.from({length:u})){const d=c.readByte();if(d===128&&!c.inspectBytes(c.remaining).includes(128)){o=!1;break}s.pushByte(d)}}}const a=s.bytes.slice(0,s.position);return t==="hex"?W(a):a}function zd({blobToKzgCommitment:e,computeBlobKzgProof:t}){return{blobToKzgCommitment:e,computeBlobKzgProof:t}}function Gw(e,t){try{e.loadTrustedSetup(t)}catch(n){const r=n;if(!r.message.includes("trusted setup is already loaded"))throw r}return zd(e)}const Hw=Object.freeze(Object.defineProperty({__proto__:null,AbiConstructorNotFoundError:Xo,AbiConstructorParamsNotFoundError:Tn,AbiDecodingDataSizeInvalidError:Df,AbiDecodingDataSizeTooSmallError:ei,AbiDecodingZeroDataError:Hn,AbiEncodingArrayLengthMismatchError:Jc,AbiEncodingBytesSizeMismatchError:Zc,AbiEncodingLengthMismatchError:ti,AbiErrorInputsNotFoundError:Yc,AbiErrorNotFoundError:Io,AbiErrorSignatureNotFoundError:ni,AbiEventNotFoundError:xo,AbiEventSignatureEmptyTopicsError:Xc,AbiEventSignatureNotFoundError:ri,AbiFunctionNotFoundError:It,AbiFunctionOutputsNotFoundError:si,AbiFunctionSignatureNotFoundError:eu,AccountStateConflictError:Ru,BaseError:P,BaseFeeScalarError:Su,BlockNotFoundError:Ci,BytesSizeMismatchError:oi,CallExecutionError:Di,ChainDisconnectedError:Pt,ChainDoesNotSupportContract:Ur,ChainMismatchError:wu,ChainNotFoundError:bu,CircularReferenceError:pl,ClientChainNotConfiguredError:hi,ContractFunctionExecutionError:ze,ContractFunctionRevertedError:Wr,ContractFunctionZeroDataError:Cl,CounterfactualDeploymentFailedError:Il,DecodeLogDataMismatch:Vt,DecodeLogTopicsMismatch:Qn,EIP1193ProviderRpcError:Fw,Eip1559FeesNotSupportedError:ps,EnsAvatarInvalidNftUriError:_t,EnsAvatarUnsupportedNamespaceError:Nl,EnsAvatarUriResolutionError:Ps,EstimateGasExecutionError:Tu,ExecutionRevertedError:wt,FeeCapTooHighError:rt,FeeCapTooLowError:Or,FeeConflictError:Au,FilterTypeNotSupportedError:Rl,HttpRequestError:tt,InsufficientFundsError:jr,IntegerOutOfRangeError:qc,InternalRpcError:st,IntrinsicGasTooHighError:qr,IntrinsicGasTooLowError:zr,InvalidAbiDecodingTypeError:nu,InvalidAbiEncodingTypeError:tu,InvalidAbiItemError:rl,InvalidAbiParameterError:ol,InvalidAbiParametersError:il,InvalidAbiTypeParameterError:dl,InvalidAddressError:ce,InvalidArrayError:ru,InvalidBytesBooleanError:zc,InvalidChainIdError:Jn,InvalidDecimalNumberError:wd,InvalidDefinitionTypeError:su,InvalidFunctionModifierError:ll,InvalidHexBooleanError:_c,InvalidHexValueError:Gc,InvalidInputRpcError:ot,InvalidLegacyVError:wi,InvalidModifierError:ul,InvalidParameterError:al,InvalidParamsRpcError:nn,InvalidParenthesisError:ml,InvalidRequestRpcError:en,InvalidSerializableTransactionError:vu,InvalidSerializedTransactionError:mn,InvalidSerializedTransactionTypeError:Cu,InvalidSignatureError:Ht,InvalidStorageKeySizeError:Iu,InvalidStructSignatureError:hl,JsonRpcVersionUnsupportedError:on,LimitExceededRpcError:Et,MaxFeePerGasTooLowError:Bu,MethodNotFoundRpcError:tn,MethodNotSupportedRpcError:sn,NonceMaxValueError:$r,NonceTooHighError:Fr,NonceTooLowError:Lr,ParseRpcError:Xt,ProviderDisconnectedError:it,ProviderRpcError:Rt,RawContractError:xs,ResourceNotFoundRpcError:rn,ResourceUnavailableRpcError:pe,RpcError:de,RpcRequestError:vt,SizeExceedsPaddingSizeError:Yo,SizeOverflowError:Hc,SliceOffsetOutOfBoundsError:Zo,SocketClosedError:Rn,SolidityProtectedKeywordError:cl,StateAssignmentConflictError:Du,SwitchChainError:V,TimeoutError:Gr,TipAboveFeeCapError:Yt,TransactionExecutionError:xu,TransactionNotFoundError:bi,TransactionReceiptNotFoundError:Ai,TransactionRejectedRpcError:xt,TransactionTypeNotSupportedError:_r,UnauthorizedProviderError:an,UnknownNodeError:Zn,UnknownRpcError:Eu,UnknownSignatureError:fl,UnknownTypeError:sl,UnsupportedPackedAbiType:ou,UnsupportedProviderMethodError:cn,UrlRequiredError:fa,UserRejectedRequestError:D,WaitForTransactionReceiptTimeoutError:Eo,WebSocketRequestError:Po,assertCurrentChain:pi,assertRequest:gn,assertTransactionEIP1559:or,assertTransactionEIP2930:ta,assertTransactionLegacy:na,blobsToCommitments:As,blobsToProofs:vs,boolToBytes:Kc,boolToHex:is,bytesToBigInt:Ni,bytesToBool:ki,bytesToHex:W,bytesToNumber:Me,bytesToRlp:yh,bytesToString:Mi,ccipFetch:Zr,ccipRequest:Zr,checksumAddress:pn,commitmentToVersionedHash:xi,commitmentsToVersionedHashes:Ei,compactSignatureToHex:lc,compactSignatureToSignature:$w,concat:ve,concatBytes:iu,concatHex:we,createClient:mt,createNonceManager:bd,createPublicClient:Rw,createTestClient:Dw,createTransport:Cn,createWalletClient:Uw,custom:dr,decodeAbiParameters:lt,decodeDeployData:Lw,decodeErrorResult:Ri,decodeEventLog:Bs,decodeFunctionData:Bg,decodeFunctionResult:Ot,defineBlock:g0,defineChain:Hl,defineKzg:zd,defineTransaction:p0,defineTransactionReceipt:ng,defineTransactionRequest:Eh,deploylessCallViaBytecodeBytecode:Pl,deploylessCallViaFactoryBytecode:Sl,domainSeparator:Sg,encodeAbiParameters:Oe,encodeDeployData:Wn,encodeErrorResult:Ng,encodeEventTopics:wn,encodeFunctionData:Fe,encodeFunctionResult:kg,encodePacked:Mg,erc20Abi:N0,erc20Abi_bytes32:k0,erc4626Abi:T0,erc721Abi:M0,etherUnits:mi,extractChain:wg,fallback:da,formatBlock:gs,formatEther:ds,formatGwei:ue,formatLog:Qe,formatTransaction:ms,formatTransactionReceipt:Hi,formatTransactionRequest:Dt,formatUnits:ye,fromBlobs:_w,fromBytes:R0,fromHex:Co,fromRlp:Zi,getAbiItem:Ke,getAddress:$,getChainContractAddress:Ft,getContract:xw,getContractAddress:Tg,getContractError:Bt,getCreate2Address:nd,getCreateAddress:td,getEventSelector:Un,getEventSignature:Pn,getFunctionSelector:St,getFunctionSignature:Pn,getSerializedTransactionType:hd,getTransactionType:Si,getTypesForEIP712Domain:Rs,gweiUnits:gi,hashDomain:Vi,hashMessage:sr,hashTypedData:Ts,hexToBigInt:H,hexToBool:Vc,hexToBytes:se,hexToCompactSignature:cc,hexToNumber:K,hexToRlp:wh,hexToSignature:uc,hexToString:nt,http:Nn,isAddress:ee,isAddressEqual:ht,isBytes:Oo,isErc6492Signature:ea,isHash:sd,isHex:F,keccak256:Z,labelhash:El,maxInt104:$h,maxInt112:jh,maxInt120:qh,maxInt128:zh,maxInt136:_h,maxInt144:Gh,maxInt152:Hh,maxInt16:Bh,maxInt160:Qh,maxInt168:Kh,maxInt176:Wh,maxInt184:Vh,maxInt192:Jh,maxInt200:Zh,maxInt208:Yh,maxInt216:Xh,maxInt224:ep,maxInt232:tp,maxInt24:Nh,maxInt240:np,maxInt248:rp,maxInt256:sp,maxInt32:kh,maxInt40:Mh,maxInt48:Th,maxInt56:Rh,maxInt64:Dh,maxInt72:Uh,maxInt8:Sh,maxInt80:Oh,maxInt88:Fh,maxInt96:Lh,maxUint104:Vp,maxUint112:Jp,maxUint120:Zp,maxUint128:Yp,maxUint136:Xp,maxUint144:e0,maxUint152:t0,maxUint16:Lp,maxUint160:n0,maxUint168:r0,maxUint176:s0,maxUint184:o0,maxUint192:i0,maxUint200:a0,maxUint208:c0,maxUint216:u0,maxUint224:l0,maxUint232:d0,maxUint24:$p,maxUint240:f0,maxUint248:h0,maxUint256:Xn,maxUint32:jp,maxUint40:qp,maxUint48:zp,maxUint56:_p,maxUint64:Gp,maxUint72:Hp,maxUint8:Fp,maxUint80:Qp,maxUint88:Kp,maxUint96:Wp,minInt104:yp,minInt112:wp,minInt120:bp,minInt128:Ap,minInt136:vp,minInt144:Cp,minInt152:Ip,minInt16:ip,minInt160:xp,minInt168:Ep,minInt176:Pp,minInt184:Sp,minInt192:Bp,minInt200:Np,minInt208:kp,minInt216:Mp,minInt224:Tp,minInt232:Rp,minInt24:ap,minInt240:Dp,minInt248:Up,minInt256:Op,minInt32:cp,minInt40:up,minInt48:lp,minInt56:dp,minInt64:fp,minInt72:hp,minInt8:op,minInt80:pp,minInt88:mp,minInt96:gp,multicall3Abi:Hr,namehash:Bn,nonceManager:uy,numberToBytes:Wc,numberToHex:N,offchainLookup:Gl,offchainLookupAbiItem:Wi,offchainLookupSignature:_l,pad:Ne,padBytes:Qc,padHex:ke,parseAbi:Ti,parseAbiItem:pm,parseAbiParameter:mm,parseAbiParameters:gm,parseCompactSignature:cc,parseErc6492Signature:Kg,parseEther:iy,parseEventLogs:Ns,parseGwei:ay,parseSignature:uc,parseTransaction:gd,parseUnits:Os,prepareEncodeFunctionData:bl,presignMessagePrefix:ad,publicActions:ha,recoverAddress:Mt,recoverMessageAddress:ud,recoverPublicKey:hu,recoverTransactionAddress:jw,recoverTypedDataAddress:ld,ripemd160:zg,rpcSchema:Ew,rpcTransactionType:Pu,serializeAccessList:ar,serializeCompactSignature:lc,serializeErc6492Signature:fd,serializeSignature:qo,serializeTransaction:yd,serializeTypedData:Xl,setErrorConfig:Bf,setupKzg:Gw,sha256:Lu,sidecarsToVersionedHashes:zw,signatureToCompactSignature:qw,signatureToHex:qo,size:J,slice:Ge,sliceBytes:ui,sliceHex:ls,stringToBytes:et,stringToHex:_e,stringify:X,testActions:jd,toBlobSidecars:Cs,toBlobs:_u,toBytes:ie,toEventHash:Kr,toEventSelector:Un,toEventSignature:Pn,toFunctionHash:Kr,toFunctionSelector:St,toFunctionSignature:Pn,toHex:L,toPrefixedMessage:cd,toRlp:Re,transactionType:Ii,trim:re,universalSignatureValidatorAbi:Wu,universalSignatureValidatorByteCode:Bl,validateTypedData:Ji,verifyHash:_g,verifyMessage:Gg,verifyTypedData:Hg,walletActions:Xr,webSocket:qd,weiUnits:yi,withRetry:ct,withTimeout:pt,zeroAddress:Ow,zeroHash:Qg},Symbol.toStringTag,{value:"Module"}));async function fr(e,t={}){let n;if(t.connector){const{connector:u}=t,[l,d]=await Promise.all([u.getAccounts(),u.getChainId()]);n={accounts:l,chainId:d,connector:u}}else n=e.state.connections.get(e.state.current);if(!n)throw new Ld;const r=t.chainId??n.chainId,s=await n.connector.getChainId();if(s!==n.chainId)throw new Iw({connectionChainId:n.chainId,connectorChainId:s});const o=n.connector;if(o.getClient)return o.getClient({chainId:r});const a=le(t.account??n.accounts[0]);a.address=$(a.address);const i=e.chains.find(u=>u.id===r),c=await n.connector.getProvider({chainId:r});if(t.account&&!n.accounts.some(u=>u.toLowerCase()===a.address.toLowerCase()))throw new Cw({address:a.address,connector:o});return mt({account:a,chain:i,name:"Connector Client",transport:u=>dr(c)({...u,retryCount:0})})}async function Qw(e,t={}){var s,o;let n;if(t.connector)n=t.connector;else{const{connections:a,current:i}=e.state,c=a.get(i);n=c==null?void 0:c.connector}const r=e.state.connections;n&&(await n.disconnect(),n.emitter.off("change",e._internal.events.change),n.emitter.off("disconnect",e._internal.events.disconnect),n.emitter.on("connect",e._internal.events.connect),r.delete(n.uid)),e.setState(a=>{if(r.size===0)return{...a,connections:new Map,current:null,status:"disconnected"};const i=r.values().next().value;return{...a,connections:new Map(r),current:i.connector.uid}});{const a=e.state.current;if(!a)return;const i=(s=e.state.connections.get(a))==null?void 0:s.connector;if(!i)return;await((o=e.storage)==null?void 0:o.setItem("recentConnectorId",i.id))}}async function Kw(e,t){const{chainId:n,connector:r,...s}=t;let o;t.account?o=t.account:o=(await fr(e,{account:t.account,chainId:n,connector:r})).account;const a=e.getClient({chainId:n});return ae(a,Ut,"estimateGas")({...s,account:o})}function _d(e){return typeof e=="number"?e:e==="wei"?0:Math.abs(yi[e])}function hr(e){const t=e.state.current,n=e.state.connections.get(t),r=n==null?void 0:n.accounts,s=r==null?void 0:r[0],o=e.chains.find(i=>i.id===(n==null?void 0:n.chainId)),a=e.state.status;switch(a){case"connected":return{address:s,addresses:r,chain:o,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!0,isConnecting:!1,isDisconnected:!1,isReconnecting:!1,status:a};case"reconnecting":return{address:s,addresses:r,chain:o,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!!s,isConnecting:!1,isDisconnected:!1,isReconnecting:!0,status:a};case"connecting":return{address:s,addresses:r,chain:o,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!1,isConnecting:!0,isDisconnected:!1,isReconnecting:!1,status:a};case"disconnected":return{address:void 0,addresses:void 0,chain:void 0,chainId:void 0,connector:void 0,isConnected:!1,isConnecting:!1,isDisconnected:!0,isReconnecting:!1,status:a}}}async function Ww(e,t){const{allowFailure:n=!0,chainId:r,contracts:s,...o}=t,a=e.getClient({chainId:r});return ae(a,Qi,"multicall")({allowFailure:n,contracts:s,...o})}function Vw(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return ae(s,Ce,"readContract")(r)}async function Jw(e,t){var i;const{allowFailure:n=!0,blockNumber:r,blockTag:s,...o}=t,a=t.contracts;try{const c={};for(const[f,h]of a.entries()){const p=h.chainId??e.state.chainId;c[p]||(c[p]=[]),(i=c[p])==null||i.push({contract:h,index:f})}const u=()=>Object.entries(c).map(([f,h])=>Ww(e,{...o,allowFailure:n,blockNumber:r,blockTag:s,chainId:Number.parseInt(f),contracts:h.map(({contract:p})=>p)})),l=(await Promise.all(u())).flat(),d=Object.values(c).flatMap(f=>f.map(({index:h})=>h));return l.reduce((f,h,p)=>(f&&(f[d[p]]=h),f),[])}catch(c){if(c instanceof ze)throw c;const u=()=>a.map(l=>Vw(e,{...l,blockNumber:r,blockTag:s}));return n?(await Promise.allSettled(u())).map(l=>l.status==="fulfilled"?{result:l.value,status:"success"}:{error:l.reason,result:void 0,status:"failure"}):await Promise.all(u())}}async function Zw(e,t){const{address:n,blockNumber:r,blockTag:s,chainId:o,token:a,unit:i="ether"}=t;if(a)try{return dc(e,{balanceAddress:n,chainId:o,symbolType:"string",tokenAddress:a})}catch(f){if(f instanceof ze){const h=await dc(e,{balanceAddress:n,chainId:o,symbolType:"bytes32",tokenAddress:a}),p=nt(re(h.symbol,{dir:"right"}));return{...h,symbol:p}}throw f}const c=e.getClient({chainId:o}),l=await ae(c,ws,"getBalance")(r?{address:n,blockNumber:r}:{address:n,blockTag:s}),d=e.chains.find(f=>f.id===o)??c.chain;return{decimals:d.nativeCurrency.decimals,formatted:ye(l,_d(i)),symbol:d.nativeCurrency.symbol,value:l}}async function dc(e,t){const{balanceAddress:n,chainId:r,symbolType:s,tokenAddress:o,unit:a}=t,i={abi:[{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:s}]}],address:o},[c,u,l]=await Jw(e,{allowFailure:!1,contracts:[{...i,functionName:"balanceOf",args:[n],chainId:r},{...i,functionName:"decimals",chainId:r},{...i,functionName:"symbol",chainId:r}]}),d=ye(c??"0",_d(a??u));return{decimals:u,formatted:d,symbol:l,value:c}}function Fn(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;let n,r;if(Array.isArray(e)&&Array.isArray(t)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!Fn(e[r],t[r]))return!1;return!0}if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();const s=Object.keys(e);if(n=s.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,s[r]))return!1;for(r=n;r--!==0;){const o=s[r];if(o&&!Fn(e[o],t[o]))return!1}return!0}return e!==e&&t!==t}let Ir=[];function fo(e){const t=[...e.state.connections.values()];return e.state.status==="reconnecting"||Fn(Ir,t)?Ir:(Ir=t,t)}let ho=[];function Yw(e){const t=e.connectors;return Fn(ho,t)?ho:(ho=t,t)}function Xw(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return ae(s,Fi,"getEnsAddress")(r)}function fc(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return ae(s,ji,"getEnsAvatar")(r)}function eb(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return ae(s,qi,"getEnsName")(r)}async function tb(e,t){const{account:n,chainId:r,...s}=t,o=n??hr(e).address,a=e.getClient({chainId:r});return ae(a,yn,"prepareTransactionRequest")({...s,...o?{account:o}:{}})}let po=!1;async function hc(e,t={}){var u,l;if(po)return[];po=!0,e.setState(d=>({...d,status:d.current?"reconnecting":"connecting"}));const n=[];if((u=t.connectors)!=null&&u.length)for(const d of t.connectors){let f;typeof d=="function"?f=e._internal.connectors.setup(d):f=d,n.push(f)}else n.push(...e.connectors);let r;try{r=await((l=e.storage)==null?void 0:l.getItem("recentConnectorId"))}catch{}const s={};for(const[,d]of e.state.connections)s[d.connector.id]=1;r&&(s[r]=0);const o=Object.keys(s).length>0?[...n].sort((d,f)=>(s[d.id]??10)-(s[f.id]??10)):n;let a=!1;const i=[],c=[];for(const d of o){const f=await d.getProvider().catch(()=>{});if(!f||c.some(m=>m===f)||!await d.isAuthorized())continue;const p=await d.connect({isReconnecting:!0}).catch(()=>null);p&&(d.emitter.off("connect",e._internal.events.connect),d.emitter.on("change",e._internal.events.change),d.emitter.on("disconnect",e._internal.events.disconnect),e.setState(m=>{const g=new Map(a?m.connections:new Map).set(d.uid,{accounts:p.accounts,chainId:p.chainId,connector:d});return{...m,current:a?m.current:d.uid,connections:g}}),i.push({accounts:p.accounts,chainId:p.chainId,connector:d}),c.push(f),a=!0)}return(e.state.status==="reconnecting"||e.state.status==="connecting")&&(a?e.setState(d=>({...d,status:"connected"})):e.setState(d=>({...d,connections:new Map,current:null,status:"disconnected"}))),po=!1,i}async function nb(e,t){const{account:n,chainId:r,connector:s,gas:o,...a}=t;let i;typeof n=="object"&&n.type==="local"?i=e.getClient({chainId:r}):i=await fr(e,{account:n,chainId:r,connector:s});const{connector:c}=hr(e),u=await(async()=>{var f;if(!(!("data"in t)||!t.data)&&!((f=s??c)!=null&&f.supportsSimulation)&&o!==null)return o===void 0?ae(i,Ut,"estimateGas")({...a,account:n,chain:r?{id:r}:null}):o})();return await ae(i,tr,"sendTransaction")({...a,...n?{account:n}:{},gas:u,chain:r?{id:r}:null})}async function rb(e,t){const{account:n,connector:r,...s}=t;let o;return typeof n=="object"&&n.type==="local"?o=e.getClient():o=await fr(e,{account:n,connector:r}),ae(o,sa,"signMessage")({...s,...n?{account:n}:{}})}async function sb(e,t){const{abi:n,chainId:r,connector:s,...o}=t;let a;t.account?a=t.account:a=(await fr(e,{chainId:r,connector:s})).account;const i=e.getClient({chainId:r}),c=ae(i,Fs,"simulateContract"),{result:u,request:l}=await c({...o,abi:n,account:a});return{chainId:i.chain.id,result:u,request:{__mode:"prepared",...l,chainId:r}}}async function ob(e,t){var s;const{connector:n}=t,r=e.state.connections.get(n.uid);if(!r)throw new Ld;return await((s=e.storage)==null?void 0:s.setItem("recentConnectorId",n.id)),e.setState(o=>({...o,current:n.uid})),{accounts:r.accounts,chainId:r.chainId}}let Xe=class extends Lt{constructor(){super("Provider not found."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ProviderNotFoundError"})}},ib=class extends Lt{constructor({connector:t}){super(`"${t.name}" does not support programmatic chain switching.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SwitchChainNotSupportedError"})}};async function ab(e,t){var a;const{addEthereumChainParameter:n,chainId:r}=t,s=e.state.connections.get(((a=t.connector)==null?void 0:a.uid)??e.state.current);if(s){const i=s.connector;if(!i.switchChain)throw new ib({connector:i});return await i.switchChain({addEthereumChainParameter:n,chainId:r})}const o=e.chains.find(i=>i.id===r);if(!o)throw new kt;return e.setState(i=>({...i,chainId:r})),o}function cb(e,t){const{onChange:n}=t;return e.subscribe(()=>hr(e),n,{equalityFn(r,s){const{connector:o,...a}=r,{connector:i,...c}=s;return Fn(a,c)&&(o==null?void 0:o.id)===(i==null?void 0:i.id)&&(o==null?void 0:o.uid)===(i==null?void 0:i.uid)}})}function ub(e,t){const{onChange:n}=t;return e._internal.connectors.subscribe((r,s)=>{n(Object.values(r),s)})}async function lb(e,t){const{chainId:n,timeout:r=0,...s}=t,o=e.getClient({chainId:n}),i=await ae(o,ra,"waitForTransactionReceipt")({...s,timeout:r});if(i.status==="reverted"){const u=await ae(o,An,"getTransaction")({hash:i.transactionHash}),d=await ae(o,ft,"call")({...u,gasPrice:u.type!=="eip1559"?u.gasPrice:void 0,maxFeePerGas:u.type==="eip1559"?u.maxFeePerGas:void 0,maxPriorityFeePerGas:u.type==="eip1559"?u.maxPriorityFeePerGas:void 0}),f=d!=null&&d.data?nt(`0x${d.data.substring(138)}`):"unknown reason";throw new Error(f)}return{...i,chainId:o.chain.id}}async function db(e,t){const{account:n,chainId:r,connector:s,__mode:o,...a}=t;let i;typeof n=="object"&&n.type==="local"?i=e.getClient({chainId:r}):i=await fr(e,{account:n,chainId:r,connector:s});const{connector:c}=hr(e);let u;if(o==="prepared"||c!=null&&c.supportsSimulation)u=a;else{const{request:f}=await sb(e,{...a,account:n,chainId:r});u=f}return await ae(i,$s,"writeContract")({...u,...n?{account:n}:{},chain:r?{id:r}:null})}const fb=/(rabby|trustwallet)/,hb={coinbaseWallet:{id:"coinbaseWallet",name:"Coinbase Wallet",provider(e){return e!=null&&e.coinbaseWalletExtension?e.coinbaseWalletExtension:Mr(e,"isCoinbaseWallet")}},metaMask:{id:"metaMask",name:"MetaMask",provider(e){return Mr(e,t=>{if(!t.isMetaMask||t.isBraveWallet&&!t._events&&!t._state)return!1;const n=["isApexWallet","isAvalanche","isBitKeep","isBlockWallet","isKuCoinWallet","isMathWallet","isOkxWallet","isOKExWallet","isOneInchIOSWallet","isOneInchAndroidWallet","isOpera","isPortal","isRabby","isTokenPocket","isTokenary","isZerion"];for(const r of n)if(t[r])return!1;return!0})}},phantom:{id:"phantom",name:"Phantom",provider(e){var t,n;return(t=e==null?void 0:e.phantom)!=null&&t.ethereum?(n=e.phantom)==null?void 0:n.ethereum:Mr(e,"isPhantom")}}};js.type="injected";function js(e={}){const{shimDisconnect:t=!0,unstable_shimAsyncInject:n}=e;function r(){const c=e.target;if(typeof c=="function"){const u=c();if(u)return u}return typeof c=="object"?c:typeof c=="string"?{...hb[c]??{id:c,name:`${c[0].toUpperCase()}${c.slice(1)}`,provider:`is${c[0].toUpperCase()}${c.slice(1)}`}}:{id:"injected",name:"Injected",provider(u){return u==null?void 0:u.ethereum}}}let s,o,a,i;return c=>({get icon(){return r().icon},get id(){return r().id},get name(){return r().name},get supportsSimulation(){return fb.test(this.id.toLowerCase())},type:js.type,async setup(){const u=await this.getProvider();u&&e.target&&(a||(a=this.onConnect.bind(this),u.on("connect",a)),s||(s=this.onAccountsChanged.bind(this),u.on("accountsChanged",s)))},async connect({chainId:u,isReconnecting:l}={}){var h,p,m,g,y,w;const d=await this.getProvider();if(!d)throw new Xe;let f=[];if(l)f=await this.getAccounts().catch(()=>[]);else if(t)try{f=(g=(m=(p=(h=(await d.request({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]}))[0])==null?void 0:h.caveats)==null?void 0:p[0])==null?void 0:m.value)==null?void 0:g.map(I=>$(I)),f.length>0&&(f=await this.getAccounts())}catch(C){const I=C;if(I.code===D.code)throw new D(I);if(I.code===pe.code)throw I}try{!(f!=null&&f.length)&&!l&&(f=(await d.request({method:"eth_requestAccounts"})).map(b=>$(b))),a&&(d.removeListener("connect",a),a=void 0),s||(s=this.onAccountsChanged.bind(this),d.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),d.on("chainChanged",o)),i||(i=this.onDisconnect.bind(this),d.on("disconnect",i));let C=await this.getChainId();if(u&&C!==u){const I=await this.switchChain({chainId:u}).catch(b=>{if(b.code===D.code)throw b;return{id:C}});C=(I==null?void 0:I.id)??C}return t&&await((y=c.storage)==null?void 0:y.removeItem(`${this.id}.disconnected`)),e.target||await((w=c.storage)==null?void 0:w.setItem("injected.connected",!0)),{accounts:f,chainId:C}}catch(C){const I=C;throw I.code===D.code?new D(I):I.code===pe.code?new pe(I):I}},async disconnect(){var l,d;const u=await this.getProvider();if(!u)throw new Xe;o&&(u.removeListener("chainChanged",o),o=void 0),i&&(u.removeListener("disconnect",i),i=void 0),a||(a=this.onConnect.bind(this),u.on("connect",a));try{await pt(()=>u.request({method:"wallet_revokePermissions",params:[{eth_accounts:{}}]}),{timeout:100})}catch{}t&&await((l=c.storage)==null?void 0:l.setItem(`${this.id}.disconnected`,!0)),e.target||await((d=c.storage)==null?void 0:d.removeItem("injected.connected"))},async getAccounts(){const u=await this.getProvider();if(!u)throw new Xe;return(await u.request({method:"eth_accounts"})).map(d=>$(d))},async getChainId(){const u=await this.getProvider();if(!u)throw new Xe;const l=await u.request({method:"eth_chainId"});return Number(l)},async getProvider(){if(typeof window>"u")return;let u;const l=r();return typeof l.provider=="function"?u=l.provider(window):typeof l.provider=="string"?u=Mr(window,l.provider):u=l.provider,u&&!u.removeListener&&("off"in u&&typeof u.off=="function"?u.removeListener=u.off:u.removeListener=()=>{}),u},async isAuthorized(){var u,l;try{if(t&&await((u=c.storage)==null?void 0:u.getItem(`${this.id}.disconnected`))||!e.target&&!await((l=c.storage)==null?void 0:l.getItem("injected.connected")))return!1;if(!await this.getProvider()){if(n!==void 0&&n!==!1){const p=async()=>(typeof window<"u"&&window.removeEventListener("ethereum#initialized",p),!!await this.getProvider()),m=typeof n=="number"?n:1e3;if(await Promise.race([...typeof window<"u"?[new Promise(y=>window.addEventListener("ethereum#initialized",()=>y(p()),{once:!0}))]:[],new Promise(y=>setTimeout(()=>y(p()),m))]))return!0}throw new Xe}return!!(await ct(()=>this.getAccounts())).length}catch{return!1}},async switchChain({addEthereumChainParameter:u,chainId:l}){var h,p,m,g;const d=await this.getProvider();if(!d)throw new Xe;const f=c.chains.find(y=>y.id===l);if(!f)throw new V(new kt);try{return await Promise.all([d.request({method:"wallet_switchEthereumChain",params:[{chainId:N(l)}]}).then(async()=>{await this.getChainId()===l&&c.emitter.emit("change",{chainId:l})}),new Promise(y=>c.emitter.once("change",({chainId:w})=>{w===l&&y()}))]),f}catch(y){const w=y;if(w.code===4902||((p=(h=w==null?void 0:w.data)==null?void 0:h.originalError)==null?void 0:p.code)===4902)try{const{default:C,...I}=f.blockExplorers??{};let b;u!=null&&u.blockExplorerUrls?b=u.blockExplorerUrls:C&&(b=[C.url,...Object.values(I).map(E=>E.url)]);let A;(m=u==null?void 0:u.rpcUrls)!=null&&m.length?A=u.rpcUrls:A=[((g=f.rpcUrls.default)==null?void 0:g.http[0])??""];const v={blockExplorerUrls:b,chainId:N(l),chainName:(u==null?void 0:u.chainName)??f.name,iconUrls:u==null?void 0:u.iconUrls,nativeCurrency:(u==null?void 0:u.nativeCurrency)??f.nativeCurrency,rpcUrls:A};if(await d.request({method:"wallet_addEthereumChain",params:[v]}),await this.getChainId()!==l)throw new D(new Error("User rejected switch after adding network."));return f}catch(C){throw new D(C)}throw w.code===D.code?new D(w):new V(w)}},async onAccountsChanged(u){var l;if(u.length===0)this.onDisconnect();else if(c.emitter.listenerCount("connect")){const d=(await this.getChainId()).toString();this.onConnect({chainId:d}),t&&await((l=c.storage)==null?void 0:l.removeItem(`${this.id}.disconnected`))}else c.emitter.emit("change",{accounts:u.map(d=>$(d))})},onChainChanged(u){const l=Number(u);c.emitter.emit("change",{chainId:l})},async onConnect(u){const l=await this.getAccounts();if(l.length===0)return;const d=Number(u.chainId);c.emitter.emit("connect",{accounts:l,chainId:d});const f=await this.getProvider();f&&(a&&(f.removeListener("connect",a),a=void 0),s||(s=this.onAccountsChanged.bind(this),f.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),f.on("chainChanged",o)),i||(i=this.onDisconnect.bind(this),f.on("disconnect",i)))},async onDisconnect(u){const l=await this.getProvider();u&&u.code===1013&&l&&(await this.getAccounts()).length||(c.emitter.emit("disconnect"),l&&(o&&(l.removeListener("chainChanged",o),o=void 0),i&&(l.removeListener("disconnect",i),i=void 0),a||(a=this.onConnect.bind(this),l.on("connect",a))))}})}function Mr(e,t){function n(s){return typeof t=="function"?t(s):typeof t=="string"?s[t]:!0}const r=e.ethereum;if(r!=null&&r.providers)return r.providers.find(s=>n(s));if(r&&n(r))return r}function pb(e){if(typeof window>"u")return;const t=n=>e(n.detail);return window.addEventListener("eip6963:announceProvider",t),window.dispatchEvent(new CustomEvent("eip6963:requestProvider")),()=>window.removeEventListener("eip6963:announceProvider",t)}function Gd(){const e=new Set;let t=[];const n=()=>pb(s=>{t.some(({info:o})=>o.uuid===s.info.uuid)||(t=[...t,s],e.forEach(o=>o(t,{added:[s]})))});let r=n();return{_listeners(){return e},clear(){e.forEach(s=>s([],{removed:[...t]})),t=[]},destroy(){this.clear(),e.clear(),r==null||r()},findProvider({rdns:s}){return t.find(o=>o.info.rdns===s)},getProviders(){return t},reset(){this.clear(),r==null||r(),r=n()},subscribe(s,{emitImmediately:o}={}){return e.add(s),o&&s(t,{added:t}),()=>e.delete(s)}}}var mb={BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const gb=e=>(t,n,r)=>{const s=r.subscribe;return r.subscribe=(a,i,c)=>{let u=a;if(i){const l=(c==null?void 0:c.equalityFn)||Object.is;let d=a(r.getState());u=f=>{const h=a(f);if(!l(d,h)){const p=d;i(d=h,p)}},c!=null&&c.fireImmediately&&i(d,d)}return s(u)},e(t,n,r)},yb=gb;function wb(e,t){let n;try{n=e()}catch{return}return{getItem:s=>{var o;const a=c=>c===null?null:JSON.parse(c,void 0),i=(o=n.getItem(s))!=null?o:null;return i instanceof Promise?i.then(a):a(i)},setItem:(s,o)=>n.setItem(s,JSON.stringify(o,void 0)),removeItem:s=>n.removeItem(s)}}const Ln=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then(r){return Ln(r)(n)},catch(r){return this}}}catch(n){return{then(r){return this},catch(r){return Ln(r)(n)}}}},bb=(e,t)=>(n,r,s)=>{let o={getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:g=>g,version:0,merge:(g,y)=>({...y,...g}),...t},a=!1;const i=new Set,c=new Set;let u;try{u=o.getStorage()}catch{}if(!u)return e((...g)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...g)},r,s);const l=Ln(o.serialize),d=()=>{const g=o.partialize({...r()});let y;const w=l({state:g,version:o.version}).then(C=>u.setItem(o.name,C)).catch(C=>{y=C});if(y)throw y;return w},f=s.setState;s.setState=(g,y)=>{f(g,y),d()};const h=e((...g)=>{n(...g),d()},r,s);let p;const m=()=>{var g;if(!u)return;a=!1,i.forEach(w=>w(r()));const y=((g=o.onRehydrateStorage)==null?void 0:g.call(o,r()))||void 0;return Ln(u.getItem.bind(u))(o.name).then(w=>{if(w)return o.deserialize(w)}).then(w=>{if(w)if(typeof w.version=="number"&&w.version!==o.version){if(o.migrate)return o.migrate(w.state,w.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return w.state}).then(w=>{var C;return p=o.merge(w,(C=r())!=null?C:h),n(p,!0),d()}).then(()=>{y==null||y(p,void 0),a=!0,c.forEach(w=>w(p))}).catch(w=>{y==null||y(void 0,w)})};return s.persist={setOptions:g=>{o={...o,...g},g.getStorage&&(u=g.getStorage())},clearStorage:()=>{u==null||u.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>m(),hasHydrated:()=>a,onHydrate:g=>(i.add(g),()=>{i.delete(g)}),onFinishHydration:g=>(c.add(g),()=>{c.delete(g)})},m(),p||h},Ab=(e,t)=>(n,r,s)=>{let o={storage:wb(()=>localStorage),partialize:m=>m,version:0,merge:(m,g)=>({...g,...m}),...t},a=!1;const i=new Set,c=new Set;let u=o.storage;if(!u)return e((...m)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...m)},r,s);const l=()=>{const m=o.partialize({...r()});return u.setItem(o.name,{state:m,version:o.version})},d=s.setState;s.setState=(m,g)=>{d(m,g),l()};const f=e((...m)=>{n(...m),l()},r,s);let h;const p=()=>{var m,g;if(!u)return;a=!1,i.forEach(w=>{var C;return w((C=r())!=null?C:f)});const y=((g=o.onRehydrateStorage)==null?void 0:g.call(o,(m=r())!=null?m:f))||void 0;return Ln(u.getItem.bind(u))(o.name).then(w=>{if(w)if(typeof w.version=="number"&&w.version!==o.version){if(o.migrate)return o.migrate(w.state,w.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return w.state}).then(w=>{var C;return h=o.merge(w,(C=r())!=null?C:f),n(h,!0),l()}).then(()=>{y==null||y(h,void 0),h=r(),a=!0,c.forEach(w=>w(h))}).catch(w=>{y==null||y(void 0,w)})};return s.persist={setOptions:m=>{o={...o,...m},m.storage&&(u=m.storage)},clearStorage:()=>{u==null||u.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>p(),hasHydrated:()=>a,onHydrate:m=>(i.add(m),()=>{i.delete(m)}),onFinishHydration:m=>(c.add(m),()=>{c.delete(m)})},o.skipHydration||p(),h||f},vb=(e,t)=>"getStorage"in t||"serialize"in t||"deserialize"in t?((mb?"production":void 0)!=="production"&&console.warn("[DEPRECATED] `getStorage`, `serialize` and `deserialize` options are deprecated. Use `storage` option instead."),bb(e,t)):Ab(e,t),Cb=vb;var Ib={BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const pc=e=>{let t;const n=new Set,r=(c,u)=>{const l=typeof c=="function"?c(t):c;if(!Object.is(l,t)){const d=t;t=u??typeof l!="object"?l:Object.assign({},t,l),n.forEach(f=>f(t,d))}},s=()=>t,i={setState:r,getState:s,subscribe:c=>(n.add(c),()=>n.delete(c)),destroy:()=>{(Ib?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}};return t=e(r,s,i),i},mo=e=>e?pc(e):pc;let xb=class{constructor(t){Object.defineProperty(this,"uid",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"_emitter",{enumerable:!0,configurable:!0,writable:!0,value:new T.EventEmitter})}on(t,n){this._emitter.on(t,n)}once(t,n){this._emitter.once(t,n)}off(t,n){this._emitter.off(t,n)}emit(t,...n){const r=n[0];this._emitter.emit(t,{uid:this.uid,...r})}listenerCount(t){return this._emitter.listenerCount(t)}};function Eb(e){return new xb(e)}function Pb(e,t){return JSON.parse(e,(n,r)=>{let s=r;return(s==null?void 0:s.__type)==="bigint"&&(s=BigInt(s.value)),(s==null?void 0:s.__type)==="Map"&&(s=new Map(s.value)),(t==null?void 0:t(n,s))??s})}function mc(e,t){return e.slice(0,t).join(".")||"."}function gc(e,t){const{length:n}=e;for(let r=0;r<n;++r)if(e[r]===t)return r+1;return 0}function Sb(e,t){const n=typeof e=="function",r=typeof t=="function",s=[],o=[];return function(i,c){if(typeof c=="object")if(s.length){const u=gc(s,this);u===0?s[s.length]=this:(s.splice(u),o.splice(u)),o[o.length]=i;const l=gc(s,c);if(l!==0)return r?t.call(this,i,c,mc(o,l)):`[ref=${mc(o,l)}]`}else s[0]=c,o[0]=i;return n?e.call(this,i,c):c}}function Bb(e,t,n,r){return JSON.stringify(e,Sb((s,o)=>{let a=o;return typeof a=="bigint"&&(a={__type:"bigint",value:o.toString()}),a instanceof Map&&(a={__type:"Map",value:Array.from(o.entries())}),(t==null?void 0:t(s,a))??a},r),n??void 0)}function Nb(e){const{deserialize:t=Pb,key:n="wagmi",serialize:r=Bb,storage:s=Hd}=e;function o(a){return a instanceof Promise?a.then(i=>i).catch(()=>null):a}return{...s,key:n,async getItem(a,i){const c=s.getItem(`${n}.${a}`),u=await o(c);return u?t(u)??null:i??null},async setItem(a,i){const c=`${n}.${a}`;i===null?await o(s.removeItem(c)):await o(s.setItem(c,r(i)))},async removeItem(a){await o(s.removeItem(`${n}.${a}`))}}}const Hd={getItem:()=>null,setItem:()=>{},removeItem:()=>{}},Go=256;let xr=Go,Er;function kb(e=11){if(!Er||xr+e>Go*2){Er="",xr=0;for(let t=0;t<Go;t++)Er+=(256+Math.random()*256|0).toString(16).substring(1)}return Er.substring(xr,xr+++e)}function Mb(e){const{multiInjectedProviderDiscovery:t=!0,storage:n=Nb({storage:typeof window<"u"&&window.localStorage?window.localStorage:Hd}),syncConnectedChain:r=!0,ssr:s=!1,...o}=e,a=typeof window<"u"&&t?Gd():void 0,i=mo(()=>o.chains),c=mo(()=>[...o.connectors??[],...s?[]:(a==null?void 0:a.getProviders().map(l))??[]].map(u));function u(b){var x;const A=Eb(kb()),v={...b({emitter:A,chains:i.getState(),storage:n,transports:o.transports}),emitter:A,uid:A.uid};return A.on("connect",C),(x=v.setup)==null||x.call(v),v}function l(b){const{info:A}=b,v=b.provider;return js({target:{...A,id:A.rdns,provider:v}})}const d=new Map;function f(b={}){const A=b.chainId??g.getState().chainId,v=i.getState().find(E=>E.id===A);if(b.chainId&&!v)throw new kt;{const E=d.get(g.getState().chainId);if(E&&!v)return E;if(!v)throw new kt}{const E=d.get(A);if(E)return E}let x;if(o.client)x=o.client({chain:v});else{const E=v.id,k=i.getState().map(R=>R.id),M={},z=Object.entries(o);for(const[R,G]of z)if(!(R==="chains"||R==="client"||R==="connectors"||R==="transports"))if(typeof G=="object")if(E in G)M[R]=G[E];else{if(k.some(S=>S in G))continue;M[R]=G}else M[R]=G;x=mt({...M,chain:v,batch:M.batch??{multicall:!0},transport:R=>o.transports[E]({...R,connectors:c})})}return d.set(A,x),x}function h(){return{chainId:i.getState()[0].id,connections:new Map,current:null,status:"disconnected"}}let p;const m="0.0.0-canary-";kr.startsWith(m)?p=Number.parseInt(kr.replace(m,"")):p=Number.parseInt(kr.split(".")[0]??"0");const g=mo(yb(n?Cb(h,{migrate(b,A){if(A===p)return b;const v=h(),x=y(b,v.chainId);return{...v,chainId:x}},name:"store",partialize(b){return{connections:{__type:"Map",value:Array.from(b.connections.entries()).map(([A,v])=>{const{id:x,name:E,type:k,uid:M}=v.connector;return[A,{...v,connector:{id:x,name:E,type:k,uid:M}}]})},chainId:b.chainId,current:b.current}},merge(b,A){typeof b=="object"&&b&&"status"in b&&delete b.status;const v=y(b,A.chainId);return{...A,...b,chainId:v}},skipHydration:s,storage:n,version:p}):h));function y(b,A){return b&&typeof b=="object"&&"chainId"in b&&typeof b.chainId=="number"&&i.getState().some(v=>v.id===b.chainId)?b.chainId:A}r&&g.subscribe(({connections:b,current:A})=>{var v;return A?(v=b.get(A))==null?void 0:v.chainId:void 0},b=>{if(i.getState().some(v=>v.id===b))return g.setState(v=>({...v,chainId:b??v.chainId}))}),a==null||a.subscribe(b=>{const A=new Map;for(const x of c.getState())A.set(x.id,!0);const v=[];for(const x of b){const E=u(l(x));A.has(E.id)||v.push(E)}n&&!g.persist.hasHydrated()||c.setState(x=>[...x,...v],!0)});function w(b){g.setState(A=>{const v=A.connections.get(b.uid);return v?{...A,connections:new Map(A.connections).set(b.uid,{accounts:b.accounts??v.accounts,chainId:b.chainId??v.chainId,connector:v.connector})}:A})}function C(b){g.getState().status==="connecting"||g.getState().status==="reconnecting"||g.setState(A=>{const v=c.getState().find(x=>x.uid===b.uid);return v?(v.emitter.listenerCount("connect")&&v.emitter.off("connect",w),v.emitter.listenerCount("change")||v.emitter.on("change",w),v.emitter.listenerCount("disconnect")||v.emitter.on("disconnect",I),{...A,connections:new Map(A.connections).set(b.uid,{accounts:b.accounts,chainId:b.chainId,connector:v}),current:b.uid,status:"connected"}):A})}function I(b){g.setState(A=>{const v=A.connections.get(b.uid);if(v){const E=v.connector;E.emitter.listenerCount("change")&&v.connector.emitter.off("change",w),E.emitter.listenerCount("disconnect")&&v.connector.emitter.off("disconnect",I),E.emitter.listenerCount("connect")||v.connector.emitter.on("connect",C)}if(A.connections.delete(b.uid),A.connections.size===0)return{...A,connections:new Map,current:null,status:"disconnected"};const x=A.connections.values().next().value;return{...A,connections:new Map(A.connections),current:x.connector.uid}})}return{get chains(){return i.getState()},get connectors(){return c.getState()},storage:n,getClient:f,get state(){return g.getState()},setState(b){let A;typeof b=="function"?A=b(g.getState()):A=b;const v=h();typeof A!="object"&&(A=v),Object.keys(v).some(E=>!(E in A))&&(A=v),g.setState(A,!0)},subscribe(b,A,v){return g.subscribe(b,A,v?{...v,fireImmediately:v.emitImmediately}:void 0)},_internal:{mipd:a,store:g,ssr:!!s,syncConnectedChain:r,transports:o.transports,chains:{setState(b){const A=typeof b=="function"?b(i.getState()):b;if(A.length!==0)return i.setState(A,!0)},subscribe(b){return i.subscribe(b)}},connectors:{providerDetailToConnector:l,setup:u,setState(b){return c.setState(typeof b=="function"?b(c.getState()):b,!0)},subscribe(b){return c.subscribe(b)}},events:{change:w,connect:C,disconnect:I}}}}const yc=Hl({id:1,name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://cloudflare-eth.com"]}},blockExplorers:{default:{name:"Etherscan",url:"https://etherscan.io",apiUrl:"https://api.etherscan.io/api"}},contracts:{ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xce01f8eee7E479C928F8919abD53E553a36CeF67",blockCreated:19258213},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}});async function Tb(e){var r;if(!e)throw new Error("networkControllerClient:getApprovedCaipNetworks - connector is undefined");const t=await(e==null?void 0:e.getProvider());return{supportsAllNetworks:!1,approvedCaipNetworkIds:T.WcHelpersUtil.getChainsFromNamespaces((r=t==null?void 0:t.session)==null?void 0:r.namespaces)}}function Rb(){return{supportsAllNetworks:!0,approvedCaipNetworkIds:T.PresetsUtil.WalletConnectRpcChainIds.map(e=>`${T.ConstantsUtil.EIP155}:${e}`)}}function Db({chain:e,projectId:t}){var s;const n=T.CoreHelperUtil.getBlockchainApiUrl(),r=(s=e.rpcUrls.default.http)==null?void 0:s[0];return T.PresetsUtil.WalletConnectRpcChainIds.includes(e.id)?da([Nn(`${n}/v1/?chainId=${T.ConstantsUtil.EIP155}:${e.id}&projectId=${t}`,{fetchOptions:{headers:{"Content-Type":"text/plain"}}}),Nn(r)]):Nn(r)}function wc(e){if(!e)throw new Error("No CAIP address provided");const t=e.split(":")[2];if(!t)throw new Error("Invalid CAIP address");return t}function Ub(e){try{return JSON.parse(e)}catch{throw new Error("Error parsing wallet capabilities")}}var Ob="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";const bc=new Map([[8217,"apostrophe"],[8260,"fraction slash"],[12539,"middle dot"]]),Ac=4;function Fb(e){let t=0;function n(){return e[t++]<<8|e[t++]}let r=n(),s=1,o=[0,1];for(let b=1;b<r;b++)o.push(s+=n());let a=n(),i=t;t+=a;let c=0,u=0;function l(){return c==0&&(u=u<<8|e[t++],c=8),u>>--c&1}const d=31,f=2**d,h=f>>>1,p=h>>1,m=f-1;let g=0;for(let b=0;b<d;b++)g=g<<1|l();let y=[],w=0,C=f;for(;;){let b=Math.floor(((g-w+1)*s-1)/C),A=0,v=r;for(;v-A>1;){let k=A+v>>>1;b<o[k]?v=k:A=k}if(A==0)break;y.push(A);let x=w+Math.floor(C*o[A]/s),E=w+Math.floor(C*o[A+1]/s)-1;for(;!((x^E)&h);)g=g<<1&m|l(),x=x<<1&m,E=E<<1&m|1;for(;x&~E&p;)g=g&h|g<<1&m>>>1|l(),x=x<<1^h,E=(E^h)<<1|h|1;w=x,C=1+E-x}let I=r-4;return y.map(b=>{switch(b-I){case 3:return I+65792+(e[i++]<<16|e[i++]<<8|e[i++]);case 2:return I+256+(e[i++]<<8|e[i++]);case 1:return I+e[i++];default:return b-1}})}function Lb(e){let t=0;return()=>e[t++]}function Qd(e){return Lb(Fb($b(e)))}function $b(e){let t=[];[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"].forEach((s,o)=>t[s.charCodeAt(0)]=o);let n=e.length,r=new Uint8Array(6*n>>3);for(let s=0,o=0,a=0,i=0;s<n;s++)i=i<<6|t[e.charCodeAt(s)],a+=6,a>=8&&(r[o++]=i>>(a-=8));return r}function jb(e){return e&1?~e>>1:e>>1}function qb(e,t){let n=Array(e);for(let r=0,s=0;r<e;r++)n[r]=s+=jb(t());return n}function $n(e,t=0){let n=[];for(;;){let r=e(),s=e();if(!s)break;t+=r;for(let o=0;o<s;o++)n.push(t+o);t+=s+1}return n}function Kd(e){return jn(()=>{let t=$n(e);if(t.length)return t})}function Wd(e){let t=[];for(;;){let n=e();if(n==0)break;t.push(zb(n,e))}for(;;){let n=e()-1;if(n<0)break;t.push(_b(n,e))}return t.flat()}function jn(e){let t=[];for(;;){let n=e(t.length);if(!n)break;t.push(n)}return t}function Vd(e,t,n){let r=Array(e).fill().map(()=>[]);for(let s=0;s<t;s++)qb(e,n).forEach((o,a)=>r[a].push(o));return r}function zb(e,t){let n=1+t(),r=t(),s=jn(t);return Vd(s.length,1+e,t).flatMap((a,i)=>{let[c,...u]=a;return Array(s[i]).fill().map((l,d)=>{let f=d*r;return[c+d*n,u.map(h=>h+f)]})})}function _b(e,t){let n=1+t();return Vd(n,1+e,t).map(s=>[s[0],s.slice(1)])}function Gb(e){let t=[],n=$n(e);return s(r([]),[]),t;function r(o){let a=e(),i=jn(()=>{let c=$n(e).map(u=>n[u]);if(c.length)return r(c)});return{S:a,B:i,Q:o}}function s({S:o,B:a},i,c){if(!(o&4&&c===i[i.length-1])){o&2&&(c=i[i.length-1]),o&1&&t.push(i);for(let u of a)for(let l of u.Q)s(u,[...i,l],c)}}}function Hb(e){return e.toString(16).toUpperCase().padStart(2,"0")}function Jd(e){return`{${Hb(e)}}`}function Qb(e){let t=[];for(let n=0,r=e.length;n<r;){let s=e.codePointAt(n);n+=s<65536?1:2,t.push(s)}return t}function fn(e){let n=e.length;if(n<4096)return String.fromCodePoint(...e);let r=[];for(let s=0;s<n;)r.push(String.fromCodePoint(...e.slice(s,s+=4096)));return r.join("")}function Kb(e,t){let n=e.length,r=n-t.length;for(let s=0;r==0&&s<n;s++)r=e[s]-t[s];return r}var Wb="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";const qn=44032,es=4352,ts=4449,ns=4519,Zd=19,Yd=21,hn=28,rs=Yd*hn,Vb=Zd*rs,Jb=qn+Vb,Zb=es+Zd,Yb=ts+Yd,Xb=ns+hn;function Sn(e){return e>>24&255}function Xd(e){return e&16777215}let Ho,vc,Qo,Tr;function e1(){let e=Qd(Wb);Ho=new Map(Kd(e).flatMap((t,n)=>t.map(r=>[r,n+1<<24]))),vc=new Set($n(e)),Qo=new Map,Tr=new Map;for(let[t,n]of Wd(e)){if(!vc.has(t)&&n.length==2){let[r,s]=n,o=Tr.get(r);o||(o=new Map,Tr.set(r,o)),o.set(s,t)}Qo.set(t,n.reverse())}}function ef(e){return e>=qn&&e<Jb}function t1(e,t){if(e>=es&&e<Zb&&t>=ts&&t<Yb)return qn+(e-es)*rs+(t-ts)*hn;if(ef(e)&&t>ns&&t<Xb&&(e-qn)%hn==0)return e+(t-ns);{let n=Tr.get(e);return n&&(n=n.get(t),n)?n:-1}}function tf(e){Ho||e1();let t=[],n=[],r=!1;function s(o){let a=Ho.get(o);a&&(r=!0,o|=a),t.push(o)}for(let o of e)for(;;){if(o<128)t.push(o);else if(ef(o)){let a=o-qn,i=a/rs|0,c=a%rs/hn|0,u=a%hn;s(es+i),s(ts+c),u>0&&s(ns+u)}else{let a=Qo.get(o);a?n.push(...a):s(o)}if(!n.length)break;o=n.pop()}if(r&&t.length>1){let o=Sn(t[0]);for(let a=1;a<t.length;a++){let i=Sn(t[a]);if(i==0||o<=i){o=i;continue}let c=a-1;for(;;){let u=t[c+1];if(t[c+1]=t[c],t[c]=u,!c||(o=Sn(t[--c]),o<=i))break}o=Sn(t[a])}}return t}function n1(e){let t=[],n=[],r=-1,s=0;for(let o of e){let a=Sn(o),i=Xd(o);if(r==-1)a==0?r=i:t.push(i);else if(s>0&&s>=a)a==0?(t.push(r,...n),n.length=0,r=i):n.push(i),s=a;else{let c=t1(r,i);c>=0?r=c:s==0&&a==0?(t.push(r),r=i):(n.push(i),s=a)}}return r>=0&&t.push(r,...n),t}function nf(e){return tf(e).map(Xd)}function r1(e){return n1(tf(e))}const Cc=45,rf=".",sf=65039,of=1,Qt=e=>Array.from(e);function zn(e,t){return e.P.has(t)||e.Q.has(t)}class s1 extends Array{get is_emoji(){return!0}}let Ko,af,At,Wo,cf,Wt,go,Gt,uf,Ic,Vo;function pa(){if(Ko)return;let e=Qd(Ob);const t=()=>$n(e),n=()=>new Set(t());Ko=new Map(Wd(e)),af=n(),At=t(),Wo=new Set(t().map(l=>At[l])),At=new Set(At),cf=n(),n();let r=Kd(e),s=e();const o=()=>new Set(t().flatMap(l=>r[l]).concat(t()));Wt=jn(l=>{let d=jn(e).map(f=>f+96);if(d.length){let f=l>=s;d[0]-=32,d=fn(d),f&&(d=`Restricted[${d}]`);let h=o(),p=o(),m=!e();return{N:d,P:h,Q:p,M:m,R:f}}}),go=n(),Gt=new Map;let a=t().concat(Qt(go)).sort((l,d)=>l-d);a.forEach((l,d)=>{let f=e(),h=a[d]=f?a[d-f]:{V:[],M:new Map};h.V.push(l),go.has(l)||Gt.set(l,h)});for(let{V:l,M:d}of new Set(Gt.values())){let f=[];for(let p of l){let m=Wt.filter(y=>zn(y,p)),g=f.find(({G:y})=>m.some(w=>y.has(w)));g||(g={G:new Set,V:[]},f.push(g)),g.V.push(p),m.forEach(y=>g.G.add(y))}let h=f.flatMap(p=>Qt(p.G));for(let{G:p,V:m}of f){let g=new Set(h.filter(y=>!p.has(y)));for(let y of m)d.set(y,g)}}let i=new Set,c=new Set;const u=l=>i.has(l)?c.add(l):i.add(l);for(let l of Wt){for(let d of l.P)u(d);for(let d of l.Q)u(d)}for(let l of i)!Gt.has(l)&&!c.has(l)&&Gt.set(l,of);uf=new Set(Qt(i).concat(Qt(nf(i)))),Ic=Gb(e).map(l=>s1.from(l)).sort(Kb),Vo=new Map;for(let l of Ic){let d=[Vo];for(let f of l){let h=d.map(p=>{let m=p.get(f);return m||(m=new Map,p.set(f,m)),m});f===sf?d.push(...h):d=h}for(let f of d)f.V=l}}function ma(e){return(lf(e)?"":`${ga(qs([e]))} `)+Jd(e)}function ga(e){return`"${e}"`}function o1(e){if(e.length>=4&&e[2]==Cc&&e[3]==Cc)throw new Error(`invalid label extension: "${fn(e.slice(0,4))}"`)}function i1(e){for(let n=e.lastIndexOf(95);n>0;)if(e[--n]!==95)throw new Error("underscore allowed only at start")}function a1(e){let t=e[0],n=bc.get(t);if(n)throw kn(`leading ${n}`);let r=e.length,s=-1;for(let o=1;o<r;o++){t=e[o];let a=bc.get(t);if(a){if(s==o)throw kn(`${n} + ${a}`);s=o+1,n=a}}if(s==r)throw kn(`trailing ${n}`)}function qs(e,t=Jd){let n=[];c1(e[0])&&n.push("◌");let r=0,s=e.length;for(let o=0;o<s;o++){let a=e[o];lf(a)&&(n.push(fn(e.slice(r,o))),n.push(t(a)),r=o+1)}return n.push(fn(e.slice(r,s))),n.join("")}function c1(e){return pa(),At.has(e)}function lf(e){return pa(),cf.has(e)}function u1(e){return h1(l1(e,r1,g1))}function l1(e,t,n){if(!e)return[];pa();let r=0;return e.split(rf).map(s=>{let o=Qb(s),a={input:o,offset:r};r+=o.length+1;try{let i=a.tokens=m1(o,t,n),c=i.length,u;if(!c)throw new Error("empty label");let l=a.output=i.flat();if(i1(l),!(a.emoji=c>1||i[0].is_emoji)&&l.every(f=>f<128))o1(l),u="ASCII";else{let f=i.flatMap(h=>h.is_emoji?[]:h);if(!f.length)u="Emoji";else{if(At.has(l[0]))throw kn("leading combining mark");for(let m=1;m<c;m++){let g=i[m];if(!g.is_emoji&&At.has(g[0]))throw kn(`emoji + combining mark: "${fn(i[m-1])} + ${qs([g[0]])}"`)}a1(l);let h=Qt(new Set(f)),[p]=f1(h);p1(p,f),d1(p,h),u=p.N}}a.type=u}catch(i){a.error=i}return a})}function d1(e,t){let n,r=[];for(let s of t){let o=Gt.get(s);if(o===of)return;if(o){let a=o.M.get(s);if(n=n?n.filter(i=>a.has(i)):Qt(a),!n.length)return}else r.push(s)}if(n){for(let s of n)if(r.every(o=>zn(s,o)))throw new Error(`whole-script confusable: ${e.N}/${s.N}`)}}function f1(e){let t=Wt;for(let n of e){let r=t.filter(s=>zn(s,n));if(!r.length)throw Wt.some(s=>zn(s,n))?ff(t[0],n):df(n);if(t=r,r.length==1)break}return t}function h1(e){return e.map(({input:t,error:n,output:r})=>{if(n){let s=n.message;throw new Error(e.length==1?s:`Invalid label ${ga(qs(t))}: ${s}`)}return fn(r)}).join(rf)}function df(e){return new Error(`disallowed character: ${ma(e)}`)}function ff(e,t){let n=ma(t),r=Wt.find(s=>s.P.has(t));return r&&(n=`${r.N} ${n}`),new Error(`illegal mixture: ${e.N} + ${n}`)}function kn(e){return new Error(`illegal placement: ${e}`)}function p1(e,t){for(let n of t)if(!zn(e,n))throw ff(e,n);if(e.M){let n=nf(t);for(let r=1,s=n.length;r<s;r++)if(Wo.has(n[r])){let o=r+1;for(let a;o<s&&Wo.has(a=n[o]);o++)for(let i=r;i<o;i++)if(n[i]==a)throw new Error(`duplicate non-spacing marks: ${ma(a)}`);if(o-r>Ac)throw new Error(`excessive non-spacing marks: ${ga(qs(n.slice(r-1,o)))} (${o-r}/${Ac})`);r=o}}}function m1(e,t,n){let r=[],s=[];for(e=e.slice().reverse();e.length;){let o=y1(e);if(o)s.length&&(r.push(t(s)),s=[]),r.push(n(o));else{let a=e.pop();if(uf.has(a))s.push(a);else{let i=Ko.get(a);if(i)s.push(...i);else if(!af.has(a))throw df(a)}}}return s.length&&r.push(t(s)),r}function g1(e){return e.filter(t=>t!=sf)}function y1(e,t){let n=Vo,r,s=e.length;for(;s&&(n=n.get(e[--s]),!!n);){let{V:o}=n;o&&(r=o,e.length=s)}return r}function xc(e){return u1(e)}ya.type="walletConnect";function ya(e,t,n){const r=e.isNewChainsStale??!0;let s,o,a,i,c,u,l,d;return f=>({id:"walletConnect",name:"WalletConnect",type:ya.type,async setup(){const h=await this.getProvider().catch(()=>null);h&&(c||(c=this.onConnect.bind(this),h.on("connect",c)),l||(l=this.onSessionDelete.bind(this),h.on("session_delete",l)))},async connect({...h}={}){try{const p=await this.getProvider();if(!p)throw new Xe;u||(u=this.onDisplayUri,p.on("display_uri",u));const m=await this.isChainsStale();if(p.session&&m&&await p.disconnect(),!p.session||m){const w=T.WcHelpersUtil.createNamespaces(n);await p.connect({optionalNamespaces:w,..."pairingTopic"in h?{pairingTopic:h.pairingTopic}:{}}),this.setRequestedChainsIds(n.map(C=>Number(C.id)))}const g=(await p.enable()).map(w=>$(w)),y=await this.getChainId();return u&&(p.removeListener("display_uri",u),u=void 0),c&&(p.removeListener("connect",c),c=void 0),a||(a=this.onAccountsChanged.bind(this),p.on("accountsChanged",a)),i||(i=this.onChainChanged.bind(this),p.on("chainChanged",i)),d||(d=this.onDisconnect.bind(this),p.on("disconnect",d)),l||(l=this.onSessionDelete.bind(this),p.on("session_delete",l)),{accounts:g,chainId:y}}catch(p){throw/(user rejected|connection request reset)/i.test(p==null?void 0:p.message)?new D(p):p}},async disconnect(){const h=await this.getProvider();try{await(h==null?void 0:h.disconnect())}catch(p){if(!/No matching key/i.test(p.message))throw p}finally{i&&(h==null||h.removeListener("chainChanged",i),i=void 0),d&&(h==null||h.removeListener("disconnect",d),d=void 0),c||(c=this.onConnect.bind(this),h==null||h.on("connect",c)),a&&(h==null||h.removeListener("accountsChanged",a),a=void 0),l&&(h==null||h.removeListener("session_delete",l),l=void 0),this.setRequestedChainsIds([])}},async getAccounts(){var g,y,w;const h=await this.getProvider();if(!((g=h==null?void 0:h.session)!=null&&g.namespaces))return[];const p=(w=(y=h==null?void 0:h.session)==null?void 0:y.namespaces.eip155)==null?void 0:w.accounts;return(p==null?void 0:p.map(C=>C.split(":")[2]))??[]},async getProvider({chainId:h}={}){var g,y,w;async function p(){var b;if(!n.map(A=>Number(A.id)).length)return;const I=(b=t.universalAdapter)==null?void 0:b.getWalletConnectProvider();if(!I)throw new Error("Provider not found");return I}s||(o||(o=p()),s=await o,s==null||s.events.setMaxListeners(Number.POSITIVE_INFINITY));const m=(g=t.getCaipNetwork())==null?void 0:g.id;if(h&&m!==h){const C=T.StorageUtil.getStoredActiveCaipNetwork();C&&C.chainNamespace===T.ConstantsUtil$1.CHAIN.EVM?await((y=this.switchChain)==null?void 0:y.call(this,{chainId:Number(C.id)})):await((w=this.switchChain)==null?void 0:w.call(this,{chainId:h}))}return s},async getChainId(){var y,w,C,I;const h=(y=t.getCaipNetwork())==null?void 0:y.id;if(h)return h;const m=(I=(C=(w=(await this.getProvider()).session)==null?void 0:w.namespaces.eip155)==null?void 0:C.chains)==null?void 0:I[0],g=n.find(b=>b.id===m);return g==null?void 0:g.id},async isAuthorized(){try{const[h,p]=await Promise.all([this.getAccounts(),this.getProvider()]);return h.length?await this.isChainsStale()&&p.session?(await p.disconnect().catch(()=>{}),!1):!0:!1}catch{return!1}},async switchChain({addEthereumChainParameter:h,chainId:p}){var y,w;const m=await this.getProvider();if(!m)throw new Xe;const g=n.find(C=>C.id===p);if(!g)throw new V(new kt);try{g!=null&&g.caipNetworkId&&m.setDefaultChain(g==null?void 0:g.caipNetworkId),await m.request({method:"wallet_switchEthereumChain",params:[{chainId:N(p)}]}),f.emitter.emit("change",{chainId:Number(p)});const C=await this.getRequestedChainsIds();return this.setRequestedChainsIds([...C,p]),{...g,id:g.id}}catch(C){const I=C;if(/(?:user rejected)/iu.test(I.message))throw new D(I);try{let b;h!=null&&h.blockExplorerUrls?b=h.blockExplorerUrls:b=(y=g.blockExplorers)!=null&&y.default.url?[(w=g.blockExplorers)==null?void 0:w.default.url]:[];const A={blockExplorerUrls:b,chainId:N(p),chainName:g.name,iconUrls:h==null?void 0:h.iconUrls,nativeCurrency:g.nativeCurrency,rpcUrls:g.rpcUrls.default.http};await m.request({method:"wallet_addEthereumChain",params:[A]});const v=await this.getRequestedChainsIds();return this.setRequestedChainsIds([...v,p]),{...g,id:g.id}}catch(b){throw new D(b)}}},onAccountsChanged(h){h.length===0?this.onDisconnect():f.emitter.emit("change",{accounts:h.map(p=>$(p))})},onChainChanged(h){const p=Number(h);f.emitter.emit("change",{chainId:p})},async onConnect(h){const p=Number(h.chainId),m=await this.getAccounts();f.emitter.emit("connect",{accounts:m,chainId:p})},async onDisconnect(h){this.setRequestedChainsIds([]),f.emitter.emit("disconnect");const p=await this.getProvider();a&&(p.removeListener("accountsChanged",a),a=void 0),i&&(p.removeListener("chainChanged",i),i=void 0),d&&(p.removeListener("disconnect",d),d=void 0),l&&(p.removeListener("session_delete",l),l=void 0),c||(c=this.onConnect.bind(this),p.on("connect",c))},onDisplayUri(h){f.emitter.emit("message",{type:"display_uri",data:h})},onSessionDelete(){this.onDisconnect()},getNamespaceChainsIds(){var m,g,y;if(!((m=s==null?void 0:s.session)!=null&&m.namespaces))return[];const h=(y=(g=s==null?void 0:s.session)==null?void 0:g.namespaces.eip155)==null?void 0:y.accounts;return(h==null?void 0:h.map(w=>Number.parseInt(w.split(":")[1]??"")))??[]},async getRequestedChainsIds(){var p;const h=await((p=f.storage)==null?void 0:p.getItem(this.requestedChainsStorageKey))??[];return[...new Set(h)]},async isChainsStale(){if(!r)return!1;const h=f.chains.map(g=>g.id),p=this.getNamespaceChainsIds();if(p.length&&!p.some(g=>h.includes(g)))return!1;const m=await this.getRequestedChainsIds();return!h.every(g=>m.includes(Number(g)))},async setRequestedChainsIds(h){var p;await((p=f.storage)==null?void 0:p.setItem(this.requestedChainsStorageKey,h))},get requestedChainsStorageKey(){return`${this.id}.requestedChains`}})}zs.type="coinbaseWallet";function zs(e={}){return e.version==="3"||e.headlessMode?b1(e):w1(e)}function w1(e){let t,n,r,s,o;return a=>({id:"coinbaseWalletSDK",name:"Coinbase Wallet",supportsSimulation:!0,type:zs.type,async connect({chainId:i}={}){try{const c=await this.getProvider(),u=(await c.request({method:"eth_requestAccounts"})).map(d=>$(d));r||(r=this.onAccountsChanged.bind(this),c.on("accountsChanged",r)),s||(s=this.onChainChanged.bind(this),c.on("chainChanged",s)),o||(o=this.onDisconnect.bind(this),c.on("disconnect",o));let l=await this.getChainId();if(i&&l!==i){const d=await this.switchChain({chainId:i}).catch(f=>{if(f.code===D.code)throw f;return{id:l}});l=(d==null?void 0:d.id)??l}return{accounts:u,chainId:l}}catch(c){throw/(user closed modal|accounts received is empty|user denied account|request rejected)/i.test(c.message)?new D(c):c}},async disconnect(){var c;const i=await this.getProvider();r&&(i.removeListener("accountsChanged",r),r=void 0),s&&(i.removeListener("chainChanged",s),s=void 0),o&&(i.removeListener("disconnect",o),o=void 0),i.disconnect(),(c=i.close)==null||c.call(i)},async getAccounts(){return(await(await this.getProvider()).request({method:"eth_accounts"})).map(c=>$(c))},async getChainId(){const c=await(await this.getProvider()).request({method:"eth_chainId"});return Number(c)},async getProvider(){if(!n){const i=await(async()=>{const{default:c}=await Promise.resolve().then(()=>require("./index-3jinrfKR.cjs")).then(u=>u.index);return typeof c!="function"&&typeof c.default=="function"?c.default:c})();t=new i({...e,appChainIds:a.chains.map(c=>c.id)}),n=t.makeWeb3Provider({...e,options:e.preference??"all"})}return n},async isAuthorized(){try{return!!(await this.getAccounts()).length}catch{return!1}},async switchChain({addEthereumChainParameter:i,chainId:c}){var d,f,h,p;const u=a.chains.find(m=>m.id===c);if(!u)throw new V(new kt);const l=await this.getProvider();try{return await l.request({method:"wallet_switchEthereumChain",params:[{chainId:N(u.id)}]}),u}catch(m){if(m.code===4902)try{let g;i!=null&&i.blockExplorerUrls?g=i.blockExplorerUrls:g=(d=u.blockExplorers)!=null&&d.default.url?[(f=u.blockExplorers)==null?void 0:f.default.url]:[];let y;(h=i==null?void 0:i.rpcUrls)!=null&&h.length?y=i.rpcUrls:y=[((p=u.rpcUrls.default)==null?void 0:p.http[0])??""];const w={blockExplorerUrls:g,chainId:N(c),chainName:(i==null?void 0:i.chainName)??u.name,iconUrls:i==null?void 0:i.iconUrls,nativeCurrency:(i==null?void 0:i.nativeCurrency)??u.nativeCurrency,rpcUrls:y};return await l.request({method:"wallet_addEthereumChain",params:[w]}),u}catch(g){throw new D(g)}throw new V(m)}},onAccountsChanged(i){i.length===0?this.onDisconnect():a.emitter.emit("change",{accounts:i.map(c=>$(c))})},onChainChanged(i){const c=Number(i);a.emitter.emit("change",{chainId:c})},async onDisconnect(i){a.emitter.emit("disconnect");const c=await this.getProvider();r&&(c.removeListener("accountsChanged",r),r=void 0),s&&(c.removeListener("chainChanged",s),s=void 0),o&&(c.removeListener("disconnect",o),o=void 0)}})}function b1(e){let n,r,s,o,a;return i=>({id:"coinbaseWalletSDK",name:"Coinbase Wallet",supportsSimulation:!0,type:zs.type,async connect({chainId:c}={}){try{const u=await this.getProvider(),l=(await u.request({method:"eth_requestAccounts"})).map(f=>$(f));s||(s=this.onAccountsChanged.bind(this),u.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),u.on("chainChanged",o)),a||(a=this.onDisconnect.bind(this),u.on("disconnect",a));let d=await this.getChainId();if(c&&d!==c){const f=await this.switchChain({chainId:c}).catch(h=>{if(h.code===D.code)throw h;return{id:d}});d=(f==null?void 0:f.id)??d}return{accounts:l,chainId:d}}catch(u){throw/(user closed modal|accounts received is empty|user denied account)/i.test(u.message)?new D(u):u}},async disconnect(){const c=await this.getProvider();s&&(c.removeListener("accountsChanged",s),s=void 0),o&&(c.removeListener("chainChanged",o),o=void 0),a&&(c.removeListener("disconnect",a),a=void 0),c.disconnect(),c.close()},async getAccounts(){return(await(await this.getProvider()).request({method:"eth_accounts"})).map(u=>$(u))},async getChainId(){const u=await(await this.getProvider()).request({method:"eth_chainId"});return Number(u)},async getProvider(){var c;if(!r){const u=await(async()=>{const{default:p}=await Promise.resolve().then(()=>require("./index-BmU807V9.cjs")).then(m=>m.index);return typeof p!="function"&&typeof p.default=="function"?p.default:p})();n=new u({...e,reloadOnDisconnect:!1});const l=(c=n.walletExtension)==null?void 0:c.getChainId(),d=i.chains.find(p=>e.chainId?p.id===e.chainId:p.id===l)||i.chains[0],f=e.chainId||(d==null?void 0:d.id),h=e.jsonRpcUrl||(d==null?void 0:d.rpcUrls.default.http[0]);r=n.makeWeb3Provider(h,f)}return r},async isAuthorized(){try{return!!(await this.getAccounts()).length}catch{return!1}},async switchChain({addEthereumChainParameter:c,chainId:u}){var f,h,p,m;const l=i.chains.find(g=>g.id===u);if(!l)throw new V(new kt);const d=await this.getProvider();try{return await d.request({method:"wallet_switchEthereumChain",params:[{chainId:N(l.id)}]}),l}catch(g){if(g.code===4902)try{let y;c!=null&&c.blockExplorerUrls?y=c.blockExplorerUrls:y=(f=l.blockExplorers)!=null&&f.default.url?[(h=l.blockExplorers)==null?void 0:h.default.url]:[];let w;(p=c==null?void 0:c.rpcUrls)!=null&&p.length?w=c.rpcUrls:w=[((m=l.rpcUrls.default)==null?void 0:m.http[0])??""];const C={blockExplorerUrls:y,chainId:N(u),chainName:(c==null?void 0:c.chainName)??l.name,iconUrls:c==null?void 0:c.iconUrls,nativeCurrency:(c==null?void 0:c.nativeCurrency)??l.nativeCurrency,rpcUrls:w};return await d.request({method:"wallet_addEthereumChain",params:[C]}),l}catch(y){throw new D(y)}throw new V(g)}},onAccountsChanged(c){c.length===0?this.onDisconnect():i.emitter.emit("change",{accounts:c.map(u=>$(u))})},onChainChanged(c){const u=Number(c);i.emitter.emit("change",{chainId:u})},async onDisconnect(c){i.emitter.emit("disconnect");const u=await this.getProvider();s&&(u.removeListener("accountsChanged",s),s=void 0),o&&(u.removeListener("chainChanged",o),o=void 0),a&&(u.removeListener("disconnect",a),a=void 0)}})}function hf(e){function t(n){return T.NetworkUtil.parseEvmChainId(n)||1}return n=>({id:T.ConstantsUtil.AUTH_CONNECTOR_ID,name:"AppKit Auth",type:"w3mAuth",chain:T.ConstantsUtil$1.CHAIN.EVM,async connect(r={}){const s=await this.getProvider();let o=r.chainId;if(r.isReconnecting&&(o=s.getLastUsedChainId(),!o))throw new Error("ChainId not found in provider");const{address:a,chainId:i}=await s.connect({chainId:o});await s.getSmartAccountEnabledNetworks();const c=t(i);return{accounts:[a],account:a,chainId:c,chain:{id:c,unsuported:!1}}},async disconnect(){await(await this.getProvider()).disconnect()},async getAccounts(){const r=await this.getProvider(),{address:s}=await r.connect();return n.emitter.emit("change",{accounts:[s]}),[s]},async getProvider(){return this.provider||(this.provider=T.W3mFrameProviderSingleton.getInstance({projectId:e.options.projectId,onTimeout:()=>{T.AlertController.open(T.ErrorUtil.ALERT_ERRORS.INVALID_APP_CONFIGURATION_SOCIALS,"error")}})),Promise.resolve(this.provider)},async getChainId(){const r=await this.getProvider(),{chainId:s}=await r.getChainId();return t(s)},async isAuthorized(){const r=await this.getProvider(),{isConnected:s}=await r.isConnected();return s},async switchChain({chainId:r}){try{const s=n.chains.find(i=>i.id===r);if(!s)throw new V(new Error("chain not found on connector."));const a=await(await this.getProvider()).connect({chainId:r});return n.emitter.emit("change",{chainId:Number(r),accounts:[a.address]}),s}catch(s){throw s instanceof Error?new V(s):s}},onAccountsChanged(r){r.length===0?this.onDisconnect():n.emitter.emit("change",{accounts:r.map($)})},onChainChanged(r){const s=Number(r);n.emitter.emit("change",{chainId:s})},async onDisconnect(r){await(await this.getProvider()).disconnect()}})}const A1=["eth_accounts","eth_requestAccounts","eth_sendRawTransaction","eth_sign","eth_signTransaction","eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sendTransaction","personal_sign","wallet_switchEthereumChain","wallet_addEthereumChain","wallet_getPermissions","wallet_requestPermissions","wallet_registerOnboarding","wallet_watchAsset","wallet_scanQRCode","wallet_getCallsStatus","wallet_sendCalls","wallet_getCapabilities","wallet_grantPermissions"];class v1{constructor(t){var o,a;if(this.appKit=void 0,this.options=void 0,this.chainNamespace=T.ConstantsUtil$1.CHAIN.EVM,this.defaultCaipNetwork=void 0,this.tokens=T.HelpersUtil.getCaipTokens((o=this.options)==null?void 0:o.tokens),this.siweControllerClient=(a=this.options)==null?void 0:a.siweConfig,this.adapterType="wagmi",!t.projectId)throw new Error(T.ErrorUtil.ALERT_ERRORS.PROJECT_ID_NOT_CONFIGURED.shortMessage);this.caipNetworks=T.CaipNetworksUtil.extendCaipNetworks(t.networks,{projectId:t.projectId,customNetworkImageUrls:{}}),this.wagmiChains=this.caipNetworks.filter(i=>i.chainNamespace===T.ConstantsUtil$1.CHAIN.EVM);const n=this.wagmiChains.map(i=>[i.id,Db({chain:i,projectId:t.projectId})]),r=Object.fromEntries(n),s=[...t.connectors??[]];this.wagmiConfig=Mb({...t,chains:this.wagmiChains,transports:r,connectors:[...s,...(t==null?void 0:t.connectors)??[]]})}setCustomConnectors(t,n){var a,i,c,u,l,d,f;const r=[];t.enableWalletConnect!==!1&&r.push(ya(t,n,this.caipNetworks)),t.enableInjected!==!1&&r.push(js({shimDisconnect:!0})),t.enableCoinbase!==!1&&r.push(zs({version:"4",appName:((a=t.metadata)==null?void 0:a.name)??"Unknown",appLogoUrl:((i=t.metadata)==null?void 0:i.icons[0])??"Unknown",preference:t.coinbasePreference??"all"}));const s=((c=t.features)==null?void 0:c.email)===void 0?T.ConstantsUtil$2.DEFAULT_FEATURES.email:(u=t.features)==null?void 0:u.email,o=(l=t.features)!=null&&l.socials?((f=(d=t.features)==null?void 0:d.socials)==null?void 0:f.length)>0:T.ConstantsUtil$2.DEFAULT_FEATURES.socials;(s||o)&&r.push(hf({chains:this.wagmiChains,options:{projectId:t.projectId}})),r.forEach(h=>{const p=this.wagmiConfig._internal.connectors.setup(h);this.wagmiConfig._internal.connectors.setState(m=>[...m,p])})}construct(t,n){var r,s,o,a;if(this.appKit=t,this.options=n,this.defaultCaipNetwork=n.defaultNetwork||((r=n.networks)==null?void 0:r[0]),this.tokens=T.HelpersUtil.getCaipTokens(n.tokens),this.setCustomConnectors(n,t),!this.wagmiConfig)throw new Error("appkit:wagmiConfig - is undefined");this.networkControllerClient={switchCaipNetwork:async i=>{const c=i==null?void 0:i.id;c&&this.wagmiConfig&&await ab(this.wagmiConfig,{chainId:c})},getApprovedCaipNetworksData:async()=>{if(!this.wagmiConfig)throw new Error("networkControllerClient:getApprovedCaipNetworksData - wagmiConfig is undefined");return new Promise(i=>{var l,d;const u=new Map(this.wagmiConfig.state.connections).get(this.wagmiConfig.state.current||"");if(((l=u==null?void 0:u.connector)==null?void 0:l.id)===T.ConstantsUtil.AUTH_CONNECTOR_ID)i(Rb());else if(((d=u==null?void 0:u.connector)==null?void 0:d.id)===T.ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID){const f=this.wagmiConfig.connectors.find(h=>h.id===T.ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID);i(Tb(f))}i({approvedCaipNetworkIds:[],supportsAllNetworks:!0})})}},this.connectionControllerClient={connectWalletConnect:async()=>{var m,g,y,w,C,I,b,A,v,x,E;if(!this.wagmiConfig)throw new Error("connectionControllerClient:getWalletConnectUri - wagmiConfig is undefined");const i=this.wagmiConfig.connectors.find(k=>k.id===T.ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID);if(!i)throw new Error("connectionControllerClient:getWalletConnectUri - connector is undefined");const c=await i.getProvider(),u=await((y=(g=(m=this.options)==null?void 0:m.siweConfig)==null?void 0:g.getMessageParams)==null?void 0:y.call(g)),l=(I=(C=(w=this.options)==null?void 0:w.siweConfig)==null?void 0:C.options)==null?void 0:I.enabled,d=typeof(c==null?void 0:c.authenticate)=="function",f=u&&Object.keys(u||{}).length>0,h=(b=this.options)==null?void 0:b.siweConfig;if(l&&d&&f&&h){await i.setRequestedChainsIds(u.chains);const{SIWEController:k,getDidChainId:M,getDidAddress:z}=await Promise.resolve().then(()=>require("./index-BBwc05vi.cjs")),R=(A=this.caipNetworks)==null?void 0:A.filter(S=>S.chainNamespace==="eip155").map(S=>S.caipNetworkId);u.chains=(v=this.caipNetworks)==null?void 0:v.filter(S=>S.chainNamespace==="eip155").map(S=>S.id);const G=await c.authenticate({nonce:await h.getNonce(),methods:[...A1],...u,chains:R}),B=(x=G==null?void 0:G.auths)==null?void 0:x[0];if(B){const{p:S,s:O}=B,q=M(S.iss),_=z(S.iss);_&&q&&k.setSession({address:_,chainId:parseInt(q,10)});try{const Q=c.client.formatAuthMessage({request:S,iss:S.iss});await k.verifyMessage({message:Q,signature:O.s,cacao:B})}catch(Q){throw console.error("Error verifying message",Q),await c.disconnect().catch(console.error),await k.signOut().catch(console.error),Q}}}const p=(E=this.appKit)==null?void 0:E.getCaipNetworkId();await ac(this.wagmiConfig,{connector:i,chainId:p})},connectExternal:async({id:i,provider:c,info:u})=>{var f,h,p;if(!this.wagmiConfig)throw new Error("networkControllerClient:getApprovedCaipNetworksData - wagmiConfig is undefined");const l=this.wagmiConfig.connectors.find(m=>m.id===i);if(!l)throw new Error("connectionControllerClient:connectExternal - connector is undefined");(f=this.appKit)==null||f.setClientId(null),c&&u&&l.id===T.ConstantsUtil.EIP6963_CONNECTOR_ID&&((h=l.setEip6963Wallet)==null||h.call(l,{provider:c,info:u}));const d=(p=this.appKit)==null?void 0:p.getCaipNetworkId();await ac(this.wagmiConfig,{connector:l,chainId:d})},checkInstalled:i=>{var u;const c=(u=this.appKit)==null?void 0:u.getConnectors().find(l=>l.type==="INJECTED");return i?c&&window!=null&&window.ethereum?i.some(l=>{var d;return!!((d=window.ethereum)!=null&&d[String(l)])}):!1:!!window.ethereum},disconnect:async()=>{var i,c,u,l,d;if(await Qw(this.wagmiConfig),(u=(c=(i=this.options)==null?void 0:i.siweConfig)==null?void 0:c.options)!=null&&u.signOutOnDisconnect){const{SIWEController:f}=await Promise.resolve().then(()=>require("./index-BBwc05vi.cjs"));await f.signOut()}T.SafeLocalStorage.removeItem(T.SafeLocalStorageKeys.WALLET_ID),T.SafeLocalStorage.removeItem(T.SafeLocalStorageKeys.CONNECTED_CONNECTOR),T.SafeLocalStorage.removeItem(T.SafeLocalStorageKeys.WALLET_NAME),(l=this.appKit)==null||l.setClientId(null),this.syncAccount({address:void 0,chainId:void 0,connector:void 0,addresses:void 0,status:"disconnected"}),(d=this.appKit)==null||d.resetAccount("solana")},signMessage:async i=>{var l;const c=((l=this.appKit)==null?void 0:l.getCaipAddress())||"",u=wc(c);return rb(this.wagmiConfig,{message:i,account:u})},estimateGas:async i=>{if(i.chainNamespace&&i.chainNamespace!=="eip155")throw new Error(`Invalid chain namespace - Expected eip155, got ${i.chainNamespace}`);try{return await Kw(this.wagmiConfig,{account:i.address,to:i.to,data:i.data,type:"legacy"})}catch{return BigInt(0)}},getCapabilities:async i=>{var f,h;if(!this.wagmiConfig)throw new Error("connectionControllerClient:getCapabilities - wagmiConfig is undefined");const u=fo(this.wagmiConfig)[0];if(!(u!=null&&u.connector))throw new Error("connectionControllerClient:getCapabilities - connector is undefined");const l=await u.connector.getProvider();if(!l)throw new Error("connectionControllerClient:getCapabilities - provider is undefined");const d=(h=(f=l.session)==null?void 0:f.sessionProperties)==null?void 0:h.capabilities;if(d){const m=Ub(d)[i];if(m)return m}return await l.request({method:"wallet_getCapabilities",params:[i]})},grantPermissions:async i=>{if(!this.wagmiConfig)throw new Error("connectionControllerClient:grantPermissions - wagmiConfig is undefined");const u=fo(this.wagmiConfig)[0];if(!(u!=null&&u.connector))throw new Error("connectionControllerClient:grantPermissions - connector is undefined");const l=await u.connector.getProvider();if(!l)throw new Error("connectionControllerClient:grantPermissions - provider is undefined");return l.request({method:"wallet_grantPermissions",params:i})},sendTransaction:async i=>{if(i.chainNamespace&&i.chainNamespace!=="eip155")throw new Error(`Invalid chain namespace - Expected eip155, got ${i.chainNamespace}`);const{chainId:c}=hr(this.wagmiConfig),u={account:i.address,to:i.to,value:i.value,gas:i.gas,gasPrice:i.gasPrice,data:i.data,chainId:c,type:"legacy"};await tb(this.wagmiConfig,u);const l=await nb(this.wagmiConfig,u);return await lb(this.wagmiConfig,{hash:l,timeout:25e3}),l},writeContract:async i=>{var f,h,p;const c=((f=this.appKit)==null?void 0:f.getCaipAddress())||"",u=wc(c),l=(h=this.appKit)==null?void 0:h.getCaipNetworkId();if(!l)throw new Error("networkControllerClient:writeContract - chainId is undefined");return await db(this.wagmiConfig,{chain:(p=this.wagmiChains)==null?void 0:p[l],chainId:l,address:i.tokenAddress,account:u,abi:i.abi,functionName:i.method,args:[i.receiverAddress,i.tokenAmount]})},getEnsAddress:async i=>{var c,u;try{if(!this.wagmiConfig)throw new Error("networkControllerClient:getApprovedCaipNetworksData - wagmiConfig is undefined");const l=(c=this.appKit)==null?void 0:c.getCaipNetworkId();let d=!1,f=!1;return T.isReownName(i)&&(f=await((u=this.appKit)==null?void 0:u.resolveReownName(i))||!1),l===1&&(d=await Xw(this.wagmiConfig,{name:xc(i),chainId:l})),d||f||!1}catch{return!1}},getEnsAvatar:async i=>{var l;const c=(l=this.appKit)==null?void 0:l.getCaipNetworkId();return c!==yc.id?!1:await fc(this.wagmiConfig,{name:xc(i),chainId:c})||!1},parseUnits:Os,formatUnits:ye},T.ChainController.state.chains.set(this.chainNamespace,{chainNamespace:this.chainNamespace,connectionControllerClient:this.connectionControllerClient,networkControllerClient:this.networkControllerClient,adapterType:this.adapterType,caipNetworks:this.caipNetworks}),this.syncConnectors(this.wagmiConfig.connectors),this.syncAuthConnector((s=this.wagmiConfig)==null?void 0:s.connectors.find(i=>i.id===T.ConstantsUtil.AUTH_CONNECTOR_ID)),this.syncRequestedNetworks(this.caipNetworks),ub(this.wagmiConfig,{onChange:i=>{this.syncConnectors(i),this.syncAuthConnector(i.find(c=>c.id===T.ConstantsUtil.AUTH_CONNECTOR_ID))}}),cb(this.wagmiConfig,{onChange:i=>{this.syncAccount(i)}}),(o=this.appKit)==null||o.setEIP6963Enabled(n.enableEIP6963!==!1),(a=this.appKit)==null||a.subscribeShouldUpdateToAddress(i=>{var c;if(i){const l=(c=fo(this.wagmiConfig)[0])==null?void 0:c.connector;l&&ob(this.wagmiConfig,{connector:l}).then(d=>this.syncAccount({address:i,isConnected:!0,addresses:d.accounts,connector:l,chainId:d.chainId,status:"connected"}))}})}subscribeState(t){var n;return(n=this.appKit)==null?void 0:n.subscribeState(r=>t({...r,selectedNetworkId:r.selectedNetworkId?Number(T.NetworkUtil.caipNetworkIdToNumber(r.selectedNetworkId)):void 0}))}syncRequestedNetworks(t){Array.from(new Set(t.map(r=>r.chainNamespace))).filter(r=>!!r).forEach(r=>{var s;(s=this.appKit)==null||s.setRequestedCaipNetworks(t.filter(o=>o.chainNamespace===r),r)})}async syncAccount({address:t,chainId:n,connector:r,addresses:s,status:o}){var i,c,u,l,d,f,h,p,m,g,y,w,C,I,b;const a=(r==null?void 0:r.id)===T.ConstantsUtil.AUTH_CONNECTOR_ID;if(o==="disconnected"){(i=this.appKit)==null||i.resetAccount(this.chainNamespace),(c=this.appKit)==null||c.resetWcConnection(),(u=this.appKit)==null||u.resetNetwork(this.chainNamespace),(l=this.appKit)==null||l.setAllAccounts([],this.chainNamespace),T.SafeLocalStorage.removeItem(T.SafeLocalStorageKeys.WALLET_ID),a&&await r.disconnect();return}if(this.wagmiConfig&&r){if(r&&r.name==="WalletConnect"&&r.getProvider&&t){const A=(d=this.appKit)==null?void 0:d.getCaipNetwork(),v=n||(A==null?void 0:A.id),x=await r.getProvider(),E=((f=x==null?void 0:x.session)==null?void 0:f.namespaces)||{},k=E?Object.keys(E):[],M=(h=this.appKit)==null?void 0:h.getPreferredAccountType();k.forEach(z=>{var B,S,O;const R=z,G=(B=E==null?void 0:E[z])==null?void 0:B.accounts[0];T.ProviderUtil.setProvider(R,x),T.ProviderUtil.setProviderId(R,"walletConnect"),(S=this.appKit)==null||S.setPreferredAccountType(M,R),(O=this.appKit)==null||O.setCaipAddress(G,R)}),((m=(p=this.appKit)==null?void 0:p.getCaipNetwork())==null?void 0:m.chainNamespace)!==T.ConstantsUtil$1.CHAIN.SOLANA&&v&&(this.syncNetwork(t,v,!0),await Promise.all([this.syncProfile(t,v),this.syncBalance(t,v),this.syncConnectedWalletInfo(r),(g=this.appKit)==null?void 0:g.setApprovedCaipNetworksData(this.chainNamespace)]))}else if(o==="connected"&&t&&n){const A=`eip155:${n}:${t}`;this.syncNetwork(t,n,!0),(y=this.appKit)==null||y.setCaipAddress(A,this.chainNamespace),await Promise.all([this.syncProfile(t,n),this.syncBalance(t,n),this.syncConnectedWalletInfo(r),(w=this.appKit)==null?void 0:w.setApprovedCaipNetworksData(this.chainNamespace)]),r&&this.syncConnectedWalletInfo(r),!a&&(s!=null&&s.length)&&((C=this.appKit)==null||C.setAllAccounts(s.map(v=>({address:v,type:"eoa"})),this.chainNamespace))}else if(o==="reconnecting"){(I=this.appKit)==null||I.setLoading(!0);const v=Yw(this.wagmiConfig).find(x=>x.id===r.id);v&&(await hc(this.wagmiConfig,{connectors:[v]}),(b=this.appKit)==null||b.setLoading(!1))}}}async syncNetwork(t,n,r){var o,a,i,c,u;const s=this.caipNetworks.find(l=>l.id===n);if(s&&n&&((o=this.appKit)==null||o.setCaipNetwork(s),r&&t&&n)){const l=`eip155:${n}:${t}`;if((a=this.appKit)==null||a.setCaipAddress(l,this.chainNamespace),(i=s==null?void 0:s.blockExplorers)!=null&&i.default.url){const d=`${s.blockExplorers.default.url}/address/${t}`;(c=this.appKit)==null||c.setAddressExplorerUrl(d,this.chainNamespace)}else(u=this.appKit)==null||u.setAddressExplorerUrl(void 0,this.chainNamespace);await this.syncBalance(t,n)}}async syncReownName(t){var n,r,s;if(!this.appKit)throw new Error("syncReownName - appKit is undefined");try{const o=await this.appKit.getReownName(t);if(o[0]){const a=o[0];(n=this.appKit)==null||n.setProfileName(a.name,this.chainNamespace)}else(r=this.appKit)==null||r.setProfileName(null,this.chainNamespace)}catch{(s=this.appKit)==null||s.setProfileName(null,this.chainNamespace)}}async syncProfile(t,n){var r,s,o,a,i,c;if(!this.appKit)throw new Error("syncProfile - appKit is undefined");try{const{name:u,avatar:l}=await this.appKit.fetchIdentity({address:t});(r=this.appKit)==null||r.setProfileName(u,this.chainNamespace),(s=this.appKit)==null||s.setProfileImage(l,this.chainNamespace),u||await this.syncReownName(t)}catch{if(n===yc.id){const u=await eb(this.wagmiConfig,{address:t,chainId:n});if(u){(o=this.appKit)==null||o.setProfileName(u,this.chainNamespace);const l=await fc(this.wagmiConfig,{name:u,chainId:n});l&&((a=this.appKit)==null||a.setProfileImage(l,this.chainNamespace))}else await this.syncReownName(t),(i=this.appKit)==null||i.setProfileImage(null,this.chainNamespace)}else await this.syncReownName(t),(c=this.appKit)==null||c.setProfileImage(null,this.chainNamespace)}}async syncBalance(t,n){var s,o,a,i,c;const r=this.caipNetworks.find(u=>u.id===n);if(r&&this.wagmiConfig){const u=await Zw(this.wagmiConfig,{address:t,chainId:n,token:(a=(o=(s=this.options)==null?void 0:s.tokens)==null?void 0:o[r.caipNetworkId])==null?void 0:a.address});(i=this.appKit)==null||i.setBalance(u.formatted,u.symbol,this.chainNamespace);return}(c=this.appKit)==null||c.setBalance(void 0,void 0,this.chainNamespace)}async syncConnectedWalletInfo(t){var n,r,s,o;if(!t)throw Error("syncConnectedWalletInfo - connector is undefined");if(t.id===T.ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID&&t.getProvider){const a=await t.getProvider();a.session&&((r=this.appKit)==null||r.setConnectedWalletInfo({...a.session.peer.metadata,name:a.session.peer.metadata.name,icon:(n=a.session.peer.metadata.icons)==null?void 0:n[0]},this.chainNamespace))}else{const a=(s=this.appKit)==null?void 0:s.getConnectors().find(i=>i.id===t.id);(o=this.appKit)==null||o.setConnectedWalletInfo({name:t.name,icon:t.icon||this.appKit.getConnectorImage(a)},this.chainNamespace)}}syncConnectors(t){var a;const n=t.map(i=>({...i,chain:this.chainNamespace})),r=new Set,s=n.filter(i=>{const c=r.has(i.id);return r.add(i.id),!c}),o=[];s.forEach(({id:i,name:c,type:u,icon:l})=>{var f,h;T.ConstantsUtil.AUTH_CONNECTOR_ID===i||o.push({id:i,explorerId:T.PresetsUtil.ConnectorExplorerIds[i],imageUrl:((h=(f=this.options)==null?void 0:f.connectorImages)==null?void 0:h[i])??l,name:T.PresetsUtil.ConnectorNamesMap[i]??c,imageId:T.PresetsUtil.ConnectorImageIds[i],type:T.PresetsUtil.ConnectorTypesMap[u]??"EXTERNAL",info:{rdns:i},chain:this.chainNamespace})}),(a=this.appKit)==null||a.setConnectors(o)}async syncAuthConnector(t){var r;const n=t;if(n){const s=await n.getProvider();(r=this.appKit)==null||r.addConnector({id:T.ConstantsUtil.AUTH_CONNECTOR_ID,type:"AUTH",name:"w3mAuth",provider:s,chain:this.chainNamespace}),this.initAuthConnectorListeners(t)}}async initAuthConnectorListeners(t){t&&(await this.listenAuthConnector(t),await this.listenModal(t))}async listenAuthConnector(t,n=!1){var r,s;if(n||typeof window<"u"&&t){(r=this.appKit)==null||r.setLoading(!0);const o=await t.getProvider(),a=o.getLoginEmailUsed();(s=this.appKit)==null||s.setLoading(a),o.onRpcRequest(i=>{var c,u;T.W3mFrameHelpers.checkIfRequestExists(i)?T.W3mFrameHelpers.checkIfRequestIsSafe(i)||(c=this.appKit)==null||c.handleUnsafeRPCRequest():((u=this.appKit)==null||u.open(),console.error(T.W3mFrameRpcConstants.RPC_METHOD_NOT_ALLOWED_MESSAGE,{method:i.method}),setTimeout(()=>{var l;(l=this.appKit)==null||l.showErrorMessage(T.W3mFrameRpcConstants.RPC_METHOD_NOT_ALLOWED_UI_MESSAGE)},300),o.rejectRpcRequests())}),o.onRpcError(()=>{var c,u,l,d;((c=this.appKit)==null?void 0:c.isOpen())&&((u=this.appKit)!=null&&u.isTransactionStackEmpty()?(l=this.appKit)==null||l.close():(d=this.appKit)==null||d.popTransactionStack(!0))}),o.onRpcSuccess((i,c)=>{var l,d,f;T.W3mFrameHelpers.checkIfRequestIsSafe(c)||((l=this.appKit)!=null&&l.isTransactionStackEmpty()?(d=this.appKit)==null||d.close():(f=this.appKit)==null||f.popTransactionStack())}),o.onNotConnected(()=>{var l,d,f;const i=(l=this.appKit)==null?void 0:l.getIsConnectedState(),u=T.SafeLocalStorage.getItem(T.SafeLocalStorageKeys.CONNECTED_CONNECTOR)==="AUTH";!i&&u&&((d=this.appKit)==null||d.setCaipAddress(void 0,this.chainNamespace),(f=this.appKit)==null||f.setLoading(!1))}),o.onIsConnected(()=>{o.connect()}),o.onConnect(i=>{var u,l,d,f,h;const c=`eip155:${i.chainId}:${i.address}`;(u=this.appKit)==null||u.setCaipAddress(c,this.chainNamespace),(l=this.appKit)==null||l.setSmartAccountDeployed(!!i.smartAccountDeployed,this.chainNamespace),(d=this.appKit)==null||d.setPreferredAccountType(i.preferredAccountType,this.chainNamespace),(f=this.appKit)==null||f.setAllAccounts(i.accounts||[{address:i.address,type:i.preferredAccountType||"eoa"}],this.chainNamespace),T.StorageUtil.setConnectedConnector("AUTH"),(h=this.appKit)==null||h.setLoading(!1)}),o.onGetSmartAccountEnabledNetworks(i=>{var c;(c=this.appKit)==null||c.setSmartAccountEnabledNetworks(i,this.chainNamespace)}),o.onSetPreferredAccount(({address:i,type:c})=>{var u;i&&((u=this.appKit)==null||u.setPreferredAccountType(c,this.chainNamespace),this.wagmiConfig&&hc(this.wagmiConfig,{connectors:[t]}))})}}async listenModal(t){const n=await t.getProvider();this.subscribeState(r=>{r.open||n.rejectRpcRequests()})}}const C1=Object.freeze(Object.defineProperty({__proto__:null,WagmiAdapter:v1,authConnector:hf},Symbol.toStringTag,{value:"Module"}));function j(e,t,n){const r=e[t.name];if(typeof r=="function")return r;const s=e[n];return typeof s=="function"?s:o=>t(e,o)}async function I1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,ft,"call")(r)}const Mn="2.13.4",x1=()=>`@wagmi/core@${Mn}`;var pf=function(e,t,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(e):r?r.value:t.get(e)},ss,mf;class Ie extends Error{get docsBaseUrl(){return"https://wagmi.sh/core"}get version(){return x1()}constructor(t,n={}){var o;super(),ss.add(this),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"WagmiCoreError"});const r=n.cause instanceof Ie?n.cause.details:(o=n.cause)!=null&&o.message?n.cause.message:n.details,s=n.cause instanceof Ie&&n.cause.docsPath||n.docsPath;this.message=[t||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...s?[`Docs: ${this.docsBaseUrl}${s}.html${n.docsSlug?`#${n.docsSlug}`:""}`]:[],...r?[`Details: ${r}`]:[],`Version: ${this.version}`].join(`
|
|
46
|
+
`),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=s,this.metaMessages=n.metaMessages,this.shortMessage=t}walk(t){return pf(this,ss,"m",mf).call(this,this,t)}}ss=new WeakSet,mf=function e(t,n){return n!=null&&n(t)?t:t.cause?pf(this,ss,"m",e).call(this,t.cause,n):t};class Ue extends Ie{constructor(){super("Chain not configured."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ChainNotConfiguredError"})}}class gf extends Ie{constructor(){super("Connector already connected."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorAlreadyConnectedError"})}}class _s extends Ie{constructor(){super("Connector not connected."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorNotConnectedError"})}}class E1 extends Ie{constructor(){super("Connector not found."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorNotFoundError"})}}class yf extends Ie{constructor({address:t,connector:n}){super(`Account "${t}" not found for connector "${n.name}".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorAccountNotFoundError"})}}class wf extends Ie{constructor({connectionChainId:t,connectorChainId:n}){super(`The current chain of the connector (id: ${n}) does not match the connection's chain (id: ${t}).`,{metaMessages:[`Current Chain ID: ${n}`,`Expected Chain ID: ${t}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorChainMismatchError"})}}async function P1(e,t){var r;let n;if(typeof t.connector=="function"?n=e._internal.connectors.setup(t.connector):n=t.connector,n.uid===e.state.current)throw new gf;try{e.setState(a=>({...a,status:"connecting"})),n.emitter.emit("message",{type:"connecting"});const s=await n.connect({chainId:t.chainId}),o=s.accounts;return n.emitter.off("connect",e._internal.events.connect),n.emitter.on("change",e._internal.events.change),n.emitter.on("disconnect",e._internal.events.disconnect),await((r=e.storage)==null?void 0:r.setItem("recentConnectorId",n.id)),e.setState(a=>({...a,connections:new Map(a.connections).set(n.uid,{accounts:o,chainId:s.chainId,connector:n}),current:n.uid,status:"connected"})),{accounts:o,chainId:s.chainId}}catch(s){throw e.setState(o=>({...o,status:o.current?"connected":"disconnected"})),s}}async function Le(e,t={}){let n;if(t.connector){const{connector:u}=t,[l,d]=await Promise.all([u.getAccounts(),u.getChainId()]);n={accounts:l,chainId:d,connector:u}}else n=e.state.connections.get(e.state.current);if(!n)throw new _s;const r=t.chainId??n.chainId,s=await n.connector.getChainId();if(s!==n.chainId)throw new wf({connectionChainId:n.chainId,connectorChainId:s});const o=n.connector;if(o.getClient)return o.getClient({chainId:r});const a=le(t.account??n.accounts[0]);a.address=$(a.address);const i=e.chains.find(u=>u.id===r),c=await n.connector.getProvider({chainId:r});if(t.account&&!n.accounts.some(u=>u.toLowerCase()===a.address.toLowerCase()))throw new yf({address:a.address,connector:o});return mt({account:a,chain:i,name:"Connector Client",transport:u=>dr(c)({...u,retryCount:0})})}async function S1(e,t){const{account:n,chainId:r,connector:s,...o}=t;let a;return typeof n=="object"&&n.type==="local"?a=e.getClient({chainId:r}):a=await Le(e,{account:n,chainId:r,connector:s}),await j(a,Hu,"deployContract")({...o,...n?{account:n}:{},chain:r?{id:r}:null})}async function B1(e,t={}){var s,o;let n;if(t.connector)n=t.connector;else{const{connections:a,current:i}=e.state,c=a.get(i);n=c==null?void 0:c.connector}const r=e.state.connections;n&&(await n.disconnect(),n.emitter.off("change",e._internal.events.change),n.emitter.off("disconnect",e._internal.events.disconnect),n.emitter.on("connect",e._internal.events.connect),r.delete(n.uid)),e.setState(a=>{if(r.size===0)return{...a,connections:new Map,current:null,status:"disconnected"};const i=r.values().next().value;return{...a,connections:new Map(r),current:i.connector.uid}});{const a=e.state.current;if(!a)return;const i=(s=e.state.connections.get(a))==null?void 0:s.connector;if(!i)return;await((o=e.storage)==null?void 0:o.setItem("recentConnectorId",i.id))}}async function N1(e,t){const{chainId:n,connector:r,...s}=t;let o;t.account?o=t.account:o=(await Le(e,{account:t.account,chainId:n,connector:r})).account;const a=e.getClient({chainId:n});return j(a,Ut,"estimateGas")({...s,account:o})}function _n(e){return typeof e=="number"?e:e==="wei"?0:Math.abs(yi[e])}async function k1(e,t={}){const{chainId:n,formatUnits:r="gwei",...s}=t,o=e.getClient({chainId:n}),a=j(o,Mu,"estimateFeesPerGas"),{gasPrice:i,maxFeePerGas:c,maxPriorityFeePerGas:u}=await a({...s,chain:o.chain}),l=_n(r);return{formatted:{gasPrice:i?ye(i,l):void 0,maxFeePerGas:c?ye(c,l):void 0,maxPriorityFeePerGas:u?ye(u,l):void 0},gasPrice:i,maxFeePerGas:c,maxPriorityFeePerGas:u}}async function M1(e,t={}){const{chainId:n}=t,r=e.getClient({chainId:n});return j(r,Nu,"estimateMaxPriorityFeePerGas")({chain:r.chain})}function pr(e){const t=e.state.current,n=e.state.connections.get(t),r=n==null?void 0:n.accounts,s=r==null?void 0:r[0],o=e.chains.find(i=>i.id===(n==null?void 0:n.chainId)),a=e.state.status;switch(a){case"connected":return{address:s,addresses:r,chain:o,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!0,isConnecting:!1,isDisconnected:!1,isReconnecting:!1,status:a};case"reconnecting":return{address:s,addresses:r,chain:o,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!!s,isConnecting:!1,isDisconnected:!1,isReconnecting:!0,status:a};case"connecting":return{address:s,addresses:r,chain:o,chainId:n==null?void 0:n.chainId,connector:n==null?void 0:n.connector,isConnected:!1,isConnecting:!0,isDisconnected:!1,isReconnecting:!1,status:a};case"disconnected":return{address:void 0,addresses:void 0,chain:void 0,chainId:void 0,connector:void 0,isConnected:!1,isConnecting:!1,isDisconnected:!0,isReconnecting:!1,status:a}}}async function bf(e,t){const{allowFailure:n=!0,chainId:r,contracts:s,...o}=t,a=e.getClient({chainId:r});return j(a,Qi,"multicall")({allowFailure:n,contracts:s,...o})}function Af(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Ce,"readContract")(r)}async function os(e,t){var i;const{allowFailure:n=!0,blockNumber:r,blockTag:s,...o}=t,a=t.contracts;try{const c={};for(const[f,h]of a.entries()){const p=h.chainId??e.state.chainId;c[p]||(c[p]=[]),(i=c[p])==null||i.push({contract:h,index:f})}const u=()=>Object.entries(c).map(([f,h])=>bf(e,{...o,allowFailure:n,blockNumber:r,blockTag:s,chainId:Number.parseInt(f),contracts:h.map(({contract:p})=>p)})),l=(await Promise.all(u())).flat(),d=Object.values(c).flatMap(f=>f.map(({index:h})=>h));return l.reduce((f,h,p)=>(f&&(f[d[p]]=h),f),[])}catch(c){if(c instanceof ze)throw c;const u=()=>a.map(l=>Af(e,{...l,blockNumber:r,blockTag:s}));return n?(await Promise.allSettled(u())).map(l=>l.status==="fulfilled"?{result:l.value,status:"success"}:{error:l.reason,result:void 0,status:"failure"}):await Promise.all(u())}}async function Ec(e,t){const{address:n,blockNumber:r,blockTag:s,chainId:o,token:a,unit:i="ether"}=t;if(a)try{return Pc(e,{balanceAddress:n,chainId:o,symbolType:"string",tokenAddress:a})}catch(f){if(f instanceof ze){const h=await Pc(e,{balanceAddress:n,chainId:o,symbolType:"bytes32",tokenAddress:a}),p=nt(re(h.symbol,{dir:"right"}));return{...h,symbol:p}}throw f}const c=e.getClient({chainId:o}),l=await j(c,ws,"getBalance")(r?{address:n,blockNumber:r}:{address:n,blockTag:s}),d=e.chains.find(f=>f.id===o)??c.chain;return{decimals:d.nativeCurrency.decimals,formatted:ye(l,_n(i)),symbol:d.nativeCurrency.symbol,value:l}}async function Pc(e,t){const{balanceAddress:n,chainId:r,symbolType:s,tokenAddress:o,unit:a}=t,i={abi:[{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:s}]}],address:o},[c,u,l]=await os(e,{allowFailure:!1,contracts:[{...i,functionName:"balanceOf",args:[n],chainId:r},{...i,functionName:"decimals",chainId:r},{...i,functionName:"symbol",chainId:r}]}),d=ye(c??"0",_n(a??u));return{decimals:u,formatted:d,symbol:l,value:c}}async function T1(e,t={}){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return{...await j(s,He,"getBlock")(r),chainId:s.chain.id}}function Sc(e,t={}){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,bn,"getBlockNumber")(r)}function R1(e,t={}){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Fl,"getBlockTransactionCount")(r)}async function D1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Do,"getBytecode")(r)}function U1(e){return e.state.chainId}function ut(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;let n,r;if(Array.isArray(e)&&Array.isArray(t)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!ut(e[r],t[r]))return!1;return!0}if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();const s=Object.keys(e);if(n=s.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,s[r]))return!1;for(r=n;r--!==0;){const o=s[r];if(o&&!ut(e[o],t[o]))return!1}return!0}return e!==e&&t!==t}let yo=[];function O1(e){const t=e.chains;return ut(yo,t)?yo:(yo=t,t)}function wa(e,t={}){let n;try{n=e.getClient(t)}catch{}return n}let Pr=[];function vf(e){const t=[...e.state.connections.values()];return e.state.status==="reconnecting"||ut(Pr,t)?Pr:(Pr=t,t)}let wo=[];function F1(e){const t=e.connectors;return ut(wo,t)?wo:(wo=t,t)}function Bc(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Fi,"getEnsAddress")(r)}function Nc(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,ji,"getEnsAvatar")(r)}function kc(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,qi,"getEnsName")(r)}function Mc(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Tl,"getEnsResolver")(r)}function L1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,$i,"getEnsText")(r)}function $1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Ll,"getFeeHistory")(r)}function j1(e,t={}){const{chainId:n}=t,r=e.getClient({chainId:n});return j(r,ys,"getGasPrice")({})}async function q1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Ad,"getProof")(r)}function Cf(e,t={}){const n=wa(e,t);return n==null?void 0:n.extend(ha)}async function z1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,$l,"getStorageAt")(r)}async function Tc(e,t){const{address:n,chainId:r,formatUnits:s=18}=t;function o(a){return[{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:a}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:a}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]}]}try{const a=o("string"),i={address:n,abi:a,chainId:r},[c,u,l,d]=await os(e,{allowFailure:!0,contracts:[{...i,functionName:"decimals"},{...i,functionName:"name"},{...i,functionName:"symbol"},{...i,functionName:"totalSupply"}]});if(u.error instanceof ze)throw u.error;if(l.error instanceof ze)throw l.error;if(c.error)throw c.error;if(d.error)throw d.error;return{address:n,decimals:c.result,name:u.result,symbol:l.result,totalSupply:{formatted:ye(d.result,_n(s)),value:d.result}}}catch(a){if(a instanceof ze){const i=o("bytes32"),c={address:n,abi:i,chainId:r},[u,l,d,f]=await os(e,{allowFailure:!1,contracts:[{...c,functionName:"decimals"},{...c,functionName:"name"},{...c,functionName:"symbol"},{...c,functionName:"totalSupply"}]});return{address:n,decimals:u,name:nt(re(l,{dir:"right"})),symbol:nt(re(d,{dir:"right"})),totalSupply:{formatted:ye(f,_n(s)),value:f}}}throw a}}function Rc(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,An,"getTransaction")(r)}function _1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,jl,"getTransactionConfirmations")(r)}async function G1(e,t){const{address:n,blockNumber:r,blockTag:s,chainId:o}=t,a=e.getClient({chainId:o});return j(a,bs,"getTransactionCount")(r?{address:n,blockNumber:r}:{address:n,blockTag:s})}async function H1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Vr,"getTransactionReceipt")(r)}async function Q1(e,t={}){const n=await Le(e,t);return n.extend(Xr),n.extend(Xr)}async function K1(e,t){const{account:n,chainId:r,...s}=t,o=n??pr(e).address,a=e.getClient({chainId:r});return j(a,yn,"prepareTransactionRequest")({...s,...o?{account:o}:{}})}let bo=!1;async function If(e,t={}){var u,l;if(bo)return[];bo=!0,e.setState(d=>({...d,status:d.current?"reconnecting":"connecting"}));const n=[];if((u=t.connectors)!=null&&u.length)for(const d of t.connectors){let f;typeof d=="function"?f=e._internal.connectors.setup(d):f=d,n.push(f)}else n.push(...e.connectors);let r;try{r=await((l=e.storage)==null?void 0:l.getItem("recentConnectorId"))}catch{}const s={};for(const[,d]of e.state.connections)s[d.connector.id]=1;r&&(s[r]=0);const o=Object.keys(s).length>0?[...n].sort((d,f)=>(s[d.id]??10)-(s[f.id]??10)):n;let a=!1;const i=[],c=[];for(const d of o){const f=await d.getProvider().catch(()=>{});if(!f||c.some(m=>m===f)||!await d.isAuthorized())continue;const p=await d.connect({isReconnecting:!0}).catch(()=>null);p&&(d.emitter.off("connect",e._internal.events.connect),d.emitter.on("change",e._internal.events.change),d.emitter.on("disconnect",e._internal.events.disconnect),e.setState(m=>{const g=new Map(a?m.connections:new Map).set(d.uid,{accounts:p.accounts,chainId:p.chainId,connector:d});return{...m,current:a?m.current:d.uid,connections:g}}),i.push({accounts:p.accounts,chainId:p.chainId,connector:d}),c.push(f),a=!0)}return(e.state.status==="reconnecting"||e.state.status==="connecting")&&(a?e.setState(d=>({...d,status:"connected"})):e.setState(d=>({...d,connections:new Map,current:null,status:"disconnected"}))),bo=!1,i}async function W1(e,t){const{account:n,chainId:r,connector:s,gas:o,...a}=t;let i;typeof n=="object"&&n.type==="local"?i=e.getClient({chainId:r}):i=await Le(e,{account:n,chainId:r,connector:s});const{connector:c}=pr(e),u=await(async()=>{var f;if(!(!("data"in t)||!t.data)&&!((f=s??c)!=null&&f.supportsSimulation)&&o!==null)return o===void 0?j(i,Ut,"estimateGas")({...a,account:n,chain:r?{id:r}:null}):o})();return await j(i,tr,"sendTransaction")({...a,...n?{account:n}:{},gas:u,chain:r?{id:r}:null})}async function V1(e,t){const{account:n,connector:r,...s}=t;let o;return typeof n=="object"&&n.type==="local"?o=e.getClient():o=await Le(e,{account:n,connector:r}),j(o,sa,"signMessage")({...s,...n?{account:n}:{}})}async function J1(e,t){const{account:n,connector:r,...s}=t;let o;return typeof n=="object"&&n.type==="local"?o=e.getClient():o=await Le(e,{account:n,connector:r}),j(o,vd,"signTypedData")({...s,...n?{account:n}:{}})}async function xf(e,t){const{abi:n,chainId:r,connector:s,...o}=t;let a;t.account?a=t.account:a=(await Le(e,{chainId:r,connector:s})).account;const i=e.getClient({chainId:r}),c=j(i,Fs,"simulateContract"),{result:u,request:l}=await c({...o,abi:n,account:a});return{chainId:i.chain.id,result:u,request:{__mode:"prepared",...l,chainId:r}}}async function Z1(e,t){var s;const{connector:n}=t,r=e.state.connections.get(n.uid);if(!r)throw new _s;return await((s=e.storage)==null?void 0:s.setItem("recentConnectorId",n.id)),e.setState(o=>({...o,current:n.uid})),{accounts:r.accounts,chainId:r.chainId}}class me extends Ie{constructor(){super("Provider not found."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ProviderNotFoundError"})}}class Ef extends Ie{constructor({connector:t}){super(`"${t.name}" does not support programmatic chain switching.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SwitchChainNotSupportedError"})}}async function Dc(e,t){var a;const{addEthereumChainParameter:n,chainId:r}=t,s=e.state.connections.get(((a=t.connector)==null?void 0:a.uid)??e.state.current);if(s){const i=s.connector;if(!i.switchChain)throw new Ef({connector:i});return await i.switchChain({addEthereumChainParameter:n,chainId:r})}const o=e.chains.find(i=>i.id===r);if(!o)throw new Ue;return e.setState(i=>({...i,chainId:r})),o}async function Y1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Rd,"verifyMessage")(r)}async function X1(e,t){const{chainId:n,...r}=t,s=e.getClient({chainId:n});return j(s,Dd,"verifyTypedData")(r)}function eA(e,t){const{onChange:n}=t;return e.subscribe(()=>pr(e),n,{equalityFn(r,s){const{connector:o,...a}=r,{connector:i,...c}=s;return ut(a,c)&&(o==null?void 0:o.id)===(i==null?void 0:i.id)&&(o==null?void 0:o.uid)===(i==null?void 0:i.uid)}})}async function tA(e,t){const{connector:n,...r}=t,s=await Le(e,{connector:n});return j(s,Ud,"watchAsset")(r)}function nA(e,t){const{syncConnectedChain:n=e._internal.syncConnectedChain,...r}=t;let s;const o=c=>{s&&s();const u=e.getClient({chainId:c});return s=j(u,ql,"watchBlocks")(r),s},a=o(t.chainId);let i;return n&&!t.chainId&&(i=e.subscribe(({chainId:c})=>c,async c=>o(c))),()=>{a==null||a(),i==null||i()}}function rA(e,t){const{syncConnectedChain:n=e._internal.syncConnectedChain,...r}=t;let s;const o=c=>{s&&s();const u=e.getClient({chainId:c});return s=j(u,Ki,"watchBlockNumber")(r),s},a=o(t.chainId);let i;return n&&!t.chainId&&(i=e.subscribe(({chainId:c})=>c,async c=>o(c))),()=>{a==null||a(),i==null||i()}}function sA(e,t){const{onChange:n}=t;return e.subscribe(r=>r.chainId,n)}function oA(e,t){const{onChange:n}=t;return e.subscribe(()=>wa(e),n,{equalityFn(r,s){return(r==null?void 0:r.uid)===(s==null?void 0:s.uid)}})}function iA(e,t){const{onChange:n}=t;return e.subscribe(()=>vf(e),n,{equalityFn:ut})}function aA(e,t){const{onChange:n}=t;return e._internal.connectors.subscribe((r,s)=>{n(Object.values(r),s)})}function cA(e,t){const{syncConnectedChain:n=e._internal.syncConnectedChain,...r}=t;let s;const o=c=>{s&&s();const u=e.getClient({chainId:c});return s=j(u,la,"watchContractEvent")(r),s},a=o(t.chainId);let i;return n&&!t.chainId&&(i=e.subscribe(({chainId:c})=>c,async c=>o(c))),()=>{a==null||a(),i==null||i()}}function uA(e,t){const{syncConnectedChain:n=e._internal.syncConnectedChain,...r}=t;let s;const o=c=>{s&&s();const u=e.getClient({chainId:c});return s=j(u,zl,"watchPendingTransactions")(r),s},a=o(t.chainId);let i;return n&&!t.chainId&&(i=e.subscribe(({chainId:c})=>c,async c=>o(c))),()=>{a==null||a(),i==null||i()}}function lA(e,t){const{onChange:n}=t;return e.subscribe(()=>Cf(e),n,{equalityFn(r,s){return(r==null?void 0:r.uid)===(s==null?void 0:s.uid)}})}async function Uc(e,t){const{chainId:n,timeout:r=0,...s}=t,o=e.getClient({chainId:n}),i=await j(o,ra,"waitForTransactionReceipt")({...s,timeout:r});if(i.status==="reverted"){const u=await j(o,An,"getTransaction")({hash:i.transactionHash}),d=await j(o,ft,"call")({...u,gasPrice:u.type!=="eip1559"?u.gasPrice:void 0,maxFeePerGas:u.type==="eip1559"?u.maxFeePerGas:void 0,maxPriorityFeePerGas:u.type==="eip1559"?u.maxPriorityFeePerGas:void 0}),f=d!=null&&d.data?nt(`0x${d.data.substring(138)}`):"unknown reason";throw new Error(f)}return{...i,chainId:o.chain.id}}async function dA(e,t){const{account:n,chainId:r,connector:s,__mode:o,...a}=t;let i;typeof n=="object"&&n.type==="local"?i=e.getClient({chainId:r}):i=await Le(e,{account:n,chainId:r,connector:s});const{connector:c}=pr(e);let u;if(o==="prepared"||c!=null&&c.supportsSimulation)u=a;else{const{request:f}=await xf(e,{...a,account:n,chainId:r});u=f}return await j(i,$s,"writeContract")({...u,...n?{account:n}:{},chain:r?{id:r}:null})}function fA(e){return e}const hA=/(rabby|trustwallet)/,pA={coinbaseWallet:{id:"coinbaseWallet",name:"Coinbase Wallet",provider(e){return e!=null&&e.coinbaseWalletExtension?e.coinbaseWalletExtension:Rr(e,"isCoinbaseWallet")}},metaMask:{id:"metaMask",name:"MetaMask",provider(e){return Rr(e,t=>{if(!t.isMetaMask||t.isBraveWallet&&!t._events&&!t._state)return!1;const n=["isApexWallet","isAvalanche","isBitKeep","isBlockWallet","isKuCoinWallet","isMathWallet","isOkxWallet","isOKExWallet","isOneInchIOSWallet","isOneInchAndroidWallet","isOpera","isPortal","isRabby","isTokenPocket","isTokenary","isZerion"];for(const r of n)if(t[r])return!1;return!0})}},phantom:{id:"phantom",name:"Phantom",provider(e){var t,n;return(t=e==null?void 0:e.phantom)!=null&&t.ethereum?(n=e.phantom)==null?void 0:n.ethereum:Rr(e,"isPhantom")}}};mr.type="injected";function mr(e={}){const{shimDisconnect:t=!0,unstable_shimAsyncInject:n}=e;function r(){const c=e.target;if(typeof c=="function"){const u=c();if(u)return u}return typeof c=="object"?c:typeof c=="string"?{...pA[c]??{id:c,name:`${c[0].toUpperCase()}${c.slice(1)}`,provider:`is${c[0].toUpperCase()}${c.slice(1)}`}}:{id:"injected",name:"Injected",provider(u){return u==null?void 0:u.ethereum}}}let s,o,a,i;return c=>({get icon(){return r().icon},get id(){return r().id},get name(){return r().name},get supportsSimulation(){return hA.test(this.id.toLowerCase())},type:mr.type,async setup(){const u=await this.getProvider();u&&e.target&&(a||(a=this.onConnect.bind(this),u.on("connect",a)),s||(s=this.onAccountsChanged.bind(this),u.on("accountsChanged",s)))},async connect({chainId:u,isReconnecting:l}={}){var h,p,m,g,y,w;const d=await this.getProvider();if(!d)throw new me;let f=[];if(l)f=await this.getAccounts().catch(()=>[]);else if(t)try{f=(g=(m=(p=(h=(await d.request({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]}))[0])==null?void 0:h.caveats)==null?void 0:p[0])==null?void 0:m.value)==null?void 0:g.map(I=>$(I)),f.length>0&&(f=await this.getAccounts())}catch(C){const I=C;if(I.code===D.code)throw new D(I);if(I.code===pe.code)throw I}try{!(f!=null&&f.length)&&!l&&(f=(await d.request({method:"eth_requestAccounts"})).map(b=>$(b))),a&&(d.removeListener("connect",a),a=void 0),s||(s=this.onAccountsChanged.bind(this),d.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),d.on("chainChanged",o)),i||(i=this.onDisconnect.bind(this),d.on("disconnect",i));let C=await this.getChainId();if(u&&C!==u){const I=await this.switchChain({chainId:u}).catch(b=>{if(b.code===D.code)throw b;return{id:C}});C=(I==null?void 0:I.id)??C}return t&&await((y=c.storage)==null?void 0:y.removeItem(`${this.id}.disconnected`)),e.target||await((w=c.storage)==null?void 0:w.setItem("injected.connected",!0)),{accounts:f,chainId:C}}catch(C){const I=C;throw I.code===D.code?new D(I):I.code===pe.code?new pe(I):I}},async disconnect(){var l,d;const u=await this.getProvider();if(!u)throw new me;o&&(u.removeListener("chainChanged",o),o=void 0),i&&(u.removeListener("disconnect",i),i=void 0),a||(a=this.onConnect.bind(this),u.on("connect",a));try{await pt(()=>u.request({method:"wallet_revokePermissions",params:[{eth_accounts:{}}]}),{timeout:100})}catch{}t&&await((l=c.storage)==null?void 0:l.setItem(`${this.id}.disconnected`,!0)),e.target||await((d=c.storage)==null?void 0:d.removeItem("injected.connected"))},async getAccounts(){const u=await this.getProvider();if(!u)throw new me;return(await u.request({method:"eth_accounts"})).map(d=>$(d))},async getChainId(){const u=await this.getProvider();if(!u)throw new me;const l=await u.request({method:"eth_chainId"});return Number(l)},async getProvider(){if(typeof window>"u")return;let u;const l=r();return typeof l.provider=="function"?u=l.provider(window):typeof l.provider=="string"?u=Rr(window,l.provider):u=l.provider,u&&!u.removeListener&&("off"in u&&typeof u.off=="function"?u.removeListener=u.off:u.removeListener=()=>{}),u},async isAuthorized(){var u,l;try{if(t&&await((u=c.storage)==null?void 0:u.getItem(`${this.id}.disconnected`))||!e.target&&!await((l=c.storage)==null?void 0:l.getItem("injected.connected")))return!1;if(!await this.getProvider()){if(n!==void 0&&n!==!1){const p=async()=>(typeof window<"u"&&window.removeEventListener("ethereum#initialized",p),!!await this.getProvider()),m=typeof n=="number"?n:1e3;if(await Promise.race([...typeof window<"u"?[new Promise(y=>window.addEventListener("ethereum#initialized",()=>y(p()),{once:!0}))]:[],new Promise(y=>setTimeout(()=>y(p()),m))]))return!0}throw new me}return!!(await ct(()=>this.getAccounts())).length}catch{return!1}},async switchChain({addEthereumChainParameter:u,chainId:l}){var h,p,m,g;const d=await this.getProvider();if(!d)throw new me;const f=c.chains.find(y=>y.id===l);if(!f)throw new V(new Ue);try{return await Promise.all([d.request({method:"wallet_switchEthereumChain",params:[{chainId:N(l)}]}).then(async()=>{await this.getChainId()===l&&c.emitter.emit("change",{chainId:l})}),new Promise(y=>c.emitter.once("change",({chainId:w})=>{w===l&&y()}))]),f}catch(y){const w=y;if(w.code===4902||((p=(h=w==null?void 0:w.data)==null?void 0:h.originalError)==null?void 0:p.code)===4902)try{const{default:C,...I}=f.blockExplorers??{};let b;u!=null&&u.blockExplorerUrls?b=u.blockExplorerUrls:C&&(b=[C.url,...Object.values(I).map(E=>E.url)]);let A;(m=u==null?void 0:u.rpcUrls)!=null&&m.length?A=u.rpcUrls:A=[((g=f.rpcUrls.default)==null?void 0:g.http[0])??""];const v={blockExplorerUrls:b,chainId:N(l),chainName:(u==null?void 0:u.chainName)??f.name,iconUrls:u==null?void 0:u.iconUrls,nativeCurrency:(u==null?void 0:u.nativeCurrency)??f.nativeCurrency,rpcUrls:A};if(await d.request({method:"wallet_addEthereumChain",params:[v]}),await this.getChainId()!==l)throw new D(new Error("User rejected switch after adding network."));return f}catch(C){throw new D(C)}throw w.code===D.code?new D(w):new V(w)}},async onAccountsChanged(u){var l;if(u.length===0)this.onDisconnect();else if(c.emitter.listenerCount("connect")){const d=(await this.getChainId()).toString();this.onConnect({chainId:d}),t&&await((l=c.storage)==null?void 0:l.removeItem(`${this.id}.disconnected`))}else c.emitter.emit("change",{accounts:u.map(d=>$(d))})},onChainChanged(u){const l=Number(u);c.emitter.emit("change",{chainId:l})},async onConnect(u){const l=await this.getAccounts();if(l.length===0)return;const d=Number(u.chainId);c.emitter.emit("connect",{accounts:l,chainId:d});const f=await this.getProvider();f&&(a&&(f.removeListener("connect",a),a=void 0),s||(s=this.onAccountsChanged.bind(this),f.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),f.on("chainChanged",o)),i||(i=this.onDisconnect.bind(this),f.on("disconnect",i)))},async onDisconnect(u){const l=await this.getProvider();u&&u.code===1013&&l&&(await this.getAccounts()).length||(c.emitter.emit("disconnect"),l&&(o&&(l.removeListener("chainChanged",o),o=void 0),i&&(l.removeListener("disconnect",i),i=void 0),a||(a=this.onConnect.bind(this),l.on("connect",a))))}})}function Rr(e,t){function n(s){return typeof t=="function"?t(s):typeof t=="string"?s[t]:!0}const r=e.ethereum;if(r!=null&&r.providers)return r.providers.find(s=>n(s));if(r&&n(r))return r}Gs.type="mock";function Gs(e){const t=new Map,n=e.features??{};let r=!1,s;return o=>({id:"mock",name:"Mock Connector",type:Gs.type,async setup(){s=o.chains[0].id},async connect({chainId:a}={}){if(n.connectError)throw typeof n.connectError=="boolean"?new D(new Error("Failed to connect.")):n.connectError;const c=await(await this.getProvider()).request({method:"eth_requestAccounts"});let u=await this.getChainId();return a&&u!==a&&(u=(await this.switchChain({chainId:a})).id),r=!0,{accounts:c.map(l=>$(l)),chainId:u}},async disconnect(){r=!1},async getAccounts(){if(!r)throw new _s;return(await(await this.getProvider()).request({method:"eth_accounts"})).map(c=>$(c))},async getChainId(){const i=await(await this.getProvider()).request({method:"eth_chainId"});return Co(i,"number")},async isAuthorized(){return!n.reconnect||!r?!1:!!(await this.getAccounts()).length},async switchChain({chainId:a}){const i=await this.getProvider(),c=o.chains.find(u=>u.id===a);if(!c)throw new V(new Ue);return await i.request({method:"wallet_switchEthereumChain",params:[{chainId:N(a)}]}),c},onAccountsChanged(a){a.length===0?this.onDisconnect():o.emitter.emit("change",{accounts:a.map(i=>$(i))})},onChainChanged(a){const i=Number(a);o.emitter.emit("change",{chainId:i})},async onDisconnect(a){o.emitter.emit("disconnect"),r=!1},async getProvider({chainId:a}={}){const c=(o.chains.find(l=>l.id===a)??o.chains[0]).rpcUrls.default.http[0];return dr({request:async({method:l,params:d})=>{if(l==="eth_chainId")return N(s);if(l==="eth_requestAccounts")return e.accounts;if(l==="eth_signTypedData_v4"&&n.signTypedDataError)throw typeof n.signTypedDataError=="boolean"?new D(new Error("Failed to sign typed data.")):n.signTypedDataError;if(l==="wallet_switchEthereumChain"){if(n.switchChainError)throw typeof n.switchChainError=="boolean"?new D(new Error("Failed to switch chain.")):n.switchChainError;s=Co(d[0].chainId,"number"),this.onChainChanged(s.toString());return}if(l==="wallet_watchAsset"){if(n.watchAssetError)throw typeof n.watchAssetError=="boolean"?new D(new Error("Failed to switch chain.")):n.watchAssetError;return r}if(l==="wallet_getCapabilities")return{"0x2105":{paymasterService:{supported:d[0]==="0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"},sessionKeys:{supported:!0}},"0x14A34":{paymasterService:{supported:d[0]==="0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"}}};if(l==="wallet_sendCalls"){const m=[],g=d[0].calls;for(const w of g){const{result:C,error:I}=await so.http(c,{body:{method:"eth_sendTransaction",params:[w]}});if(I)throw new vt({body:{method:l,params:d},error:I,url:c});m.push(C)}const y=Z(_e(JSON.stringify(g)));return t.set(y,m),y}if(l==="wallet_getCallsStatus"){const m=t.get(d[0]);if(!m)return null;const g=await Promise.all(m.map(async y=>{const{result:w,error:C}=await so.http(c,{body:{method:"eth_getTransactionReceipt",params:[y],id:0}});if(C)throw new vt({body:{method:l,params:d},error:C,url:c});return w?{blockHash:w.blockHash,blockNumber:w.blockNumber,gasUsed:w.gasUsed,logs:w.logs,status:w.status,transactionHash:w.transactionHash}:null}));return g.some(y=>!y)?{status:"PENDING",receipts:[]}:{status:"CONFIRMED",receipts:g}}if(l==="wallet_showCallsStatus")return;if(l==="personal_sign"){if(n.signMessageError)throw typeof n.signMessageError=="boolean"?new D(new Error("Failed to sign message.")):n.signMessageError;l="eth_sign",d=[d[1],d[0]]}const f={method:l,params:d},{error:h,result:p}=await so.http(c,{body:f});if(h)throw new vt({body:f,error:h,url:c});return p}})({retryCount:0})}})}var mA={BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const gA=e=>(t,n,r)=>{const s=r.subscribe;return r.subscribe=(a,i,c)=>{let u=a;if(i){const l=(c==null?void 0:c.equalityFn)||Object.is;let d=a(r.getState());u=f=>{const h=a(f);if(!l(d,h)){const p=d;i(d=h,p)}},c!=null&&c.fireImmediately&&i(d,d)}return s(u)},e(t,n,r)},yA=gA;function wA(e,t){let n;try{n=e()}catch{return}return{getItem:s=>{var o;const a=c=>c===null?null:JSON.parse(c,void 0),i=(o=n.getItem(s))!=null?o:null;return i instanceof Promise?i.then(a):a(i)},setItem:(s,o)=>n.setItem(s,JSON.stringify(o,void 0)),removeItem:s=>n.removeItem(s)}}const Gn=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then(r){return Gn(r)(n)},catch(r){return this}}}catch(n){return{then(r){return this},catch(r){return Gn(r)(n)}}}},bA=(e,t)=>(n,r,s)=>{let o={getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:g=>g,version:0,merge:(g,y)=>({...y,...g}),...t},a=!1;const i=new Set,c=new Set;let u;try{u=o.getStorage()}catch{}if(!u)return e((...g)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...g)},r,s);const l=Gn(o.serialize),d=()=>{const g=o.partialize({...r()});let y;const w=l({state:g,version:o.version}).then(C=>u.setItem(o.name,C)).catch(C=>{y=C});if(y)throw y;return w},f=s.setState;s.setState=(g,y)=>{f(g,y),d()};const h=e((...g)=>{n(...g),d()},r,s);let p;const m=()=>{var g;if(!u)return;a=!1,i.forEach(w=>w(r()));const y=((g=o.onRehydrateStorage)==null?void 0:g.call(o,r()))||void 0;return Gn(u.getItem.bind(u))(o.name).then(w=>{if(w)return o.deserialize(w)}).then(w=>{if(w)if(typeof w.version=="number"&&w.version!==o.version){if(o.migrate)return o.migrate(w.state,w.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return w.state}).then(w=>{var C;return p=o.merge(w,(C=r())!=null?C:h),n(p,!0),d()}).then(()=>{y==null||y(p,void 0),a=!0,c.forEach(w=>w(p))}).catch(w=>{y==null||y(void 0,w)})};return s.persist={setOptions:g=>{o={...o,...g},g.getStorage&&(u=g.getStorage())},clearStorage:()=>{u==null||u.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>m(),hasHydrated:()=>a,onHydrate:g=>(i.add(g),()=>{i.delete(g)}),onFinishHydration:g=>(c.add(g),()=>{c.delete(g)})},m(),p||h},AA=(e,t)=>(n,r,s)=>{let o={storage:wA(()=>localStorage),partialize:m=>m,version:0,merge:(m,g)=>({...g,...m}),...t},a=!1;const i=new Set,c=new Set;let u=o.storage;if(!u)return e((...m)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),n(...m)},r,s);const l=()=>{const m=o.partialize({...r()});return u.setItem(o.name,{state:m,version:o.version})},d=s.setState;s.setState=(m,g)=>{d(m,g),l()};const f=e((...m)=>{n(...m),l()},r,s);let h;const p=()=>{var m,g;if(!u)return;a=!1,i.forEach(w=>{var C;return w((C=r())!=null?C:f)});const y=((g=o.onRehydrateStorage)==null?void 0:g.call(o,(m=r())!=null?m:f))||void 0;return Gn(u.getItem.bind(u))(o.name).then(w=>{if(w)if(typeof w.version=="number"&&w.version!==o.version){if(o.migrate)return o.migrate(w.state,w.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return w.state}).then(w=>{var C;return h=o.merge(w,(C=r())!=null?C:f),n(h,!0),l()}).then(()=>{y==null||y(h,void 0),h=r(),a=!0,c.forEach(w=>w(h))}).catch(w=>{y==null||y(void 0,w)})};return s.persist={setOptions:m=>{o={...o,...m},m.storage&&(u=m.storage)},clearStorage:()=>{u==null||u.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>p(),hasHydrated:()=>a,onHydrate:m=>(i.add(m),()=>{i.delete(m)}),onFinishHydration:m=>(c.add(m),()=>{c.delete(m)})},o.skipHydration||p(),h||f},vA=(e,t)=>"getStorage"in t||"serialize"in t||"deserialize"in t?((mA?"production":void 0)!=="production"&&console.warn("[DEPRECATED] `getStorage`, `serialize` and `deserialize` options are deprecated. Use `storage` option instead."),bA(e,t)):AA(e,t),CA=vA;var IA={BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const Oc=e=>{let t;const n=new Set,r=(c,u)=>{const l=typeof c=="function"?c(t):c;if(!Object.is(l,t)){const d=t;t=u??typeof l!="object"?l:Object.assign({},t,l),n.forEach(f=>f(t,d))}},s=()=>t,i={setState:r,getState:s,subscribe:c=>(n.add(c),()=>n.delete(c)),destroy:()=>{(IA?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}};return t=e(r,s,i),i},Ao=e=>e?Oc(e):Oc;class xA{constructor(t){Object.defineProperty(this,"uid",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"_emitter",{enumerable:!0,configurable:!0,writable:!0,value:new T.EventEmitter})}on(t,n){this._emitter.on(t,n)}once(t,n){this._emitter.once(t,n)}off(t,n){this._emitter.off(t,n)}emit(t,...n){const r=n[0];this._emitter.emit(t,{uid:this.uid,...r})}listenerCount(t){return this._emitter.listenerCount(t)}}function EA(e){return new xA(e)}function ba(e,t){return JSON.parse(e,(n,r)=>{let s=r;return(s==null?void 0:s.__type)==="bigint"&&(s=BigInt(s.value)),(s==null?void 0:s.__type)==="Map"&&(s=new Map(s.value)),(t==null?void 0:t(n,s))??s})}function Fc(e,t){return e.slice(0,t).join(".")||"."}function Lc(e,t){const{length:n}=e;for(let r=0;r<n;++r)if(e[r]===t)return r+1;return 0}function PA(e,t){const n=typeof e=="function",r=typeof t=="function",s=[],o=[];return function(i,c){if(typeof c=="object")if(s.length){const u=Lc(s,this);u===0?s[s.length]=this:(s.splice(u),o.splice(u)),o[o.length]=i;const l=Lc(s,c);if(l!==0)return r?t.call(this,i,c,Fc(o,l)):`[ref=${Fc(o,l)}]`}else s[0]=c,o[0]=i;return n?e.call(this,i,c):c}}function Pf(e,t,n,r){return JSON.stringify(e,PA((s,o)=>{let a=o;return typeof a=="bigint"&&(a={__type:"bigint",value:o.toString()}),a instanceof Map&&(a={__type:"Map",value:Array.from(o.entries())}),(t==null?void 0:t(s,a))??a},r),n??void 0)}function Sf(e){const{deserialize:t=ba,key:n="wagmi",serialize:r=Pf,storage:s=Aa}=e;function o(a){return a instanceof Promise?a.then(i=>i).catch(()=>null):a}return{...s,key:n,async getItem(a,i){const c=s.getItem(`${n}.${a}`),u=await o(c);return u?t(u)??null:i??null},async setItem(a,i){const c=`${n}.${a}`;i===null?await o(s.removeItem(c)):await o(s.setItem(c,r(i)))},async removeItem(a){await o(s.removeItem(`${n}.${a}`))}}}const Aa={getItem:()=>null,setItem:()=>{},removeItem:()=>{}},Jo=256;let Sr=Jo,Br;function SA(e=11){if(!Br||Sr+e>Jo*2){Br="",Sr=0;for(let t=0;t<Jo;t++)Br+=(256+Math.random()*256|0).toString(16).substring(1)}return Br.substring(Sr,Sr+++e)}function BA(e){const{multiInjectedProviderDiscovery:t=!0,storage:n=Sf({storage:typeof window<"u"&&window.localStorage?window.localStorage:Aa}),syncConnectedChain:r=!0,ssr:s=!1,...o}=e,a=typeof window<"u"&&t?Gd():void 0,i=Ao(()=>o.chains),c=Ao(()=>[...o.connectors??[],...s?[]:(a==null?void 0:a.getProviders().map(l))??[]].map(u));function u(b){var x;const A=EA(SA()),v={...b({emitter:A,chains:i.getState(),storage:n,transports:o.transports}),emitter:A,uid:A.uid};return A.on("connect",C),(x=v.setup)==null||x.call(v),v}function l(b){const{info:A}=b,v=b.provider;return mr({target:{...A,id:A.rdns,provider:v}})}const d=new Map;function f(b={}){const A=b.chainId??g.getState().chainId,v=i.getState().find(E=>E.id===A);if(b.chainId&&!v)throw new Ue;{const E=d.get(g.getState().chainId);if(E&&!v)return E;if(!v)throw new Ue}{const E=d.get(A);if(E)return E}let x;if(o.client)x=o.client({chain:v});else{const E=v.id,k=i.getState().map(R=>R.id),M={},z=Object.entries(o);for(const[R,G]of z)if(!(R==="chains"||R==="client"||R==="connectors"||R==="transports"))if(typeof G=="object")if(E in G)M[R]=G[E];else{if(k.some(S=>S in G))continue;M[R]=G}else M[R]=G;x=mt({...M,chain:v,batch:M.batch??{multicall:!0},transport:R=>o.transports[E]({...R,connectors:c})})}return d.set(A,x),x}function h(){return{chainId:i.getState()[0].id,connections:new Map,current:null,status:"disconnected"}}let p;const m="0.0.0-canary-";Mn.startsWith(m)?p=Number.parseInt(Mn.replace(m,"")):p=Number.parseInt(Mn.split(".")[0]??"0");const g=Ao(yA(n?CA(h,{migrate(b,A){if(A===p)return b;const v=h(),x=y(b,v.chainId);return{...v,chainId:x}},name:"store",partialize(b){return{connections:{__type:"Map",value:Array.from(b.connections.entries()).map(([A,v])=>{const{id:x,name:E,type:k,uid:M}=v.connector;return[A,{...v,connector:{id:x,name:E,type:k,uid:M}}]})},chainId:b.chainId,current:b.current}},merge(b,A){typeof b=="object"&&b&&"status"in b&&delete b.status;const v=y(b,A.chainId);return{...A,...b,chainId:v}},skipHydration:s,storage:n,version:p}):h));function y(b,A){return b&&typeof b=="object"&&"chainId"in b&&typeof b.chainId=="number"&&i.getState().some(v=>v.id===b.chainId)?b.chainId:A}r&&g.subscribe(({connections:b,current:A})=>{var v;return A?(v=b.get(A))==null?void 0:v.chainId:void 0},b=>{if(i.getState().some(v=>v.id===b))return g.setState(v=>({...v,chainId:b??v.chainId}))}),a==null||a.subscribe(b=>{const A=new Map;for(const x of c.getState())A.set(x.id,!0);const v=[];for(const x of b){const E=u(l(x));A.has(E.id)||v.push(E)}n&&!g.persist.hasHydrated()||c.setState(x=>[...x,...v],!0)});function w(b){g.setState(A=>{const v=A.connections.get(b.uid);return v?{...A,connections:new Map(A.connections).set(b.uid,{accounts:b.accounts??v.accounts,chainId:b.chainId??v.chainId,connector:v.connector})}:A})}function C(b){g.getState().status==="connecting"||g.getState().status==="reconnecting"||g.setState(A=>{const v=c.getState().find(x=>x.uid===b.uid);return v?(v.emitter.listenerCount("connect")&&v.emitter.off("connect",w),v.emitter.listenerCount("change")||v.emitter.on("change",w),v.emitter.listenerCount("disconnect")||v.emitter.on("disconnect",I),{...A,connections:new Map(A.connections).set(b.uid,{accounts:b.accounts,chainId:b.chainId,connector:v}),current:b.uid,status:"connected"}):A})}function I(b){g.setState(A=>{const v=A.connections.get(b.uid);if(v){const E=v.connector;E.emitter.listenerCount("change")&&v.connector.emitter.off("change",w),E.emitter.listenerCount("disconnect")&&v.connector.emitter.off("disconnect",I),E.emitter.listenerCount("connect")||v.connector.emitter.on("connect",C)}if(A.connections.delete(b.uid),A.connections.size===0)return{...A,connections:new Map,current:null,status:"disconnected"};const x=A.connections.values().next().value;return{...A,connections:new Map(A.connections),current:x.connector.uid}})}return{get chains(){return i.getState()},get connectors(){return c.getState()},storage:n,getClient:f,get state(){return g.getState()},setState(b){let A;typeof b=="function"?A=b(g.getState()):A=b;const v=h();typeof A!="object"&&(A=v),Object.keys(v).some(E=>!(E in A))&&(A=v),g.setState(A,!0)},subscribe(b,A,v){return g.subscribe(b,A,v?{...v,fireImmediately:v.emitImmediately}:void 0)},_internal:{mipd:a,store:g,ssr:!!s,syncConnectedChain:r,transports:o.transports,chains:{setState(b){const A=typeof b=="function"?b(i.getState()):b;if(A.length!==0)return i.setState(A,!0)},subscribe(b){return i.subscribe(b)}},connectors:{providerDetailToConnector:l,setup:u,setState(b){return c.setState(typeof b=="function"?b(c.getState()):b,!0)},subscribe(b){return c.subscribe(b)}},events:{change:w,connect:C,disconnect:I}}}}function NA(e,t){const{initialState:n,reconnectOnMount:r}=t;return n&&!e._internal.store.persist.hasHydrated()&&e.setState({...n,chainId:e.chains.some(s=>s.id===n.chainId)?n.chainId:e.chains[0].id,connections:r?n.connections:new Map,status:r?"reconnecting":"disconnected"}),{async onMount(){var s;if(e._internal.ssr){await e._internal.store.persist.rehydrate();const o=(s=e._internal.mipd)==null?void 0:s.getProviders().map(e._internal.connectors.providerDetailToConnector).map(e._internal.connectors.setup);e._internal.connectors.setState(a=>[...a,...o??[]])}r?If(e):e.storage&&e.setState(o=>({...o,connections:new Map}))}}}function kA(e,t={}){const{type:n}=e,{key:r="connector",name:s="Connector",retryDelay:o}=t;return a=>{const{chain:i,connectors:c}=a,u=t.retryCount??a.retryCount;return Cn({key:r,name:s,request:async({method:d,params:f})=>{const h=c==null?void 0:c.getState().find(y=>y.type===n);if(!h)throw new it(new Error(`Could not find connector of type "${n}" in \`connectors\` passed to \`createConfig\`.`));const p=await h.getProvider({chainId:i==null?void 0:i.id});if(!p)throw new it(new Error("Provider is disconnected."));const m=K(await ct(()=>pt(()=>p.request({method:"eth_chainId"}),{timeout:100})));if(i&&m!==i.id)throw new Pt(new Error(`The current chain of the connector (id: ${m}) does not match the target chain for the request (id: ${i.id} – ${i.name}).`));const g={method:d,params:f};return p.request(g)},retryCount:u,retryDelay:o,type:"connector"})}}function MA(e,t){return da(e,t)}const TA={getItem(e){return typeof window>"u"?null:va(document.cookie,e)??null},setItem(e,t){typeof window>"u"||(document.cookie=`${e}=${t};path=/;samesite=Lax`)},removeItem(e){typeof window>"u"||(document.cookie=`${e}=;max-age=-1;path=/`)}};function RA(e,t){var s;if(!t)return;const n=`${(s=e.storage)==null?void 0:s.key}.store`,r=va(t,n);if(r)return ba(r).state}function va(e,t){const n=e.split("; ").find(r=>r.startsWith(`${t}=`));if(n)return n.substring(t.length+1)}function Ca(e){var o,a,i;const{chain:t}=e,n=t.rpcUrls.default.http[0];if(!e.transports)return[n];const r=(a=(o=e.transports)==null?void 0:o[t.id])==null?void 0:a.call(o,{chain:t});return(((i=r==null?void 0:r.value)==null?void 0:i.transports)||[r]).map(({value:c})=>(c==null?void 0:c.url)||n)}function DA(e){if(typeof e=="string")return Number.parseInt(e,e.trim().substring(0,2)==="0x"?16:10);if(typeof e=="bigint")return Number(e);if(typeof e=="number")return e;throw new Error(`Cannot normalize chainId "${e}" of type "${typeof e}"`)}const UA=Object.freeze(Object.defineProperty({__proto__:null,BaseError:Ie,ChainNotConfiguredError:Ue,ConnectorAccountNotFoundError:yf,ConnectorAlreadyConnectedError:gf,ConnectorChainMismatchError:wf,ConnectorNotConnectedError:_s,ConnectorNotFoundError:E1,ProviderNotFoundError:me,SwitchChainNotSupportedError:Ef,call:I1,connect:P1,cookieStorage:TA,cookieToInitialState:RA,createConfig:BA,createConnector:fA,createStorage:Sf,custom:dr,deepEqual:ut,deployContract:S1,deserialize:ba,disconnect:B1,estimateFeesPerGas:k1,estimateGas:N1,estimateMaxPriorityFeePerGas:M1,extractRpcUrls:Ca,fallback:MA,fetchBalance:Ec,fetchBlockNumber:Sc,fetchEnsAddress:Bc,fetchEnsAvatar:Nc,fetchEnsName:kc,fetchEnsResolver:Mc,fetchToken:Tc,fetchTransaction:Rc,getAccount:pr,getBalance:Ec,getBlock:T1,getBlockNumber:Sc,getBlockTransactionCount:R1,getBytecode:D1,getChainId:U1,getChains:O1,getClient:wa,getConnections:vf,getConnectorClient:Le,getConnectors:F1,getEnsAddress:Bc,getEnsAvatar:Nc,getEnsName:kc,getEnsResolver:Mc,getEnsText:L1,getFeeHistory:$1,getGasPrice:j1,getProof:q1,getPublicClient:Cf,getStorageAt:z1,getToken:Tc,getTransaction:Rc,getTransactionConfirmations:_1,getTransactionCount:G1,getTransactionReceipt:H1,getWalletClient:Q1,http:Nn,hydrate:NA,injected:mr,mock:Gs,multicall:bf,noopStorage:Aa,normalizeChainId:DA,parseCookie:va,prepareTransactionRequest:K1,readContract:Af,readContracts:os,reconnect:If,sendTransaction:W1,serialize:Pf,signMessage:V1,signTypedData:J1,simulateContract:xf,switchAccount:Z1,switchChain:Dc,switchNetwork:Dc,unstable_connector:kA,verifyMessage:Y1,verifyTypedData:X1,version:Mn,waitForTransaction:Uc,waitForTransactionReceipt:Uc,watchAccount:eA,watchAsset:tA,watchBlockNumber:rA,watchBlocks:nA,watchChainId:sA,watchClient:oA,watchConnections:iA,watchConnectors:aA,watchContractEvent:cA,watchPendingTransactions:uA,watchPublicClient:lA,webSocket:qd,writeContract:dA},Symbol.toStringTag,{value:"Module"}));Hs.type="coinbaseWallet";function Hs(e={}){return e.version==="3"||e.headlessMode?FA(e):OA(e)}function OA(e){let t,n,r,s,o;return a=>({id:"coinbaseWalletSDK",name:"Coinbase Wallet",supportsSimulation:!0,type:Hs.type,async connect({chainId:i}={}){try{const c=await this.getProvider(),u=(await c.request({method:"eth_requestAccounts"})).map(d=>$(d));r||(r=this.onAccountsChanged.bind(this),c.on("accountsChanged",r)),s||(s=this.onChainChanged.bind(this),c.on("chainChanged",s)),o||(o=this.onDisconnect.bind(this),c.on("disconnect",o));let l=await this.getChainId();if(i&&l!==i){const d=await this.switchChain({chainId:i}).catch(f=>{if(f.code===D.code)throw f;return{id:l}});l=(d==null?void 0:d.id)??l}return{accounts:u,chainId:l}}catch(c){throw/(user closed modal|accounts received is empty|user denied account|request rejected)/i.test(c.message)?new D(c):c}},async disconnect(){var c;const i=await this.getProvider();r&&(i.removeListener("accountsChanged",r),r=void 0),s&&(i.removeListener("chainChanged",s),s=void 0),o&&(i.removeListener("disconnect",o),o=void 0),i.disconnect(),(c=i.close)==null||c.call(i)},async getAccounts(){return(await(await this.getProvider()).request({method:"eth_accounts"})).map(c=>$(c))},async getChainId(){const c=await(await this.getProvider()).request({method:"eth_chainId"});return Number(c)},async getProvider(){if(!n){const i=await(async()=>{const{default:c}=await Promise.resolve().then(()=>require("./index-3jinrfKR.cjs")).then(u=>u.index);return typeof c!="function"&&typeof c.default=="function"?c.default:c})();t=new i({...e,appChainIds:a.chains.map(c=>c.id)}),n=t.makeWeb3Provider({...e,options:e.preference??"all"})}return n},async isAuthorized(){try{return!!(await this.getAccounts()).length}catch{return!1}},async switchChain({addEthereumChainParameter:i,chainId:c}){var d,f,h,p;const u=a.chains.find(m=>m.id===c);if(!u)throw new V(new Ue);const l=await this.getProvider();try{return await l.request({method:"wallet_switchEthereumChain",params:[{chainId:N(u.id)}]}),u}catch(m){if(m.code===4902)try{let g;i!=null&&i.blockExplorerUrls?g=i.blockExplorerUrls:g=(d=u.blockExplorers)!=null&&d.default.url?[(f=u.blockExplorers)==null?void 0:f.default.url]:[];let y;(h=i==null?void 0:i.rpcUrls)!=null&&h.length?y=i.rpcUrls:y=[((p=u.rpcUrls.default)==null?void 0:p.http[0])??""];const w={blockExplorerUrls:g,chainId:N(c),chainName:(i==null?void 0:i.chainName)??u.name,iconUrls:i==null?void 0:i.iconUrls,nativeCurrency:(i==null?void 0:i.nativeCurrency)??u.nativeCurrency,rpcUrls:y};return await l.request({method:"wallet_addEthereumChain",params:[w]}),u}catch(g){throw new D(g)}throw new V(m)}},onAccountsChanged(i){i.length===0?this.onDisconnect():a.emitter.emit("change",{accounts:i.map(c=>$(c))})},onChainChanged(i){const c=Number(i);a.emitter.emit("change",{chainId:c})},async onDisconnect(i){a.emitter.emit("disconnect");const c=await this.getProvider();r&&(c.removeListener("accountsChanged",r),r=void 0),s&&(c.removeListener("chainChanged",s),s=void 0),o&&(c.removeListener("disconnect",o),o=void 0)}})}function FA(e){let n,r,s,o,a;return i=>({id:"coinbaseWalletSDK",name:"Coinbase Wallet",supportsSimulation:!0,type:Hs.type,async connect({chainId:c}={}){try{const u=await this.getProvider(),l=(await u.request({method:"eth_requestAccounts"})).map(f=>$(f));s||(s=this.onAccountsChanged.bind(this),u.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),u.on("chainChanged",o)),a||(a=this.onDisconnect.bind(this),u.on("disconnect",a));let d=await this.getChainId();if(c&&d!==c){const f=await this.switchChain({chainId:c}).catch(h=>{if(h.code===D.code)throw h;return{id:d}});d=(f==null?void 0:f.id)??d}return{accounts:l,chainId:d}}catch(u){throw/(user closed modal|accounts received is empty|user denied account)/i.test(u.message)?new D(u):u}},async disconnect(){const c=await this.getProvider();s&&(c.removeListener("accountsChanged",s),s=void 0),o&&(c.removeListener("chainChanged",o),o=void 0),a&&(c.removeListener("disconnect",a),a=void 0),c.disconnect(),c.close()},async getAccounts(){return(await(await this.getProvider()).request({method:"eth_accounts"})).map(u=>$(u))},async getChainId(){const u=await(await this.getProvider()).request({method:"eth_chainId"});return Number(u)},async getProvider(){var c;if(!r){const u=await(async()=>{const{default:p}=await Promise.resolve().then(()=>require("./index-BmU807V9.cjs")).then(m=>m.index);return typeof p!="function"&&typeof p.default=="function"?p.default:p})();n=new u({...e,reloadOnDisconnect:!1});const l=(c=n.walletExtension)==null?void 0:c.getChainId(),d=i.chains.find(p=>e.chainId?p.id===e.chainId:p.id===l)||i.chains[0],f=e.chainId||(d==null?void 0:d.id),h=e.jsonRpcUrl||(d==null?void 0:d.rpcUrls.default.http[0]);r=n.makeWeb3Provider(h,f)}return r},async isAuthorized(){try{return!!(await this.getAccounts()).length}catch{return!1}},async switchChain({addEthereumChainParameter:c,chainId:u}){var f,h,p,m;const l=i.chains.find(g=>g.id===u);if(!l)throw new V(new Ue);const d=await this.getProvider();try{return await d.request({method:"wallet_switchEthereumChain",params:[{chainId:N(l.id)}]}),l}catch(g){if(g.code===4902)try{let y;c!=null&&c.blockExplorerUrls?y=c.blockExplorerUrls:y=(f=l.blockExplorers)!=null&&f.default.url?[(h=l.blockExplorers)==null?void 0:h.default.url]:[];let w;(p=c==null?void 0:c.rpcUrls)!=null&&p.length?w=c.rpcUrls:w=[((m=l.rpcUrls.default)==null?void 0:m.http[0])??""];const C={blockExplorerUrls:y,chainId:N(u),chainName:(c==null?void 0:c.chainName)??l.name,iconUrls:c==null?void 0:c.iconUrls,nativeCurrency:(c==null?void 0:c.nativeCurrency)??l.nativeCurrency,rpcUrls:w};return await d.request({method:"wallet_addEthereumChain",params:[C]}),l}catch(y){throw new D(y)}throw new V(g)}},onAccountsChanged(c){c.length===0?this.onDisconnect():i.emitter.emit("change",{accounts:c.map(u=>$(u))})},onChainChanged(c){const u=Number(c);i.emitter.emit("change",{chainId:u})},async onDisconnect(c){i.emitter.emit("disconnect");const u=await this.getProvider();s&&(u.removeListener("accountsChanged",s),s=void 0),o&&(u.removeListener("chainChanged",o),o=void 0),a&&(u.removeListener("disconnect",a),a=void 0)}})}Ia.type="metaMask";function Ia(e={}){let t,n,r,s,o,a,i,c;return u=>({id:"metaMaskSDK",name:"MetaMask",type:Ia.type,async setup(){const l=await this.getProvider();l&&!a&&(a=this.onConnect.bind(this),l.on("connect",a))},async connect({chainId:l,isReconnecting:d}={}){const f=await this.getProvider();i||(i=this.onDisplayUri,f.on("display_uri",i));let h=[];d&&(h=await this.getAccounts().catch(()=>[]));try{h!=null&&h.length||(h=(await t.connect()).map(g=>$(g)));let p=await this.getChainId();if(l&&p!==l){const m=await this.switchChain({chainId:l}).catch(g=>{if(g.code===D.code)throw g;return{id:p}});p=(m==null?void 0:m.id)??p}return i&&(f.removeListener("display_uri",i),i=void 0),a&&(f.removeListener("connect",a),a=void 0),s||(s=this.onAccountsChanged.bind(this),f.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),f.on("chainChanged",o)),c||(c=this.onDisconnect.bind(this),f.on("disconnect",c)),{accounts:h,chainId:p}}catch(p){const m=p;throw m.code===D.code?new D(m):m.code===pe.code?new pe(m):m}},async disconnect(){const l=await this.getProvider();s&&(l.removeListener("accountsChanged",s),s=void 0),o&&(l.removeListener("chainChanged",o),o=void 0),c&&(l.removeListener("disconnect",c),c=void 0),a||(a=this.onConnect.bind(this),l.on("connect",a)),await t.terminate()},async getAccounts(){return(await(await this.getProvider()).request({method:"eth_accounts"})).map(f=>$(f))},async getChainId(){const l=await this.getProvider(),d=l.getChainId()||await(l==null?void 0:l.request({method:"eth_chainId"}));return Number(d)},async getProvider(){async function l(){const d=await(async()=>{const{default:f}=await Promise.resolve().then(()=>require("./metamask-sdk-CsUP8MhX.cjs")).then(h=>h.metamaskSdk);return typeof f!="function"&&typeof f.default=="function"?f.default:f})();return t=new d({_source:"wagmi",...e,readonlyRPCMap:Object.fromEntries(u.chains.map(f=>{const[h]=Ca({chain:f,transports:u.transports});return[f.id,h]})),dappMetadata:e.dappMetadata??{name:"wagmi"},useDeeplink:e.useDeeplink??!0}),await t.init(),t.getProvider()}return n||(r||(r=l()),n=await r),n},async isAuthorized(){try{return!!(await ct(()=>pt(()=>this.getAccounts(),{timeout:200}),{delay:201,retryCount:3})).length}catch{return!1}},async switchChain({addEthereumChainParameter:l,chainId:d}){var p,m,g,y;const f=await this.getProvider(),h=u.chains.find(w=>w.id===d);if(!h)throw new V(new Ue);try{return await Promise.all([f.request({method:"wallet_switchEthereumChain",params:[{chainId:N(d)}]}).then(async()=>{await this.getChainId()===d&&u.emitter.emit("change",{chainId:d})}),new Promise(w=>u.emitter.once("change",({chainId:C})=>{C===d&&w()}))]),h}catch(w){const C=w;if(C.code===4902||((m=(p=C==null?void 0:C.data)==null?void 0:p.originalError)==null?void 0:m.code)===4902)try{const{default:I,...b}=h.blockExplorers??{};let A;l!=null&&l.blockExplorerUrls?A=l.blockExplorerUrls:I&&(A=[I.url,...Object.values(b).map(k=>k.url)]);let v;(g=l==null?void 0:l.rpcUrls)!=null&&g.length?v=l.rpcUrls:v=[((y=h.rpcUrls.default)==null?void 0:y.http[0])??""];const x={blockExplorerUrls:A,chainId:N(d),chainName:(l==null?void 0:l.chainName)??h.name,iconUrls:l==null?void 0:l.iconUrls,nativeCurrency:(l==null?void 0:l.nativeCurrency)??h.nativeCurrency,rpcUrls:v};if(await f.request({method:"wallet_addEthereumChain",params:[x]}),await this.getChainId()!==d)throw new D(new Error("User rejected switch after adding network."));return h}catch(I){throw new D(I)}throw C.code===D.code?new D(C):new V(C)}},async onAccountsChanged(l){if(l.length===0)this.onDisconnect();else if(u.emitter.listenerCount("connect")){const d=(await this.getChainId()).toString();this.onConnect({chainId:d})}else u.emitter.emit("change",{accounts:l.map(d=>$(d))})},onChainChanged(l){const d=Number(l);u.emitter.emit("change",{chainId:d})},async onConnect(l){const d=await this.getAccounts();if(d.length===0)return;const f=Number(l.chainId);u.emitter.emit("connect",{accounts:d,chainId:f});const h=await this.getProvider();a&&(h.removeListener("connect",a),a=void 0),s||(s=this.onAccountsChanged.bind(this),h.on("accountsChanged",s)),o||(o=this.onChainChanged.bind(this),h.on("chainChanged",o)),c||(c=this.onDisconnect.bind(this),h.on("disconnect",c))},async onDisconnect(l){const d=await this.getProvider();l&&l.code===1013&&d&&(await this.getAccounts()).length||(u.emitter.emit("disconnect"),s||(s=this.onAccountsChanged.bind(this),d.on("accountsChanged",s)),o&&(d.removeListener("chainChanged",o),o=void 0),c&&(d.removeListener("disconnect",c),c=void 0),a||(a=this.onConnect.bind(this),d.on("connect",a)))},onDisplayUri(l){u.emitter.emit("message",{type:"display_uri",data:l})}})}xa.type="safe";function xa(e={}){const{shimDisconnect:t=!1}=e;let n,r;return s=>({id:"safe",name:"Safe",type:xa.type,async connect(){var c;const o=await this.getProvider();if(!o)throw new me;const a=await this.getAccounts(),i=await this.getChainId();return r||(r=this.onDisconnect.bind(this),o.on("disconnect",r)),t&&await((c=s.storage)==null?void 0:c.removeItem("safe.disconnected")),{accounts:a,chainId:i}},async disconnect(){var a;const o=await this.getProvider();if(!o)throw new me;r&&(o.removeListener("disconnect",r),r=void 0),t&&await((a=s.storage)==null?void 0:a.setItem("safe.disconnected",!0))},async getAccounts(){const o=await this.getProvider();if(!o)throw new me;return(await o.request({method:"eth_accounts"})).map($)},async getProvider(){if(typeof window<"u"&&(window==null?void 0:window.parent)!==window){if(!n){const{default:a}=await Promise.resolve().then(()=>require("./index-CIzqgU5q.cjs")),i=new a(e),c=await pt(()=>i.safe.getInfo(),{timeout:e.unstable_getInfoTimeout??10});if(!c)throw new Error("Could not load Safe information");const{SafeAppProvider:u}=await Promise.resolve().then(()=>require("./index-CQ4-w5mp.cjs")).then(l=>l.index);n=new u(c,i)}return n}},async getChainId(){const o=await this.getProvider();if(!o)throw new me;return Number(o.chainId)},async isAuthorized(){var o;try{return t&&await((o=s.storage)==null?void 0:o.getItem("safe.disconnected"))?!1:!!(await this.getAccounts()).length}catch{return!1}},onAccountsChanged(){},onChainChanged(){},onDisconnect(){s.emitter.emit("disconnect")}})}Ea.type="walletConnect";function Ea(e){const t=e.isNewChainsStale??!0;let n,r;const s="eip155";let o,a,i,c,u,l;return d=>({id:"walletConnect",name:"WalletConnect",type:Ea.type,async setup(){const f=await this.getProvider().catch(()=>null);f&&(i||(i=this.onConnect.bind(this),f.on("connect",i)),u||(u=this.onSessionDelete.bind(this),f.on("session_delete",u)))},async connect({chainId:f,...h}={}){var p,m;try{const g=await this.getProvider();if(!g)throw new me;c||(c=this.onDisplayUri,g.on("display_uri",c));let y=f;if(!y){const b=await((p=d.storage)==null?void 0:p.getItem("state"))??{};d.chains.some(v=>v.id===b.chainId)?y=b.chainId:y=(m=d.chains[0])==null?void 0:m.id}if(!y)throw new Error("No chains found on connector.");const w=await this.isChainsStale();if(g.session&&w&&await g.disconnect(),!g.session||w){const b=d.chains.filter(A=>A.id!==y).map(A=>A.id);await g.connect({optionalChains:[y,...b],..."pairingTopic"in h?{pairingTopic:h.pairingTopic}:{}}),this.setRequestedChainsIds(d.chains.map(A=>A.id))}const C=(await g.enable()).map(b=>$(b)),I=await this.getChainId();return c&&(g.removeListener("display_uri",c),c=void 0),i&&(g.removeListener("connect",i),i=void 0),o||(o=this.onAccountsChanged.bind(this),g.on("accountsChanged",o)),a||(a=this.onChainChanged.bind(this),g.on("chainChanged",a)),l||(l=this.onDisconnect.bind(this),g.on("disconnect",l)),u||(u=this.onSessionDelete.bind(this),g.on("session_delete",u)),{accounts:C,chainId:I}}catch(g){throw/(user rejected|connection request reset)/i.test(g==null?void 0:g.message)?new D(g):g}},async disconnect(){const f=await this.getProvider();try{await(f==null?void 0:f.disconnect())}catch(h){if(!/No matching key/i.test(h.message))throw h}finally{a&&(f==null||f.removeListener("chainChanged",a),a=void 0),l&&(f==null||f.removeListener("disconnect",l),l=void 0),i||(i=this.onConnect.bind(this),f==null||f.on("connect",i)),o&&(f==null||f.removeListener("accountsChanged",o),o=void 0),u&&(f==null||f.removeListener("session_delete",u),u=void 0),this.setRequestedChainsIds([])}},async getAccounts(){return(await this.getProvider()).accounts.map(h=>$(h))},async getProvider({chainId:f}={}){var p;async function h(){const m=d.chains.map(y=>y.id);if(!m.length)return;const{EthereumProvider:g}=await Promise.resolve().then(()=>require("./index.es-CXs4mA1g.cjs"));return await g.init({...e,disableProviderPing:!0,optionalChains:m,projectId:e.projectId,rpcMap:Object.fromEntries(d.chains.map(y=>{const[w]=Ca({chain:y,transports:d.transports});return[y.id,w]})),showQrModal:e.showQrModal??!0})}return n||(r||(r=h()),n=await r,n==null||n.events.setMaxListeners(Number.POSITIVE_INFINITY)),f&&await((p=this.switchChain)==null?void 0:p.call(this,{chainId:f})),n},async getChainId(){return(await this.getProvider()).chainId},async isAuthorized(){try{const[f,h]=await Promise.all([this.getAccounts(),this.getProvider()]);return f.length?await this.isChainsStale()&&h.session?(await h.disconnect().catch(()=>{}),!1):!0:!1}catch{return!1}},async switchChain({addEthereumChainParameter:f,chainId:h}){var g,y,w;const p=await this.getProvider();if(!p)throw new me;const m=d.chains.find(C=>C.id===h);if(!m)throw new V(new Ue);try{await Promise.all([new Promise(I=>{const b=({chainId:A})=>{A===h&&(d.emitter.off("change",b),I())};d.emitter.on("change",b)}),p.request({method:"wallet_switchEthereumChain",params:[{chainId:N(h)}]})]);const C=await this.getRequestedChainsIds();return this.setRequestedChainsIds([...C,h]),m}catch(C){const I=C;if(/(user rejected)/i.test(I.message))throw new D(I);try{let b;f!=null&&f.blockExplorerUrls?b=f.blockExplorerUrls:b=(g=m.blockExplorers)!=null&&g.default.url?[(y=m.blockExplorers)==null?void 0:y.default.url]:[];let A;(w=f==null?void 0:f.rpcUrls)!=null&&w.length?A=f.rpcUrls:A=[...m.rpcUrls.default.http];const v={blockExplorerUrls:b,chainId:N(h),chainName:(f==null?void 0:f.chainName)??m.name,iconUrls:f==null?void 0:f.iconUrls,nativeCurrency:(f==null?void 0:f.nativeCurrency)??m.nativeCurrency,rpcUrls:A};await p.request({method:"wallet_addEthereumChain",params:[v]});const x=await this.getRequestedChainsIds();return this.setRequestedChainsIds([...x,h]),m}catch(b){throw new D(b)}}},onAccountsChanged(f){f.length===0?this.onDisconnect():d.emitter.emit("change",{accounts:f.map(h=>$(h))})},onChainChanged(f){const h=Number(f);d.emitter.emit("change",{chainId:h})},async onConnect(f){const h=Number(f.chainId),p=await this.getAccounts();d.emitter.emit("connect",{accounts:p,chainId:h})},async onDisconnect(f){this.setRequestedChainsIds([]),d.emitter.emit("disconnect");const h=await this.getProvider();o&&(h.removeListener("accountsChanged",o),o=void 0),a&&(h.removeListener("chainChanged",a),a=void 0),l&&(h.removeListener("disconnect",l),l=void 0),u&&(h.removeListener("session_delete",u),u=void 0),i||(i=this.onConnect.bind(this),h.on("connect",i))},onDisplayUri(f){d.emitter.emit("message",{type:"display_uri",data:f})},onSessionDelete(){this.onDisconnect()},getNamespaceChainsIds(){var h,p,m;return n?((m=(p=(h=n.session)==null?void 0:h.namespaces[s])==null?void 0:p.accounts)==null?void 0:m.map(g=>Number.parseInt(g.split(":")[1]||"")))??[]:[]},async getRequestedChainsIds(){var f;return await((f=d.storage)==null?void 0:f.getItem(this.requestedChainsStorageKey))??[]},async isChainsStale(){if(!t)return!1;const f=d.chains.map(m=>m.id),h=this.getNamespaceChainsIds();if(h.length&&!h.some(m=>f.includes(m)))return!1;const p=await this.getRequestedChainsIds();return!f.every(m=>p.includes(m))},async setRequestedChainsIds(f){var h;await((h=d.storage)==null?void 0:h.setItem(this.requestedChainsStorageKey,f))},get requestedChainsStorageKey(){return`${this.id}.requestedChains`}})}const LA="5.1.9",$A=Object.freeze(Object.defineProperty({__proto__:null,coinbaseWallet:Hs,injected:mr,metaMask:Ia,mock:Gs,safe:xa,version:LA,walletConnect:Ea},Symbol.toStringTag,{value:"Module"}));exports.encodeFunctionData=Fe;exports.hashMessage=sr;exports.hashTypedData=Ts;exports.index=C1;exports.index$1=Hw;exports.index$2=$A;exports.index$3=UA;
|