@origintrail-official/dkg-node-ui 10.0.16 → 10.0.18

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.
Files changed (55) hide show
  1. package/dist/chain-cursor-stores.d.ts +48 -0
  2. package/dist/chain-cursor-stores.d.ts.map +1 -1
  3. package/dist/chain-cursor-stores.js +145 -0
  4. package/dist/chain-cursor-stores.js.map +1 -1
  5. package/dist/chain-event-log-store.d.ts +84 -0
  6. package/dist/chain-event-log-store.d.ts.map +1 -0
  7. package/dist/chain-event-log-store.js +289 -0
  8. package/dist/chain-event-log-store.js.map +1 -0
  9. package/dist/db.d.ts +16 -58
  10. package/dist/db.d.ts.map +1 -1
  11. package/dist/db.js +125 -144
  12. package/dist/db.js.map +1 -1
  13. package/dist/index.d.ts +3 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +3 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/protocol-outbox-store.d.ts +67 -0
  18. package/dist/protocol-outbox-store.d.ts.map +1 -0
  19. package/dist/protocol-outbox-store.js +199 -0
  20. package/dist/protocol-outbox-store.js.map +1 -0
  21. package/dist-ui/assets/{3d-force-graph-bUKbeTGZ.js → 3d-force-graph-DGF2sXeK.js} +1 -1
  22. package/dist-ui/assets/ActivityFeed-DNatshHL.js +99 -0
  23. package/dist-ui/assets/{AgentHub-4c4sH_Jd.js → AgentHub-lOm96XuE.js} +1 -1
  24. package/dist-ui/assets/{AgentProfilePage-ClhUeZxy.js → AgentProfilePage-BRtazufK.js} +1 -1
  25. package/dist-ui/assets/ApproveWalletsModal-BMtRgndO.js +3 -0
  26. package/dist-ui/assets/{ContextGraphPrimitives-Bwc2i7EX.js → ContextGraphPrimitives-CBc6kvmp.js} +1 -1
  27. package/dist-ui/assets/ConvictionDetailView-DOTYSm7p.js +2 -0
  28. package/dist-ui/assets/{MemoryLayerView-DxL2MjyA.js → MemoryLayerView-DDFI2ngR.js} +2 -2
  29. package/dist-ui/assets/{MemoryStackView-BLhA3bn0.js → MemoryStackView-Bol2eMyq.js} +1 -1
  30. package/dist-ui/assets/{Network-BNhbBzOD.js → Network-B49IxpAj.js} +1 -1
  31. package/dist-ui/assets/{OnChainProvenanceCard-DKyfVEjF.js → OnChainProvenanceCard-BpUoHg4b.js} +1 -1
  32. package/dist-ui/assets/{Operations-mCPe0E-j.js → Operations-BCQ545Yk.js} +1 -1
  33. package/dist-ui/assets/{ProjectView-jrGPu5ON.js → ProjectView-BaQQSy8L.js} +20 -20
  34. package/dist-ui/assets/PublishingConviction-B5nWRsUP.js +2 -0
  35. package/dist-ui/assets/Settings-DeZKX_Ry.js +1 -0
  36. package/dist-ui/assets/browserWalletTransaction-B6wyaMOV.js +55 -0
  37. package/dist-ui/assets/ccip-B_vQl40F.js +1 -0
  38. package/dist-ui/assets/{index-VYV5TH6q.css → index-BLQUVvVz.css} +1 -1
  39. package/dist-ui/assets/index-CT-LdpBE.js +1175 -0
  40. package/dist-ui/assets/{index-UvxrSkC_.js → index-DHd3qhAk.js} +3 -3
  41. package/dist-ui/assets/{jsonld-32FQRO67-Dl6_9Lk9.js → jsonld-32FQRO67-BYu8pE-5.js} +2 -2
  42. package/dist-ui/assets/{jsonld-Dj4KMENF.js → jsonld-Crm5iwcE.js} +1 -1
  43. package/dist-ui/assets/{renderer-3d-2EVDZII7-DfnhcMkF.js → renderer-3d-2EVDZII7-C2z5aUgo.js} +2 -2
  44. package/dist-ui/assets/{shikiHighlighter-ByXDJnWi.js → shikiHighlighter-DW1fRfBU.js} +1 -1
  45. package/dist-ui/assets/{useEntityOnChainReceipt-BRK_O_sb.js → useEntityOnChainReceipt-0Ub24t6e.js} +1 -1
  46. package/dist-ui/assets/{useProjectActivity-OdoQs9mK.js → useProjectActivity-CLza3psq.js} +1 -1
  47. package/dist-ui/index.html +2 -2
  48. package/package.json +3 -3
  49. package/dist-ui/assets/ActivityFeed-CC5S_gk9.js +0 -100
  50. package/dist-ui/assets/ApproveWalletsModal-CBKp6zQB.js +0 -57
  51. package/dist-ui/assets/ConvictionDetailView-a3v7xwcm.js +0 -2
  52. package/dist-ui/assets/PublishingConviction-BGi128uo.js +0 -2
  53. package/dist-ui/assets/Settings-D1oxLo1Y.js +0 -1
  54. package/dist-ui/assets/ccip-WHHgwjp-.js +0 -1
  55. package/dist-ui/assets/index-RLb1kuzE.js +0 -1174
@@ -0,0 +1,55 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ccip-B_vQl40F.js","assets/index-CT-LdpBE.js","assets/index-BLQUVvVz.css"])))=>i.map(i=>d[i]);
2
+ var du=Object.defineProperty;var lu=(e,t,n)=>t in e?du(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var it=(e,t,n)=>lu(e,typeof t!="symbol"?t+"":t,n);import{y as Ni,aO as _,c as hu,e as pu,bc as ve,bN as ye,b1 as dr,bp as bu,h as ko,W as mu,d as yu,_ as Ri,aZ as gu,q as wu,N as No}from"./index-CT-LdpBE.js";/**
3
+ * @license lucide-react v1.14.0 - ISC
4
+ *
5
+ * This source code is licensed under the ISC license.
6
+ * See the LICENSE file in the root directory of this source tree.
7
+ */const vu=[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]],xu=Ni("power",vu);/**
8
+ * @license lucide-react v1.14.0 - ISC
9
+ *
10
+ * This source code is licensed under the ISC license.
11
+ * See the LICENSE file in the root directory of this source tree.
12
+ */const Eu=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Pu=Ni("refresh-cw",Eu);function Au(e=1200){const[t,n]=ve.useState(!1),r=ve.useRef(null);ve.useEffect(()=>()=>{r.current&&clearTimeout(r.current)},[]);const s=ve.useCallback(o=>{var i;(i=navigator.clipboard)==null||i.writeText(o).then(()=>{n(!0),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>n(!1),e)}).catch(()=>{})},[e]);return{copied:t,copy:s}}function $u({value:e,label:t="Copy",className:n=""}){const{copied:r,copy:s}=Au(),o=r?"Copied":t;return _.jsxs(_.Fragment,{children:[_.jsx("button",{type:"button",className:["v10-pca-copy-btn",n].filter(Boolean).join(" "),onClick:()=>s(e),"aria-label":o,title:o,children:r?_.jsx(hu,{size:13,"aria-hidden":"true"}):_.jsx(pu,{size:13,"aria-hidden":"true"})}),_.jsx("span",{className:"v10-pca-copy-announce","aria-live":"polite",children:r?"Copied":""})]})}function Oi(e,t=6,n=4){const r=(e??"").trim();return r.length<=t+n+1?r:`${r.slice(0,t)}…${r.slice(-n)}`}function wb({address:e,status:t,statusTone:n="neutral",gas:r,trailing:s,className:o=""}){const i=typeof t=="string"?t:void 0,a=i?`${e}, ${i}`:e;return _.jsxs("div",{className:["v10-wallet-row",o].filter(Boolean).join(" "),role:"group","aria-label":a,children:[_.jsx("span",{className:"v10-wallet-addr",title:e,children:Oi(e)}),_.jsx($u,{value:e,label:`Copy address ${e}`}),t!=null&&_.jsx("span",{className:"v10-wallet-status","data-tone":n,children:t}),r!=null&&_.jsx("span",{className:"v10-wallet-gas",children:r}),s!=null&&_.jsx("span",{className:"v10-wallet-trailing",children:s})]})}function Iu(e){return(e==null?void 0:e.trim())||"browser wallet"}function Bu({bootstrap:e,className:t="",testId:n="wallet-pill"}){const r=ye(y=>y.address),s=ye(y=>y.providerInfo),o=ye(y=>y.provider),i=ye(y=>y.chainId),a=ye(y=>y.expectedChainId),c=ye(y=>y.disconnect),f=ye(y=>y.switchToExpectedChain),[u,d]=ve.useState(!1),[l,p]=ve.useState(null);if(!r)return null;const h=e?dr(e.chainId):a,b=h!=null&&i!==h,w=Iu(s==null?void 0:s.name),x=`Connected wallet ${r} via ${w}; ${b?"wrong network":"connected"}`,g=async()=>{d(!0),p(null);try{if(e){if(!o)throw new Error("Wallet not connected.");await bu(o,e)}else await f()}catch(y){p((y==null?void 0:y.message)??"Could not switch wallet network.")}finally{d(!1)}};return _.jsxs("div",{className:["v10-wallet-pill-wrap",t].filter(Boolean).join(" "),"data-testid":n,children:[_.jsxs("div",{className:"v10-wallet-pill","data-state":b?"wrong-network":"connected",role:"group","aria-label":x,children:[_.jsx("span",{className:"v10-wallet-pill-main",title:r,children:Oi(r)}),_.jsxs("span",{className:"v10-wallet-pill-provider",children:["via ",w]}),b?_.jsx("span",{className:"badge badge-warn v10-wallet-pill-network",role:"alert",children:"wrong network"}):_.jsx("span",{className:"badge badge-success",children:"connected"}),_.jsxs("button",{type:"button",className:"v10-wallet-pill-btn",onClick:c,title:"Disconnect this wallet before switching to another wallet",children:[_.jsx(xu,{size:13,"aria-hidden":"true"}),_.jsx("span",{children:"Disconnect"})]})]}),b&&_.jsxs("div",{className:"v10-wallet-pill-sub",children:[_.jsxs("span",{children:["Connected chain ",i??"-","; node expects ",h??"-","."]}),_.jsxs("button",{type:"button",className:"v10-wallet-pill-link",onClick:g,disabled:u,children:[_.jsx(Pu,{size:12,"aria-hidden":"true"}),_.jsx("span",{children:u?"Switching...":"Switch"})]})]}),l&&_.jsx("p",{className:"v10-wallet-error",role:"alert",children:l})]})}function Ro(e){var t;return((t=e.info.name)==null?void 0:t.trim())||e.info.rdns||"Browser wallet"}function Oo(e){return e.info.uuid||`${e.info.rdns}:${e.info.name}`}function vb({className:e="",testId:t="wallet-connect",description:n=_.jsx(_.Fragment,{children:"Hardware wallet recommended. Verify every transaction on the signing device before confirming."})}){const r=ye(m=>m.discovered),s=ye(m=>m.unsupported),o=ye(m=>m.address),i=ye(m=>m.initWallet),a=ye(m=>m.connect),[c,f]=ve.useState(!1),[u,d]=ve.useState(null),[l,p]=ve.useState(null);ve.useEffect(()=>{i()},[i]);const h=ve.useMemo(()=>s.map(m=>Ro(m)).join(", "),[s]);if(o)return _.jsxs("div",{className:["v10-wallet-connect",e].filter(Boolean).join(" "),children:[_.jsx(Bu,{}),_.jsx("p",{className:"v10-wallet-note",children:"One active wallet in v1. Disconnect to switch accounts or providers."})]});const b=async m=>{const x=Oo(m);d(x),p(null);try{await a(m),f(!1)}catch(g){p((g==null?void 0:g.message)??"Wallet connection failed.")}finally{d(null)}},w=()=>{if(r.length===1){b(r[0]);return}f(m=>!m)};return _.jsxs("div",{className:["v10-wallet-connect",e].filter(Boolean).join(" "),children:[_.jsxs("button",{type:"button",className:"v10-wallet-connect-btn","data-testid":t,onClick:w,"aria-expanded":c,children:[u?_.jsx(ko,{size:14,"aria-hidden":"true"}):_.jsx(mu,{size:14,"aria-hidden":"true"}),_.jsx("span",{children:u?"Connecting...":"Connect wallet"}),r.length!==1&&_.jsx(yu,{size:14,"aria-hidden":"true"})]}),_.jsx("p",{className:"v10-wallet-note",children:n}),_.jsx("p",{className:"v10-wallet-note",children:"Provider names are self-reported and display-only."}),c&&_.jsx("div",{className:"v10-wallet-picker",role:"menu","aria-label":"Wallet providers",children:r.length>0?r.map(m=>{const x=Oo(m);return _.jsxs("button",{type:"button",className:"v10-wallet-provider",role:"menuitem",onClick:()=>void b(m),disabled:u!=null,children:[m.info.icon&&_.jsx("img",{src:m.info.icon,alt:"","aria-hidden":"true",className:"v10-wallet-provider-icon"}),_.jsx("span",{children:Ro(m)}),u===x&&_.jsx(ko,{size:13,"aria-hidden":"true"})]},x)}):_.jsx("p",{className:"v10-wallet-picker-empty",children:"No supported injected wallet detected. Use a browser wallet that can connect to your hardware wallet."})}),h&&_.jsxs("p",{className:"v10-wallet-note",role:"status",children:["Unsupported provider detected: ",h,"."]}),l&&_.jsx("p",{className:"v10-wallet-error",role:"alert",children:l})]})}const Su="1.2.3";let ae=class ts extends Error{constructor(t,n={}){var i;const r=n.cause instanceof ts?n.cause.details:(i=n.cause)!=null&&i.message?n.cause.message:n.details,s=n.cause instanceof ts&&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@${Su}`].join(`
13
+ `);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 Ve(e,t){const n=e.exec(t);return n==null?void 0:n.groups}const Fi=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Mi=/^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)?$/,zi=/^\(.+?\).*?$/,Fo=/^tuple(?<array>(\[(\d*)\])*)$/;function ns(e){let t=e.type;if(Fo.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+=ns(o),s<n-1&&(t+=", ")}const r=Ve(Fo,e.type);return t+=`)${(r==null?void 0:r.array)||""}`,ns({...e,type:t})}return"indexed"in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function St(e){let t="";const n=e.length;for(let r=0;r<n;r++){const s=e[r];t+=ns(s),r!==n-1&&(t+=", ")}return t}function Qn(e){var t;return e.type==="function"?`function ${e.name}(${St(e.inputs)})${e.stateMutability&&e.stateMutability!=="nonpayable"?` ${e.stateMutability}`:""}${(t=e.outputs)!=null&&t.length?` returns (${St(e.outputs)})`:""}`:e.type==="event"?`event ${e.name}(${St(e.inputs)})`:e.type==="error"?`error ${e.name}(${St(e.inputs)})`:e.type==="constructor"?`constructor(${St(e.inputs)})${e.stateMutability==="payable"?" payable":""}`:e.type==="fallback"?`fallback() external${e.stateMutability==="payable"?" payable":""}`:"receive() external payable"}const ji=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function Tu(e){return ji.test(e)}function Cu(e){return Ve(ji,e)}const Li=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function ku(e){return Li.test(e)}function Nu(e){return Ve(Li,e)}const _i=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;function Ru(e){return _i.test(e)}function Ou(e){return Ve(_i,e)}const Ui=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function lr(e){return Ui.test(e)}function Fu(e){return Ve(Ui,e)}const Di=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;function Mu(e){return Di.test(e)}function zu(e){return Ve(Di,e)}const qi=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;function ju(e){return qi.test(e)}function Lu(e){return Ve(qi,e)}const _u=/^receive\(\) external payable$/;function Uu(e){return _u.test(e)}const Mo=new Set(["memory","indexed","storage","calldata"]),Du=new Set(["indexed"]),rs=new Set(["calldata","memory","storage"]);class qu extends ae{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 Gu extends ae{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 Hu extends ae{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 Vu extends ae{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 Wu extends ae{constructor({param:t}){super("Invalid ABI parameter.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class Zu extends ae{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 Ku extends ae{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 Yu extends ae{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 Ju extends ae{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 qt extends ae{constructor({signature:t,type:n}){super(`Invalid ${n} signature.`,{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class Xu extends ae{constructor({signature:t}){super("Unknown signature.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class Qu extends ae{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 e0 extends ae{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 t0 extends ae{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 n0(e,t,n){let r="";if(n)for(const s of Object.entries(n)){if(!s)continue;let o="";for(const i of s[1])o+=`[${i.type}${i.name?`:${i.name}`:""}]`;r+=`(${s[0]}{${o}})`}return t?`${t}:${e}${r}`:`${e}${r}`}const Nr=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 ss(e,t={}){if(Ru(e))return r0(e,t);if(ku(e))return s0(e,t);if(Tu(e))return o0(e,t);if(Mu(e))return i0(e,t);if(ju(e))return a0(e);if(Uu(e))return{type:"receive",stateMutability:"payable"};throw new Xu({signature:e})}function r0(e,t={}){const n=Ou(e);if(!n)throw new qt({signature:e,type:"function"});const r=le(n.parameters),s=[],o=r.length;for(let a=0;a<o;a++)s.push(qe(r[a],{modifiers:rs,structs:t,type:"function"}));const i=[];if(n.returns){const a=le(n.returns),c=a.length;for(let f=0;f<c;f++)i.push(qe(a[f],{modifiers:rs,structs:t,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:s,outputs:i}}function s0(e,t={}){const n=Nu(e);if(!n)throw new qt({signature:e,type:"event"});const r=le(n.parameters),s=[],o=r.length;for(let i=0;i<o;i++)s.push(qe(r[i],{modifiers:Du,structs:t,type:"event"}));return{name:n.name,type:"event",inputs:s}}function o0(e,t={}){const n=Cu(e);if(!n)throw new qt({signature:e,type:"error"});const r=le(n.parameters),s=[],o=r.length;for(let i=0;i<o;i++)s.push(qe(r[i],{structs:t,type:"error"}));return{name:n.name,type:"error",inputs:s}}function i0(e,t={}){const n=zu(e);if(!n)throw new qt({signature:e,type:"constructor"});const r=le(n.parameters),s=[],o=r.length;for(let i=0;i<o;i++)s.push(qe(r[i],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:s}}function a0(e){const t=Lu(e);if(!t)throw new qt({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}const c0=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\spayable)?)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,u0=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,f0=/^u?int$/;function qe(e,t){var d,l;const n=n0(e,t==null?void 0:t.type,t==null?void 0:t.structs);if(Nr.has(n))return Nr.get(n);const r=zi.test(e),s=Ve(r?u0:c0,e);if(!s)throw new Wu({param:e});if(s.name&&l0(s.name))throw new Zu({param:e,name:s.name});const o=s.name?{name:s.name}:{},i=s.modifier==="indexed"?{indexed:!0}:{},a=(t==null?void 0:t.structs)??{};let c,f={};if(r){c="tuple";const p=le(s.type),h=[],b=p.length;for(let w=0;w<b;w++)h.push(qe(p[w],{structs:a}));f={components:h}}else if(s.type in a)c="tuple",f={components:a[s.type]};else if(f0.test(s.type))c=`${s.type}256`;else if(s.type==="address payable")c="address";else if(c=s.type,(t==null?void 0:t.type)!=="struct"&&!Gi(c))throw new Hu({type:c});if(s.modifier){if(!((l=(d=t==null?void 0:t.modifiers)==null?void 0:d.has)!=null&&l.call(d,s.modifier)))throw new Ku({param:e,type:t==null?void 0:t.type,modifier:s.modifier});if(rs.has(s.modifier)&&!h0(c,!!s.array))throw new Yu({param:e,type:t==null?void 0:t.type,modifier:s.modifier})}const u={type:`${c}${s.array??""}`,...o,...i,...f};return Nr.set(n,u),u}function le(e,t=[],n="",r=0){const s=e.trim().length;for(let o=0;o<s;o++){const i=e[o],a=e.slice(o+1);switch(i){case",":return r===0?le(a,[...t,n.trim()]):le(a,t,`${n}${i}`,r);case"(":return le(a,t,`${n}${i}`,r+1);case")":return le(a,t,`${n}${i}`,r-1);default:return le(a,t,`${n}${i}`,r)}}if(n==="")return t;if(r!==0)throw new t0({current:n,depth:r});return t.push(n.trim()),t}function Gi(e){return e==="address"||e==="bool"||e==="function"||e==="string"||Fi.test(e)||Mi.test(e)}const d0=/^(?: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 l0(e){return e==="address"||e==="bool"||e==="function"||e==="string"||e==="tuple"||Fi.test(e)||Mi.test(e)||d0.test(e)}function h0(e,t){return t||e==="bytes"||e==="string"||e==="tuple"}function Ms(e){const t={},n=e.length;for(let i=0;i<n;i++){const a=e[i];if(!lr(a))continue;const c=Fu(a);if(!c)throw new qt({signature:a,type:"struct"});const f=c.properties.split(";"),u=[],d=f.length;for(let l=0;l<d;l++){const h=f[l].trim();if(!h)continue;const b=qe(h,{type:"struct"});u.push(b)}if(!u.length)throw new Qu({signature:a});t[c.name]=u}const r={},s=Object.entries(t),o=s.length;for(let i=0;i<o;i++){const[a,c]=s[i];r[a]=Hi(c,t)}return r}const p0=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function Hi(e=[],t={},n=new Set){const r=[],s=e.length;for(let o=0;o<s;o++){const i=e[o];if(zi.test(i.type))r.push(i);else{const c=Ve(p0,i.type);if(!(c!=null&&c.type))throw new Ju({abiParameter:i});const{array:f,type:u}=c;if(u in t){if(n.has(u))throw new e0({type:u});r.push({...i,type:`tuple${f??""}`,components:Hi(t[u],t,new Set([...n,u]))})}else if(Gi(u))r.push(i);else throw new Gu({type:u})}}return r}function Vi(e){const t=Ms(e),n=[],r=e.length;for(let s=0;s<r;s++){const o=e[s];lr(o)||n.push(ss(o,t))}return n}function zo(e){let t;if(typeof e=="string")t=ss(e);else{const n=Ms(e),r=e.length;for(let s=0;s<r;s++){const o=e[s];if(!lr(o)){t=ss(o,n);break}}}if(!t)throw new qu({signature:e});return t}function jo(e){const t=[];if(typeof e=="string"){const n=le(e),r=n.length;for(let s=0;s<r;s++)t.push(qe(n[s],{modifiers:Mo}))}else{const n=Ms(e),r=e.length;for(let s=0;s<r;s++){const o=e[s];if(lr(o))continue;const i=le(o),a=i.length;for(let c=0;c<a;c++)t.push(qe(i[c],{modifiers:Mo,structs:n}))}}if(t.length===0)throw new Vu({params:e});return t}function M(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)}function Ee(e,{includeName:t=!1}={}){if(e.type!=="function"&&e.type!=="event"&&e.type!=="error")throw new S0(e.type);return`${e.name}(${hr(e.inputs,{includeName:t})})`}function hr(e,{includeName:t=!1}={}){return e?e.map(n=>b0(n,{includeName:t})).join(t?", ":","):""}function b0(e,{includeName:t}){return e.type.startsWith("tuple")?`(${hr(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:"")}function ke(e,{strict:t=!0}={}){return!e||typeof e!="string"?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")}function W(e){return ke(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}const Wi="2.53.1";let nn={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:n})=>t?`${e??"https://viem.sh"}${t}${n?`#${n}`:""}`:void 0,version:`viem@${Wi}`},I=class os extends Error{constructor(t,n={}){var a;const r=(()=>{var c;return n.cause instanceof os?n.cause.details:(c=n.cause)!=null&&c.message?n.cause.message:n.details})(),s=n.cause instanceof os&&n.cause.docsPath||n.docsPath,o=(a=nn.getDocsUrl)==null?void 0:a.call(nn,{...n,docsPath:s}),i=[t||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...o?[`Docs: ${o}`]:[],...r?[`Details: ${r}`]:[],...nn.version?[`Version: ${nn.version}`]:[]].join(`
14
+ `);super(i,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=Wi}walk(t){return Zi(this,t)}};function Zi(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause!==void 0?Zi(e.cause,t):t?null:e}class m0 extends I{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(`
15
+ `),{docsPath:t,name:"AbiConstructorNotFoundError"})}}class Lo extends I{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(`
16
+ `),{docsPath:t,name:"AbiConstructorParamsNotFoundError"})}}class Ki extends I{constructor({data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for given parameters.`].join(`
17
+ `),{metaMessages:[`Params: (${hr(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 Nn extends I{constructor({cause:t}={}){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError",cause:t})}}class y0 extends I{constructor({expectedLength:t,givenLength:n,type:r}){super([`ABI encoding array length mismatch for type ${r}.`,`Expected length: ${t}`,`Given length: ${n}`].join(`
18
+ `),{name:"AbiEncodingArrayLengthMismatchError"})}}class g0 extends I{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${W(n)}) does not match expected size (bytes${t}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class w0 extends I{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${n}`].join(`
19
+ `),{name:"AbiEncodingLengthMismatchError"})}}class v0 extends I{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(`
20
+ `),{docsPath:n,name:"AbiErrorInputsNotFoundError"})}}class _o extends I{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(`
21
+ `),{docsPath:n,name:"AbiErrorNotFoundError"})}}class Yi extends I{constructor(t,{docsPath:n,cause:r}){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://4byte.sourcify.dev/?q=${t}.`].join(`
22
+ `),{docsPath:n,name:"AbiErrorSignatureNotFoundError",cause:r}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=t}}class x0 extends I{constructor({docsPath:t}){super("Cannot extract event signature from empty topics.",{docsPath:t,name:"AbiEventSignatureEmptyTopicsError"})}}class E0 extends I{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://4byte.sourcify.dev/?q=${t}.`].join(`
23
+ `),{docsPath:n,name:"AbiEventSignatureNotFoundError"})}}class Uo extends I{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(`
24
+ `),{docsPath:n,name:"AbiEventNotFoundError"})}}class Ot extends I{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(`
25
+ `),{docsPath:n,name:"AbiFunctionNotFoundError"})}}class Ji extends I{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(`
26
+ `),{docsPath:n,name:"AbiFunctionOutputsNotFoundError"})}}class P0 extends I{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://4byte.sourcify.dev/?q=${t}.`].join(`
27
+ `),{docsPath:n,name:"AbiFunctionSignatureNotFoundError"})}}class A0 extends I{constructor(t,n){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${t.type}\` in \`${Ee(t.abiItem)}\`, and`,`\`${n.type}\` in \`${Ee(n.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}let $0=class extends I{constructor({expectedSize:t,givenSize:n}){super(`Expected bytes${t}, got bytes${n}.`,{name:"BytesSizeMismatchError"})}};class er extends I{constructor({abiItem:t,data:n,params:r,size:s}){super([`Data size of ${s} bytes is too small for non-indexed event parameters.`].join(`
28
+ `),{metaMessages:[`Params: (${hr(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 zs extends I{constructor({abiItem:t,param:n}){super([`Expected a topic for indexed event parameter${n.name?` "${n.name}"`:""} on event "${Ee(t,{includeName:!0})}".`].join(`
29
+ `),{name:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t}}class I0 extends I{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
30
+ `),{docsPath:n,name:"InvalidAbiEncodingType"})}}class B0 extends I{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
31
+ `),{docsPath:n,name:"InvalidAbiDecodingType"})}}let Xi=class extends I{constructor(t){super([`Value "${t}" is not a valid array.`].join(`
32
+ `),{name:"InvalidArrayError"})}};class S0 extends I{constructor(t){super([`"${t}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
33
+ `),{name:"InvalidDefinitionTypeError"})}}class Pb extends I{constructor(t){super(`Type "${t}" is not supported for packed encoding.`,{name:"UnsupportedPackedAbiType"})}}class T0 extends I{constructor(t){super(`Filter type "${t}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}let Qi=class extends I{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset "${t}" is out-of-bounds (size: ${r}).`,{name:"SliceOffsetOutOfBoundsError"})}},ea=class extends I{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 Do extends I{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 Gt(e,{dir:t,size:n=32}={}){return typeof e=="string"?Ye(e,{dir:t,size:n}):C0(e,{dir:t,size:n})}function Ye(e,{dir:t,size:n=32}={}){if(n===null)return e;const r=e.replace("0x","");if(r.length>n*2)throw new ea({size:Math.ceil(r.length/2),targetSize:n,type:"hex"});return`0x${r[t==="right"?"padEnd":"padStart"](n*2,"0")}`}function C0(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new ea({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}let js=class extends I{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"})}},k0=class extends I{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 N0 extends I{constructor(t){super(`Hex value "${t}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}}let R0=class extends I{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed ${n} bytes. Given size: ${t} bytes.`,{name:"SizeOverflowError"})}};function _e(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}function Be(e,{size:t}){if(W(e)>t)throw new R0({givenSize:W(e),maxSize:t})}function he(e,t={}){const{signed:n}=t;t.size&&Be(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 O0(e,t={}){let n=e;if(t.size&&(Be(n,{size:t.size}),n=_e(n)),_e(n)==="0x00")return!1;if(_e(n)==="0x01")return!0;throw new N0(n)}function Pe(e,t={}){const n=he(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new js({max:`${Number.MAX_SAFE_INTEGER}`,min:`${Number.MIN_SAFE_INTEGER}`,signed:t.signed,size:t.size,value:`${n}n`});return r}const F0=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Ge(e,t={}){return typeof e=="number"||typeof e=="bigint"?L(e,t):typeof e=="string"?an(e,t):typeof e=="boolean"?ta(e,t):Y(e,t)}function ta(e,t={}){const n=`0x${Number(e)}`;return typeof t.size=="number"?(Be(n,{size:t.size}),Gt(n,{size:t.size})):n}function Y(e,t={}){let n="";for(let s=0;s<e.length;s++)n+=F0[e[s]];const r=`0x${n}`;return typeof t.size=="number"?(Be(r,{size:t.size}),Gt(r,{dir:"right",size:t.size})):r}function L(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 i=typeof o=="bigint"&&n?-o-1n:0;if(o&&s>o||s<i){const c=typeof e=="bigint"?"n":"";throw new js({max:o?`${o}${c}`:void 0,min:`${i}${c}`,signed:n,size:r,value:`${e}${c}`})}const a=`0x${(n&&s<0?(1n<<BigInt(r*8))+BigInt(s):s).toString(16)}`;return r?Gt(a,{size:r}):a}const M0=new TextEncoder;function an(e,t={}){const n=M0.encode(e);return Y(n,t)}const z0=new TextEncoder;function Ht(e,t={}){return typeof e=="number"||typeof e=="bigint"?L0(e,t):typeof e=="boolean"?j0(e,t):ke(e)?Ne(e,t):ft(e,t)}function j0(e,t={}){const n=new Uint8Array(1);return n[0]=Number(e),typeof t.size=="number"?(Be(n,{size:t.size}),Gt(n,{size:t.size})):n}const Fe={zero:48,nine:57,A:65,F:70,a:97,f:102};function qo(e){if(e>=Fe.zero&&e<=Fe.nine)return e-Fe.zero;if(e>=Fe.A&&e<=Fe.F)return e-(Fe.A-10);if(e>=Fe.a&&e<=Fe.f)return e-(Fe.a-10)}function Ne(e,t={}){let n=e;t.size&&(Be(n,{size:t.size}),n=Gt(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 i=0,a=0;i<s;i++){const c=qo(r.charCodeAt(a++)),f=qo(r.charCodeAt(a++));if(c===void 0||f===void 0)throw new I(`Invalid byte sequence ("${r[a-2]}${r[a-1]}" in "${r}").`);o[i]=c*16+f}return o}function L0(e,t){const n=L(e,t);return Ne(n)}function ft(e,t={}){const n=z0.encode(e);return typeof t.size=="number"?(Be(n,{size:t.size}),Gt(n,{dir:"right",size:t.size})):n}const Hn=BigInt(2**32-1),Go=BigInt(32);function _0(e,t=!1){return t?{h:Number(e&Hn),l:Number(e>>Go&Hn)}:{h:Number(e>>Go&Hn)|0,l:Number(e&Hn)|0}}function U0(e,t=!1){const n=e.length;let r=new Uint32Array(n),s=new Uint32Array(n);for(let o=0;o<n;o++){const{h:i,l:a}=_0(e[o],t);[r[o],s[o]]=[i,a]}return[r,s]}const D0=(e,t,n)=>e<<n|t>>>32-n,q0=(e,t,n)=>t<<n|e>>>32-n,G0=(e,t,n)=>t<<n-32|e>>>64-n,H0=(e,t,n)=>e<<n-32|t>>>64-n,It=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function V0(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function cn(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function ht(e,...t){if(!V0(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function W0(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");cn(e.outputLen),cn(e.blockLen)}function Ft(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 na(e,t){ht(e);const n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function Z0(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Mt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Rr(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Te(e,t){return e<<32-t|e>>>t}const K0=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Y0(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function J0(e){for(let t=0;t<e.length;t++)e[t]=Y0(e[t]);return e}const Ho=K0?e=>e:J0;function X0(e){if(typeof e!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function pr(e){return typeof e=="string"&&(e=X0(e)),ht(e),e}function Q0(...e){let t=0;for(let r=0;r<e.length;r++){const s=e[r];ht(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 Ls{}function ra(e){const t=r=>e().update(pr(r)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function ef(e=32){if(It&&typeof It.getRandomValues=="function")return It.getRandomValues(new Uint8Array(e));if(It&&typeof It.randomBytes=="function")return Uint8Array.from(It.randomBytes(e));throw new Error("crypto.getRandomValues must be defined")}const tf=BigInt(0),rn=BigInt(1),nf=BigInt(2),rf=BigInt(7),sf=BigInt(256),of=BigInt(113),sa=[],oa=[],ia=[];for(let e=0,t=rn,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],sa.push(2*(5*r+n)),oa.push((e+1)*(e+2)/2%64);let s=tf;for(let o=0;o<7;o++)t=(t<<rn^(t>>rf)*of)%sf,t&nf&&(s^=rn<<(rn<<BigInt(o))-rn);ia.push(s)}const aa=U0(ia,!0),af=aa[0],cf=aa[1],Vo=(e,t,n)=>n>32?G0(e,t,n):D0(e,t,n),Wo=(e,t,n)=>n>32?H0(e,t,n):q0(e,t,n);function uf(e,t=24){const n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let i=0;i<10;i++)n[i]=e[i]^e[i+10]^e[i+20]^e[i+30]^e[i+40];for(let i=0;i<10;i+=2){const a=(i+8)%10,c=(i+2)%10,f=n[c],u=n[c+1],d=Vo(f,u,1)^n[a],l=Wo(f,u,1)^n[a+1];for(let p=0;p<50;p+=10)e[i+p]^=d,e[i+p+1]^=l}let s=e[2],o=e[3];for(let i=0;i<24;i++){const a=oa[i],c=Vo(s,o,a),f=Wo(s,o,a),u=sa[i];s=e[u],o=e[u+1],e[u]=c,e[u+1]=f}for(let i=0;i<50;i+=10){for(let a=0;a<10;a++)n[a]=e[i+a];for(let a=0;a<10;a++)e[i+a]^=~n[(a+2)%10]&n[(a+4)%10]}e[0]^=af[r],e[1]^=cf[r]}Mt(n)}class _s extends Ls{constructor(t,n,r,s=!1,o=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=t,this.suffix=n,this.outputLen=r,this.enableXOF=s,this.rounds=o,cn(r),!(0<t&&t<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=Z0(this.state)}clone(){return this._cloneInto()}keccak(){Ho(this.state32),uf(this.state32,this.rounds),Ho(this.state32),this.posOut=0,this.pos=0}update(t){Ft(this),t=pr(t),ht(t);const{blockLen:n,state:r}=this,s=t.length;for(let o=0;o<s;){const i=Math.min(n-this.pos,s-o);for(let a=0;a<i;a++)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)!==0&&r===s-1&&this.keccak(),t[s-1]^=128,this.keccak()}writeInto(t){Ft(this,!1),ht(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 i=Math.min(r-this.posOut,o-s);t.set(n.subarray(this.posOut,this.posOut+i),s),this.posOut+=i,s+=i}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return cn(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(na(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,Mt(this.state)}_cloneInto(t){const{blockLen:n,suffix:r,outputLen:s,rounds:o,enableXOF:i}=this;return t||(t=new _s(n,r,s,i,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=i,t.destroyed=this.destroyed,t}}const ff=(e,t,n)=>ra(()=>new _s(t,e,n)),ca=ff(1,136,256/8);function Q(e,t){const n=t||"hex",r=ca(ke(e,{strict:!1})?Ht(e):e);return n==="bytes"?r:Ge(r)}const df=e=>Q(Ht(e));function lf(e){return df(e)}function hf(e){let t=!0,n="",r=0,s="",o=!1;for(let i=0;i<e.length;i++){const a=e[i];if(["(",")",","].includes(a)&&(t=!0),a==="("&&r++,a===")"&&r--,!!t){if(r===0){if(a===" "&&["event","function",""].includes(s))s="";else if(s+=a,a===")"){o=!0;break}continue}if(a===" "){e[i-1]!==","&&n!==","&&n!==",("&&(n="",t=!1);continue}s+=a,n+=a}}if(!o)throw new I("Unable to normalize signature.");return s}const pf=e=>{const t=typeof e=="string"?e:Qn(e);return hf(t)};function ua(e){return lf(pf(e))}const br=ua;let Xe=class extends I{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"})}},Vt=class 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)&&(super.delete(t),super.set(t,n)),n}set(t,n){if(super.has(t)&&super.delete(t),super.set(t,n),this.maxSize&&this.size>this.maxSize){const r=super.keys().next().value;r!==void 0&&super.delete(r)}return this}};const Or=new Vt(8192);function Rn(e,t){if(Or.has(`${e}.${t}`))return Or.get(`${e}.${t}`);const n=e.substring(2).toLowerCase(),r=Q(ft(n),"bytes"),s=n.split("");for(let i=0;i<40;i+=2)r[i>>1]>>4>=8&&s[i]&&(s[i]=s[i].toUpperCase()),(r[i>>1]&15)>=8&&s[i+1]&&(s[i+1]=s[i+1].toUpperCase());const o=`0x${s.join("")}`;return Or.set(`${e}.${t}`,o),o}function pt(e,t){if(!ge(e,{strict:!1}))throw new Xe({address:e});return Rn(e,t)}const bf=/^0x[a-fA-F0-9]{40}$/,Fr=new Vt(8192);function ge(e,t){const{strict:n=!0}=t??{},r=`${e}.${n}`;if(Fr.has(r))return Fr.get(r);const s=bf.test(e)?e.toLowerCase()===e?!0:n?Rn(e)===e:!0:!1;return Fr.set(r,s),s}function ee(e){return typeof e[0]=="string"?Wt(e):mf(e)}function mf(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 Wt(e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function bt(e,t,n,{strict:r}={}){return ke(e,{strict:!1})?is(e,t,n,{strict:r}):la(e,t,n,{strict:r})}function fa(e,t){if(typeof t=="number"&&t>0&&t>W(e)-1)throw new Qi({offset:t,position:"start",size:W(e)})}function da(e,t,n){if(typeof t=="number"&&typeof n=="number"&&W(e)!==n-t)throw new Qi({offset:n,position:"end",size:W(e)})}function la(e,t,n,{strict:r}={}){fa(e,t);const s=e.slice(t,n);return r&&da(s,t,n),s}function is(e,t,n,{strict:r}={}){fa(e,t);const s=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return r&&da(s,t,n),s}const kb=/^(.*)\[([0-9]*)\]$/,yf=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ha=/^(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 Et(e,t){if(e.length!==t.length)throw new w0({expectedLength:e.length,givenLength:t.length});const n=gf({params:e,values:t}),r=Ds(n);return r.length===0?"0x":r}function gf({params:e,values:t}){const n=[];for(let r=0;r<e.length;r++)n.push(Us({param:e[r],value:t[r]}));return n}function Us({param:e,value:t}){const n=qs(e.type);if(n){const[r,s]=n;return vf(t,{length:r,param:{...e,type:s}})}if(e.type==="tuple")return $f(t,{param:e});if(e.type==="address")return wf(t);if(e.type==="bool")return Ef(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){const r=e.type.startsWith("int"),[,,s="256"]=ha.exec(e.type)??[];return Pf(t,{signed:r,size:Number(s)})}if(e.type.startsWith("bytes"))return xf(t,{param:e});if(e.type==="string")return Af(t);throw new I0(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function Ds(e){let t=0;for(let o=0;o<e.length;o++){const{dynamic:i,encoded:a}=e[o];i?t+=32:t+=W(a)}const n=[],r=[];let s=0;for(let o=0;o<e.length;o++){const{dynamic:i,encoded:a}=e[o];i?(n.push(L(t+s,{size:32})),r.push(a),s+=W(a)):n.push(a)}return ee([...n,...r])}function wf(e){if(!ge(e))throw new Xe({address:e});return{dynamic:!1,encoded:Ye(e.toLowerCase())}}function vf(e,{length:t,param:n}){const r=t===null;if(!Array.isArray(e))throw new Xi(e);if(!r&&e.length!==t)throw new y0({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let s=!1;const o=[];for(let i=0;i<e.length;i++){const a=Us({param:n,value:e[i]});a.dynamic&&(s=!0),o.push(a)}if(r||s){const i=Ds(o);if(r){const a=L(o.length,{size:32});return{dynamic:!0,encoded:o.length>0?ee([a,i]):a}}if(s)return{dynamic:!0,encoded:i}}return{dynamic:!1,encoded:ee(o.map(({encoded:i})=>i))}}function xf(e,{param:t}){const[,n]=t.type.split("bytes"),r=W(e);if(!n){let s=e;return r%32!==0&&(s=Ye(s,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:ee([Ye(L(r,{size:32})),s])}}if(r!==Number.parseInt(n,10))throw new g0({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Ye(e,{dir:"right"})}}function Ef(e){if(typeof e!="boolean")throw new I(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:Ye(ta(e))}}function Pf(e,{signed:t,size:n=256}){if(typeof n=="number"){const r=2n**(BigInt(n)-(t?1n:0n))-1n,s=t?-r-1n:0n;if(e>r||e<s)throw new js({max:r.toString(),min:s.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:L(e,{size:32,signed:t})}}function Af(e){const t=an(e),n=Math.ceil(W(t)/32),r=[];for(let s=0;s<n;s++)r.push(Ye(bt(t,s*32,(s+1)*32),{dir:"right"}));return{dynamic:!0,encoded:ee([Ye(L(W(t),{size:32})),...r])}}function $f(e,{param:t}){let n=!1;const r=[];for(let s=0;s<t.components.length;s++){const o=t.components[s],i=Array.isArray(e)?s:o.name,a=Us({param:o,value:e[i]});r.push(a),a.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Ds(r):ee(r.map(({encoded:s})=>s))}}function qs(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}const On=e=>bt(ua(e),0,4);function Pt(e){const{abi:t,args:n=[],name:r}=e,s=ke(r,{strict:!1}),o=t.filter(a=>s?a.type==="function"?On(a)===r:a.type==="event"?br(a)===r:!1:"name"in a&&a.name===r);if(o.length===0)return;if(o.length===1)return o[0];let i;for(const a of o){if(!("inputs"in a))continue;if(!n||n.length===0){if(!a.inputs||a.inputs.length===0)return a;continue}if(!a.inputs||a.inputs.length===0||a.inputs.length!==n.length)continue;if(n.every((f,u)=>{const d="inputs"in a&&a.inputs[u];return d?as(f,d):!1})){if(i&&"inputs"in i&&i.inputs){const f=pa(a.inputs,i.inputs,n);if(f)throw new A0({abiItem:a,type:f[0]},{abiItem:i,type:f[1]})}i=a}}return i||o[0]}function as(e,t){const n=typeof e,r=t.type;switch(r){case"address":return ge(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)=>n==="object"&&as(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=>as(s,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function pa(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 pa(s.components,o.components,n[r]);const i=[s.type,o.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?ge(n[r],{strict:!1}):i.includes("address")&&i.includes("bytes")?ge(n[r],{strict:!1}):!1)return i}}const Zo="/docs/contract/encodeEventTopics";function Fn(e){var c;const{abi:t,eventName:n,args:r}=e;let s=t[0];if(n){const f=Pt({abi:t,name:n});if(!f)throw new Uo(n,{docsPath:Zo});s=f}if(s.type!=="event")throw new Uo(void 0,{docsPath:Zo});let o=[];if(r&&"inputs"in s){const f=(c=s.inputs)==null?void 0:c.filter(d=>"indexed"in d&&d.indexed),u=Array.isArray(r)?r:Object.values(r).length>0?(f==null?void 0:f.map(d=>r[d.name]))??[]:[];u.length>0&&(o=(f==null?void 0:f.map((d,l)=>Array.isArray(u[l])?u[l].map((p,h)=>Ko({param:d,value:u[l][h]})):typeof u[l]<"u"&&u[l]!==null?Ko({param:d,value:u[l]}):null))??[])}if(s.anonymous)return o;const i=Ee(s);return[br(i),...o]}function Ko({param:e,value:t}){if(e.type==="string"||e.type==="bytes")return Q(Ht(t));if(e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/))throw new T0(e.type);return Et([e],[t])}function mr(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:i,status:a,transport:c})=>{a==="success"&&t===o&&(n[i]=c.request)})),(o=>n[o]||e.request)}async function ba(e,t){const{address:n,abi:r,args:s,eventName:o,fromBlock:i,strict:a,toBlock:c}=t,f=mr(e,{method:"eth_newFilter"}),u=o?Fn({abi:r,args:s,eventName:o}):void 0,d=await e.request({method:"eth_newFilter",params:[{address:n,fromBlock:typeof i=="bigint"?L(i):i,toBlock:typeof c=="bigint"?L(c):c,topics:u}]});return{abi:r,args:s,eventName:o,id:d,request:f(d),strict:!!a,type:"event"}}function Z(e){return typeof e=="string"?{address:e,type:"json-rpc"}:e}const Yo="/docs/contract/encodeFunctionData";function If(e){const{abi:t,args:n,functionName:r}=e;let s=t[0];if(r){const o=Pt({abi:t,args:n,name:r});if(!o)throw new Ot(r,{docsPath:Yo});s=o}if(s.type!=="function")throw new Ot(void 0,{docsPath:Yo});return{abi:[s],functionName:On(Ee(s))}}function ce(e){const{args:t}=e,{abi:n,functionName:r}=(()=>{var a;return e.abi.length===1&&((a=e.functionName)!=null&&a.startsWith("0x"))?e:If(e)})(),s=n[0],o=r,i="inputs"in s&&s.inputs?Et(s.inputs,t??[]):void 0;return Wt([o,i??"0x"])}const Bf={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."},ma={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},Sf={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};let Jo=class extends I{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`,{name:"NegativeOffsetError"})}},ya=class extends I{constructor({length:t,position:n}){super(`Position \`${n}\` is out of bounds (\`0 < position < ${t}\`).`,{name:"PositionOutOfBoundsError"})}},Tf=class extends I{constructor({count:t,limit:n}){super(`Recursive read limit of \`${n}\` exceeded (recursive read count: \`${t}\`).`,{name:"RecursiveReadLimitExceededError"})}};const Cf={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 Tf({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new ya({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Jo({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 Jo({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 Gs(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(Cf);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}function kf(e,t={}){typeof t.size<"u"&&Be(e,{size:t.size});const n=Y(e,t);return he(n,t)}function Nf(e,t={}){let n=e;if(typeof t.size<"u"&&(Be(n,{size:t.size}),n=_e(n)),n.length>1||n[0]>1)throw new k0(n);return!!n[0]}function Ue(e,t={}){typeof t.size<"u"&&Be(e,{size:t.size});const n=Y(e,t);return Pe(n,t)}function Rf(e,t={}){let n=e;return typeof t.size<"u"&&(Be(n,{size:t.size}),n=_e(n,{dir:"right"})),new TextDecoder().decode(n)}function Mn(e,t){const n=typeof t=="string"?Ne(t):t,r=Gs(n);if(W(n)===0&&e.length>0)throw new Nn;if(W(t)&&W(t)<32)throw new Ki({data:typeof t=="string"?t:Y(t),params:e,size:W(t)});let s=0;const o=[];for(let i=0;i<e.length;++i){const a=e[i];r.setPosition(s);const[c,f]=kt(r,a,{staticPosition:0});s+=f,o.push(c)}return o}function kt(e,t,{staticPosition:n}){const r=qs(t.type);if(r){const[s,o]=r;return Ff(e,{...t,type:o},{length:s,staticPosition:n})}if(t.type==="tuple")return Lf(e,t,{staticPosition:n});if(t.type==="address")return Of(e);if(t.type==="bool")return Mf(e);if(t.type.startsWith("bytes"))return zf(e,t,{staticPosition:n});if(t.type.startsWith("uint")||t.type.startsWith("int"))return jf(e,t);if(t.type==="string")return _f(e,{staticPosition:n});throw new B0(t.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const Xo=32,cs=32;function Of(e){const t=e.readBytes(32);return[Rn(Y(la(t,-20))),32]}function Ff(e,t,{length:n,staticPosition:r}){if(!n){const i=Ue(e.readBytes(cs)),a=r+i,c=a+Xo;e.setPosition(a);const f=Ue(e.readBytes(Xo)),u=un(t);let d=0;const l=[];for(let p=0;p<f;++p){e.setPosition(c+(u?p*32:d));const[h,b]=kt(e,t,{staticPosition:c});d+=b,l.push(h)}return e.setPosition(r+32),[l,32]}if(un(t)){const i=Ue(e.readBytes(cs)),a=r+i,c=[];for(let f=0;f<n;++f){e.setPosition(a+f*32);const[u]=kt(e,t,{staticPosition:a});c.push(u)}return e.setPosition(r+32),[c,32]}let s=0;const o=[];for(let i=0;i<n;++i){const[a,c]=kt(e,t,{staticPosition:r+s});s+=c,o.push(a)}return[o,s]}function Mf(e){return[Nf(e.readBytes(32),{size:32}),32]}function zf(e,t,{staticPosition:n}){const[r,s]=t.type.split("bytes");if(!s){const i=Ue(e.readBytes(32));e.setPosition(n+i);const a=Ue(e.readBytes(32));if(a===0)return e.setPosition(n+32),["0x",32];const c=e.readBytes(a);return e.setPosition(n+32),[Y(c),32]}return[Y(e.readBytes(Number.parseInt(s,10),32)),32]}function jf(e,t){const n=t.type.startsWith("int"),r=Number.parseInt(t.type.split("int")[1]||"256",10),s=e.readBytes(32);return[r>48?kf(s,{signed:n}):Ue(s,{signed:n}),32]}function Lf(e,t,{staticPosition:n}){const r=t.components.length===0||t.components.some(({name:i})=>!i),s=r?[]:{};let o=0;if(un(t)){const i=Ue(e.readBytes(cs)),a=n+i;for(let c=0;c<t.components.length;++c){const f=t.components[c];e.setPosition(a+o);const[u,d]=kt(e,f,{staticPosition:a});o+=d,s[r?c:f==null?void 0:f.name]=u}return e.setPosition(n+32),[s,32]}for(let i=0;i<t.components.length;++i){const a=t.components[i],[c,f]=kt(e,a,{staticPosition:n});s[r?i:a==null?void 0:a.name]=c,o+=f}return[s,o]}function _f(e,{staticPosition:t}){const n=Ue(e.readBytes(32)),r=t+n;e.setPosition(r);const s=Ue(e.readBytes(32));if(s===0)return e.setPosition(t+32),["",32];const o=e.readBytes(s,32),i=Rf(_e(o));return e.setPosition(t+32),[i,32]}function un(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(un);const n=qs(e.type);return!!(n&&un({...e,type:n[1]}))}function Uf(e){const{abi:t,data:n,cause:r}=e,s=bt(n,0,4);if(s==="0x")throw new Nn({cause:r});const i=[...t||[],ma,Sf].find(a=>a.type==="error"&&s===On(Ee(a)));if(!i)throw new Yi(s,{docsPath:"/docs/contract/decodeErrorResult",cause:r});return{abiItem:i,args:"inputs"in i&&i.inputs&&i.inputs.length>0?Mn(i.inputs,bt(n,4)):void 0,errorName:i.name}}const K=(e,t,n)=>JSON.stringify(e,(r,s)=>typeof s=="bigint"?s.toString():s,n);function ga({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"?K(t[o]):t[o]}`).join(", ")})`}const Df={gwei:9,wei:18},qf={ether:-9,wei:9};function wa(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 Hs(e,t="wei"){return wa(e,Df[t])}function ie(e,t="wei"){return wa(e,qf[t])}class Gf extends I{constructor({address:t}){super(`State for account "${t}" is set multiple times.`,{name:"AccountStateConflictError"})}}class Hf extends I{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function Qo(e){return e.reduce((t,{slot:n,value:r})=>`${t} ${n}: ${r}
34
+ `,"")}function Vf(e){return e.reduce((t,{address:n,...r})=>{let s=`${t} ${n}:
35
+ `;return r.nonce&&(s+=` nonce: ${r.nonce}
36
+ `),r.balance&&(s+=` balance: ${r.balance}
37
+ `),r.code&&(s+=` code: ${r.code}
38
+ `),r.state&&(s+=` state:
39
+ `,s+=Qo(r.state)),r.stateDiff&&(s+=` stateDiff:
40
+ `,s+=Qo(r.stateDiff)),s},` State Override:
41
+ `).slice(0,-1)}function zn(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(`
42
+ `)}class Wf extends I{constructor({transaction:t}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",zn(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 Zf extends I{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:i,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:f,nonce:u,to:d,value:l}){var h;const p=zn({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 l<"u"&&`${Hs(l)} ${((h=s==null?void 0:s.nativeCurrency)==null?void 0:h.symbol)||"ETH"}`,data:o,gas:i,gasPrice:typeof a<"u"&&`${ie(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${ie(c)} gwei`,maxPriorityFeePerGas:typeof f<"u"&&`${ie(f)} gwei`,nonce:u});super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Request Arguments:",p].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class va extends I{constructor({blockHash:t,blockNumber:n,blockTag:r,hash:s,index:o}){let i="Transaction";r&&o!==void 0&&(i=`Transaction at block time "${r}" at index "${o}"`),t&&o!==void 0&&(i=`Transaction at block hash "${t}" at index "${o}"`),n&&o!==void 0&&(i=`Transaction at block number "${n}" at index "${o}"`),s&&(i=`Transaction with hash "${s}"`),super(`${i} could not be found.`,{name:"TransactionNotFoundError"})}}class xa extends I{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 us extends I{constructor({receipt:t}){super(`Transaction with hash "${t.transactionHash}" reverted.`,{metaMessages:['The receipt marked the transaction as "reverted". This could mean that the function on the contract you are trying to call threw an error.'," ","You can attempt to extract the revert reason by:","- calling the `simulateContract` or `simulateCalls` Action with the `abi` and `functionName` of the contract","- using the `call` Action with raw `data`"],name:"TransactionReceiptRevertedError"}),Object.defineProperty(this,"receipt",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.receipt=t}}class Kf extends I{constructor({hash:t}){super(`Timed out while waiting for transaction with hash "${t}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}const Yf=e=>e;function Qe(e){if(e!=null&&e.reason)return e.reason;if(typeof DOMException=="function")return new DOMException("This operation was aborted","AbortError");const t=new Error("This operation was aborted");return t.name="AbortError",t}function Zt(e){return typeof e=="object"&&e!==null&&"name"in e&&e.name==="AbortError"}const Vs=e=>{try{const t=new URL(e);return!t.username&&!t.password?e:(t.username="",t.password="",t.toString())}catch{return e}};class Ea extends I{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:i,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:f,nonce:u,to:d,value:l,stateOverride:p}){var w;const h=n?Z(n):void 0;let b=zn({from:h==null?void 0:h.address,to:d,value:typeof l<"u"&&`${Hs(l)} ${((w=s==null?void 0:s.nativeCurrency)==null?void 0:w.symbol)||"ETH"}`,data:o,gas:i,gasPrice:typeof a<"u"&&`${ie(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${ie(c)} gwei`,maxPriorityFeePerGas:typeof f<"u"&&`${ie(f)} gwei`,nonce:u});p&&(b+=`
43
+ ${Vf(p)}`),super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Raw Call Arguments:",b].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class Pa extends I{constructor(t,{abi:n,args:r,contractAddress:s,docsPath:o,functionName:i,sender:a}){const c=Pt({abi:n,args:r,name:i}),f=c?ga({abiItem:c,args:r,includeFunctionName:!1,includeName:!1}):void 0,u=c?Ee(c,{includeName:!0}):void 0,d=zn({address:s&&Yf(s),function:u,args:f&&f!=="()"&&`${[...Array((i==null?void 0:i.length)??0).keys()].map(()=>" ").join("")}${f}`,sender:a});super(t.shortMessage||`An unknown error occurred while executing the contract function "${i}".`,{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=i,this.sender=a}}class tr extends I{constructor({abi:t,data:n,functionName:r,message:s,cause:o}){let i,a,c,f;if(n&&n!=="0x")try{a=Uf({abi:t,data:n,cause:o});const{abiItem:d,errorName:l,args:p}=a;if(l==="Error")f=p[0];else if(l==="Panic"){const[h]=p;f=Bf[h]}else{const h=d?Ee(d,{includeName:!0}):void 0,b=d&&p?ga({abiItem:d,args:p,includeFunctionName:!1,includeName:!1}):void 0;c=[h?`Error: ${h}`:"",b&&b!=="()"?` ${[...Array((l==null?void 0:l.length)??0).keys()].map(()=>" ").join("")}${b}`:""]}}catch(d){i=d}else s&&(f=s);let u;i instanceof Yi&&(u=i.signature,c=[`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://4byte.sourcify.dev/?q=${u}.`]),super(f&&f!=="execution reverted"||u?[`The contract function "${r}" reverted with the following ${u?"signature":"reason"}:`,f||u].join(`
44
+ `):`The contract function "${r}" reverted.`,{cause:i??o,metaMessages:c,name:"ContractFunctionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"raw",{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.raw=n,this.reason=f,this.signature=u}}class Jf extends I{constructor({functionName:t,cause:n}){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",cause:n})}}class Xf extends I{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 yr extends I{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}}class on extends I{constructor({body:t,cause:n,details:r,headers:s,status:o,url:i}){super("HTTP request failed.",{cause:n,details:r,metaMessages:[o&&`Status: ${o}`,`URL: ${Vs(i)}`,t&&`Request body: ${K(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=i}}class Ws extends I{constructor({body:t,error:n,url:r}){super("RPC Request failed.",{cause:n,details:n.message,metaMessages:[`URL: ${Vs(r)}`,`Request body: ${K(t)}`],name:"RpcRequestError"}),Object.defineProperty(this,"code",{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,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=n.code,this.data=n.data,this.url=r}}class ei extends I{constructor({body:t,url:n}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${Vs(n)}`,`Request body: ${K(t)}`],name:"TimeoutError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=n}}const Qf=-1;class ue extends I{constructor(t,{code:n,docsPath:r,metaMessages:s,name:o,shortMessage:i}){super(i,{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 Ws?t.code:n??Qf}}class fe extends ue{constructor(t,n){super(t,n),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=n.data}}class fn extends ue{constructor(t){super(t,{code:fn.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(fn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class dn extends ue{constructor(t){super(t,{code:dn.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(dn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class ln extends ue{constructor(t,{method:n}={}){super(t,{code:ln.code,name:"MethodNotFoundRpcError",shortMessage:`The method${n?` "${n}"`:""} does not exist / is not available.`})}}Object.defineProperty(ln,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class hn extends ue{constructor(t){super(t,{code:hn.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
45
+ `)})}}Object.defineProperty(hn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class mt extends ue{constructor(t){super(t,{code:mt.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(mt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class et extends ue{constructor(t){super(t,{code:et.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
46
+ `)})}}Object.defineProperty(et,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class pn extends ue{constructor(t){super(t,{code:pn.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(pn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class bn extends ue{constructor(t){super(t,{code:bn.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(bn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class zt extends ue{constructor(t){super(t,{code:zt.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(zt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class at extends ue{constructor(t,{method:n}={}){super(t,{code:at.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${n?` "${n}"`:""} is not supported.`})}}Object.defineProperty(at,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class jt extends ue{constructor(t){super(t,{code:jt.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(jt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class mn extends ue{constructor(t){super(t,{code:mn.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(mn,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class Je extends fe{constructor(t){super(t,{code:Je.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(Je,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class yn extends fe{constructor(t){super(t,{code:yn.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(yn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class gn extends fe{constructor(t,{method:n}={}){super(t,{code:gn.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${n?` " ${n}"`:""}.`})}}Object.defineProperty(gn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class wn extends fe{constructor(t){super(t,{code:wn.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(wn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class vn extends fe{constructor(t){super(t,{code:vn.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(vn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class xn extends fe{constructor(t){super(t,{code:xn.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(xn,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Lt extends fe{constructor(t){super(t,{code:Lt.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}}Object.defineProperty(Lt,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});class En extends fe{constructor(t){super(t,{code:En.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}}Object.defineProperty(En,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});class Pn extends fe{constructor(t){super(t,{code:Pn.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}}Object.defineProperty(Pn,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});class An extends fe{constructor(t){super(t,{code:An.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}}Object.defineProperty(An,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});class $n extends fe{constructor(t){super(t,{code:$n.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}}Object.defineProperty($n,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});class In extends fe{constructor(t){super(t,{code:In.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}}Object.defineProperty(In,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});class _t extends fe{constructor(t){super(t,{code:_t.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}}Object.defineProperty(_t,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});class Ut extends fe{constructor(t){super(t,{code:Ut.code,name:"WalletConnectSessionSettlementError",shortMessage:"WalletConnect session settlement failed."})}}Object.defineProperty(Ut,"code",{enumerable:!0,configurable:!0,writable:!0,value:7e3});class ed extends ue{constructor(t){super(t,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}const td=3;function yt(e,{abi:t,address:n,args:r,docsPath:s,functionName:o,sender:i}){const a=e instanceof yr?e:e instanceof I?e.walk(h=>"data"in h)||e.walk():{},{code:c,data:f,details:u,message:d,shortMessage:l}=a,p=e instanceof Nn?new Jf({functionName:o,cause:e}):[td,mt.code].includes(c)&&(f||u||d||l)||c===et.code&&u==="execution reverted"&&f?new tr({abi:t,data:typeof f=="object"?f.data:f,functionName:o,message:a instanceof Ws?u:l??d,cause:e}):e;return new Pa(p,{abi:t,args:r,contractAddress:n,docsPath:s,functionName:o,sender:i})}function nd(e){const t=Q(`0x${e.substring(4)}`).substring(26);return Rn(`0x${t}`)}async function rd({hash:e,signature:t}){const n=ke(e)?e:Ge(e),{secp256k1:r}=await Ri(async()=>{const{secp256k1:i}=await Promise.resolve().then(()=>L1);return{secp256k1:i}},void 0);return`0x${(()=>{if(typeof t=="object"&&"r"in t&&"s"in t){const{r:f,s:u,v:d,yParity:l}=t,p=Number(l??d),h=ti(p);return new r.Signature(he(f),he(u)).addRecoveryBit(h)}const i=ke(t)?t:Ge(t);if(W(i)!==65)throw new Error("invalid signature length");const a=Pe(`0x${i.slice(130)}`),c=ti(a);return r.Signature.fromCompact(i.substring(2,130)).addRecoveryBit(c)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function ti(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 fs({hash:e,signature:t}){return nd(await rd({hash:e,signature:t}))}function sd(e,t="hex"){const n=Aa(e),r=Gs(new Uint8Array(n.length));return n.encode(r),t==="hex"?Y(r.bytes):r.bytes}function Aa(e){return Array.isArray(e)?od(e.map(t=>Aa(t))):id(e)}function od(e){const t=e.reduce((s,o)=>s+o.length,0),n=$a(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 id(e){const t=typeof e=="string"?Ne(e):e,n=$a(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 $a(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 I("Length is too large.")}function ad(e){const{chainId:t,nonce:n,to:r}=e,s=e.contractAddress??e.address,o=Q(Wt(["0x05",sd([t?L(t):"0x",s,n?L(n):"0x"])]));return r==="bytes"?Ne(o):o}async function gr(e){const{authorization:t,signature:n}=e;return fs({hash:ad(t),signature:n??t})}class cd extends I{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:i,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:f,nonce:u,to:d,value:l}){var h;const p=zn({from:n==null?void 0:n.address,to:d,value:typeof l<"u"&&`${Hs(l)} ${((h=s==null?void 0:s.nativeCurrency)==null?void 0:h.symbol)||"ETH"}`,data:o,gas:i,gasPrice:typeof a<"u"&&`${ie(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${ie(c)} gwei`,maxPriorityFeePerGas:typeof f<"u"&&`${ie(f)} gwei`,nonce:u});super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Estimate Gas Arguments:",p].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class ct extends I{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(ct,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(ct,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/});class nr extends I{constructor({cause:t,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${ie(n)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:t,name:"FeeCapTooHighError"})}}Object.defineProperty(nr,"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 ds extends I{constructor({cause:t,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${ie(n)}`:""} gwei) cannot be lower than the block base fee.`,{cause:t,name:"FeeCapTooLowError"})}}Object.defineProperty(ds,"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 ls extends I{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(ls,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class hs extends I{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(`
47
+ `),{cause:t,name:"NonceTooLowError"})}}Object.defineProperty(hs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class ps extends I{constructor({cause:t,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:""}exceeds the maximum allowed nonce.`,{cause:t,name:"NonceMaxValueError"})}}Object.defineProperty(ps,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class bs extends I{constructor({cause:t}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
48
+ `),{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(bs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class ms extends I{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(ms,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class ys extends I{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(ys,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class gs extends I{constructor({cause:t}){super("The transaction type is not supported for this chain.",{cause:t,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(gs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class rr extends I{constructor({cause:t,maxPriorityFeePerGas:n,maxFeePerGas:r}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${n?` = ${ie(n)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${r?` = ${ie(r)} gwei`:""}).`].join(`
49
+ `),{cause:t,name:"TipAboveFeeCapError"})}}Object.defineProperty(rr,"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 jn extends I{constructor({cause:t}){super(`An error occurred while executing: ${t==null?void 0:t.shortMessage}`,{cause:t,name:"UnknownNodeError"})}}function wr(e,t){const n=(e.details||"").toLowerCase(),r=e instanceof I?e.walk(s=>(s==null?void 0:s.code)===ct.code):e;return r instanceof I?new ct({cause:e,message:r.details}):ct.nodeMessage.test(n)?new ct({cause:e,message:e.details}):nr.nodeMessage.test(n)?new nr({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):ds.nodeMessage.test(n)?new ds({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):ls.nodeMessage.test(n)?new ls({cause:e,nonce:t==null?void 0:t.nonce}):hs.nodeMessage.test(n)?new hs({cause:e,nonce:t==null?void 0:t.nonce}):ps.nodeMessage.test(n)?new ps({cause:e,nonce:t==null?void 0:t.nonce}):bs.nodeMessage.test(n)?new bs({cause:e}):ms.nodeMessage.test(n)?new ms({cause:e,gas:t==null?void 0:t.gas}):ys.nodeMessage.test(n)?new ys({cause:e,gas:t==null?void 0:t.gas}):gs.nodeMessage.test(n)?new gs({cause:e}):rr.nodeMessage.test(n)?new rr({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas,maxPriorityFeePerGas:t==null?void 0:t.maxPriorityFeePerGas}):new jn({cause:e})}function ud(e,{docsPath:t,...n}){const r=(()=>{const s=wr(e,n);return s instanceof jn?e:s})();return new cd(r,{docsPath:t,...n})}function Kt(e,{format:t}){if(!t)return{};const n={};function r(o){const i=Object.keys(o);for(const a of i)a in e&&(n[a]=e[a]),o[a]&&typeof o[a]=="object"&&!Array.isArray(o[a])&&r(o[a])}const s=t(e||{});return r(s),n}const fd={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function tt(e,t){const n={};return typeof e.authorizationList<"u"&&(n.authorizationList=dd(e.authorizationList)),typeof e.accessList<"u"&&(n.accessList=e.accessList),typeof e.blobVersionedHashes<"u"&&(n.blobVersionedHashes=e.blobVersionedHashes),typeof e.blobs<"u"&&(typeof e.blobs[0]!="string"?n.blobs=e.blobs.map(r=>Y(r)):n.blobs=e.blobs),typeof e.data<"u"&&(n.data=e.data),e.account&&(n.from=e.account.address),typeof e.from<"u"&&(n.from=e.from),typeof e.gas<"u"&&(n.gas=L(e.gas)),typeof e.gasPrice<"u"&&(n.gasPrice=L(e.gasPrice)),typeof e.maxFeePerBlobGas<"u"&&(n.maxFeePerBlobGas=L(e.maxFeePerBlobGas)),typeof e.maxFeePerGas<"u"&&(n.maxFeePerGas=L(e.maxFeePerGas)),typeof e.maxPriorityFeePerGas<"u"&&(n.maxPriorityFeePerGas=L(e.maxPriorityFeePerGas)),typeof e.nonce<"u"&&(n.nonce=L(e.nonce)),typeof e.to<"u"&&(n.to=e.to),typeof e.type<"u"&&(n.type=fd[e.type]),typeof e.value<"u"&&(n.value=L(e.value)),n}function dd(e){return e.map(t=>({address:t.address,r:t.r?L(BigInt(t.r)):t.r,s:t.s?L(BigInt(t.s)):t.s,chainId:L(t.chainId),nonce:L(t.nonce),...typeof t.yParity<"u"?{yParity:L(t.yParity)}:{},...typeof t.v<"u"&&typeof t.yParity>"u"?{v:L(t.v)}:{}}))}function ni(e){if(!(!e||e.length===0))return e.reduce((t,{slot:n,value:r})=>{if(n.length!==66)throw new Do({size:n.length,targetSize:66,type:"hex"});if(r.length!==66)throw new Do({size:r.length,targetSize:66,type:"hex"});return t[n]=r,t},{})}function ld(e){const{balance:t,nonce:n,state:r,stateDiff:s,code:o}=e,i={};if(o!==void 0&&(i.code=o),t!==void 0&&(i.balance=L(t)),n!==void 0&&(i.nonce=L(n)),r!==void 0&&(i.state=ni(r)),s!==void 0){if(i.state)throw new Hf;i.stateDiff=ni(s)}return i}function Zs(e){if(!e)return;const t={};for(const{address:n,...r}of e){if(!ge(n,{strict:!1}))throw new Xe({address:n});if(t[n])throw new Gf({address:n});t[n]=ld(r)}return t}const hd=2n**256n-1n;function We(e){const{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:s}=e,o=t?Z(t):void 0;if(o&&!ge(o.address))throw new Xe({address:o.address});if(s&&!ge(s))throw new Xe({address:s});if(n&&n>hd)throw new nr({maxFeePerGas:n});if(r&&n&&r>n)throw new rr({maxFeePerGas:n,maxPriorityFeePerGas:r})}class Ia extends I{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class Ks extends I{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class pd extends I{constructor({maxPriorityFeePerGas:t}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${ie(t)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class Ys extends I{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 Ba={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function Js(e,t){const n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,...e.blockTimestamp!=null&&{blockTimestamp:BigInt(e.blockTimestamp)},chainId:e.chainId?Pe(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?Pe(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Ba[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&&(n.authorizationList=bd(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v=="bigint"){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return n.v%2n===0n?1:0}})(),n.type==="legacy"&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type==="eip2930"&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type==="eip1559"&&delete n.maxFeePerBlobGas,n}function bd(e){return e.map(t=>({address:t.address,chainId:Number(t.chainId),nonce:Number(t.nonce),r:t.r,s:t.s,yParity:Number(t.yParity)}))}function Sa(e,t){const n=(e.transactions??[]).map(r=>typeof r=="string"?r:Js(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:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}async function xe(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest",includeTransactions:s}={}){var f,u,d;const o=s??!1,i=n!==void 0?L(n):void 0;let a=null;if(t?a=await e.request({method:"eth_getBlockByHash",params:[t,o]},{dedupe:!0}):a=await e.request({method:"eth_getBlockByNumber",params:[i||r,o]},{dedupe:!!i}),!a)throw new Ys({blockHash:t,blockNumber:n});return(((d=(u=(f=e.chain)==null?void 0:f.formatters)==null?void 0:u.block)==null?void 0:d.format)||Sa)(a,"getBlock")}async function Xs(e){const t=await e.request({method:"eth_gasPrice"});return BigInt(t)}async function md(e,t){return Ta(e,t)}async function Ta(e,t){var o,i;const{block:n,chain:r=e.chain,request:s}=t||{};try{const a=((o=r==null?void 0:r.fees)==null?void 0:o.maxPriorityFeePerGas)??((i=r==null?void 0:r.fees)==null?void 0:i.defaultPriorityFee);if(typeof a=="function"){const f=n||await M(e,xe,"getBlock")({}),u=await a({block:f,client:e,request:s});if(u===null)throw new Error;return u}if(typeof a<"u")return a;const c=await e.request({method:"eth_maxPriorityFeePerGas"});return he(c)}catch{const[a,c]=await Promise.all([n?Promise.resolve(n):M(e,xe,"getBlock")({}),M(e,Xs,"getGasPrice")({})]);if(typeof a.baseFeePerGas!="bigint")throw new Ks;const f=c-a.baseFeePerGas;return f<0n?0n:f}}async function yd(e,t){return ws(e,t)}async function ws(e,t){var l,p;const{block:n,chain:r=e.chain,request:s,type:o="eip1559"}=t||{},i=await(async()=>{var h,b;return typeof((h=r==null?void 0:r.fees)==null?void 0:h.baseFeeMultiplier)=="function"?r.fees.baseFeeMultiplier({block:n,client:e,request:s}):((b=r==null?void 0:r.fees)==null?void 0:b.baseFeeMultiplier)??1.2})();if(i<1)throw new Ia;const c=10**(((l=i.toString().split(".")[1])==null?void 0:l.length)??0),f=h=>h*BigInt(Math.ceil(i*c))/BigInt(c),u=n||await M(e,xe,"getBlock")({});if(typeof((p=r==null?void 0:r.fees)==null?void 0:p.estimateFeesPerGas)=="function"){const h=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:f,request:s,type:o});if(h!==null)return h}if(o==="eip1559"){if(typeof u.baseFeePerGas!="bigint")throw new Ks;const h=typeof(s==null?void 0:s.maxPriorityFeePerGas)=="bigint"?s.maxPriorityFeePerGas:await Ta(e,{block:u,chain:r,request:s}),b=f(u.baseFeePerGas);return{maxFeePerGas:(s==null?void 0:s.maxFeePerGas)??b+h,maxPriorityFeePerGas:h}}return{gasPrice:(s==null?void 0:s.gasPrice)??f(await M(e,Xs,"getGasPrice")({}))}}function At(e){const{blockHash:t,blockNumber:n,blockTag:r,requireCanonical:s}=e;if(s!==void 0&&!t)throw new I("`requireCanonical` can only be provided when `blockHash` is set.");return t?s?{blockHash:t,requireCanonical:s}:{blockHash:t}:typeof n=="bigint"?L(n):r??"latest"}async function Qs(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:o}){const i=At({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:o}),a=await e.request({method:"eth_getTransactionCount",params:[t,i]},{dedupe:typeof r=="bigint"||n!==void 0});return Pe(a)}function Ca(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=>Ne(o)):e.blobs,s=[];for(const o of r)s.push(Uint8Array.from(t.blobToKzgCommitment(o)));return n==="bytes"?s:s.map(o=>Y(o))}function ka(e){const{kzg:t}=e,n=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),r=typeof e.blobs[0]=="string"?e.blobs.map(i=>Ne(i)):e.blobs,s=typeof e.commitments[0]=="string"?e.commitments.map(i=>Ne(i)):e.commitments,o=[];for(let i=0;i<r.length;i++){const a=r[i],c=s[i];o.push(Uint8Array.from(t.computeBlobKzgProof(a,c)))}return n==="bytes"?o:o.map(i=>Y(i))}function gd(e,t,n,r){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,n,r);const s=BigInt(32),o=BigInt(4294967295),i=Number(n>>s&o),a=Number(n&o),c=r?4:0,f=r?0:4;e.setUint32(t+c,i,r),e.setUint32(t+f,a,r)}function wd(e,t,n){return e&t^~e&n}function vd(e,t,n){return e&t^e&n^t&n}class xd extends Ls{constructor(t,n,r,s){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=n,this.padOffset=r,this.isLE=s,this.buffer=new Uint8Array(t),this.view=Rr(this.buffer)}update(t){Ft(this),t=pr(t),ht(t);const{view:n,buffer:r,blockLen:s}=this,o=t.length;for(let i=0;i<o;){const a=Math.min(s-this.pos,o-i);if(a===s){const c=Rr(t);for(;s<=o-i;i+=s)this.process(c,i);continue}r.set(t.subarray(i,i+a),this.pos),this.pos+=a,i+=a,this.pos===s&&(this.process(n,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Ft(this),na(t,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:o}=this;let{pos:i}=this;n[i++]=128,Mt(this.buffer.subarray(i)),this.padOffset>s-i&&(this.process(r,0),i=0);for(let d=i;d<s;d++)n[d]=0;gd(r,s-8,BigInt(this.length*8),o),this.process(r,0);const a=Rr(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d<f;d++)a.setUint32(4*d,u[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:i,pos:a}=this;return t.destroyed=i,t.finished=o,t.length=s,t.pos=a,s%n&&t.buffer.set(r),t}clone(){return this._cloneInto()}}const Ze=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ed=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Ke=new Uint32Array(64);class Pd extends xd{constructor(t=32){super(64,t,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:i,G:a,H:c}=this;return[t,n,r,s,o,i,a,c]}set(t,n,r,s,o,i,a,c){this.A=t|0,this.B=n|0,this.C=r|0,this.D=s|0,this.E=o|0,this.F=i|0,this.G=a|0,this.H=c|0}process(t,n){for(let d=0;d<16;d++,n+=4)Ke[d]=t.getUint32(n,!1);for(let d=16;d<64;d++){const l=Ke[d-15],p=Ke[d-2],h=Te(l,7)^Te(l,18)^l>>>3,b=Te(p,17)^Te(p,19)^p>>>10;Ke[d]=b+Ke[d-7]+h+Ke[d-16]|0}let{A:r,B:s,C:o,D:i,E:a,F:c,G:f,H:u}=this;for(let d=0;d<64;d++){const l=Te(a,6)^Te(a,11)^Te(a,25),p=u+l+wd(a,c,f)+Ed[d]+Ke[d]|0,b=(Te(r,2)^Te(r,13)^Te(r,22))+vd(r,s,o)|0;u=f,f=c,c=a,a=i+p|0,i=o,o=s,s=r,r=p+b|0}r=r+this.A|0,s=s+this.B|0,o=o+this.C|0,i=i+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(r,s,o,i,a,c,f,u)}roundClean(){Mt(Ke)}destroy(){this.set(0,0,0,0,0,0,0,0),Mt(this.buffer)}}const Na=ra(()=>new Pd),Ad=Na;function $d(e,t){return Ad(ke(e,{strict:!1})?Ht(e):e)}function Id(e){const{commitment:t,version:n=1}=e,r=e.to??(typeof t=="string"?"hex":"bytes"),s=$d(t);return s.set([n],0),r==="bytes"?s:Y(s)}function Bd(e){const{commitments:t,version:n}=e,r=e.to,s=[];for(const o of t)s.push(Id({commitment:o,to:r,version:n}));return s}const ri=6,Ra=32,eo=4096,Oa=Ra*eo,si=Oa*ri-1-1*eo*ri;class Sd extends I{constructor({maxSize:t,size:n}){super("Blob size is too large.",{metaMessages:[`Max: ${t} bytes`,`Given: ${n} bytes`],name:"BlobSizeTooLargeError"})}}class Td extends I{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}function Cd(e){const t=typeof e.data=="string"?Ne(e.data):e.data,n=W(t);if(!n)throw new Td;if(n>si)throw new Sd({maxSize:si,size:n});const r=[];let s=!0,o=0;for(;s;){const i=Gs(new Uint8Array(Oa));let a=0;for(;a<eo;){const c=t.slice(o,o+(Ra-1));if(i.pushByte(0),i.pushBytes(c),c.length<31){i.pushByte(128),s=!1;break}a++,o+=31}r.push(i)}return r.map(i=>Y(i.bytes))}function kd(e){const{data:t,kzg:n,to:r}=e,s=e.blobs??Cd({data:t}),o=e.commitments??Ca({blobs:s,kzg:n,to:r}),i=e.proofs??ka({blobs:s,commitments:o,kzg:n,to:r}),a=[];for(let c=0;c<s.length;c++)a.push({blob:s[c],commitment:o[c],proof:i[c]});return a}function Nd(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 Wf({transaction:e})}function vr(e,{docsPath:t,...n}){const r=(()=>{const s=wr(e,n);return s instanceof jn?e:s})();return new Zf(r,{docsPath:t,...n})}async function Re(e){const t=await e.request({method:"eth_chainId"},{dedupe:!0});return Pe(t)}async function to(e,t){var $,T,O,B,N;const{account:n=e.account,accessList:r,authorizationList:s,chain:o=e.chain,blobVersionedHashes:i,blobs:a,data:c,gas:f,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:l,maxPriorityFeePerGas:p,nonce:h,nonceManager:b,to:w,type:m,value:x,...g}=t,y=await(async()=>{if(!n||!b||typeof h<"u")return h;const k=Z(n),z=o?o.id:await M(e,Re,"getChainId")({});return await b.consume({address:k.address,chainId:z,client:e})})();We(t);const E=(T=($=o==null?void 0:o.formatters)==null?void 0:$.transactionRequest)==null?void 0:T.format,v=(E||tt)({...Kt(g,{format:E}),account:n?Z(n):void 0,accessList:r,authorizationList:s,blobs:a,blobVersionedHashes:i,data:c,gas:f,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:l,maxPriorityFeePerGas:p,nonce:y,to:w,type:m,value:x},"fillTransaction");try{const k=await e.request({method:"eth_fillTransaction",params:[v]}),P=(((B=(O=o==null?void 0:o.formatters)==null?void 0:O.transaction)==null?void 0:B.format)||Js)(k.tx);delete P.blockHash,delete P.blockNumber,delete P.r,delete P.s,delete P.transactionIndex,delete P.v,delete P.yParity,P.data=P.input,P.gas&&(P.gas=t.gas??P.gas),P.gasPrice&&(P.gasPrice=t.gasPrice??P.gasPrice),P.maxFeePerBlobGas&&(P.maxFeePerBlobGas=t.maxFeePerBlobGas??P.maxFeePerBlobGas),P.maxFeePerGas&&(P.maxFeePerGas=t.maxFeePerGas??P.maxFeePerGas),P.maxPriorityFeePerGas&&(P.maxPriorityFeePerGas=t.maxPriorityFeePerGas??P.maxPriorityFeePerGas),typeof P.nonce<"u"&&(P.nonce=t.nonce??P.nonce);const S=await(async()=>{var j,D;if(typeof((j=o==null?void 0:o.fees)==null?void 0:j.baseFeeMultiplier)=="function"){const q=await M(e,xe,"getBlock")({});return o.fees.baseFeeMultiplier({block:q,client:e,request:t})}return((D=o==null?void 0:o.fees)==null?void 0:D.baseFeeMultiplier)??1.2})();if(S<1)throw new Ia;const C=10**(((N=S.toString().split(".")[1])==null?void 0:N.length)??0),F=j=>j*BigInt(Math.ceil(S*C))/BigInt(C);return P.feePayerSignature||(P.maxFeePerGas&&!t.maxFeePerGas&&(P.maxFeePerGas=F(P.maxFeePerGas)),P.gasPrice&&!t.gasPrice&&(P.gasPrice=F(P.gasPrice))),{raw:k.raw,transaction:{from:v.from,...P},...k.capabilities?{capabilities:k.capabilities}:{}}}catch(k){throw vr(k,{...t,chain:e.chain})}}const no=["blobVersionedHashes","chainId","fees","gas","nonce","type"],oi=new Map,Mr=new Vt(128);async function Ln(e,t){var y,E,A;let n=t;n.account??(n.account=e.account),n.parameters??(n.parameters=no);const{account:r,chain:s=e.chain,nonceManager:o,parameters:i}=n,a=(()=>{if(typeof(s==null?void 0:s.prepareTransactionRequest)=="function")return{fn:s.prepareTransactionRequest,runAt:["beforeFillTransaction"]};if(Array.isArray(s==null?void 0:s.prepareTransactionRequest))return{fn:s.prepareTransactionRequest[0],runAt:s.prepareTransactionRequest[1].runAt}})();let c;async function f(){return c||(typeof n.chainId<"u"?n.chainId:s?s.id:(c=await M(e,Re,"getChainId")({}),c))}const u=r&&Z(r);let d=n.nonce;if(i.includes("nonce")&&typeof d>"u"&&u&&o){const v=await f();d=await o.consume({address:u.address,chainId:v,client:e})}a!=null&&a.fn&&((y=a.runAt)!=null&&y.includes("beforeFillTransaction"))&&(n=await a.fn({...n,chain:s},{client:e,phase:"beforeFillTransaction"}),d??(d=n.nonce));const p=((i.includes("blobVersionedHashes")||i.includes("sidecars"))&&n.kzg&&n.blobs||Mr.get(e.uid)===!1||!["fees","gas"].some($=>i.includes($))?!1:!!(i.includes("chainId")&&typeof n.chainId!="number"||i.includes("nonce")&&typeof d!="number"||i.includes("fees")&&typeof n.gasPrice!="bigint"&&(typeof n.maxFeePerGas!="bigint"||typeof n.maxPriorityFeePerGas!="bigint")||i.includes("gas")&&typeof n.gas!="bigint"))?await M(e,to,"fillTransaction")({...n,nonce:d}).then(v=>{const{chainId:$,from:T,gas:O,gasPrice:B,nonce:N,maxFeePerBlobGas:k,maxFeePerGas:z,maxPriorityFeePerGas:P,type:S,...R}=v.transaction;return Mr.set(e.uid,!0),{...n,...T?{from:T}:{},...S&&!n.type?{type:S}:{},...typeof $<"u"?{chainId:$}:{},...typeof O<"u"?{gas:O}:{},...typeof B<"u"?{gasPrice:B}:{},...typeof N<"u"?{nonce:N}:{},...typeof k<"u"&&n.type!=="legacy"&&n.type!=="eip2930"?{maxFeePerBlobGas:k}:{},...typeof z<"u"&&n.type!=="legacy"&&n.type!=="eip2930"?{maxFeePerGas:z}:{},...typeof P<"u"&&n.type!=="legacy"&&n.type!=="eip2930"?{maxPriorityFeePerGas:P}:{},..."nonceKey"in R&&typeof R.nonceKey<"u"?{nonceKey:R.nonceKey}:{},..."keyAuthorization"in R&&typeof R.keyAuthorization<"u"&&R.keyAuthorization!==null&&!("keyAuthorization"in n)?{keyAuthorization:R.keyAuthorization}:{},..."feePayerSignature"in R&&typeof R.feePayerSignature<"u"&&R.feePayerSignature!==null?{feePayerSignature:R.feePayerSignature}:{},..."feeToken"in R&&typeof R.feeToken<"u"&&R.feeToken!==null&&!("feeToken"in n)?{feeToken:R.feeToken}:{},...v.capabilities?{_capabilities:v.capabilities}:{}}}).catch(v=>{var B,N;const $=v;if($.name!=="TransactionExecutionError")return n;if((B=$.walk)==null?void 0:B.call($,k=>k.name==="ExecutionRevertedError"))throw v;return((N=$.walk)==null?void 0:N.call($,k=>{var P;const z=k;return z.name==="MethodNotFoundRpcError"||z.name==="MethodNotSupportedRpcError"||((P=z.message)==null?void 0:P.includes("eth_fillTransaction is not available"))}))&&Mr.set(e.uid,!1),n}):n;d??(d=p.nonce),n={...p,...u?{from:u==null?void 0:u.address}:{},...typeof d<"u"?{nonce:d}:{}};const{blobs:h,gas:b,kzg:w,type:m}=n;a!=null&&a.fn&&((E=a.runAt)!=null&&E.includes("beforeFillParameters"))&&(n=await a.fn({...n,chain:s},{client:e,phase:"beforeFillParameters"}));let x;async function g(){return x||(x=await M(e,xe,"getBlock")({blockTag:"latest"}),x)}if(i.includes("nonce")&&typeof d>"u"&&u&&!o&&(n.nonce=await M(e,Qs,"getTransactionCount")({address:u.address,blockTag:"pending"})),(i.includes("blobVersionedHashes")||i.includes("sidecars"))&&h&&w){const v=Ca({blobs:h,kzg:w});if(i.includes("blobVersionedHashes")){const $=Bd({commitments:v,to:"hex"});n.blobVersionedHashes=$}if(i.includes("sidecars")){const $=ka({blobs:h,commitments:v,kzg:w}),T=kd({blobs:h,commitments:v,proofs:$,to:"hex"});n.sidecars=T}}if(i.includes("chainId")&&(n.chainId=await f()),(i.includes("fees")||i.includes("type"))&&typeof m>"u")try{n.type=Nd(n)}catch{let v=oi.get(e.uid);if(typeof v>"u"){const $=await g();v=typeof($==null?void 0:$.baseFeePerGas)=="bigint",oi.set(e.uid,v)}n.type=v?"eip1559":"legacy"}if(i.includes("fees"))if(n.type!=="legacy"&&n.type!=="eip2930"){if(typeof n.maxFeePerGas>"u"||typeof n.maxPriorityFeePerGas>"u"){const v=await g(),{maxFeePerGas:$,maxPriorityFeePerGas:T}=await ws(e,{block:v,chain:s,request:n});if(typeof n.maxPriorityFeePerGas>"u"&&n.maxFeePerGas&&n.maxFeePerGas<T)throw new pd({maxPriorityFeePerGas:T});n.maxPriorityFeePerGas=T,n.maxFeePerGas=$}}else{if(typeof n.maxFeePerGas<"u"||typeof n.maxPriorityFeePerGas<"u")throw new Ks;if(typeof n.gasPrice>"u"){const v=await g(),{gasPrice:$}=await ws(e,{block:v,chain:s,request:n,type:"legacy"});n.gasPrice=$}}return i.includes("gas")&&typeof b>"u"&&(n.gas=await M(e,ro,"estimateGas")({...n,account:u,prepare:(u==null?void 0:u.type)==="local"?[]:["blobVersionedHashes"]})),a!=null&&a.fn&&((A=a.runAt)!=null&&A.includes("afterFillParameters"))&&(n=await a.fn({...n,chain:s},{client:e,phase:"afterFillParameters"})),We(n),delete n.parameters,n}async function ro(e,t){var i,a,c;const{account:n=e.account,prepare:r=!0}=t,s=n?Z(n):void 0,o=(()=>{if(Array.isArray(r))return r;if((s==null?void 0:s.type)!=="local")return["blobVersionedHashes"]})();try{const f=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await gr({authorization:t.authorizationList[0]}).catch(()=>{throw new I("`to` is required. Could not infer from `authorizationList`")})})(),{accessList:u,authorizationList:d,blobs:l,blobVersionedHashes:p,blockNumber:h,blockTag:b,data:w,gas:m,gasPrice:x,maxFeePerBlobGas:g,maxFeePerGas:y,maxPriorityFeePerGas:E,nonce:A,value:v,stateOverride:$,...T}=r?await Ln(e,{...t,parameters:o,to:f}):t;if(m&&t.gas!==m)return m;const B=(typeof h=="bigint"?L(h):void 0)||b,N=Zs($);We(t);const k=(c=(a=(i=e.chain)==null?void 0:i.formatters)==null?void 0:a.transactionRequest)==null?void 0:c.format,P=(k||tt)({...Kt(T,{format:k}),account:s,accessList:u,authorizationList:d,blobs:l,blobVersionedHashes:p,data:w,gasPrice:x,maxFeePerBlobGas:g,maxFeePerGas:y,maxPriorityFeePerGas:E,nonce:A,to:f,value:v},"estimateGas");return BigInt(await e.request({method:"eth_estimateGas",params:N?[P,B??e.experimental_blockTag??"latest",N]:B?[P,B]:[P]}))}catch(f){throw ud(f,{...t,account:s,chain:e.chain})}}async function Rd(e,t){var f;const{abi:n,address:r,args:s,functionName:o,dataSuffix:i=typeof e.dataSuffix=="string"?e.dataSuffix:(f=e.dataSuffix)==null?void 0:f.value,...a}=t,c=ce({abi:n,args:s,functionName:o});try{return await M(e,ro,"estimateGas")({data:`${c}${i?i.replace("0x",""):""}`,to:r,...a})}catch(u){const d=a.account?Z(a.account):void 0;throw yt(u,{abi:n,address:r,args:s,docsPath:"/docs/contract/estimateContractGas",functionName:o,sender:d==null?void 0:d.address})}}function gt(e,t){if(!ge(e,{strict:!1}))throw new Xe({address:e});if(!ge(t,{strict:!1}))throw new Xe({address:t});return e.toLowerCase()===t.toLowerCase()}function Oe(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,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}:{}}}const ii="/docs/contract/decodeEventLog";function sr(e){const{abi:t,data:n,strict:r,topics:s}=e,o=r??!0,[i,...a]=s;if(!i)throw new x0({docsPath:ii});const c=t.find(m=>m.type==="event"&&i===br(Ee(m)));if(!(c&&"name"in c)||c.type!=="event")throw new E0(i,{docsPath:ii});const{name:f,inputs:u}=c,d=u==null?void 0:u.some(m=>!("name"in m&&m.name)),l=d?[]:{},p=u.map((m,x)=>[m,x]).filter(([m])=>"indexed"in m&&m.indexed),h=[];for(let m=0;m<p.length;m++){const[x,g]=p[m],y=a[m];if(!y){if(o)throw new zs({abiItem:c,param:x});h.push([x,g]);continue}l[d?g:x.name||g]=Od({param:x,value:y})}const b=u.filter(m=>!("indexed"in m&&m.indexed)),w=o?b:[...h.map(([m])=>m),...b];if(w.length>0){if(n&&n!=="0x")try{const m=Mn(w,n);if(m){let x=0;if(!o)for(const[g,y]of h)l[d?y:g.name||y]=m[x++];if(d)for(let g=0;g<u.length;g++)l[g]===void 0&&x<m.length&&(l[g]=m[x++]);else for(let g=0;g<b.length;g++)l[b[g].name]=m[x++]}}catch(m){if(o)throw m instanceof Ki||m instanceof ya?new er({abiItem:c,data:n,params:w,size:W(n)}):m}else if(o)throw new er({abiItem:c,data:"0x",params:w,size:0})}return{eventName:f,args:Object.values(l).length>0?l:void 0}}function Od({param:e,value:t}){return e.type==="string"||e.type==="bytes"||e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/)?t:(Mn([e],t)||[])[0]}function so(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]})(),i=t.filter(a=>a.type==="event").map(a=>({abi:a,selector:br(a)}));return r.map(a=>{var l;const c=typeof a.blockNumber=="string"?Oe(a):a,f=i.filter(p=>c.topics[0]===p.selector);if(f.length===0)return null;let u,d;for(const p of f)try{u=sr({...c,abi:[p.abi],strict:!0}),d=p;break}catch{}if(!u&&!s){d=f[0];try{u=sr({data:c.data,topics:c.topics,abi:[d.abi],strict:!1})}catch{const p=(l=d.abi.inputs)==null?void 0:l.some(h=>!("name"in h&&h.name));return{...c,args:p?[]:{},eventName:d.abi.name}}}return!u||!d||o&&!o.includes(u.eventName)||!Fd({args:u.args,inputs:d.abi.inputs,matchArgs:n})?null:{...u,...c}}).filter(Boolean)}function Fd(e){const{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function s(o,i,a){try{return o.type==="address"?gt(i,a):o.type==="string"||o.type==="bytes"?Q(Ht(i))===a:i===a}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((o,i)=>{if(o==null)return!0;const a=n[i];return a?(Array.isArray(o)?o:[o]).some(f=>s(a,f,t[i])):!1}):typeof t=="object"&&!Array.isArray(t)&&typeof r=="object"&&!Array.isArray(r)?Object.entries(r).every(([o,i])=>{if(i==null)return!0;const a=n.find(f=>f.name===o);return a?(Array.isArray(i)?i:[i]).some(f=>s(a,f,t[o])):!1}):!1}async function oo(e,{address:t,blockHash:n,fromBlock:r,toBlock:s,event:o,events:i,args:a,strict:c}={}){const f=c??!1,u=i??(o?[o]:void 0);let d=[];u&&(d=[u.flatMap(b=>Fn({abi:[b],eventName:b.name,args:i?void 0:a}))],o&&(d=d[0]));let l;n?l=await e.request({method:"eth_getLogs",params:[{address:t,topics:d,blockHash:n}]}):l=await e.request({method:"eth_getLogs",params:[{address:t,topics:d,fromBlock:typeof r=="bigint"?L(r):r,toBlock:typeof s=="bigint"?L(s):s}]});const p=l.map(h=>Oe(h));return u?so({abi:u,args:a,logs:p,strict:f}):p}async function Fa(e,t){const{abi:n,address:r,args:s,blockHash:o,eventName:i,fromBlock:a,toBlock:c,strict:f}=t,u=i?Pt({abi:n,name:i}):void 0,d=u?void 0:n.filter(l=>l.type==="event");return M(e,oo,"getLogs")({address:r,args:s,blockHash:o,event:u,events:d,fromBlock:a,toBlock:c,strict:f})}const zr="/docs/contract/decodeFunctionResult";function nt(e){const{abi:t,args:n,functionName:r,data:s}=e;let o=t[0];if(r){const a=Pt({abi:t,args:n,name:r});if(!a)throw new Ot(r,{docsPath:zr});o=a}if(o.type!=="function")throw new Ot(void 0,{docsPath:zr});if(!o.outputs)throw new Ji(o.name,{docsPath:zr});const i=Mn(o.outputs,s);if(i&&i.length>1)return i;if(i&&i.length===1)return i[0]}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const io=BigInt(0),vs=BigInt(1);function _n(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function ao(e){if(!_n(e))throw new Error("Uint8Array expected")}function Bn(e,t){if(typeof t!="boolean")throw new Error(e+" boolean expected, got "+t)}function Vn(e){const t=e.toString(16);return t.length&1?"0"+t:t}function Ma(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return e===""?io:BigInt("0x"+e)}const za=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",Md=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Sn(e){if(ao(e),za)return e.toHex();let t="";for(let n=0;n<e.length;n++)t+=Md[e[n]];return t}const Me={_0:48,_9:57,A:65,F:70,a:97,f:102};function ai(e){if(e>=Me._0&&e<=Me._9)return e-Me._0;if(e>=Me.A&&e<=Me.F)return e-(Me.A-10);if(e>=Me.a&&e<=Me.f)return e-(Me.a-10)}function or(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);if(za)return Uint8Array.fromHex(e);const t=e.length,n=t/2;if(t%2)throw new Error("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 i=ai(e.charCodeAt(o)),a=ai(e.charCodeAt(o+1));if(i===void 0||a===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]=i*16+a}return r}function dt(e){return Ma(Sn(e))}function ja(e){return ao(e),Ma(Sn(Uint8Array.from(e).reverse()))}function Un(e,t){return or(e.toString(16).padStart(t*2,"0"))}function La(e,t){return Un(e,t).reverse()}function me(e,t,n){let r;if(typeof t=="string")try{r=or(t)}catch(o){throw new Error(e+" must be hex string or Uint8Array, cause: "+o)}else if(_n(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+" of length "+n+" expected, got "+s);return r}function ir(...e){let t=0;for(let r=0;r<e.length;r++){const s=e[r];ao(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}const jr=e=>typeof e=="bigint"&&io<=e;function co(e,t,n){return jr(e)&&jr(t)&&jr(n)&&t<=e&&e<n}function Nt(e,t,n,r){if(!co(t,n,r))throw new Error("expected valid "+e+": "+n+" <= n < "+r+", got "+t)}function zd(e){let t;for(t=0;e>io;e>>=vs,t+=1);return t}const xr=e=>(vs<<BigInt(e))-vs,Lr=e=>new Uint8Array(e),ci=e=>Uint8Array.from(e);function jd(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=Lr(e),s=Lr(e),o=0;const i=()=>{r.fill(1),s.fill(0),o=0},a=(...d)=>n(s,r,...d),c=(d=Lr(0))=>{s=a(ci([0]),d),r=a(),d.length!==0&&(s=a(ci([1]),d),r=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let d=0;const l=[];for(;d<t;){r=a();const p=r.slice();l.push(p),d+=r.length}return ir(...l)};return(d,l)=>{i(),c(d);let p;for(;!(p=l(f()));)c();return i(),p}}const Ld={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"||_n(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 Er(e,t,n={}){const r=(s,o,i)=>{const a=Ld[o];if(typeof a!="function")throw new Error("invalid validator function");const c=e[s];if(!(i&&c===void 0)&&!a(c,e))throw new Error("param "+String(s)+" is invalid. Expected "+o+", got "+c)};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}function ui(e){const t=new WeakMap;return(n,...r)=>{const s=t.get(n);if(s!==void 0)return s;const o=e(n,...r);return t.set(n,o),o}}const _d="0.1.1";function Ud(){return _d}class U extends Error{static setStaticOptions(t){U.prototype.docsOrigin=t.docsOrigin,U.prototype.showVersion=t.showVersion,U.prototype.version=t.version}constructor(t,n={}){const r=(()=>{var u;if(n.cause instanceof U){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&"details"in n.cause&&typeof n.cause.details=="string"?n.cause.details:(u=n.cause)!=null&&u.message?n.cause.message:n.details})(),s=n.cause instanceof U&&n.cause.docsPath||n.docsPath,o=n.docsOrigin??U.prototype.docsOrigin,i=`${o}${s??""}`,a=!!(n.version??U.prototype.showVersion),c=n.version??U.prototype.version,f=[t||"An error occurred.",...n.metaMessages?["",...n.metaMessages]:[],...r||s||a?["",r?`Details: ${r}`:void 0,s?`See: ${i}`:void 0,a?`Version: ${c}`:void 0]:[]].filter(u=>typeof u=="string").join(`
50
+ `);super(f,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsOrigin",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"showVersion",{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,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.cause=n.cause,this.details=r,this.docs=i,this.docsOrigin=o,this.docsPath=s,this.shortMessage=t,this.showVersion=a,this.version=c}walk(t){return _a(this,t)}}Object.defineProperty(U,"defaultStaticOptions",{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:"https://oxlib.sh",showVersion:!1,version:`ox@${Ud()}`}});U.setStaticOptions(U.defaultStaticOptions);function _a(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?_a(e.cause,t):t?null:e}function Dn(e,t){if(Tt(e)>t)throw new sl({givenSize:Tt(e),maxSize:t})}const ze={zero:48,nine:57,A:65,F:70,a:97,f:102};function fi(e){if(e>=ze.zero&&e<=ze.nine)return e-ze.zero;if(e>=ze.A&&e<=ze.F)return e-(ze.A-10);if(e>=ze.a&&e<=ze.f)return e-(ze.a-10)}function Dd(e,t={}){const{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new ol({size:e.length,targetSize:r,type:"Bytes"});const s=new Uint8Array(r);for(let o=0;o<r;o++){const i=n==="right";s[i?o:r-o-1]=e[i?o:e.length-o-1]}return s}function Ua(e,t={}){const{dir:n="left"}=t;let r=e,s=0;for(let o=0;o<r.length-1&&r[n==="left"?o:r.length-o-1].toString()==="0";o++)s++;return r=n==="left"?r.slice(s):r.slice(0,r.length-s),r}function Pr(e,t){if(pe(e)>t)throw new dl({givenSize:pe(e),maxSize:t})}function qd(e,t){if(typeof t=="number"&&t>0&&t>pe(e)-1)throw new Ya({offset:t,position:"start",size:pe(e)})}function Gd(e,t,n){if(typeof t=="number"&&typeof n=="number"&&pe(e)!==n-t)throw new Ya({offset:n,position:"end",size:pe(e)})}function Da(e,t={}){const{dir:n,size:r=32}=t;if(r===0)return e;const s=e.replace("0x","");if(s.length>r*2)throw new ll({size:Math.ceil(s.length/2),targetSize:r,type:"Hex"});return`0x${s[n==="right"?"padEnd":"padStart"](r*2,"0")}`}const Hd="#__bigint";function qa(e,t,n){return JSON.stringify(e,(r,s)=>typeof s=="bigint"?s.toString()+Hd:s,n)}const Vd=new TextDecoder,Wd=new TextEncoder;function Zd(e){return e instanceof Uint8Array?e:typeof e=="string"?Ga(e):Kd(e)}function Kd(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function Ga(e,t={}){const{size:n}=t;let r=e;n&&(Pr(e,n),r=vt(e,n));let s=r.slice(2);s.length%2&&(s=`0${s}`);const o=s.length/2,i=new Uint8Array(o);for(let a=0,c=0;a<o;a++){const f=fi(s.charCodeAt(c++)),u=fi(s.charCodeAt(c++));if(f===void 0||u===void 0)throw new U(`Invalid byte sequence ("${s[c-2]}${s[c-1]}" in "${s}").`);i[a]=f<<4|u}return i}function Yd(e,t={}){const{size:n}=t,r=Wd.encode(e);return typeof n=="number"?(Dn(r,n),Jd(r,n)):r}function Jd(e,t){return Dd(e,{dir:"right",size:t})}function Tt(e){return e.length}function Xd(e,t,n,r={}){const{strict:s}=r;return e.slice(t,n)}function Qd(e,t={}){const{size:n}=t;typeof n<"u"&&Dn(e,n);const r=$e(e,t);return Wa(r,t)}function el(e,t={}){const{size:n}=t;let r=e;if(typeof n<"u"&&(Dn(r,n),r=Ha(r)),r.length>1||r[0]>1)throw new rl(r);return!!r[0]}function De(e,t={}){const{size:n}=t;typeof n<"u"&&Dn(e,n);const r=$e(e,t);return Za(r,t)}function tl(e,t={}){const{size:n}=t;let r=e;return typeof n<"u"&&(Dn(r,n),r=nl(r)),Vd.decode(r)}function Ha(e){return Ua(e,{dir:"left"})}function nl(e){return Ua(e,{dir:"right"})}class rl extends U{constructor(t){super(`Bytes value \`${t}\` is not a valid boolean.`,{metaMessages:["The bytes array must contain a single byte of either a `0` or `1` value."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesBooleanError"})}}let sl=class extends U{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}},ol=class extends U{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}};const il=new TextEncoder,al=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function cl(e,t={}){const{strict:n=!1}=t;if(!e)throw new di(e);if(typeof e!="string")throw new di(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e))throw new li(e);if(!e.startsWith("0x"))throw new li(e)}function Ae(...e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function ul(e){return e instanceof Uint8Array?$e(e):Array.isArray(e)?$e(new Uint8Array(e)):e}function Va(e,t={}){const n=`0x${Number(e)}`;return typeof t.size=="number"?(Pr(n,t.size),wt(n,t.size)):n}function $e(e,t={}){let n="";for(let s=0;s<e.length;s++)n+=al[e[s]];const r=`0x${n}`;return typeof t.size=="number"?(Pr(r,t.size),vt(r,t.size)):r}function te(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 i=typeof o=="bigint"&&n?-o-1n:0;if(o&&s>o||s<i){const f=typeof e=="bigint"?"n":"";throw new Ka({max:o?`${o}${f}`:void 0,min:`${i}${f}`,signed:n,size:r,value:`${e}${f}`})}const c=`0x${(n&&s<0?BigInt.asUintN(r*8,BigInt(s)):s).toString(16)}`;return r?wt(c,r):c}function uo(e,t={}){return $e(il.encode(e),t)}function wt(e,t){return Da(e,{dir:"left",size:t})}function vt(e,t){return Da(e,{dir:"right",size:t})}function Ce(e,t,n,r={}){const{strict:s}=r;qd(e,t);const o=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return s&&Gd(o,t,n),o}function pe(e){return Math.ceil((e.length-2)/2)}function Wa(e,t={}){const{signed:n}=t;t.size&&Pr(e,t.size);const r=BigInt(e);if(!n)return r;const s=(e.length-2)/2,o=(1n<<BigInt(s)*8n)-1n,i=o>>1n;return r<=i?r:r-o-1n}function Za(e,t={}){const{signed:n,size:r}=t;return Number(!n&&!r?e:Wa(e,t))}function fl(e,t={}){const{strict:n=!1}=t;try{return cl(e,{strict:n}),!0}catch{return!1}}class Ka extends U{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}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class di extends U{constructor(t){super(`Value \`${typeof t=="object"?qa(t):t}\` of type \`${typeof t}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class li extends U{constructor(t){super(`Value \`${t}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}class dl extends U{constructor({givenSize:t,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class Ya extends U{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${t}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class ll extends U{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function hl(e){return{address:e.address,amount:te(e.amount),index:te(e.index),validatorIndex:te(e.validatorIndex)}}function Ja(e){return{...typeof e.baseFeePerGas=="bigint"&&{baseFeePerGas:te(e.baseFeePerGas)},...typeof e.blobBaseFee=="bigint"&&{blobBaseFee:te(e.blobBaseFee)},...typeof e.feeRecipient=="string"&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit=="bigint"&&{gasLimit:te(e.gasLimit)},...typeof e.number=="bigint"&&{number:te(e.number)},...typeof e.prevRandao=="bigint"&&{prevRandao:te(e.prevRandao)},...typeof e.time=="bigint"&&{time:te(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(hl)}}}const Dt=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{name:"addr",type:"address"}],name:"getEthBalance",outputs:[{name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"}],xs=[{name:"query",type:"function",stateMutability:"view",inputs:[{type:"tuple[]",name:"queries",components:[{type:"address",name:"sender"},{type:"string[]",name:"urls"},{type:"bytes",name:"data"}]}],outputs:[{type:"bool[]",name:"failures"},{type:"bytes[]",name:"responses"}]},{name:"HttpError",type:"error",inputs:[{type:"uint16",name:"status"},{type:"string",name:"message"}]}],Xa=[{inputs:[{name:"dns",type:"bytes"}],name:"DNSDecodingFailed",type:"error"},{inputs:[{name:"ens",type:"string"}],name:"DNSEncodingFailed",type:"error"},{inputs:[],name:"EmptyAddress",type:"error"},{inputs:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"HttpError",type:"error"},{inputs:[],name:"InvalidBatchGatewayResponse",type:"error"},{inputs:[{name:"errorData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{name:"name",type:"bytes"},{name:"resolver",type:"address"}],name:"ResolverNotContract",type:"error"},{inputs:[{name:"name",type:"bytes"}],name:"ResolverNotFound",type:"error"},{inputs:[{name:"primary",type:"string"},{name:"primaryAddress",type:"bytes"}],name:"ReverseAddressMismatch",type:"error"},{inputs:[{internalType:"bytes4",name:"selector",type:"bytes4"}],name:"UnsupportedResolverProfile",type:"error"}],Qa=[...Xa,{name:"resolveWithGateways",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],pl=[...Xa,{name:"reverseWithGateways",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"uint256",name:"coinType"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolver"},{type:"address",name:"reverseResolver"}]}],hi=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],ec=[{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"}]}],tc=[{name:"isValidSignature",type:"function",stateMutability:"view",inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],outputs:[{name:"",type:"bytes4"}]}],pi=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}],zb=[{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"}]}],bl="0x82ad56cb",nc="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",ml="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",yl="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",fo="0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033";class Es extends I{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 gl extends I{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 wl extends I{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(`
51
+ `),{name:"ChainNotFoundError"})}}class rc extends I{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}const _r="/docs/contract/encodeDeployData";function Ar(e){const{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;const s=t.find(i=>"type"in i&&i.type==="constructor");if(!s)throw new m0({docsPath:_r});if(!("inputs"in s))throw new Lo({docsPath:_r});if(!s.inputs||s.inputs.length===0)throw new Lo({docsPath:_r});const o=Et(s.inputs,n);return Wt([r,o])}function Yt({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 Es({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Es({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}function sc(e,{docsPath:t,...n}){const r=(()=>{const s=wr(e,n);return s instanceof jn?e:s})();return new Ea(r,{docsPath:t,...n})}function lo(){let e=()=>{},t=()=>{};return{promise:new Promise((r,s)=>{e=r,t=s}),resolve:e,reject:t}}const Ur=new Map;function oc({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:s}){const o=async()=>{const u=c();i();const d=u.map(({args:l})=>l);d.length!==0&&e(d).then(l=>{s&&Array.isArray(l)&&l.sort(s);for(let p=0;p<u.length;p++){const{resolve:h}=u[p];h==null||h([l[p],l])}}).catch(l=>{for(let p=0;p<u.length;p++){const{reject:h}=u[p];h==null||h(l)}})},i=()=>Ur.delete(t),a=()=>c().map(({args:u})=>u),c=()=>Ur.get(t)||[],f=u=>Ur.set(t,[...c(),u]);return{flush:i,async schedule(u){const{promise:d,resolve:l,reject:p}=lo();return(n==null?void 0:n([...a(),u]))&&o(),c().length>0?(f({args:u,resolve:l,reject:p}),d):(f({args:u,resolve:l,reject:p}),setTimeout(o,r),d)}}}async function qn(e,t){var S,R,C,F,j,D;const{account:n=e.account,authorizationList:r,batch:s=!!((S=e.batch)!=null&&S.multicall),blockHash:o,blockNumber:i,blockTag:a=e.experimental_blockTag??"latest",requireCanonical:c,accessList:f,blobs:u,blockOverrides:d,code:l,data:p,factory:h,factoryData:b,gas:w,gasPrice:m,maxFeePerBlobGas:x,maxFeePerGas:g,maxPriorityFeePerGas:y,nonce:E,requestOptions:A,to:v,value:$,stateOverride:T,...O}=t,B=n?Z(n):void 0;if(l&&(h||b))throw new I("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(l&&v)throw new I("Cannot provide both `code` & `to` as parameters.");const N=l&&p,k=h&&b&&v&&p,z=N||k,P=N?ac({code:l,data:p}):k?$l({data:p,factory:h,factoryData:b,to:v}):p;try{We(t);const q=At({blockHash:o,blockNumber:i,blockTag:a,requireCanonical:c}),H=d?Ja(d):void 0,G=Zs(T),V=(F=(C=(R=e.chain)==null?void 0:R.formatters)==null?void 0:C.transactionRequest)==null?void 0:F.format,re=(V||tt)({...Kt(O,{format:V}),accessList:f,account:B,authorizationList:r,blobs:u,data:P,gas:w,gasPrice:m,maxFeePerBlobGas:x,maxFeePerGas:g,maxPriorityFeePerGas:y,nonce:E,to:z?void 0:v,value:$},"call");if(s&&vl({request:re})&&!H&&o===void 0)try{const{deployless:X=!1}=typeof((j=e.batch)==null?void 0:j.multicall)=="object"?e.batch.multicall:{},st=ic(e,{blockNumber:i,deployless:X});if(!st||!Al(G,st))return await Pl(e,{...re,blockHash:o,blockNumber:i,blockTag:a,multicallAddress:st,requestOptions:A,requireCanonical:c,rpcStateOverride:G})}catch(X){if(!(X instanceof rc)&&!(X instanceof Es))throw X}const Xt=(()=>{const X=[re,q];return G&&H?[...X,G,H]:G?[...X,G]:H?[...X,{},H]:X})(),Se=await e.request({method:"eth_call",params:Xt},A);return Se==="0x"?{data:void 0}:{data:Se}}catch(q){if((D=A==null?void 0:A.signal)!=null&&D.aborted)throw Qe(A.signal);if(Zt(q))throw q;const H=Il(q),{offchainLookup:G,offchainLookupSignature:V}=await Ri(async()=>{const{offchainLookup:de,offchainLookupSignature:re}=await import("./ccip-B_vQl40F.js");return{offchainLookup:de,offchainLookupSignature:re}},__vite__mapDeps([0,1,2]));if(e.ccipRead!==!1&&(H==null?void 0:H.slice(0,10))===V&&v)return{data:await G(e,{data:H,requestOptions:A,to:v})};throw z&&(H==null?void 0:H.slice(0,10))==="0x101bb98d"?new Xf({factory:h}):sc(q,{...t,account:B,chain:e.chain})}}function vl({request:e}){const{data:t,to:n,...r}=e;return!(!t||t.startsWith(bl)||!n||Object.values(r).filter(s=>typeof s<"u").length>0)}let xl=0;const bi=new WeakMap;function El(e){if(!e)return"default";const t=bi.get(e);if(t!==void 0)return t;const n=xl++;return bi.set(e,n),n}async function Pl(e,t){var E;const{batchSize:n=1024,deployless:r=!1,wait:s=0}=typeof((E=e.batch)==null?void 0:E.multicall)=="object"?e.batch.multicall:{},{blockHash:o,blockNumber:i,blockTag:a=e.experimental_blockTag??"latest",requireCanonical:c,data:f,multicallAddress:u,requestOptions:d,rpcStateOverride:l,to:p}=t,h=u!==void 0?u:ic(e,{blockNumber:i,deployless:r}),b=At({blockHash:o,blockNumber:i,blockTag:a,requireCanonical:c}),w=typeof b=="string"?b:JSON.stringify(b),m=l?`.${JSON.stringify(l)}`:"",{schedule:x}=oc({id:`${e.uid}.${w}.${El(d)}${m}`,wait:s,shouldSplitBatch(A){return A.reduce(($,{data:T})=>$+(T.length-2),0)>n*2},fn:async A=>{const v=A.map(B=>({allowFailure:!0,callData:B.data,target:B.to})),$=ce({abi:Dt,args:[v],functionName:"aggregate3"}),T={...h===null?{data:ac({code:fo,data:$})}:{to:h,data:$}},O=await e.request({method:"eth_call",params:l?[T,b,l]:[T,b]},d);return nt({abi:Dt,args:[v],functionName:"aggregate3",data:O||"0x"})}}),[{returnData:g,success:y}]=await x({data:f,to:p});if(!y)throw new yr({data:g});return g==="0x"?{data:void 0}:{data:g}}function ic(e,t){const{blockNumber:n,deployless:r}=t;if(r)return null;if(e.chain)return Yt({blockNumber:n,chain:e.chain,contract:"multicall3"});throw new rc}function Al(e,t){return e?Object.keys(e).some(n=>gt(n,t)):!1}function ac(e){const{code:t,data:n}=e;return Ar({abi:Vi(["constructor(bytes, bytes)"]),bytecode:nc,args:[t,n]})}function $l(e){const{data:t,factory:n,factoryData:r,to:s}=e;return Ar({abi:Vi(["constructor(address, bytes, address, bytes)"]),bytecode:ml,args:[s,t,n,r]})}function Il(e){var n;if(!(e instanceof I))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 Ie(e,t){const{abi:n,address:r,args:s,functionName:o,...i}=t,a=ce({abi:n,args:s,functionName:o});try{const{data:c}=await M(e,qn,"call")({...i,data:a,to:r});return nt({abi:n,args:s,functionName:o,data:c||"0x"})}catch(c){throw yt(c,{abi:n,address:r,args:s,docsPath:"/docs/contract/readContract",functionName:o})}}async function Bl(e,t){var u;const{abi:n,address:r,args:s,functionName:o,dataSuffix:i=typeof e.dataSuffix=="string"?e.dataSuffix:(u=e.dataSuffix)==null?void 0:u.value,...a}=t,c=a.account?Z(a.account):e.account,f=ce({abi:n,args:s,functionName:o});try{const{data:d}=await M(e,qn,"call")({batch:!1,data:`${f}${i?i.replace("0x",""):""}`,to:r,...a,account:c}),l=nt({abi:n,args:s,functionName:o,data:d||"0x"}),p=n.filter(h=>"name"in h&&h.name===t.functionName);return{result:l,request:{abi:p,address:r,args:s,dataSuffix:i,functionName:o,...a,account:c}}}catch(d){throw yt(d,{abi:n,address:r,args:s,docsPath:"/docs/contract/simulateContract",functionName:o,sender:c==null?void 0:c.address})}}const Wn=new Map,Dr=new Map;let Sl=0;function He(e,t,n){const r=++Sl,s=()=>Wn.get(e)||[],o=()=>{const d=s().filter(l=>l.id!==r);if(d.length===0){Wn.delete(e),Dr.delete(e);return}Wn.set(e,d)},i=()=>{const u=s();if(!u.some(l=>l.id===r))return;const d=Dr.get(e);if(u.length===1&&d){const l=d();l instanceof Promise&&l.catch(()=>{})}o()},a=s();if(Wn.set(e,[...a,{id:r,fns:t}]),a&&a.length>0)return i;const c={};for(const u in t)c[u]=((...d)=>{var p,h;const l=s();if(l.length!==0)for(const b of l)(h=(p=b.fns)[u])==null||h.call(p,...d)});const f=n(c);return typeof f=="function"&&Dr.set(e,f),i}async function ar(e,{signal:t}={}){return new Promise((n,r)=>{if(t!=null&&t.aborted){r(Qe(t));return}const s=()=>t==null?void 0:t.removeEventListener("abort",i),o=setTimeout(()=>{s(),n()},e),i=()=>{clearTimeout(o),s(),r(Qe(t))};t==null||t.addEventListener("abort",i,{once:!0})})}function Jt(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let s=!0;const o=()=>s=!1;return(async()=>{let a;t&&(a=await e({unpoll:o}));const c=await(n==null?void 0:n(a))??r;await ar(c);const f=async()=>{s&&(await e({unpoll:o}),await ar(r),f())};f()})(),o}const Tl=new Map,Cl=new Map;function kl(e){const t=(s,o)=>({clear:()=>o.delete(s),get:()=>o.get(s),set:i=>o.set(s,i)}),n=t(e,Tl),r=t(e,Cl);return{clear:()=>{n.clear(),r.clear()},promise:n,response:r}}async function Nl(e,{cacheKey:t,cacheTime:n=Number.POSITIVE_INFINITY}){const r=kl(t),s=r.response.get();if(s&&n>0&&Date.now()-s.created.getTime()<n)return s.data;let o=r.promise.get();o||(o=e(),r.promise.set(o));try{const i=await o;return r.response.set({created:new Date,data:i}),i}finally{r.promise.clear()}}const Rl=e=>`blockNumber.${e}`;async function Gn(e,{cacheTime:t=e.cacheTime}={}){const n=await Nl(()=>e.request({method:"eth_blockNumber"}),{cacheKey:Rl(e.uid),cacheTime:t});return BigInt(n)}async function $r(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=>Oe(o));return!("abi"in t)||!t.abi?s:so({abi:t.abi,logs:s,strict:n})}async function Ir(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function Ol(e,t){const{abi:n,address:r,args:s,batch:o=!0,eventName:i,fromBlock:a,onError:c,onLogs:f,poll:u,pollingInterval:d=e.pollingInterval,strict:l}=t;return(typeof u<"u"?u:typeof a=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")))?(()=>{const w=l??!1,m=K(["watchContractEvent",r,s,o,e.uid,i,d,w,a]);return He(m,{onLogs:f,onError:c},x=>{let g;a!==void 0&&(g=a-1n);let y,E=!1;const A=Jt(async()=>{var v;if(!E){try{y=await M(e,ba,"createContractEventFilter")({abi:n,address:r,args:s,eventName:i,strict:w,fromBlock:a})}catch{}E=!0;return}try{let $;if(y)$=await M(e,$r,"getFilterChanges")({filter:y});else{const T=await M(e,Gn,"getBlockNumber")({});g&&g<T?$=await M(e,Fa,"getContractEvents")({abi:n,address:r,args:s,eventName:i,fromBlock:g+1n,toBlock:T,strict:w}):$=[],g=T}if($.length===0)return;if(o)x.onLogs($);else for(const T of $)x.onLogs([T])}catch($){y&&$ instanceof et&&(E=!1),(v=x.onError)==null||v.call(x,$)}},{emitOnBegin:!0,interval:d});return async()=>{y&&await M(e,Ir,"uninstallFilter")({filter:y}),A()}})})():(()=>{const w=l??!1,m=K(["watchContractEvent",r,s,o,e.uid,i,d,w]);let x=!0,g=()=>x=!1;return He(m,{onLogs:f,onError:c},y=>((async()=>{try{const E=(()=>{if(e.transport.type==="fallback"){const $=e.transport.transports.find(T=>T.config.type==="webSocket"||T.config.type==="ipc");return $?$.value:e.transport}return e.transport})(),A=i?Fn({abi:n,eventName:i,args:s}):[],{unsubscribe:v}=await E.subscribe({params:["logs",{address:r,topics:A}],onData($){var O;if(!x)return;const T=$.result;try{const{eventName:B,args:N}=sr({abi:n,data:T.data,topics:T.topics,strict:l}),k=Oe(T,{args:N,eventName:B});y.onLogs([k])}catch(B){let N,k;if(B instanceof er||B instanceof zs){if(l)return;N=B.abiItem.name,k=(O=B.abiItem.inputs)==null?void 0:O.some(P=>!("name"in P&&P.name))}const z=Oe(T,{args:k?[]:{},eventName:N});y.onLogs([z])}},onError($){var T;(T=y.onError)==null||T.call(y,$)}});g=v,x||g()}catch(E){c==null||c(E)}})(),()=>g()))})()}class rt extends I{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(`
52
+ `),{docsPath:t,docsSlug:"account",name:"AccountNotFoundError"})}}class lt extends I{constructor({docsPath:t,metaMessages:n,type:r}){super(`Account type "${r}" is not supported.`,{docsPath:t,metaMessages:n,name:"AccountTypeNotSupportedError"})}}function ho({chain:e,currentChainId:t}){if(!e)throw new wl;if(t!==e.id)throw new gl({chain:e,currentChainId:t})}async function po(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}const qr=new Vt(128);async function Br(e,t){var E,A,v,$,T,O;const{account:n=e.account,assertChainId:r=!0,chain:s=e.chain,accessList:o,authorizationList:i,blobs:a,data:c,dataSuffix:f=typeof e.dataSuffix=="string"?e.dataSuffix:(E=e.dataSuffix)==null?void 0:E.value,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:b,type:w,value:m,...x}=t;if(typeof n>"u")throw new rt({docsPath:"/docs/actions/wallet/sendTransaction"});const g=n?Z(n):null;let y;try{We(t);const B=await(async()=>{if(t.to)return t.to;if(t.to!==null&&i&&i.length>0)return await gr({authorization:i[0]}).catch(()=>{throw new I("`to` is required. Could not infer from `authorizationList`.")})})();if((g==null?void 0:g.type)==="json-rpc"||g===null){let N;s!==null&&(N=await M(e,Re,"getChainId")({}),r&&ho({currentChainId:N,chain:s}));const k=($=(v=(A=e.chain)==null?void 0:A.formatters)==null?void 0:v.transactionRequest)==null?void 0:$.format,P=(k||tt)({...Kt(x,{format:k}),accessList:o,account:g,authorizationList:i,blobs:a,chainId:N,data:f?ee([c??"0x",f]):c,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:b,to:B,type:w,value:m},"sendTransaction"),S=qr.get(e.uid),R=S?"wallet_sendTransaction":"eth_sendTransaction";try{return await e.request({method:R,params:[P]},{retryCount:0})}catch(C){if(S===!1)throw C;const F=C;if(F.name==="InvalidInputRpcError"||F.name==="InvalidParamsRpcError"||F.name==="MethodNotFoundRpcError"||F.name==="MethodNotSupportedRpcError")return await e.request({method:"wallet_sendTransaction",params:[P]},{retryCount:0}).then(j=>(qr.set(e.uid,!0),j)).catch(j=>{const D=j;throw D.name==="MethodNotFoundRpcError"||D.name==="MethodNotSupportedRpcError"?(qr.set(e.uid,!1),F):D});throw F}}if((g==null?void 0:g.type)==="local"){if(g.nonceManager&&typeof b>"u"){const P=x.chainId,S=await(async()=>typeof P=="number"?P:s?s.id:M(e,Re,"getChainId")({}))();y={address:g.address,chainId:S}}const N=await M(e,Ln,"prepareTransactionRequest")({account:g,accessList:o,authorizationList:i,blobs:a,chain:s,data:f?ee([c??"0x",f]):c,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:b,nonceManager:g.nonceManager,parameters:[...no,"sidecars"],type:w,value:m,...x,to:B}),k=(T=s==null?void 0:s.serializers)==null?void 0:T.transaction,z=await g.signTransaction(N,{serializer:k});return await M(e,po,"sendRawTransaction")({serializedTransaction:z})}throw(g==null?void 0:g.type)==="smart"?new lt({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new lt({docsPath:"/docs/actions/wallet/sendTransaction",type:g==null?void 0:g.type})}catch(B){throw B instanceof lt?B:(y&&((O=g==null?void 0:g.nonceManager)==null||O.reset(y)),vr(B,{...t,account:g,chain:t.chain||void 0}))}}async function Tn(e,t){return Tn.internal(e,Br,"sendTransaction",t)}(function(e){async function t(n,r,s,o){const{abi:i,account:a=n.account,address:c,args:f,functionName:u,...d}=o;if(typeof a>"u")throw new rt({docsPath:"/docs/contract/writeContract"});const l=a?Z(a):null,p=ce({abi:i,args:f,functionName:u});try{return await M(n,r,s)({data:p,to:c,account:l,...d})}catch(h){throw yt(h,{abi:i,address:c,args:f,docsPath:"/docs/contract/writeContract",functionName:u,sender:l==null?void 0:l.address})}}e.internal=t})(Tn||(Tn={}));class Fl extends I{constructor(t){super(`Call bundle failed with status: ${t.statusCode}`,{name:"BundleFailedError"}),Object.defineProperty(this,"result",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=t}}function cr(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0,signal:s}={}){return new Promise((o,i)=>{const a=async({count:c=0}={})=>{if(s!=null&&s.aborted){i(Qe(s));return}const f=async({error:u})=>{const d=typeof t=="function"?t({count:c,error:u}):t;if(d)try{await ar(d,{signal:s})}catch(l){i(l);return}a({count:c+1})};try{const u=await e();o(u)}catch(u){if(s!=null&&s.aborted){i(Qe(s));return}if(Zt(u)){i(u);return}if(c<n&&await r({count:c,error:u}))return f({error:u});i(u)}};a()})}const cc={"0x0":"reverted","0x1":"success"};function bo(e,t){const n={...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(r=>Oe(r)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Pe(e.transactionIndex):null,status:e.status?cc[e.status]:null,type:e.type?Ba[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}const uc="0x5792579257925792579257925792579257925792579257925792579257925792",fc=L(0,{size:32});async function dc(e,t){var l;const{account:n=e.account,chain:r=e.chain,experimental_fallback:s,experimental_fallbackDelay:o=32,forceAtomic:i=!1,id:a,version:c="2.0.0"}=t,f=n?Z(n):null;let u=t.capabilities;e.dataSuffix&&!((l=t.capabilities)!=null&&l.dataSuffix)&&(typeof e.dataSuffix=="string"?u={...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:u={...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});const d=t.calls.map(p=>{const h=p,b=h.abi?ce({abi:h.abi,functionName:h.functionName,args:h.args}):h.data;return{data:h.dataSuffix&&b?ee([b,h.dataSuffix]):b,to:h.to,value:h.value?L(h.value):void 0}});try{const p=await e.request({method:"wallet_sendCalls",params:[{atomicRequired:i,calls:d,capabilities:u,chainId:L(r.id),from:f==null?void 0:f.address,id:a,version:c}]},{retryCount:0});return typeof p=="string"?{id:p}:p}catch(p){const h=p;if(s&&(h.name==="MethodNotFoundRpcError"||h.name==="MethodNotSupportedRpcError"||h.name==="UnknownRpcError"||h.details.toLowerCase().includes("does not exist / is not available")||h.details.toLowerCase().includes("missing or invalid. request()")||h.details.toLowerCase().includes("did not match any variant of untagged enum")||h.details.toLowerCase().includes("account upgraded to unsupported contract")||h.details.toLowerCase().includes("eip-7702 not supported")||h.details.toLowerCase().includes("unsupported wc_ method")||h.details.toLowerCase().includes("feature toggled misconfigured")||h.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))){if(u&&Object.values(u).some(x=>!x.optional)){const x="non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";throw new Lt(new I(x,{details:x}))}if(i&&d.length>1){const m="`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";throw new _t(new I(m,{details:m}))}const b=[];for(const m of d){try{const x=await Br(e,{account:f,chain:r,data:m.data,to:m.to,value:m.value?he(m.value):void 0});b.push({status:"fulfilled",value:x})}catch(x){b.push({reason:x,status:"rejected"})}o>0&&await new Promise(x=>setTimeout(x,o))}if(b.every(m=>m.status==="rejected"))throw b[0].reason;const w=b.map(m=>m.status==="fulfilled"?m.value:fc);return{id:ee([...w,L(r.id,{size:32}),uc])}}throw vr(p,{...t,account:f,chain:t.chain})}}async function lc(e,t){async function n(u){if(u.endsWith(uc.slice(2))){const l=_e(is(u,-64,-32)),p=is(u,0,-64).slice(2).match(/.{1,64}/g),h=await Promise.all(p.map(w=>fc.slice(2)!==w?e.request({method:"eth_getTransactionReceipt",params:[`0x${w}`]},{dedupe:!0}):void 0)),b=h.some(w=>w===null)?100:h.every(w=>(w==null?void 0:w.status)==="0x1")?200:h.every(w=>(w==null?void 0:w.status)==="0x0")?500:600;return{atomic:!1,chainId:Pe(l),receipts:h.filter(Boolean),status:b,version:"2.0.0"}}return e.request({method:"wallet_getCallsStatus",params:[u]})}const{atomic:r=!1,chainId:s,receipts:o,version:i="2.0.0",...a}=await n(t.id),[c,f]=(()=>{const u=a.status;return u>=100&&u<200?["pending",u]:u>=200&&u<300?["success",u]:u>=300&&u<700?["failure",u]:u==="CONFIRMED"?["success",200]:u==="PENDING"?["pending",100]:[void 0,u]})();return{...a,atomic:r,chainId:s?Pe(s):void 0,receipts:(o==null?void 0:o.map(u=>({...u,blockNumber:he(u.blockNumber),gasUsed:he(u.gasUsed),status:cc[u.status]})))??[],statusCode:f,status:c,version:i}}async function hc(e,t){const{id:n,pollingInterval:r=e.pollingInterval,status:s=({statusCode:b})=>b===200||b>=300,retryCount:o=4,retryDelay:i=({count:b})=>~~(1<<b)*200,timeout:a=6e4,throwOnFailure:c=!1}=t,f=K(["waitForCallsStatus",e.uid,n]),{promise:u,resolve:d,reject:l}=lo();let p;const h=He(f,{resolve:d,reject:l},b=>{const w=Jt(async()=>{const m=x=>{clearTimeout(p),w(),x(),h()};try{const x=await cr(async()=>{const g=await M(e,lc,"getCallsStatus")({id:n});if(c&&g.status==="failure")throw new Fl(g);return g},{retryCount:o,delay:i});if(!s(x))return;m(()=>b.resolve(x))}catch(x){m(()=>b.reject(x))}},{interval:r,emitOnBegin:!0});return w});return p=a?setTimeout(()=>{h(),clearTimeout(p),l(new Ml({id:n}))},a):void 0,await u}class Ml extends I{constructor({id:t}){super(`Timed out while waiting for call bundle with id "${t}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}const Ps=256;let Zn=Ps,Kn;function pc(e=11){if(!Kn||Zn+e>Ps*2){Kn="",Zn=0;for(let t=0;t<Ps;t++)Kn+=(256+Math.random()*256|0).toString(16).substring(1)}return Kn.substring(Zn,Zn+++e)}function bc(e){const{batch:t,chain:n,ccipRead:r,dataSuffix:s,key:o="base",name:i="Base Client",type:a="base"}=e,c=e.experimental_blockTag??(typeof(n==null?void 0:n.experimental_preconfirmationTime)=="number"?"pending":void 0),f=(n==null?void 0:n.blockTime)??12e3,u=Math.min(Math.max(Math.floor(f/2),500),4e3),d=e.pollingInterval??u,l=e.cacheTime??d,p=e.account?Z(e.account):void 0,{config:h,request:b,value:w}=e.transport({account:p,chain:n,pollingInterval:d}),m={...h,...w},x={account:p,batch:t,cacheTime:l,ccipRead:r,chain:n,dataSuffix:s,key:o,name:i,pollingInterval:d,request:b,transport:m,type:a,uid:pc(),...c?{experimental_blockTag:c}:{}};function g(y){return E=>{const A=E(y);for(const $ in x)delete A[$];const v={...y,...A};return Object.assign(v,{extend:g(v)})}}return Object.assign(x,{extend:g(x)})}function mo(e){var n,r,s,o,i,a;if(!(e instanceof I))return!1;const t=e.walk(c=>c instanceof tr);return t instanceof tr?((n=t.data)==null?void 0:n.errorName)==="HttpError"||((r=t.data)==null?void 0:r.errorName)==="ResolverError"||((s=t.data)==null?void 0:s.errorName)==="ResolverNotContract"||((o=t.data)==null?void 0:o.errorName)==="ResolverNotFound"||((i=t.data)==null?void 0:i.errorName)==="ReverseAddressMismatch"||((a=t.data)==null?void 0:a.errorName)==="UnsupportedResolverProfile":!1}function zl(e){const{abi:t,data:n}=e,r=bt(n,0,4),s=t.find(o=>o.type==="function"&&r===On(Ee(o)));if(!s)throw new P0(r,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:s.name,args:"inputs"in s&&s.inputs&&s.inputs.length>0?Mn(s.inputs,bt(n,4)):void 0}}const Gr="/docs/contract/encodeErrorResult";function mi(e){const{abi:t,errorName:n,args:r}=e;let s=t[0];if(n){const c=Pt({abi:t,args:r,name:n});if(!c)throw new _o(n,{docsPath:Gr});s=c}if(s.type!=="error")throw new _o(void 0,{docsPath:Gr});const o=Ee(s),i=On(o);let a="0x";if(r&&r.length>0){if(!s.inputs)throw new v0(s.name,{docsPath:Gr});a=Et(s.inputs,r)}return Wt([i,a])}const Hr="/docs/contract/encodeFunctionResult";function jl(e){const{abi:t,functionName:n,result:r}=e;let s=t[0];if(n){const i=Pt({abi:t,name:n});if(!i)throw new Ot(n,{docsPath:Hr});s=i}if(s.type!=="function")throw new Ot(void 0,{docsPath:Hr});if(!s.outputs)throw new Ji(s.name,{docsPath:Hr});const o=(()=>{if(s.outputs.length===0)return[];if(s.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Xi(r)})();return Et(s.outputs,o)}const Sr="x-batch-gateway:true";async function Ll(e){const{data:t,ccipRequest:n}=e,{args:[r]}=zl({abi:xs,data:t}),s=[],o=[];return await Promise.all(r.map(async(i,a)=>{try{o[a]=i.urls.includes(Sr)?await Ll({data:i.data,ccipRequest:n}):await n(i),s[a]=!1}catch(c){s[a]=!0,o[a]=_l(c)}})),jl({abi:xs,functionName:"query",result:[s,o]})}function _l(e){return e.name==="HttpRequestError"&&e.status?mi({abi:xs,errorName:"HttpError",args:[e.status,e.shortMessage]}):mi({abi:[ma],errorName:"Error",args:["shortMessage"in e?e.shortMessage:e.message]})}function mc(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return ke(t)?t:null}function As(e){let t=new Uint8Array(32).fill(0);if(!e)return Y(t);const n=e.split(".");for(let r=n.length-1;r>=0;r-=1){const s=mc(n[r]),o=s?Ht(s):Q(ft(n[r]),"bytes");t=Q(ee([t,o]),"bytes")}return Y(t)}function Ul(e){return`[${e.slice(2)}]`}function Dl(e){const t=new Uint8Array(32).fill(0);return e?mc(e)||Q(ft(e)):Y(t)}function yo(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const n=new Uint8Array(ft(t).byteLength+2);let r=0;const s=t.split(".");for(let o=0;o<s.length;o++){let i=ft(s[o]);i.byteLength>255&&(i=ft(Ul(Dl(s[o])))),n[r]=i.length,n.set(i,r+1),r+=i.length+1}return n.byteLength!==r+1?n.slice(0,r+1):n}async function ql(e,t){const{blockNumber:n,blockTag:r,coinType:s,name:o,gatewayUrls:i,strict:a}=t,{chain:c}=e,f=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!c)throw new Error("client chain not configured. universalResolverAddress is required.");return Yt({blockNumber:n,chain:c,contract:"ensUniversalResolver"})})(),u=c==null?void 0:c.ensTlds;if(u&&!u.some(l=>o.endsWith(l)))return null;const d=s!=null?[As(o),BigInt(s)]:[As(o)];try{const l=ce({abi:ec,functionName:"addr",args:d}),p={address:f,abi:Qa,functionName:"resolveWithGateways",args:[Ge(yo(o)),l,i??[Sr]],blockNumber:n,blockTag:r},b=await M(e,Ie,"readContract")(p);if(b[0]==="0x")return null;const w=Gl({coinType:s,data:b[0],args:d});return w==="0x"||_e(w)==="0x00"?null:w}catch(l){if(a)throw l;if(mo(l))return null;throw l}}function Gl({coinType:e,data:t,args:n}){try{return nt({abi:ec,args:n,functionName:"addr",data:t})}catch(r){if(e==null)throw r;const s=_e(t);if(W(s)===20)return pt(s);throw r}}class Hl extends I{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 sn extends I{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class go extends I{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 Vl extends I{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const Wl=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,Zl=/^(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>\/.*)?$/,Kl=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,Yl=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function Jl(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"||!Object.hasOwn(globalThis,"Image")?!1:new Promise(n=>{const r=new Image;r.onload=()=>{n(!0)},r.onerror=()=>{n(!1)},r.src=e})}}function yi(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function yc({uri:e,gatewayUrls:t}){const n=Kl.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=yi(t==null?void 0:t.ipfs,"https://ipfs.io"),s=yi(t==null?void 0:t.arweave,"https://arweave.net"),o=e.match(Wl),{protocol:i,subpath:a,target:c,subtarget:f=""}=(o==null?void 0:o.groups)||{},u=i==="ipns:/"||a==="ipns/",d=i==="ipfs:/"||a==="ipfs/"||Zl.test(e);if(e.startsWith("http")&&!u&&!d){let p=e;return t!=null&&t.arweave&&(p=e.replace(/https:\/\/arweave.net/g,t==null?void 0:t.arweave)),{uri:p,isOnChain:!1,isEncoded:!1}}if((u||d)&&c)return{uri:`${r}/${u?"ipns":"ipfs"}/${c}${f}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&c)return{uri:`${s}/${c}${f||""}`,isOnChain:!1,isEncoded:!1};let l=e.replace(Yl,"");if(l.startsWith("<svg")&&(l=`data:image/svg+xml;base64,${btoa(l)}`),l.startsWith("data:")||l.startsWith("{"))return{uri:l,isOnChain:!0,isEncoded:!1};throw new go({uri:e})}function gc(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new Hl({data:e});return e.image||e.image_url||e.image_data}async function Xl({gatewayUrls:e,uri:t}){try{const n=await fetch(t).then(s=>s.json());return await wo({gatewayUrls:e,uri:gc(n)})}catch{throw new go({uri:t})}}async function wo({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=yc({uri:t,gatewayUrls:e});if(r||await Jl(n))return n;throw new go({uri:t})}function Ql(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[n,r,s]=t.split("/"),[o,i]=n.split(":"),[a,c]=r.split(":");if(!o||o.toLowerCase()!=="eip155")throw new sn({reason:"Only EIP-155 supported"});if(!i)throw new sn({reason:"Chain ID not found"});if(!c)throw new sn({reason:"Contract address not found"});if(!s)throw new sn({reason:"Token ID not found"});if(!a)throw new sn({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i,10),namespace:a.toLowerCase(),contractAddress:c,tokenID:s}}async function eh(e,{nft:t}){if(t.namespace==="erc721")return Ie(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 Ie(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 Vl({namespace:t.namespace})}async function th(e,{gatewayUrls:t,record:n}){return/eip155:/i.test(n)?nh(e,{gatewayUrls:t,record:n}):wo({uri:n,gatewayUrls:t})}async function nh(e,{gatewayUrls:t,record:n}){const r=Ql(n),s=await eh(e,{nft:r}),{uri:o,isOnChain:i,isEncoded:a}=yc({uri:s,gatewayUrls:t});if(i&&(o.includes("data:application/json;base64,")||o.startsWith("{"))){const f=a?atob(o.replace("data:application/json;base64,","")):o,u=JSON.parse(f);return wo({uri:gc(u),gatewayUrls:t})}let c=r.tokenID;return r.namespace==="erc1155"&&(c=c.replace("0x","").padStart(64,"0")),Xl({gatewayUrls:t,uri:o.replace(/(?:0x)?{id}/,c)})}async function wc(e,t){const{blockNumber:n,blockTag:r,key:s,name:o,gatewayUrls:i,strict:a}=t,{chain:c}=e,f=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!c)throw new Error("client chain not configured. universalResolverAddress is required.");return Yt({blockNumber:n,chain:c,contract:"ensUniversalResolver"})})(),u=c==null?void 0:c.ensTlds;if(u&&!u.some(d=>o.endsWith(d)))return null;try{const d={address:f,abi:Qa,args:[Ge(yo(o)),ce({abi:hi,functionName:"text",args:[As(o),s]}),i??[Sr]],functionName:"resolveWithGateways",blockNumber:n,blockTag:r},p=await M(e,Ie,"readContract")(d);if(p[0]==="0x")return null;const h=nt({abi:hi,functionName:"text",data:p[0]});return h===""?null:h}catch(d){if(a)throw d;if(mo(d))return null;throw d}}async function rh(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:s,gatewayUrls:o,strict:i,universalResolverAddress:a}){const c=await M(e,wc,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:s,universalResolverAddress:a,gatewayUrls:o,strict:i});if(!c)return null;try{return await th(e,{record:c,gatewayUrls:r})}catch{return null}}async function sh(e,t){const{address:n,blockNumber:r,blockTag:s,coinType:o=60n,gatewayUrls:i,strict:a}=t,{chain:c}=e,f=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!c)throw new Error("client chain not configured. universalResolverAddress is required.");return Yt({blockNumber:r,chain:c,contract:"ensUniversalResolver"})})();try{const u={address:f,abi:pl,args:[n,o,i??[Sr]],functionName:"reverseWithGateways",blockNumber:r,blockTag:s},d=M(e,Ie,"readContract"),[l]=await d(u);return l||null}catch(u){if(a)throw u;if(mo(u))return null;throw u}}async function oh(e,t){const{blockNumber:n,blockTag:r,name:s}=t,{chain:o}=e,i=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!o)throw new Error("client chain not configured. universalResolverAddress is required.");return Yt({blockNumber:n,chain:o,contract:"ensUniversalResolver"})})(),a=o==null?void 0:o.ensTlds;if(a&&!a.some(f=>s.endsWith(f)))throw new Error(`${s} is not a valid ENS TLD (${a==null?void 0:a.join(", ")}) for chain "${o.name}" (id: ${o.id}).`);const[c]=await M(e,Ie,"readContract")({address:i,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[Ge(yo(s))],blockNumber:n,blockTag:r});return c}async function vc(e,t){var w,m,x;const{account:n=e.account,blockNumber:r,blockTag:s="latest",blobs:o,data:i,gas:a,gasPrice:c,maxFeePerBlobGas:f,maxFeePerGas:u,maxPriorityFeePerGas:d,to:l,value:p,...h}=t,b=n?Z(n):void 0;try{We(t);const y=(typeof r=="bigint"?L(r):void 0)||s,E=(x=(m=(w=e.chain)==null?void 0:w.formatters)==null?void 0:m.transactionRequest)==null?void 0:x.format,v=(E||tt)({...Kt(h,{format:E}),account:b,blobs:o,data:i,gas:a,gasPrice:c,maxFeePerBlobGas:f,maxFeePerGas:u,maxPriorityFeePerGas:d,to:l,value:p},"createAccessList"),$=await e.request({method:"eth_createAccessList",params:[v,y]});if($.error)throw new I($.error,{details:$.error});return{accessList:$.accessList,gasUsed:BigInt($.gasUsed)}}catch(g){throw sc(g,{...t,account:b,chain:e.chain})}}async function ih(e){const t=mr(e,{method:"eth_newBlockFilter"}),n=await e.request({method:"eth_newBlockFilter"});return{id:n,request:t(n),type:"block"}}async function xc(e,{address:t,args:n,event:r,events:s,fromBlock:o,strict:i,toBlock:a}={}){const c=s??(r?[r]:void 0),f=mr(e,{method:"eth_newFilter"});let u=[];c&&(u=[c.flatMap(p=>Fn({abi:[p],eventName:p.name,args:n}))],r&&(u=u[0]));const d=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof o=="bigint"?L(o):o,toBlock:typeof a=="bigint"?L(a):a,...u.length?{topics:u}:{}}]});return{abi:c,args:n,eventName:r?r.name:void 0,fromBlock:o,id:d,request:f(d),strict:!!i,toBlock:a,type:"event"}}async function Ec(e){const t=mr(e,{method:"eth_newPendingTransactionFilter"}),n=await e.request({method:"eth_newPendingTransactionFilter"});return{id:n,request:t(n),type:"transaction"}}async function ah(e,{address:t,blockHash:n,blockNumber:r,blockTag:s=e.experimental_blockTag??"latest",requireCanonical:o}){var c,f,u;const i=At({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:o});if((c=e.batch)!=null&&c.multicall&&((u=(f=e.chain)==null?void 0:f.contracts)!=null&&u.multicall3)){const d=e.chain.contracts.multicall3.address,l=ce({abi:Dt,functionName:"getEthBalance",args:[t]}),{data:p}=await M(e,qn,"call")({to:d,data:l,blockHash:n,blockNumber:r,blockTag:s,requireCanonical:o});return nt({abi:Dt,functionName:"getEthBalance",args:[t],data:p||"0x"})}const a=await e.request({method:"eth_getBalance",params:[t,i]});return BigInt(a)}async function ch(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function uh(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest"}={}){var a,c,f;const s=n!==void 0?L(n):void 0,o=await e.request({method:"eth_getBlockReceipts",params:[t||s||r]},{dedupe:!!(t||s)});if(!o)throw new Ys({blockHash:t,blockNumber:n});const i=((f=(c=(a=e.chain)==null?void 0:a.formatters)==null?void 0:c.transactionReceipt)==null?void 0:f.format)||bo;return o.map(u=>i(u,"getBlockReceipts"))}async function fh(e,{blockHash:t,blockNumber:n,blockTag:r="latest"}={}){const s=n!==void 0?L(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}),Pe(o)}async function ur(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:o}){const i=At({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:o}),a=await e.request({method:"eth_getCode",params:[t,i]},{dedupe:typeof r=="bigint"||n!==void 0});if(a!=="0x")return a}async function dh(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=await ur(e,{address:t,...n!==void 0?{blockNumber:n}:{blockTag:r}});if(s&&W(s)===23&&s.startsWith("0xef0100"))return pt(bt(s,3,23))}class lh extends I{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 hh(e,t){const{address:n,factory:r,factoryData:s}=t;try{const[o,i,a,c,f,u,d]=await M(e,Ie,"readContract")({abi:ph,address:n,functionName:"eip712Domain",factory:r,factoryData:s});return{domain:{name:i,version:a,chainId:Number(c),verifyingContract:f,salt:u},extensions:d,fields:o}}catch(o){const i=o;throw i.name==="ContractFunctionExecutionError"&&i.cause.name==="ContractFunctionZeroDataError"?new lh({address:n}):i}}const ph=[{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 bh(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 mh(e,{blockCount:t,blockNumber:n,blockTag:r="latest",rewardPercentiles:s}){const o=typeof n=="bigint"?L(n):void 0,i=await e.request({method:"eth_feeHistory",params:[L(t),o||r,s]},{dedupe:!!o});return bh(i)}async function yh(e,{filter:t}){const n=t.strict??!1,s=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(o=>Oe(o));return t.abi?so({abi:t.abi,logs:s,strict:n}):s}async function gh({address:e,authorization:t,signature:n}){return gt(pt(e),await gr({authorization:t,signature:n}))}const Yn=new Vt(8192);function wh(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Yn.get(n))return Yn.get(n);const r=e().finally(()=>Yn.delete(n));return Yn.set(n,r),r}function vh(e,t={}){return async(n,r={})=>{var l;const{dedupe:s=!1,methods:o,retryDelay:i=150,retryCount:a=3,signal:c,uid:f}={...t,...r},{method:u}=n;if((l=o==null?void 0:o.exclude)!=null&&l.includes(u))throw new at(new Error("method not supported"),{method:u});if(o!=null&&o.include&&!o.include.includes(u))throw new at(new Error("method not supported"),{method:u});if(c!=null&&c.aborted)throw Qe(c);const d=s?Eh(`${f}.${K(n)}`):void 0;return wh(()=>cr(async()=>{try{return await e(n,c?{signal:c}:void 0)}catch(p){if(c!=null&&c.aborted)throw Qe(c);if(Zt(p))throw p;const h=p;switch(h.code){case fn.code:throw new fn(h);case dn.code:throw new dn(h);case ln.code:throw new ln(h,{method:n.method});case hn.code:throw new hn(h);case mt.code:throw new mt(h);case et.code:throw new et(h);case pn.code:throw new pn(h);case bn.code:throw new bn(h);case zt.code:throw new zt(h);case at.code:throw new at(h,{method:n.method});case jt.code:throw new jt(h);case mn.code:throw new mn(h);case Je.code:throw new Je(h);case yn.code:throw new yn(h);case gn.code:throw new gn(h);case wn.code:throw new wn(h);case vn.code:throw new vn(h);case xn.code:throw new xn(h);case Lt.code:throw new Lt(h);case En.code:throw new En(h);case Pn.code:throw new Pn(h);case An.code:throw new An(h);case $n.code:throw new $n(h);case In.code:throw new In(h);case _t.code:throw new _t(h);case 5e3:throw new Je(h);case Ut.code:throw new Ut(h);default:throw p instanceof I?p:new ed(h)}}},{delay:({count:p,error:h})=>{var b;if(h&&h instanceof on){const w=(b=h==null?void 0:h.headers)==null?void 0:b.get("Retry-After");if(w!=null&&w.match(/\d/))return Number.parseInt(w,10)*1e3}return~~(1<<p)*i},retryCount:a,signal:c,shouldRetry:({error:p})=>xh(p)}),{enabled:s,id:d})}}function xh(e){return Zt(e)?!1:"code"in e&&typeof e.code=="number"?e.code===-1||e.code===jt.code||e.code===mt.code||e.code===429:e instanceof on&&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}function Eh(e,t=0){let n=3735928559^t,r=1103547991^t;for(let s=0;s<e.length;s++){const o=e.charCodeAt(s);n=Math.imul(n^o,2654435761),r=Math.imul(r^o,1597334677)}return n=Math.imul(n^n>>>16,2246822507),n^=Math.imul(r^r>>>16,3266489909),r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(n^n>>>16,3266489909),(4294967296*(2097151&r)+(n>>>0)).toString(36)}function Ph(e){const t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(r){return s=>{const o=typeof s=="function"?s(r):s,i={...r,...o};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function Ah(e,{errorInstance:t=new Error("timed out"),timeout:n,signal:r}){return new Promise((s,o)=>{(async()=>{let i;const a=new AbortController;try{n>0&&(i=setTimeout(()=>{r&&a.abort()},n)),s(await e({signal:(a==null?void 0:a.signal)||null}))}catch(c){if(a!=null&&a.signal.aborted&&Zt(c)){o(t);return}o(c)}finally{clearTimeout(i)}})()})}function $h(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const gi=$h();function Ih(e,t={}){const{url:n,headers:r}=Bh(e);return{async request(s){var h,b,w;const{body:o,fetchFn:i=t.fetchFn??fetch,onRequest:a=t.onRequest,onResponse:c=t.onResponse,timeout:f=t.timeout??1e4}=s,u={...t.fetchOptions??{},...s.fetchOptions??{}},{headers:d,method:l,signal:p}=u;try{const m=await Ah(async({signal:g})=>{const y={...u,body:Array.isArray(o)?K(o.map($=>({jsonrpc:"2.0",id:$.id??gi.take(),...$}))):K({jsonrpc:"2.0",id:o.id??gi.take(),...o}),headers:{...r,"Content-Type":"application/json",...d},method:l||"POST",signal:p||(f>0?g:null)},E=new Request(n,y),A=await(a==null?void 0:a(E,y))??{...y,url:n};return await i(A.url??n,A)},{errorInstance:new ei({body:o,url:n}),timeout:f,signal:!0});c&&await c(m);let x;if((h=m.headers.get("Content-Type"))!=null&&h.startsWith("application/json"))x=await m.json();else{x=await m.text();try{x=JSON.parse(x||"{}")}catch(g){if(m.ok)throw g;x={error:x}}}if(!m.ok){if(typeof((b=x.error)==null?void 0:b.code)=="number"&&typeof((w=x.error)==null?void 0:w.message)=="string")return x;throw new on({body:o,details:K(x.error)||m.statusText,headers:m.headers,status:m.status,url:n})}return x}catch(m){throw p!=null&&p.aborted?Qe(p):Zt(m)||m instanceof on||m instanceof ei?m:new on({body:o,cause:m,url:n})}}}}function Bh(e){try{const t=new URL(e),n=(()=>{if(t.username){const r=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username="",t.password="",{url:t.toString(),headers:{Authorization:`Basic ${btoa(r)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}const Sh=`Ethereum Signed Message:
53
+ `;function Th(e){const t=typeof e=="string"?an(e):typeof e.raw=="string"?e.raw:Y(e.raw),n=an(`${Sh}${W(t)}`);return ee([n,t])}function Pc(e,t){return Q(Th(e),t)}class Ch extends I{constructor({domain:t}){super(`Invalid domain "${K(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class kh extends I{constructor({primaryType:t,types:n}){super(`Invalid primary type \`${t}\` must be one of \`${JSON.stringify(Object.keys(n))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class Nh extends I{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function Rh(e){const{domain:t,message:n,primaryType:r,types:s}=e,o=(c,f)=>{const u={...f};for(const d of c){const{name:l,type:p}=d;p==="address"&&(u[l]=u[l].toLowerCase())}return u},i=s.EIP712Domain?t?o(s.EIP712Domain,t):{}:{},a=(()=>{if(r!=="EIP712Domain")return o(s[r],n)})();return K({domain:i,message:a,primaryType:r,types:s})}function Ac(e){const{domain:t,message:n,primaryType:r,types:s}=e,o=(i,a)=>{for(const c of i){const{name:f,type:u}=c,d=a[f],l=u.match(ha);if(l&&(typeof d=="number"||typeof d=="bigint")){const[b,w,m]=l;L(d,{signed:w==="int",size:Number.parseInt(m,10)/8})}if(u==="address"&&typeof d=="string"&&!ge(d))throw new Xe({address:d});const p=u.match(yf);if(p){const[b,w]=p;if(w&&W(d)!==Number.parseInt(w,10))throw new $0({expectedSize:Number.parseInt(w,10),givenSize:W(d)})}const h=s[u];h&&(Oh(u),o(h,d))}};if(s.EIP712Domain&&t){if(typeof t!="object")throw new Ch({domain:t});o(s.EIP712Domain,t)}if(r!=="EIP712Domain")if(s[r])o(s[r],n);else throw new kh({primaryType:r,types:s})}function $c({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"||typeof(e==null?void 0:e.chainId)=="bigint")&&{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 Oh(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new Nh({type:e})}function Fh(e){const{domain:t={},message:n,primaryType:r}=e,s={EIP712Domain:$c({domain:t}),...e.types};Ac({domain:t,message:n,primaryType:r,types:s});const o=["0x1901"];return t&&o.push(Mh({domain:t,types:s})),r!=="EIP712Domain"&&o.push(Ic({data:n,primaryType:r,types:s})),Q(ee(o))}function Mh({domain:e,types:t}){return Ic({data:e,primaryType:"EIP712Domain",types:t})}function Ic({data:e,primaryType:t,types:n}){const r=Bc({data:e,primaryType:t,types:n});return Q(r)}function Bc({data:e,primaryType:t,types:n}){const r=[{type:"bytes32"}],s=[zh({primaryType:t,types:n})];for(const o of n[t]){const[i,a]=Tc({types:n,name:o.name,type:o.type,value:e[o.name]});r.push(i),s.push(a)}return Et(r,s)}function zh({primaryType:e,types:t}){const n=Ge(jh({primaryType:e,types:t}));return Q(n)}function jh({primaryType:e,types:t}){let n="";const r=Sc({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:i,type:a})=>`${a} ${i}`).join(",")})`;return n}function Sc({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])Sc({primaryType:o.type,types:t},n);return n}function Tc({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:"bytes32"},Q(Bc({data:r,primaryType:n,types:e}))];if(n==="bytes")return[{type:"bytes32"},Q(r)];if(n==="string")return[{type:"bytes32"},Q(Ge(r))];if(n.lastIndexOf("]")===n.length-1){const s=n.slice(0,n.lastIndexOf("[")),o=r.map(i=>Tc({name:t,type:s,types:e,value:i}));return[{type:"bytes32"},Q(Et(o.map(([i])=>i),o.map(([,i])=>i)))]}return[{type:n},r]}class Lh 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}}const _h={checksum:new Lh(8192)},Vr=_h.checksum;class Cc extends Ls{constructor(t,n){super(),this.finished=!1,this.destroyed=!1,W0(t);const r=pr(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 i=0;i<o.length;i++)o[i]^=54;this.iHash.update(o),this.oHash=t.create();for(let i=0;i<o.length;i++)o[i]^=106;this.oHash.update(o),Mt(o)}update(t){return Ft(this),this.iHash.update(t),this}digestInto(t){Ft(this),ht(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:i,outputLen:a}=this;return t=t,t.finished=s,t.destroyed=o,t.blockLen=i,t.outputLen=a,t.oHash=n._cloneInto(t.oHash),t.iHash=r._cloneInto(t.iHash),t}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const kc=(e,t,n)=>new Cc(e,t).update(n).digest();kc.create=(e,t)=>new Cc(e,t);function Nc(e,t={}){const{as:n=typeof e=="string"?"Hex":"Bytes"}=t,r=ca(Zd(e));return n==="Bytes"?r:$e(r)}const Uh=/^0x[a-fA-F0-9]{40}$/;function Tr(e,t={}){const{strict:n=!0}=t;if(!Uh.test(e))throw new wi({address:e,cause:new Dh});if(n){if(e.toLowerCase()===e)return;if(Rc(e)!==e)throw new wi({address:e,cause:new qh})}}function Rc(e){if(Vr.has(e))return Vr.get(e);Tr(e,{strict:!1});const t=e.substring(2).toLowerCase(),n=Nc(Yd(t),{as:"Bytes"}),r=t.split("");for(let o=0;o<40;o+=2)n[o>>1]>>4>=8&&r[o]&&(r[o]=r[o].toUpperCase()),(n[o>>1]&15)>=8&&r[o+1]&&(r[o+1]=r[o+1].toUpperCase());const s=`0x${r.join("")}`;return Vr.set(e,s),s}function $s(e,t={}){const{strict:n=!0}=t??{};try{return Tr(e,{strict:n}),!0}catch{return!1}}class wi extends U{constructor({address:t,cause:n}){super(`Address "${t}" is invalid.`,{cause:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class Dh extends U{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class qh extends U{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}const Gh=/^(.*)\[([0-9]*)\]$/,Hh=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Oc=/^(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)?$/,vi=2n**256n-1n;function Rt(e,t,n){const{checksumAddress:r,staticPosition:s}=n,o=Eo(t.type);if(o){const[i,a]=o;return Wh(e,{...t,type:a},{checksumAddress:r,length:i,staticPosition:s})}if(t.type==="tuple")return Jh(e,t,{checksumAddress:r,staticPosition:s});if(t.type==="address")return Vh(e,{checksum:r});if(t.type==="bool")return Zh(e);if(t.type.startsWith("bytes"))return Kh(e,t,{staticPosition:s});if(t.type.startsWith("uint")||t.type.startsWith("int"))return Yh(e,t);if(t.type==="string")return Xh(e,{staticPosition:s});throw new Ao(t.type)}const xi=32,Is=32;function Vh(e,t={}){const{checksum:n=!1}=t,r=e.readBytes(32);return[(o=>n?Rc(o):o)($e(Xd(r,-20))),32]}function Wh(e,t,n){const{checksumAddress:r,length:s,staticPosition:o}=n;if(!s){const c=De(e.readBytes(Is)),f=o+c,u=f+xi;e.setPosition(f);const d=De(e.readBytes(xi)),l=Cn(t);let p=0;const h=[];for(let b=0;b<d;++b){e.setPosition(u+(l?b*32:p));const[w,m]=Rt(e,t,{checksumAddress:r,staticPosition:u});p+=m,h.push(w)}return e.setPosition(o+32),[h,32]}if(Cn(t)){const c=De(e.readBytes(Is)),f=o+c,u=[];for(let d=0;d<s;++d){e.setPosition(f+d*32);const[l]=Rt(e,t,{checksumAddress:r,staticPosition:f});u.push(l)}return e.setPosition(o+32),[u,32]}let i=0;const a=[];for(let c=0;c<s;++c){const[f,u]=Rt(e,t,{checksumAddress:r,staticPosition:o+i});i+=u,a.push(f)}return[a,i]}function Zh(e){return[el(e.readBytes(32),{size:32}),32]}function Kh(e,t,{staticPosition:n}){const[r,s]=t.type.split("bytes");if(!s){const i=De(e.readBytes(32));e.setPosition(n+i);const a=De(e.readBytes(32));if(a===0)return e.setPosition(n+32),["0x",32];const c=e.readBytes(a);return e.setPosition(n+32),[$e(c),32]}return[$e(e.readBytes(Number.parseInt(s,10),32)),32]}function Yh(e,t){const n=t.type.startsWith("int"),r=Number.parseInt(t.type.split("int")[1]||"256",10),s=e.readBytes(32);return[r>48?Qd(s,{signed:n}):De(s,{signed:n}),32]}function Jh(e,t,n){const{checksumAddress:r,staticPosition:s}=n,o=t.components.length===0||t.components.some(({name:c})=>!c),i=o?[]:{};let a=0;if(Cn(t)){const c=De(e.readBytes(Is)),f=s+c;for(let u=0;u<t.components.length;++u){const d=t.components[u];e.setPosition(f+a);const[l,p]=Rt(e,d,{checksumAddress:r,staticPosition:f});a+=p,i[o?u:d==null?void 0:d.name]=l}return e.setPosition(s+32),[i,32]}for(let c=0;c<t.components.length;++c){const f=t.components[c],[u,d]=Rt(e,f,{checksumAddress:r,staticPosition:s});i[o?c:f==null?void 0:f.name]=u,a+=d}return[i,a]}function Xh(e,{staticPosition:t}){const n=De(e.readBytes(32)),r=t+n;e.setPosition(r);const s=De(e.readBytes(32));if(s===0)return e.setPosition(t+32),["",32];const o=e.readBytes(s,32),i=tl(Ha(o));return e.setPosition(t+32),[i,32]}function Qh({checksumAddress:e,parameters:t,values:n}){const r=[];for(let s=0;s<t.length;s++)r.push(vo({checksumAddress:e,parameter:t[s],value:n[s]}));return r}function vo({checksumAddress:e=!1,parameter:t,value:n}){const r=t,s=Eo(r.type);if(s){const[o,i]=s;return t1(n,{checksumAddress:e,length:o,parameter:{...r,type:i}})}if(r.type==="tuple")return i1(n,{checksumAddress:e,parameter:r});if(r.type==="address")return e1(n,{checksum:e});if(r.type==="bool")return r1(n);if(r.type.startsWith("uint")||r.type.startsWith("int")){const o=r.type.startsWith("int"),[,,i="256"]=Oc.exec(r.type)??[];return s1(n,{signed:o,size:Number(i)})}if(r.type.startsWith("bytes"))return n1(n,{type:r.type});if(r.type==="string")return o1(n);throw new Ao(r.type)}function xo(e){let t=0;for(let o=0;o<e.length;o++){const{dynamic:i,encoded:a}=e[o];i?t+=32:t+=pe(a)}const n=[],r=[];let s=0;for(let o=0;o<e.length;o++){const{dynamic:i,encoded:a}=e[o];i?(n.push(te(t+s,{size:32})),r.push(a),s+=pe(a)):n.push(a)}return Ae(...n,...r)}function e1(e,t){const{checksum:n=!1}=t;return Tr(e,{strict:n}),{dynamic:!1,encoded:wt(e.toLowerCase())}}function t1(e,t){const{checksumAddress:n,length:r,parameter:s}=t,o=r===null;if(!Array.isArray(e))throw new b1(e);if(!o&&e.length!==r)throw new p1({expectedLength:r,givenLength:e.length,type:`${s.type}[${r}]`});let i=!1;const a=[];for(let c=0;c<e.length;c++){const f=vo({checksumAddress:n,parameter:s,value:e[c]});f.dynamic&&(i=!0),a.push(f)}if(o||i){const c=xo(a);if(o){const f=te(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?Ae(f,c):f}}if(i)return{dynamic:!0,encoded:c}}return{dynamic:!1,encoded:Ae(...a.map(({encoded:c})=>c))}}function n1(e,{type:t}){const[,n]=t.split("bytes"),r=pe(e);if(!n){let s=e;return r%32!==0&&(s=vt(s,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:Ae(wt(te(r,{size:32})),s)}}if(r!==Number.parseInt(n,10))throw new Mc({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:vt(e)}}function r1(e){if(typeof e!="boolean")throw new U(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:wt(Va(e))}}function s1(e,{signed:t,size:n}){if(typeof n=="number"){const r=2n**(BigInt(n)-(t?1n:0n))-1n,s=t?-r-1n:0n;if(e>r||e<s)throw new Ka({max:r.toString(),min:s.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:te(e,{size:32,signed:t})}}function o1(e){const t=uo(e),n=Math.ceil(pe(t)/32),r=[];for(let s=0;s<n;s++)r.push(vt(Ce(t,s*32,(s+1)*32)));return{dynamic:!0,encoded:Ae(vt(te(pe(t),{size:32})),...r)}}function i1(e,t){const{checksumAddress:n,parameter:r}=t;let s=!1;const o=[];for(let i=0;i<r.components.length;i++){const a=r.components[i],c=Array.isArray(e)?i:a.name,f=vo({checksumAddress:n,parameter:a,value:e[c]});o.push(f),f.dynamic&&(s=!0)}return{dynamic:s,encoded:s?xo(o):Ae(...o.map(({encoded:i})=>i))}}function Eo(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Cn(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(Cn);const n=Eo(e.type);return!!(n&&Cn({...e,type:n[1]}))}const a1={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 f1({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new u1({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ei({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 Ei({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 c1(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(a1);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}class Ei extends U{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class u1 extends U{constructor({length:t,position:n}){super(`Position \`${n}\` is out of bounds (\`0 < position < ${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.PositionOutOfBoundsError"})}}class f1 extends U{constructor({count:t,limit:n}){super(`Recursive read limit of \`${n}\` exceeded (recursive read count: \`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.RecursiveReadLimitExceededError"})}}function d1(e,t,n={}){const{as:r="Array",checksumAddress:s=!1}=n,o=typeof t=="string"?Ga(t):t,i=c1(o);if(Tt(o)===0&&e.length>0)throw new h1;if(Tt(o)&&Tt(o)<32)throw new l1({data:typeof t=="string"?t:$e(t),parameters:e,size:Tt(o)});let a=0;const c=r==="Array"?[]:{};for(let f=0;f<e.length;++f){const u=e[f];i.setPosition(a);const[d,l]=Rt(i,u,{checksumAddress:s,staticPosition:0});a+=l,r==="Array"?c.push(d):c[u.name??f]=d}return c}function Po(e,t,n){const{checksumAddress:r=!1}={};if(e.length!==t.length)throw new zc({expectedLength:e.length,givenLength:t.length});const s=Qh({checksumAddress:r,parameters:e,values:t}),o=xo(s);return o.length===0?"0x":o}function Bs(e,t){if(e.length!==t.length)throw new zc({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(Bs.encode(s,o))}return Ae(...n)}(function(e){function t(n,r,s=!1){if(n==="address"){const c=r;return Tr(c),wt(c.toLowerCase(),s?32:0)}if(n==="string")return uo(r);if(n==="bytes")return r;if(n==="bool")return wt(Va(r),s?32:1);const o=n.match(Oc);if(o){const[c,f,u="256"]=o,d=Number.parseInt(u,10)/8;return te(r,{size:s?32:d,signed:f==="int"})}const i=n.match(Hh);if(i){const[c,f]=i;if(Number.parseInt(f,10)!==(r.length-2)/2)throw new Mc({expectedSize:Number.parseInt(f,10),value:r});return vt(r,s?32:0)}const a=n.match(Gh);if(a&&Array.isArray(r)){const[c,f]=a,u=[];for(let d=0;d<r.length;d++)u.push(t(f,r[d],!0));return u.length===0?"0x":Ae(...u)}throw new Ao(n)}e.encode=t})(Bs||(Bs={}));function Fc(e){return Array.isArray(e)&&typeof e[0]=="string"||typeof e=="string"?jo(e):e}class l1 extends U{constructor({data:t,parameters:n,size:r}){super(`Data size of ${r} bytes is too small for given parameters.`,{metaMessages:[`Params: (${St(n)})`,`Data: ${t} (${r} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.DataSizeTooSmallError"})}}class h1 extends U{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class p1 extends U{constructor({expectedLength:t,givenLength:n,type:r}){super(`Array length mismatch for type \`${r}\`. Expected: \`${t}\`. Given: \`${n}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class Mc extends U{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${pe(n)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class zc extends U{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${t}`,`Given length (values): ${n}`].join(`
54
+ `)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class b1 extends U{constructor(t){super(`Value \`${t}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class Ao extends U{constructor(t){super(`Type \`${t}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const oe=BigInt(0),ne=BigInt(1),ut=BigInt(2),m1=BigInt(3),jc=BigInt(4),Lc=BigInt(5),_c=BigInt(8);function se(e,t){const n=e%t;return n>=oe?n:t+n}function be(e,t,n){let r=e;for(;t-- >oe;)r*=r,r%=n;return r}function Ss(e,t){if(e===oe)throw new Error("invert: expected non-zero number");if(t<=oe)throw new Error("invert: expected positive modulus, got "+t);let n=se(e,t),r=t,s=oe,o=ne;for(;n!==oe;){const a=r/n,c=r%n,f=s-o*a;r=n,n=c,s=o,o=f}if(r!==ne)throw new Error("invert: does not exist");return se(s,t)}function Uc(e,t){const n=(e.ORDER+ne)/jc,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw new Error("Cannot find square root");return r}function y1(e,t){const n=(e.ORDER-Lc)/_c,r=e.mul(t,ut),s=e.pow(r,n),o=e.mul(t,s),i=e.mul(e.mul(o,ut),s),a=e.mul(o,e.sub(i,e.ONE));if(!e.eql(e.sqr(a),t))throw new Error("Cannot find square root");return a}function g1(e){if(e<BigInt(3))throw new Error("sqrt is not defined for small field");let t=e-ne,n=0;for(;t%ut===oe;)t/=ut,n++;let r=ut;const s=$o(e);for(;Pi(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return Uc;let o=s.pow(r,t);const i=(t+ne)/ut;return function(c,f){if(c.is0(f))return f;if(Pi(c,f)!==1)throw new Error("Cannot find square root");let u=n,d=c.mul(c.ONE,o),l=c.pow(f,t),p=c.pow(f,i);for(;!c.eql(l,c.ONE);){if(c.is0(l))return c.ZERO;let h=1,b=c.sqr(l);for(;!c.eql(b,c.ONE);)if(h++,b=c.sqr(b),h===u)throw new Error("Cannot find square root");const w=ne<<BigInt(u-h-1),m=c.pow(d,w);u=h,d=c.sqr(m),l=c.mul(l,d),p=c.mul(p,m)}return p}}function w1(e){return e%jc===m1?Uc:e%_c===Lc?y1:g1(e)}const v1=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function x1(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=v1.reduce((r,s)=>(r[s]="function",r),t);return Er(e,n)}function E1(e,t,n){if(n<oe)throw new Error("invalid exponent, negatives unsupported");if(n===oe)return e.ONE;if(n===ne)return t;let r=e.ONE,s=t;for(;n>oe;)n&ne&&(r=e.mul(r,s)),s=e.sqr(s),n>>=ne;return r}function Dc(e,t,n=!1){const r=new Array(t.length).fill(n?e.ZERO:void 0),s=t.reduce((i,a,c)=>e.is0(a)?i:(r[c]=i,e.mul(i,a)),e.ONE),o=e.inv(s);return t.reduceRight((i,a,c)=>e.is0(a)?i:(r[c]=e.mul(i,r[c]),e.mul(i,a)),o),r}function Pi(e,t){const n=(e.ORDER-ne)/ut,r=e.pow(t,n),s=e.eql(r,e.ONE),o=e.eql(r,e.ZERO),i=e.eql(r,e.neg(e.ONE));if(!s&&!o&&!i)throw new Error("invalid Legendre symbol result");return s?1:o?0:-1}function qc(e,t){t!==void 0&&cn(t);const n=t!==void 0?t:e.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function $o(e,t,n=!1,r={}){if(e<=oe)throw new Error("invalid field: expected ORDER > 0, got "+e);const{nBitLength:s,nByteLength:o}=qc(e,t);if(o>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let i;const a=Object.freeze({ORDER:e,isLE:n,BITS:s,BYTES:o,MASK:xr(s),ZERO:oe,ONE:ne,create:c=>se(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof c);return oe<=c&&c<e},is0:c=>c===oe,isOdd:c=>(c&ne)===ne,neg:c=>se(-c,e),eql:(c,f)=>c===f,sqr:c=>se(c*c,e),add:(c,f)=>se(c+f,e),sub:(c,f)=>se(c-f,e),mul:(c,f)=>se(c*f,e),pow:(c,f)=>E1(a,c,f),div:(c,f)=>se(c*Ss(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Ss(c,e),sqrt:r.sqrt||(c=>(i||(i=w1(e)),i(a,c))),toBytes:c=>n?La(c,o):Un(c,o),fromBytes:c=>{if(c.length!==o)throw new Error("Field.fromBytes: expected "+o+" bytes, got "+c.length);return n?ja(c):dt(c)},invertBatch:c=>Dc(a,c),cmov:(c,f,u)=>u?f:c});return Object.freeze(a)}function Gc(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 Hc(e){const t=Gc(e);return t+Math.ceil(t/2)}function P1(e,t,n=!1){const r=e.length,s=Gc(t),o=Hc(t);if(r<16||r<o||r>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+r);const i=n?ja(e):dt(e),a=se(i,t-ne)+ne;return n?La(a,s):Un(a,s)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ai=BigInt(0),Ts=BigInt(1);function Wr(e,t){const n=t.negate();return e?n:t}function Vc(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function Zr(e,t){Vc(e,t);const n=Math.ceil(t/e)+1,r=2**(e-1),s=2**e,o=xr(e),i=BigInt(e);return{windows:n,windowSize:r,mask:o,maxNumber:s,shiftBy:i}}function $i(e,t,n){const{windowSize:r,mask:s,maxNumber:o,shiftBy:i}=n;let a=Number(e&s),c=e>>i;a>r&&(a-=o,c+=Ts);const f=t*r,u=f+Math.abs(a)-1,d=a===0,l=a<0,p=t%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:l,isNegF:p,offsetF:f}}function A1(e,t){if(!Array.isArray(e))throw new Error("array expected");e.forEach((n,r)=>{if(!(n instanceof t))throw new Error("invalid point at index "+r)})}function $1(e,t){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach((n,r)=>{if(!t.isValid(n))throw new Error("invalid scalar at index "+r)})}const Kr=new WeakMap,Wc=new WeakMap;function Yr(e){return Wc.get(e)||1}function I1(e,t){return{constTimeNegate:Wr,hasPrecomputes(n){return Yr(n)!==1},unsafeLadder(n,r,s=e.ZERO){let o=n;for(;r>Ai;)r&Ts&&(s=s.add(o)),o=o.double(),r>>=Ts;return s},precomputeWindow(n,r){const{windows:s,windowSize:o}=Zr(r,t),i=[];let a=n,c=a;for(let f=0;f<s;f++){c=a,i.push(c);for(let u=1;u<o;u++)c=c.add(a),i.push(c);a=c.double()}return i},wNAF(n,r,s){let o=e.ZERO,i=e.BASE;const a=Zr(n,t);for(let c=0;c<a.windows;c++){const{nextN:f,offset:u,isZero:d,isNeg:l,isNegF:p,offsetF:h}=$i(s,c,a);s=f,d?i=i.add(Wr(p,r[h])):o=o.add(Wr(l,r[u]))}return{p:o,f:i}},wNAFUnsafe(n,r,s,o=e.ZERO){const i=Zr(n,t);for(let a=0;a<i.windows&&s!==Ai;a++){const{nextN:c,offset:f,isZero:u,isNeg:d}=$i(s,a,i);if(s=c,!u){const l=r[f];o=o.add(d?l.negate():l)}}return o},getPrecomputes(n,r,s){let o=Kr.get(r);return o||(o=this.precomputeWindow(r,n),n!==1&&Kr.set(r,s(o))),o},wNAFCached(n,r,s){const o=Yr(n);return this.wNAF(o,this.getPrecomputes(o,n,s),r)},wNAFCachedUnsafe(n,r,s,o){const i=Yr(n);return i===1?this.unsafeLadder(n,r,o):this.wNAFUnsafe(i,this.getPrecomputes(i,n,s),r,o)},setWindowSize(n,r){Vc(r,t),Wc.set(n,r),Kr.delete(n)}}}function B1(e,t,n,r){A1(n,e),$1(r,t);const s=n.length,o=r.length;if(s!==o)throw new Error("arrays of points and scalars must have equal length");const i=e.ZERO,a=zd(BigInt(s));let c=1;a>12?c=a-3:a>4?c=a-2:a>0&&(c=2);const f=xr(c),u=new Array(Number(f)+1).fill(i),d=Math.floor((t.BITS-1)/c)*c;let l=i;for(let p=d;p>=0;p-=c){u.fill(i);for(let b=0;b<o;b++){const w=r[b],m=Number(w>>BigInt(p)&f);u[m]=u[m].add(n[b])}let h=i;for(let b=u.length-1,w=i;b>0;b--)w=w.add(u[b]),h=h.add(w);if(l=l.add(h),p!==0)for(let b=0;b<c;b++)l=l.double()}return l}function Zc(e){return x1(e.Fp),Er(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...qc(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Ii(e){e.lowS!==void 0&&Bn("lowS",e.lowS),e.prehash!==void 0&&Bn("prehash",e.prehash)}function S1(e){const t=Zc(e);Er(t,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});const{endo:n,Fp:r,a:s}=t;if(n){if(!r.eql(s,r.ZERO))throw new Error("invalid endo: CURVE.a must be 0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...t})}class T1 extends Error{constructor(t=""){super(t)}}const je={Err:T1,_tlv:{encode:(e,t)=>{const{Err:n}=je;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length&1)throw new n("tlv.encode: unpadded data");const r=t.length/2,s=Vn(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const o=r>127?Vn(s.length/2|128):"";return Vn(e)+o+s+t},decode(e,t){const{Err:n}=je;let r=0;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(t.length<2||t[r++]!==e)throw new n("tlv.decode: wrong tlv");const s=t[r++],o=!!(s&128);let i=0;if(!o)i=s;else{const c=s&127;if(!c)throw new n("tlv.decode(long): indefinite length not supported");if(c>4)throw new n("tlv.decode(long): byte length is too big");const f=t.subarray(r,r+c);if(f.length!==c)throw new n("tlv.decode: length bytes not complete");if(f[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const u of f)i=i<<8|u;if(r+=c,i<128)throw new n("tlv.decode(long): not minimal encoding")}const a=t.subarray(r,r+i);if(a.length!==i)throw new n("tlv.decode: wrong value length");return{v:a,l:t.subarray(r+i)}}},_int:{encode(e){const{Err:t}=je;if(e<Le)throw new t("integer: negative integers are not allowed");let n=Vn(e);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=je;if(e[0]&128)throw new t("invalid signature integer: negative");if(e[0]===0&&!(e[1]&128))throw new t("invalid signature integer: unnecessary leading zero");return dt(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=je,s=me("signature",e),{v:o,l:i}=r.decode(48,s);if(i.length)throw new t("invalid signature: left bytes after parsing");const{v:a,l:c}=r.decode(2,o),{v:f,l:u}=r.decode(2,c);if(u.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(a),s:n.decode(f)}},hexFromSig(e){const{_tlv:t,_int:n}=je,r=t.encode(2,n.encode(e.r)),s=t.encode(2,n.encode(e.s)),o=r+s;return t.encode(48,o)}};function Jr(e,t){return Sn(Un(e,t))}const Le=BigInt(0),J=BigInt(1);BigInt(2);const Xr=BigInt(3),C1=BigInt(4);function k1(e){const t=S1(e),{Fp:n}=t,r=$o(t.n,t.nBitLength),s=t.toBytes||((g,y,E)=>{const A=y.toAffine();return ir(Uint8Array.from([4]),n.toBytes(A.x),n.toBytes(A.y))}),o=t.fromBytes||(g=>{const y=g.subarray(1),E=n.fromBytes(y.subarray(0,n.BYTES)),A=n.fromBytes(y.subarray(n.BYTES,2*n.BYTES));return{x:E,y:A}});function i(g){const{a:y,b:E}=t,A=n.sqr(g),v=n.mul(A,g);return n.add(n.add(v,n.mul(g,y)),E)}function a(g,y){const E=n.sqr(y),A=i(g);return n.eql(E,A)}if(!a(t.Gx,t.Gy))throw new Error("bad curve params: generator point");const c=n.mul(n.pow(t.a,Xr),C1),f=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,f)))throw new Error("bad curve params: a or b");function u(g){return co(g,J,t.n)}function d(g){const{allowedPrivateKeyLengths:y,nByteLength:E,wrapPrivateKey:A,n:v}=t;if(y&&typeof g!="bigint"){if(_n(g)&&(g=Sn(g)),typeof g!="string"||!y.includes(g.length))throw new Error("invalid private key");g=g.padStart(E*2,"0")}let $;try{$=typeof g=="bigint"?g:dt(me("private key",g,E))}catch{throw new Error("invalid private key, expected hex or "+E+" bytes, got "+typeof g)}return A&&($=se($,v)),Nt("private key",$,J,v),$}function l(g){if(!(g instanceof b))throw new Error("ProjectivePoint expected")}const p=ui((g,y)=>{const{px:E,py:A,pz:v}=g;if(n.eql(v,n.ONE))return{x:E,y:A};const $=g.is0();y==null&&(y=$?n.ONE:n.inv(v));const T=n.mul(E,y),O=n.mul(A,y),B=n.mul(v,y);if($)return{x:n.ZERO,y:n.ZERO};if(!n.eql(B,n.ONE))throw new Error("invZ was invalid");return{x:T,y:O}}),h=ui(g=>{if(g.is0()){if(t.allowInfinityPoint&&!n.is0(g.py))return;throw new Error("bad point: ZERO")}const{x:y,y:E}=g.toAffine();if(!n.isValid(y)||!n.isValid(E))throw new Error("bad point: x or y not FE");if(!a(y,E))throw new Error("bad point: equation left != right");if(!g.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class b{constructor(y,E,A){if(y==null||!n.isValid(y))throw new Error("x required");if(E==null||!n.isValid(E)||n.is0(E))throw new Error("y required");if(A==null||!n.isValid(A))throw new Error("z required");this.px=y,this.py=E,this.pz=A,Object.freeze(this)}static fromAffine(y){const{x:E,y:A}=y||{};if(!y||!n.isValid(E)||!n.isValid(A))throw new Error("invalid affine point");if(y instanceof b)throw new Error("projective point not allowed");const v=$=>n.eql($,n.ZERO);return v(E)&&v(A)?b.ZERO:new b(E,A,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(y){const E=Dc(n,y.map(A=>A.pz));return y.map((A,v)=>A.toAffine(E[v])).map(b.fromAffine)}static fromHex(y){const E=b.fromAffine(o(me("pointHex",y)));return E.assertValidity(),E}static fromPrivateKey(y){return b.BASE.multiply(d(y))}static msm(y,E){return B1(b,r,y,E)}_setWindowSize(y){x.setWindowSize(this,y)}assertValidity(){h(this)}hasEvenY(){const{y}=this.toAffine();if(n.isOdd)return!n.isOdd(y);throw new Error("Field doesn't support isOdd")}equals(y){l(y);const{px:E,py:A,pz:v}=this,{px:$,py:T,pz:O}=y,B=n.eql(n.mul(E,O),n.mul($,v)),N=n.eql(n.mul(A,O),n.mul(T,v));return B&&N}negate(){return new b(this.px,n.neg(this.py),this.pz)}double(){const{a:y,b:E}=t,A=n.mul(E,Xr),{px:v,py:$,pz:T}=this;let O=n.ZERO,B=n.ZERO,N=n.ZERO,k=n.mul(v,v),z=n.mul($,$),P=n.mul(T,T),S=n.mul(v,$);return S=n.add(S,S),N=n.mul(v,T),N=n.add(N,N),O=n.mul(y,N),B=n.mul(A,P),B=n.add(O,B),O=n.sub(z,B),B=n.add(z,B),B=n.mul(O,B),O=n.mul(S,O),N=n.mul(A,N),P=n.mul(y,P),S=n.sub(k,P),S=n.mul(y,S),S=n.add(S,N),N=n.add(k,k),k=n.add(N,k),k=n.add(k,P),k=n.mul(k,S),B=n.add(B,k),P=n.mul($,T),P=n.add(P,P),k=n.mul(P,S),O=n.sub(O,k),N=n.mul(P,z),N=n.add(N,N),N=n.add(N,N),new b(O,B,N)}add(y){l(y);const{px:E,py:A,pz:v}=this,{px:$,py:T,pz:O}=y;let B=n.ZERO,N=n.ZERO,k=n.ZERO;const z=t.a,P=n.mul(t.b,Xr);let S=n.mul(E,$),R=n.mul(A,T),C=n.mul(v,O),F=n.add(E,A),j=n.add($,T);F=n.mul(F,j),j=n.add(S,R),F=n.sub(F,j),j=n.add(E,v);let D=n.add($,O);return j=n.mul(j,D),D=n.add(S,C),j=n.sub(j,D),D=n.add(A,v),B=n.add(T,O),D=n.mul(D,B),B=n.add(R,C),D=n.sub(D,B),k=n.mul(z,j),B=n.mul(P,C),k=n.add(B,k),B=n.sub(R,k),k=n.add(R,k),N=n.mul(B,k),R=n.add(S,S),R=n.add(R,S),C=n.mul(z,C),j=n.mul(P,j),R=n.add(R,C),C=n.sub(S,C),C=n.mul(z,C),j=n.add(j,C),S=n.mul(R,j),N=n.add(N,S),S=n.mul(D,j),B=n.mul(F,B),B=n.sub(B,S),S=n.mul(F,R),k=n.mul(D,k),k=n.add(k,S),new b(B,N,k)}subtract(y){return this.add(y.negate())}is0(){return this.equals(b.ZERO)}wNAF(y){return x.wNAFCached(this,y,b.normalizeZ)}multiplyUnsafe(y){const{endo:E,n:A}=t;Nt("scalar",y,Le,A);const v=b.ZERO;if(y===Le)return v;if(this.is0()||y===J)return this;if(!E||x.hasPrecomputes(this))return x.wNAFCachedUnsafe(this,y,b.normalizeZ);let{k1neg:$,k1:T,k2neg:O,k2:B}=E.splitScalar(y),N=v,k=v,z=this;for(;T>Le||B>Le;)T&J&&(N=N.add(z)),B&J&&(k=k.add(z)),z=z.double(),T>>=J,B>>=J;return $&&(N=N.negate()),O&&(k=k.negate()),k=new b(n.mul(k.px,E.beta),k.py,k.pz),N.add(k)}multiply(y){const{endo:E,n:A}=t;Nt("scalar",y,J,A);let v,$;if(E){const{k1neg:T,k1:O,k2neg:B,k2:N}=E.splitScalar(y);let{p:k,f:z}=this.wNAF(O),{p:P,f:S}=this.wNAF(N);k=x.constTimeNegate(T,k),P=x.constTimeNegate(B,P),P=new b(n.mul(P.px,E.beta),P.py,P.pz),v=k.add(P),$=z.add(S)}else{const{p:T,f:O}=this.wNAF(y);v=T,$=O}return b.normalizeZ([v,$])[0]}multiplyAndAddUnsafe(y,E,A){const v=b.BASE,$=(O,B)=>B===Le||B===J||!O.equals(v)?O.multiplyUnsafe(B):O.multiply(B),T=$(this,E).add($(y,A));return T.is0()?void 0:T}toAffine(y){return p(this,y)}isTorsionFree(){const{h:y,isTorsionFree:E}=t;if(y===J)return!0;if(E)return E(b,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:y,clearCofactor:E}=t;return y===J?this:E?E(b,this):this.multiplyUnsafe(t.h)}toRawBytes(y=!0){return Bn("isCompressed",y),this.assertValidity(),s(b,this,y)}toHex(y=!0){return Bn("isCompressed",y),Sn(this.toRawBytes(y))}}b.BASE=new b(t.Gx,t.Gy,n.ONE),b.ZERO=new b(n.ZERO,n.ONE,n.ZERO);const{endo:w,nBitLength:m}=t,x=I1(b,w?Math.ceil(m/2):m);return{CURVE:t,ProjectivePoint:b,normPrivateKeyToScalar:d,weierstrassEquation:i,isWithinCurveOrder:u}}function N1(e){const t=Zc(e);return Er(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function R1(e){const t=N1(e),{Fp:n,n:r,nByteLength:s,nBitLength:o}=t,i=n.BYTES+1,a=2*n.BYTES+1;function c(P){return se(P,r)}function f(P){return Ss(P,r)}const{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:l,isWithinCurveOrder:p}=k1({...t,toBytes(P,S,R){const C=S.toAffine(),F=n.toBytes(C.x),j=ir;return Bn("isCompressed",R),R?j(Uint8Array.from([S.hasEvenY()?2:3]),F):j(Uint8Array.from([4]),F,n.toBytes(C.y))},fromBytes(P){const S=P.length,R=P[0],C=P.subarray(1);if(S===i&&(R===2||R===3)){const F=dt(C);if(!co(F,J,n.ORDER))throw new Error("Point is not on curve");const j=l(F);let D;try{D=n.sqrt(j)}catch(G){const V=G instanceof Error?": "+G.message:"";throw new Error("Point is not on curve"+V)}const q=(D&J)===J;return(R&1)===1!==q&&(D=n.neg(D)),{x:F,y:D}}else if(S===a&&R===4){const F=n.fromBytes(C.subarray(0,n.BYTES)),j=n.fromBytes(C.subarray(n.BYTES,2*n.BYTES));return{x:F,y:j}}else{const F=i,j=a;throw new Error("invalid Point, expected length of "+F+", or uncompressed "+j+", got "+S)}}});function h(P){const S=r>>J;return P>S}function b(P){return h(P)?c(-P):P}const w=(P,S,R)=>dt(P.slice(S,R));class m{constructor(S,R,C){Nt("r",S,J,r),Nt("s",R,J,r),this.r=S,this.s=R,C!=null&&(this.recovery=C),Object.freeze(this)}static fromCompact(S){const R=s;return S=me("compactSignature",S,R*2),new m(w(S,0,R),w(S,R,2*R))}static fromDER(S){const{r:R,s:C}=je.toSig(me("DER",S));return new m(R,C)}assertValidity(){}addRecoveryBit(S){return new m(this.r,this.s,S)}recoverPublicKey(S){const{r:R,s:C,recovery:F}=this,j=v(me("msgHash",S));if(F==null||![0,1,2,3].includes(F))throw new Error("recovery id invalid");const D=F===2||F===3?R+t.n:R;if(D>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const q=(F&1)===0?"02":"03",H=u.fromHex(q+Jr(D,n.BYTES)),G=f(D),V=c(-j*G),de=c(C*G),re=u.BASE.multiplyAndAddUnsafe(H,V,de);if(!re)throw new Error("point at infinify");return re.assertValidity(),re}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return or(this.toDERHex())}toDERHex(){return je.hexFromSig(this)}toCompactRawBytes(){return or(this.toCompactHex())}toCompactHex(){const S=s;return Jr(this.r,S)+Jr(this.s,S)}}const x={isValidPrivateKey(P){try{return d(P),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{const P=Hc(t.n);return P1(t.randomBytes(P),t.n)},precompute(P=8,S=u.BASE){return S._setWindowSize(P),S.multiply(BigInt(3)),S}};function g(P,S=!0){return u.fromPrivateKey(P).toRawBytes(S)}function y(P){if(typeof P=="bigint")return!1;if(P instanceof u)return!0;const R=me("key",P).length,C=n.BYTES,F=C+1,j=2*C+1;if(!(t.allowedPrivateKeyLengths||s===F))return R===F||R===j}function E(P,S,R=!0){if(y(P)===!0)throw new Error("first arg must be private key");if(y(S)===!1)throw new Error("second arg must be public key");return u.fromHex(S).multiply(d(P)).toRawBytes(R)}const A=t.bits2int||function(P){if(P.length>8192)throw new Error("input is too large");const S=dt(P),R=P.length*8-o;return R>0?S>>BigInt(R):S},v=t.bits2int_modN||function(P){return c(A(P))},$=xr(o);function T(P){return Nt("num < 2^"+o,P,Le,$),Un(P,s)}function O(P,S,R=B){if(["recovered","canonical"].some(Se=>Se in R))throw new Error("sign() legacy options not supported");const{hash:C,randomBytes:F}=t;let{lowS:j,prehash:D,extraEntropy:q}=R;j==null&&(j=!0),P=me("msgHash",P),Ii(R),D&&(P=me("prehashed msgHash",C(P)));const H=v(P),G=d(S),V=[T(G),T(H)];if(q!=null&&q!==!1){const Se=q===!0?F(n.BYTES):q;V.push(me("extraEntropy",Se))}const de=ir(...V),re=H;function Xt(Se){const X=A(Se);if(!p(X))return;const st=f(X),Qt=u.BASE.multiply(X).toAffine(),ot=c(Qt.x);if(ot===Le)return;const en=c(st*c(re+ot*G));if(en===Le)return;let tn=(Qt.x===ot?0:2)|Number(Qt.y&J),$t=en;return j&&h(en)&&($t=b(en),tn^=1),new m(ot,$t,tn)}return{seed:de,k2sig:Xt}}const B={lowS:t.lowS,prehash:!1},N={lowS:t.lowS,prehash:!1};function k(P,S,R=B){const{seed:C,k2sig:F}=O(P,S,R),j=t;return jd(j.hash.outputLen,j.nByteLength,j.hmac)(C,F)}u.BASE._setWindowSize(8);function z(P,S,R,C=N){var tn;const F=P;S=me("msgHash",S),R=me("publicKey",R);const{lowS:j,prehash:D,format:q}=C;if(Ii(C),"strict"in C)throw new Error("options.strict was renamed to lowS");if(q!==void 0&&q!=="compact"&&q!=="der")throw new Error("format must be compact or der");const H=typeof F=="string"||_n(F),G=!H&&!q&&typeof F=="object"&&F!==null&&typeof F.r=="bigint"&&typeof F.s=="bigint";if(!H&&!G)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let V,de;try{if(G&&(V=new m(F.r,F.s)),H){try{q!=="compact"&&(V=m.fromDER(F))}catch($t){if(!($t instanceof je.Err))throw $t}!V&&q!=="der"&&(V=m.fromCompact(F))}de=u.fromHex(R)}catch{return!1}if(!V||j&&V.hasHighS())return!1;D&&(S=t.hash(S));const{r:re,s:Xt}=V,Se=v(S),X=f(Xt),st=c(Se*X),Qt=c(re*X),ot=(tn=u.BASE.multiplyAndAddUnsafe(de,st,Qt))==null?void 0:tn.toAffine();return ot?c(ot.x)===re:!1}return{CURVE:t,getPublicKey:g,getSharedSecret:E,sign:k,verify:z,ProjectivePoint:u,Signature:m,utils:x}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function O1(e){return{hash:e,hmac:(t,...n)=>kc(e,t,Q0(...n)),randomBytes:ef}}function F1(e,t){const n=r=>R1({...e,...O1(r)});return{...n(t),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Kc=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Bi=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),M1=BigInt(0),z1=BigInt(1),Cs=BigInt(2),Si=(e,t)=>(e+t/Cs)/t;function j1(e){const t=Kc,n=BigInt(3),r=BigInt(6),s=BigInt(11),o=BigInt(22),i=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,d=be(u,n,t)*u%t,l=be(d,n,t)*u%t,p=be(l,Cs,t)*f%t,h=be(p,s,t)*p%t,b=be(h,o,t)*h%t,w=be(b,a,t)*b%t,m=be(w,c,t)*w%t,x=be(m,a,t)*b%t,g=be(x,n,t)*u%t,y=be(g,i,t)*h%t,E=be(y,r,t)*f%t,A=be(E,Cs,t);if(!ks.eql(ks.sqr(A),e))throw new Error("Cannot find square root");return A}const ks=$o(Kc,void 0,void 0,{sqrt:j1}),Yc=F1({a:M1,b:BigInt(7),Fp:ks,n:Bi,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=Bi,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-z1*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=n,i=BigInt("0x100000000000000000000000000000000"),a=Si(o*e,t),c=Si(-r*e,t);let f=se(e-a*n-c*s,t),u=se(-a*r-c*o,t);const d=f>i,l=u>i;if(d&&(f=t-f),l&&(u=t-u),f>i||u>i)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:d,k1:f,k2neg:l,k2:u}}}},Na),L1=Object.freeze(Object.defineProperty({__proto__:null,secp256k1:Yc},Symbol.toStringTag,{value:"Module"}));function Jc(e,t={}){const{recovered:n}=t;if(typeof e.r>"u")throw new Qr({signature:e});if(typeof e.s>"u")throw new Qr({signature:e});if(n&&typeof e.yParity>"u")throw new Qr({signature:e});if(e.r<0n||e.r>vi)throw new V1({value:e.r});if(e.s<0n||e.s>vi)throw new W1({value:e.s});if(typeof e.yParity=="number"&&e.yParity!==0&&e.yParity!==1)throw new Bo({value:e.yParity})}function _1(e){return Xc($e(e))}function Xc(e){if(e.length!==130&&e.length!==132)throw new H1({signature:e});const t=BigInt(Ce(e,0,32)),n=BigInt(Ce(e,32,64)),r=(()=>{const s=+`0x${e.slice(130)}`;if(!Number.isNaN(s))try{return Io(s)}catch{throw new Bo({value:s})}})();return typeof r>"u"?{r:t,s:n}:{r:t,s:n,yParity:r}}function U1(e){if(!(typeof e.r>"u")&&!(typeof e.s>"u"))return D1(e)}function D1(e){const t=typeof e=="string"?Xc(e):e instanceof Uint8Array?_1(e):typeof e.r=="string"?G1(e):e.v?q1(e):{r:e.r,s:e.s,...typeof e.yParity<"u"?{yParity:e.yParity}:{}};return Jc(t),t}function q1(e){return{r:e.r,s:e.s,yParity:Io(e.v)}}function G1(e){const t=(()=>{const n=e.v?Number(e.v):void 0;let r=e.yParity?Number(e.yParity):void 0;if(typeof n=="number"&&typeof r!="number"&&(r=Io(n)),typeof r!="number")throw new Bo({value:e.yParity});return r})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function Io(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return e%2===0?1:0;throw new Z1({value:e})}class H1 extends U{constructor({signature:t}){super(`Value \`${t}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${pe(ul(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class Qr extends U{constructor({signature:t}){super(`Signature \`${qa(t)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class V1 extends U{constructor({value:t}){super(`Value \`${t}\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class W1 extends U{constructor({value:t}){super(`Value \`${t}\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class Bo extends U{constructor({value:t}){super(`Value \`${t}\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class Z1 extends U{constructor({value:t}){super(`Value \`${t}\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}function K1(e,t={}){return typeof e.chainId=="string"?Y1(e):{...e,...t.signature}}function Y1(e){const{address:t,chainId:n,nonce:r}=e,s=U1(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...s}}const J1="0x8010801080108010801080108010801080108010801080108010801080108010",X1=Fc("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function Qc(e){if(typeof e=="string"){if(Ce(e,-32)!==J1)throw new tp(e)}else Jc(e.authorization)}function Q1(e){Qc(e);const t=Za(Ce(e,-64,-32)),n=Ce(e,-t-64,-64),r=Ce(e,0,-t-64),[s,o,i]=d1(X1,n);return{authorization:K1({address:s.delegation,chainId:Number(s.chainId),nonce:s.nonce,yParity:s.yParity,r:s.r,s:s.s}),signature:r,...i&&i!=="0x"?{data:i,to:o}:{}}}function ep(e){try{return Qc(e),!0}catch{return!1}}let tp=class extends U{constructor(t){super(`Value \`${t}\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc8010.InvalidWrappedSignatureError"})}};function np(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function rp(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?Pe(e.nonce):void 0,storageProof:e.storageProof?np(e.storageProof):void 0}}async function sp(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:o,storageKeys:i}){const a=At({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:o}),c=await e.request({method:"eth_getProof",params:[t,i,a]});return rp(c)}async function op(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:o,slot:i}){const a=At({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:o});return await e.request({method:"eth_getStorageAt",params:[t,i,a]})}async function So(e,{blockHash:t,blockNumber:n,blockTag:r,hash:s,index:o,sender:i,nonce:a}){var l,p,h;const c=r||"latest",f=n!==void 0?L(n):void 0;let u=null;if(s?u=await e.request({method:"eth_getTransactionByHash",params:[s]},{dedupe:!0}):t?u=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,L(o)]},{dedupe:!0}):typeof o=="number"?u=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[f||c,L(o)]},{dedupe:!!f}):i&&typeof a=="number"&&(u=await e.request({method:"eth_getTransactionBySenderAndNonce",params:[i,L(a)]},{dedupe:!0})),!u)throw new va({blockHash:t,blockNumber:n,blockTag:c,hash:s,index:o});return(((h=(p=(l=e.chain)==null?void 0:l.formatters)==null?void 0:p.transaction)==null?void 0:h.format)||Js)(u,"getTransaction")}async function ip(e,{hash:t,transactionReceipt:n}){const[r,s]=await Promise.all([M(e,Gn,"getBlockNumber")({}),t?M(e,So,"getTransaction")({hash:t}):void 0]),o=(n==null?void 0:n.blockNumber)||(s==null?void 0:s.blockNumber);return o?r-o+1n:0n}async function Jn(e,{hash:t}){var s,o,i;const n=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!n)throw new xa({hash:t});return(((i=(o=(s=e.chain)==null?void 0:s.formatters)==null?void 0:o.transactionReceipt)==null?void 0:i.format)||bo)(n,"getTransactionReceipt")}async function ap(e,t){var y;const{account:n,authorizationList:r,allowFailure:s=!0,blockHash:o,blockNumber:i,blockOverrides:a,blockTag:c,requireCanonical:f,stateOverride:u}=t,d=t.contracts,{batchSize:l=t.batchSize??1024,deployless:p=t.deployless??!1}=typeof((y=e.batch)==null?void 0:y.multicall)=="object"?e.batch.multicall:{},h=(()=>{if(t.multicallAddress)return t.multicallAddress;if(p)return null;if(e.chain)return Yt({blockNumber:i,chain:e.chain,contract:"multicall3"});throw new Error("client chain not configured. multicallAddress is required.")})(),b=[[]];let w=0,m=0;for(let E=0;E<d.length;E++){const{abi:A,address:v,args:$,functionName:T}=d[E];try{const O=ce({abi:A,args:$,functionName:T});m+=(O.length-2)/2,l>0&&m>l&&b[w].length>0&&(w++,m=(O.length-2)/2,b[w]=[]),b[w]=[...b[w],{allowFailure:!0,callData:O,target:v}]}catch(O){const B=yt(O,{abi:A,address:v,args:$,docsPath:"/docs/contract/multicall",functionName:T,sender:n});if(!s)throw B;b[w]=[...b[w],{allowFailure:!0,callData:"0x",target:v}]}}const x=await Promise.allSettled(b.map(E=>M(e,Ie,"readContract")({...h===null?{code:fo}:{address:h},abi:Dt,account:n,args:[E],authorizationList:r,blockHash:o,blockNumber:i,blockOverrides:a,blockTag:c,functionName:"aggregate3",requireCanonical:f,stateOverride:u}))),g=[];for(let E=0;E<x.length;E++){const A=x[E];if(A.status==="rejected"){if(!s)throw A.reason;for(let $=0;$<b[E].length;$++)g.push({status:"failure",error:A.reason,result:void 0});continue}const v=A.value;for(let $=0;$<v.length;$++){const{returnData:T,success:O}=v[$],{callData:B}=b[E][$],{abi:N,address:k,functionName:z,args:P}=d[g.length];try{if(B==="0x")throw new Nn;if(!O)throw new yr({data:T});const S=nt({abi:N,args:P,data:T,functionName:z});g.push(s?{result:S,status:"success"}:S)}catch(S){const R=yt(S,{abi:N,address:k,args:P,docsPath:"/docs/contract/multicall",functionName:z});if(!s)throw R;g.push({error:R,result:void 0,status:"failure"})}}}if(g.length!==d.length)throw new I("multicall results mismatch");return g}async function Ns(e,t){const{blockNumber:n,blockTag:r=e.experimental_blockTag??"latest",blocks:s,returnFullTransactions:o,traceTransfers:i,validation:a}=t;try{const c=[];for(const l of s){const p=l.blockOverrides?Ja(l.blockOverrides):void 0,h=l.calls.map(w=>{const m=w,x=m.account?Z(m.account):void 0,g=m.abi?ce(m):m.data,y={...m,account:x,data:m.dataSuffix?ee([g||"0x",m.dataSuffix]):g,from:m.from??(x==null?void 0:x.address)};return We(y),tt(y)}),b=l.stateOverrides?Zs(l.stateOverrides):void 0;c.push({blockOverrides:p,calls:h,stateOverrides:b})}const u=(typeof n=="bigint"?L(n):void 0)||r;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:c,returnFullTransactions:o,traceTransfers:i,validation:a},u]})).map((l,p)=>({...Sa(l),calls:l.calls.map((h,b)=>{var O,B;const{abi:w,args:m,functionName:x,to:g}=s[p].calls[b],y=((O=h.error)==null?void 0:O.data)??h.returnData,E=BigInt(h.gasUsed),A=(B=h.logs)==null?void 0:B.map(N=>Oe(N)),v=h.status==="0x1"?"success":"failure",$=w&&v==="success"&&y!=="0x"?nt({abi:w,data:y,functionName:x}):null,T=(()=>{if(v==="success")return;let N;if(y==="0x"?N=new Nn:y&&(N=new yr({data:y})),!!N)return yt(N,{abi:w??[],address:g??"0x",args:m,functionName:x??"<unknown>"})})();return{data:y,gasUsed:E,logs:A,status:v,...v==="success"?{result:$}:{error:T}}})}))}catch(c){const f=c,u=wr(f,{});throw u instanceof jn?f:u}}function Rs(e){let t=!0,n="",r=0,s="",o=!1;for(let i=0;i<e.length;i++){const a=e[i];if(["(",")",","].includes(a)&&(t=!0),a==="("&&r++,a===")"&&r--,!!t){if(r===0){if(a===" "&&["event","function","error",""].includes(s))s="";else if(s+=a,a===")"){o=!0;break}continue}if(a===" "){e[i-1]!==","&&n!==","&&n!==",("&&(n="",t=!1);continue}s+=a,n+=a}}if(!o)throw new U("Unable to normalize signature.");return s}function Os(e,t){const n=typeof e,r=t.type;switch(r){case"address":return $s(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)=>Os(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=>Os(s,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function eu(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 eu(s.components,o.components,n[r]);const i=[s.type,o.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?$s(n[r],{strict:!1}):i.includes("address")&&i.includes("bytes")?$s(n[r],{strict:!1}):!1)return i}}function tu(e,t={}){const{prepare:n=!0}=t,r=Array.isArray(e)||typeof e=="string"?zo(e):e;return{...r,...n?{hash:Ct(r)}:{}}}function Cr(e,t,n){const{args:r=[],prepare:s=!0}=n??{},o=fl(t,{strict:!1}),i=e.filter(f=>o?f.type==="function"||f.type==="error"?nu(f)===Ce(t,0,4):f.type==="event"?Ct(f)===t:!1:"name"in f&&f.name===t);if(i.length===0)throw new fr({name:t});if(i.length===1)return{...i[0],...s?{hash:Ct(i[0])}:{}};let a;for(const f of i){if(!("inputs"in f))continue;if(!r||r.length===0){if(!f.inputs||f.inputs.length===0)return{...f,...s?{hash:Ct(f)}:{}};continue}if(!f.inputs||f.inputs.length===0||f.inputs.length!==r.length)continue;if(r.every((d,l)=>{const p="inputs"in f&&f.inputs[l];return p?Os(d,p):!1})){if(a&&"inputs"in a&&a.inputs){const d=eu(f.inputs,a.inputs,r);if(d)throw new up({abiItem:f,type:d[0]},{abiItem:a,type:d[1]})}a=f}}const c=(()=>{if(a)return a;const[f,...u]=i;return{...f,overloads:u}})();if(!c)throw new fr({name:t});return{...c,...s?{hash:Ct(c)}:{}}}function nu(...e){const t=(()=>{if(Array.isArray(e[0])){const[n,r]=e;return Cr(n,r)}return e[0]})();return Ce(Ct(t),0,4)}function cp(...e){const t=(()=>{if(Array.isArray(e[0])){const[r,s]=e;return Cr(r,s)}return e[0]})(),n=typeof t=="string"?t:Qn(t);return Rs(n)}function Ct(...e){const t=(()=>{if(Array.isArray(e[0])){const[n,r]=e;return Cr(n,r)}return e[0]})();return typeof t!="string"&&"hash"in t&&t.hash?t.hash:Nc(uo(cp(t)))}class up extends U{constructor(t,n){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${t.type}\` in \`${Rs(Qn(t.abiItem))}\`, and`,`\`${n.type}\` in \`${Rs(Qn(n.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class fr extends U{constructor({name:t,data:n,type:r="item"}){const s=t?` with name "${t}"`:n?` with data "${n}"`:"";super(`ABI ${r}${s} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}function fp(...e){var o;const[t,n]=(()=>{if(Array.isArray(e[0])){const[i,a]=e;return[lp(i),a]}return e})(),{bytecode:r,args:s}=n;return Ae(r,(o=t.inputs)!=null&&o.length&&(s!=null&&s.length)?Po(t.inputs,s):"0x")}function dp(e){return tu(e)}function lp(e){const t=e.find(n=>n.type==="constructor");if(!t)throw new fr({name:"constructor"});return t}function hp(...e){const[t,n=[]]=(()=>{if(Array.isArray(e[0])){const[f,u,d]=e;return[Ti(f,u,{args:d}),d]}const[a,c]=e;return[a,c]})(),{overloads:r}=t,s=r?Ti([t,...r],t.name,{args:n}):t,o=pp(s),i=n.length>0?Po(s.inputs,n):void 0;return i?Ae(o,i):o}function Bt(e,t={}){return tu(e,t)}function Ti(e,t,n){const r=Cr(e,t,n);if(r.type!=="function")throw new fr({name:t,type:"function"});return r}function pp(e){return nu(e)}const bp="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",we="0x0000000000000000000000000000000000000000",mp="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function yp(e,t){const{blockNumber:n,blockTag:r,calls:s,stateOverrides:o,traceAssetChanges:i,traceTransfers:a,validation:c}=t,f=t.account?Z(t.account):void 0;if(i&&!f)throw new I("`account` is required when `traceAssetChanges` is true");const u=f?fp(dp("constructor(bytes, bytes)"),{bytecode:nc,args:[mp,hp(Bt("function getBalance(address)"),[f.address])]}):void 0,d=i?await Promise.all(t.calls.map(async C=>{if(!C.data&&!C.abi)return;const{accessList:F}=await vc(e,{account:f.address,...C,data:C.abi?ce(C):C.data});return F.map(({address:j,storageKeys:D})=>D.length>0?j:null)})).then(C=>C.flat().filter(Boolean)):[],l=await Ns(e,{blockNumber:n,blockTag:r,blocks:[...i?[{calls:[{data:u}],stateOverrides:o},{calls:d.map((C,F)=>({abi:[Bt("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[f.address],to:C,from:we,nonce:F})),stateOverrides:[{address:we,nonce:0}]}]:[],{calls:[...s,{to:we}].map(C=>({...C,from:f==null?void 0:f.address})),stateOverrides:o},...i?[{calls:[{data:u}]},{calls:d.map((C,F)=>({abi:[Bt("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[f.address],to:C,from:we,nonce:F})),stateOverrides:[{address:we,nonce:0}]},{calls:d.map((C,F)=>({to:C,abi:[Bt("function decimals() returns (uint256)")],functionName:"decimals",from:we,nonce:F})),stateOverrides:[{address:we,nonce:0}]},{calls:d.map((C,F)=>({to:C,abi:[Bt("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:we,nonce:F})),stateOverrides:[{address:we,nonce:0}]},{calls:d.map((C,F)=>({to:C,abi:[Bt("function symbol() returns (string)")],functionName:"symbol",from:we,nonce:F})),stateOverrides:[{address:we,nonce:0}]}]:[]],traceTransfers:a,validation:c}),p=i?l[2]:l[0],[h,b,,w,m,x,g,y]=i?l:[],{calls:E,...A}=p,v=E.slice(0,-1)??[],$=(h==null?void 0:h.calls)??[],T=(b==null?void 0:b.calls)??[],O=[...$,...T].map(C=>C.status==="success"?he(C.data):null),B=(w==null?void 0:w.calls)??[],N=(m==null?void 0:m.calls)??[],k=[...B,...N].map(C=>C.status==="success"?he(C.data):null),z=((x==null?void 0:x.calls)??[]).map(C=>C.status==="success"?C.result:null),P=((y==null?void 0:y.calls)??[]).map(C=>C.status==="success"?C.result:null),S=((g==null?void 0:g.calls)??[]).map(C=>C.status==="success"?C.result:null),R=[];for(const[C,F]of k.entries()){const j=O[C];if(typeof F!="bigint"||typeof j!="bigint")continue;const D=z[C-1],q=P[C-1],H=S[C-1],G=C===0?{address:bp,decimals:18,symbol:"ETH"}:{address:d[C-1],decimals:H||D?Number(D??1):void 0,symbol:q??void 0};R.some(V=>V.token.address===G.address)||R.push({token:G,value:{pre:j,post:F,diff:F-j}})}return{assetChanges:R,block:A,results:v}}const ru="0x6492649264926492649264926492649264926492649264926492649264926492";function gp(e){if(Ce(e,-32)!==ru)throw new xp(e)}function wp(e){const{data:t,signature:n,to:r}=e;return Ae(Po(Fc("address, bytes, bytes"),[r,t,n]),ru)}function vp(e){try{return gp(e),!0}catch{return!1}}class xp extends U{constructor(t){super(`Value \`${t}\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc6492.InvalidWrappedSignatureError"})}}function Ep({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")})(),i=`0x${new Yc.Signature(he(e),he(t)).toCompactHex()}${o===0?"1b":"1c"}`;return n==="hex"?i:Ne(i)}async function kr(e,t){var f,u,d,l;const{address:n,chain:r=e.chain,hash:s,erc6492VerifierAddress:o=t.universalSignatureVerifierAddress??((u=(f=r==null?void 0:r.contracts)==null?void 0:f.erc6492Verifier)==null?void 0:u.address),multicallAddress:i=t.multicallAddress??((l=(d=r==null?void 0:r.contracts)==null?void 0:d.multicall3)==null?void 0:l.address),mode:a="auto"}=t;if(r!=null&&r.verifyHash)return await r.verifyHash(e,t);const c=(()=>{const p=t.signature;return ke(p)?p:typeof p=="object"&&"r"in p&&"s"in p?Ep(p):Y(p)})();try{if(a==="eoa")try{if(gt(pt(n),await fs({hash:s,signature:c})))return!0}catch{}return ep(c)?await Pp(e,{...t,multicallAddress:i,signature:c}):await Ap(e,{...t,verifierAddress:o,signature:c})}catch(p){if(a!=="eoa")try{if(gt(pt(n),await fs({hash:s,signature:c})))return!0}catch{}if(p instanceof xt)return!1;throw p}}async function Pp(e,t){var w;const{address:n,blockNumber:r,blockTag:s,hash:o,multicallAddress:i}=t,{authorization:a,data:c,signature:f,to:u}=Q1(t.signature);if(await ur(e,{address:n,blockNumber:r,blockTag:s})===Wt(["0xef0100",a.address]))return await $p(e,{address:n,blockNumber:r,blockTag:s,hash:o,signature:f});const l={address:a.address,chainId:Number(a.chainId),nonce:Number(a.nonce),r:L(a.r,{size:32}),s:L(a.s,{size:32}),yParity:a.yParity};if(!await gh({address:n,authorization:l}))throw new xt;const h=await M(e,Ie,"readContract")({...i?{address:i}:{code:fo},authorizationList:[l],abi:Dt,blockNumber:r,blockTag:"pending",functionName:"aggregate3",args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:ce({abi:tc,functionName:"isValidSignature",args:[o,f]})}]]}),b=(w=h[h.length-1])==null?void 0:w.returnData;if(b!=null&&b.startsWith("0x1626ba7e"))return!0;throw new xt}async function Ap(e,t){const{address:n,factory:r,factoryData:s,hash:o,signature:i,verifierAddress:a,...c}=t,f=await(async()=>!r&&!s||vp(i)?i:wp({data:s,signature:i,to:r}))(),u=a?{to:a,data:ce({abi:pi,functionName:"isValidSig",args:[n,o,f]}),...c}:{data:Ar({abi:pi,args:[n,o,f],bytecode:yl}),...c},{data:d}=await M(e,qn,"call")(u).catch(l=>{throw l instanceof Ea?new xt:l});if(O0(d??"0x0"))return!0;throw new xt}async function $p(e,t){const{address:n,blockNumber:r,blockTag:s,hash:o,signature:i}=t;if((await M(e,Ie,"readContract")({address:n,abi:tc,args:[o,i],blockNumber:r,blockTag:s,functionName:"isValidSignature"}).catch(c=>{throw c instanceof Pa?new xt:c})).startsWith("0x1626ba7e"))return!0;throw new xt}class xt extends Error{}async function Ip(e,{address:t,message:n,factory:r,factoryData:s,signature:o,...i}){const a=Pc(n);return M(e,kr,"verifyHash")({address:t,factory:r,factoryData:s,hash:a,signature:o,...i})}async function Bp(e,t){const{address:n,factory:r,factoryData:s,signature:o,message:i,primaryType:a,types:c,domain:f,...u}=t,d=Fh({message:i,primaryType:a,types:c,domain:f});return M(e,kr,"verifyHash")({address:n,factory:r,factoryData:s,hash:d,signature:o,...u})}function su(e,{emitOnBegin:t=!1,emitMissed:n=!1,onBlockNumber:r,onError:s,poll:o,pollingInterval:i=e.pollingInterval}){const a=typeof o<"u"?o:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc"));let c;return a?(()=>{const d=K(["watchBlockNumber",e.uid,t,n,i]);return He(d,{onBlockNumber:r,onError:s},l=>Jt(async()=>{var p;try{const h=await M(e,Gn,"getBlockNumber")({cacheTime:0});if(c!==void 0){if(h===c)return;if(h-c>1&&n)for(let b=c+1n;b<h;b++)l.onBlockNumber(b,c),c=b}(c===void 0||h>c)&&(l.onBlockNumber(h,c),c=h)}catch(h){(p=l.onError)==null||p.call(l,h)}},{emitOnBegin:t,interval:i}))})():(()=>{const d=K(["watchBlockNumber",e.uid,t,n]);return He(d,{onBlockNumber:r,onError:s},l=>{let p=!0,h=()=>p=!1;return(async()=>{try{const b=(()=>{if(e.transport.type==="fallback"){const m=e.transport.transports.find(x=>x.config.type==="webSocket"||x.config.type==="ipc");return m?m.value:e.transport}return e.transport})(),{unsubscribe:w}=await b.subscribe({params:["newHeads"],onData(m){var g;if(!p)return;const x=he((g=m.result)==null?void 0:g.number);l.onBlockNumber(x,c),c=x},onError(m){var x;(x=l.onError)==null||x.call(l,m)}});h=w,p||h()}catch(b){s==null||s(b)}})(),()=>h()})})()}async function ou(e,t){const{checkReplacement:n=!0,confirmations:r=1,hash:s,onReplaced:o,retryCount:i=6,retryDelay:a=({count:E})=>~~(1<<E)*200,timeout:c=18e4}=t,f=K(["waitForTransactionReceipt",e.uid,s]),u=(()=>{var E;return t.pollingInterval?t.pollingInterval:(E=e.chain)!=null&&E.experimental_preconfirmationTime?e.chain.experimental_preconfirmationTime:e.pollingInterval})();let d,l,p,h=!1,b,w;const{promise:m,resolve:x,reject:g}=lo(),y=c?setTimeout(()=>{w==null||w(),b==null||b(),g(new Kf({hash:s}))},c):void 0;return b=He(f,{onReplaced:o,resolve:x,reject:g},async E=>{if(p=await M(e,Jn,"getTransactionReceipt")({hash:s}).catch(()=>{}),p&&r<=1){clearTimeout(y),E.resolve(p),b==null||b();return}w=M(e,su,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:u,async onBlockNumber(A){const v=T=>{clearTimeout(y),w==null||w(),T(),b==null||b()};let $=A;if(!h)try{if(p){if(r>1&&(!p.blockNumber||$-p.blockNumber+1n<r))return;v(()=>E.resolve(p));return}if(n&&!d&&(h=!0,await cr(async()=>{d=await M(e,So,"getTransaction")({hash:s}),d.blockNumber&&($=d.blockNumber)},{delay:a,retryCount:i}),h=!1),p=await M(e,Jn,"getTransactionReceipt")({hash:s}),r>1&&(!p.blockNumber||$-p.blockNumber+1n<r))return;v(()=>E.resolve(p))}catch(T){if(T instanceof va||T instanceof xa){if(!d){h=!1;return}try{l=d,h=!0;const O=await cr(()=>M(e,xe,"getBlock")({blockNumber:$,includeTransactions:!0}),{delay:a,retryCount:i,shouldRetry:({error:k})=>k instanceof Ys});h=!1;const B=O.transactions.find(({from:k,nonce:z})=>k===l.from&&z===l.nonce);if(!B||(p=await M(e,Jn,"getTransactionReceipt")({hash:B.hash}),r>1&&(!p.blockNumber||$-p.blockNumber+1n<r)))return;let N="replaced";B.to===l.to&&B.value===l.value&&B.input===l.input?N="repriced":B.from===B.to&&B.value===0n&&(N="cancelled"),v(()=>{var k;(k=E.onReplaced)==null||k.call(E,{reason:N,replacedTransaction:l,transaction:B,transactionReceipt:p}),E.resolve(p)})}catch(O){v(()=>E.reject(O))}}else v(()=>E.reject(T))}}})}),m}function Sp(e,{blockTag:t=e.experimental_blockTag??"latest",emitMissed:n=!1,emitOnBegin:r=!1,onBlock:s,onError:o,includeTransactions:i,poll:a,pollingInterval:c=e.pollingInterval}){const f=typeof a<"u"?a:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),u=i??!1;let d;return f?(()=>{const h=K(["watchBlocks",e.uid,t,n,r,u,c]);return He(h,{onBlock:s,onError:o},b=>Jt(async()=>{var w;try{const m=await M(e,xe,"getBlock")({blockTag:t,includeTransactions:u});if(m.number!==null&&(d==null?void 0:d.number)!=null){if(m.number===d.number)return;if(m.number-d.number>1&&n)for(let x=(d==null?void 0:d.number)+1n;x<m.number;x++){const g=await M(e,xe,"getBlock")({blockNumber:x,includeTransactions:u});b.onBlock(g,d),d=g}}((d==null?void 0:d.number)==null||t==="pending"&&(m==null?void 0:m.number)==null||m.number!==null&&m.number>d.number)&&(b.onBlock(m,d),d=m)}catch(m){(w=b.onError)==null||w.call(b,m)}},{emitOnBegin:r,interval:c}))})():(()=>{let h=!0,b=!0,w=()=>h=!1;return(async()=>{try{r&&M(e,xe,"getBlock")({blockTag:t,includeTransactions:u}).then(g=>{h&&b&&(s(g,void 0),b=!1)}).catch(o);const m=(()=>{if(e.transport.type==="fallback"){const g=e.transport.transports.find(y=>y.config.type==="webSocket"||y.config.type==="ipc");return g?g.value:e.transport}return e.transport})(),{unsubscribe:x}=await m.subscribe({params:["newHeads"],async onData(g){var E;if(!h)return;const y=await M(e,xe,"getBlock")({blockNumber:(E=g.result)==null?void 0:E.number,includeTransactions:u}).catch(()=>{});h&&(s(y,d),b=!1,d=y)},onError(g){o==null||o(g)}});w=x,h||w()}catch(m){o==null||o(m)}})(),()=>w()})()}function Tp(e,{address:t,args:n,batch:r=!0,event:s,events:o,fromBlock:i,onError:a,onLogs:c,poll:f,pollingInterval:u=e.pollingInterval,strict:d}){const l=typeof f<"u"?f:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),p=d??!1;return l?(()=>{const w=K(["watchEvent",t,n,r,e.uid,s,u,i]);return He(w,{onLogs:c,onError:a},m=>{let x;i!==void 0&&(x=i-1n);let g,y=!1;const E=Jt(async()=>{var A;if(!y){try{g=await M(e,xc,"createEventFilter")({address:t,args:n,event:s,events:o,strict:p,fromBlock:i})}catch{}y=!0;return}try{let v;if(g)v=await M(e,$r,"getFilterChanges")({filter:g});else{const $=await M(e,Gn,"getBlockNumber")({});x&&x!==$?v=await M(e,oo,"getLogs")({address:t,args:n,event:s,events:o,fromBlock:x+1n,toBlock:$}):v=[],x=$}if(v.length===0)return;if(r)m.onLogs(v);else for(const $ of v)m.onLogs([$])}catch(v){g&&v instanceof et&&(y=!1),(A=m.onError)==null||A.call(m,v)}},{emitOnBegin:!0,interval:u});return async()=>{g&&await M(e,Ir,"uninstallFilter")({filter:g}),E()}})})():(()=>{let w=!0,m=()=>w=!1;return(async()=>{try{const x=(()=>{if(e.transport.type==="fallback"){const A=e.transport.transports.find(v=>v.config.type==="webSocket"||v.config.type==="ipc");return A?A.value:e.transport}return e.transport})(),g=o??(s?[s]:void 0);let y=[];g&&(y=[g.flatMap(v=>Fn({abi:[v],eventName:v.name,args:n}))],s&&(y=y[0]));const{unsubscribe:E}=await x.subscribe({params:["logs",{address:t,topics:y}],onData(A){var $;if(!w)return;const v=A.result;try{const{eventName:T,args:O}=sr({abi:g??[],data:v.data,topics:v.topics,strict:p}),B=Oe(v,{args:O,eventName:T});c([B])}catch(T){let O,B;if(T instanceof er||T instanceof zs){if(d)return;O=T.abiItem.name,B=($=T.abiItem.inputs)==null?void 0:$.some(k=>!("name"in k&&k.name))}const N=Oe(v,{args:B?[]:{},eventName:O});c([N])}},onError(A){a==null||a(A)}});m=E,w||m()}catch(x){a==null||a(x)}})(),()=>m()})()}function Cp(e,{batch:t=!0,onError:n,onTransactions:r,poll:s,pollingInterval:o=e.pollingInterval}){return(typeof s<"u"?s:e.transport.type!=="webSocket"&&e.transport.type!=="ipc")?(()=>{const f=K(["watchPendingTransactions",e.uid,t,o]);return He(f,{onTransactions:r,onError:n},u=>{let d;const l=Jt(async()=>{var p;try{if(!d)try{d=await M(e,Ec,"createPendingTransactionFilter")({});return}catch(b){throw l(),b}const h=await M(e,$r,"getFilterChanges")({filter:d});if(h.length===0)return;if(t)u.onTransactions(h);else for(const b of h)u.onTransactions([b])}catch(h){(p=u.onError)==null||p.call(u,h)}},{emitOnBegin:!0,interval:o});return async()=>{d&&await M(e,Ir,"uninstallFilter")({filter:d}),l()}})})():(()=>{let f=!0,u=()=>f=!1;return(async()=>{try{const{unsubscribe:d}=await e.transport.subscribe({params:["newPendingTransactions"],onData(l){if(!f)return;const p=l.result;r([p])},onError(l){n==null||n(l)}});u=d,f||u()}catch(d){n==null||n(d)}})(),()=>u()})()}function kp(e){var d,l,p;const{scheme:t,statement:n,...r}=((d=e.match(Np))==null?void 0:d.groups)??{},{chainId:s,expirationTime:o,issuedAt:i,notBefore:a,requestId:c,...f}=((l=e.match(Rp))==null?void 0:l.groups)??{},u=(p=e.split("Resources:")[1])==null?void 0:p.split(`
55
+ - `).slice(1);return{...r,...f,...s?{chainId:Number(s)}:{},...o?{expirationTime:new Date(o)}:{},...i?{issuedAt:new Date(i)}:{},...a?{notBefore:new Date(a)}:{},...c?{requestId:c}:{},...u?{resources:u}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}const Np=/^(?:(?<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)?/,Rp=/(?: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 Op(e){const{address:t,domain:n,message:r,nonce:s,scheme:o,time:i=new Date}=e;if(n&&r.domain!==n||s&&r.nonce!==s||o&&r.scheme!==o||r.expirationTime&&i>=r.expirationTime||r.notBefore&&i<r.notBefore)return!1;try{if(!r.address||!ge(r.address,{strict:!1})||t&&!gt(r.address,t))return!1}catch{return!1}return!0}async function Fp(e,t){const{address:n,domain:r,message:s,nonce:o,scheme:i,signature:a,time:c=new Date,...f}=t,u=kp(s);if(!u.address||!Op({address:n,domain:r,message:u,nonce:o,scheme:i,time:c}))return!1;const l=Pc(s);return kr(e,{address:u.address,hash:l,signature:a,...f})}async function To(e,{serializedTransaction:t,throwOnReceiptRevert:n,timeout:r}){var a,c,f;const s=await e.request({method:"eth_sendRawTransactionSync",params:r?[t,r]:[t]},{retryCount:0}),i=(((f=(c=(a=e.chain)==null?void 0:a.formatters)==null?void 0:c.transactionReceipt)==null?void 0:f.format)||bo)(s);if(i.status==="reverted"&&n)throw new us({receipt:i});return i}function Mp(e){return{call:t=>qn(e,t),createAccessList:t=>vc(e,t),createBlockFilter:()=>ih(e),createContractEventFilter:t=>ba(e,t),createEventFilter:t=>xc(e,t),createPendingTransactionFilter:()=>Ec(e),estimateContractGas:t=>Rd(e,t),estimateGas:t=>ro(e,t),getBalance:t=>ah(e,t),getBlobBaseFee:()=>ch(e),getBlock:t=>xe(e,t),getBlockNumber:t=>Gn(e,t),getBlockReceipts:t=>uh(e,t),getBlockTransactionCount:t=>fh(e,t),getBytecode:t=>ur(e,t),getChainId:()=>Re(e),getCode:t=>ur(e,t),getContractEvents:t=>Fa(e,t),getDelegation:t=>dh(e,t),getEip712Domain:t=>hh(e,t),getEnsAddress:t=>ql(e,t),getEnsAvatar:t=>rh(e,t),getEnsName:t=>sh(e,t),getEnsResolver:t=>oh(e,t),getEnsText:t=>wc(e,t),getFeeHistory:t=>mh(e,t),estimateFeesPerGas:t=>yd(e,t),getFilterChanges:t=>$r(e,t),getFilterLogs:t=>yh(e,t),getGasPrice:()=>Xs(e),getLogs:t=>oo(e,t),getProof:t=>sp(e,t),estimateMaxPriorityFeePerGas:t=>md(e,t),fillTransaction:t=>to(e,t),getStorageAt:t=>op(e,t),getTransaction:t=>So(e,t),getTransactionConfirmations:t=>ip(e,t),getTransactionCount:t=>Qs(e,t),getTransactionReceipt:t=>Jn(e,t),multicall:t=>ap(e,t),prepareTransactionRequest:t=>Ln(e,t),readContract:t=>Ie(e,t),sendRawTransaction:t=>po(e,t),sendRawTransactionSync:t=>To(e,t),simulate:t=>Ns(e,t),simulateBlocks:t=>Ns(e,t),simulateCalls:t=>yp(e,t),simulateContract:t=>Bl(e,t),verifyHash:t=>kr(e,t),verifyMessage:t=>Ip(e,t),verifySiweMessage:t=>Fp(e,t),verifyTypedData:t=>Bp(e,t),uninstallFilter:t=>Ir(e,t),waitForTransactionReceipt:t=>ou(e,t),watchBlocks:t=>Sp(e,t),watchBlockNumber:t=>su(e,t),watchContractEvent:t=>Ol(e,t),watchEvent:t=>Tp(e,t),watchPendingTransactions:t=>Cp(e,t)}}function zp(e){const{key:t="public",name:n="Public Client"}=e;return bc({...e,key:t,name:n,type:"publicClient"}).extend(Mp)}async function jp(e,{chain:t}){const{id:n,name:r,nativeCurrency:s,rpcUrls:o,blockExplorers:i}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:L(n),chainName:r,nativeCurrency:s,rpcUrls:o.default.http,blockExplorerUrls:i?Object.values(i).map(({url:a})=>a):void 0}]},{dedupe:!0,retryCount:0})}function Lp(e,t){const{abi:n,args:r,bytecode:s,...o}=t,i=Ar({abi:n,args:r,bytecode:s});return Br(e,{...o,...o.authorizationList?{to:null}:{},data:i})}async function _p(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=>Rn(r))}async function Up(e,t={}){const{account:n=e.account,chainId:r}=t,s=n?Z(n):void 0,o=r?[s==null?void 0:s.address,[L(r)]]:[s==null?void 0:s.address],i=await e.request({method:"wallet_getCapabilities",params:o}),a={};for(const[c,f]of Object.entries(i)){a[Number(c)]={};for(let[u,d]of Object.entries(f))u==="addSubAccount"&&(u="unstable_addSubAccount"),a[Number(c)][u]=d}return typeof r=="number"?a[r]:a}async function Dp(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}async function iu(e,t){var c;const{account:n=e.account,chainId:r,nonce:s}=t;if(!n)throw new rt({docsPath:"/docs/eip7702/prepareAuthorization"});const o=Z(n),i=(()=>{if(t.executor)return t.executor==="self"?t.executor:Z(t.executor)})(),a={address:t.contractAddress??t.address,chainId:r,nonce:s};return typeof a.chainId>"u"&&(a.chainId=((c=e.chain)==null?void 0:c.id)??await M(e,Re,"getChainId")({})),typeof a.nonce>"u"&&(a.nonce=await M(e,Qs,"getTransactionCount")({address:o.address,blockTag:"pending"}),(i==="self"||i!=null&&i.address&&gt(i.address,o.address))&&(a.nonce+=1)),a}async function qp(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(n=>pt(n))}async function Gp(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function Hp(e,t){const{chain:n=e.chain}=t,r=t.timeout??Math.max(((n==null?void 0:n.blockTime)??0)*3,5e3),s=await M(e,dc,"sendCalls")(t);return await M(e,hc,"waitForCallsStatus")({...t,id:s.id,timeout:r})}const es=new Vt(128);async function au(e,t){var $,T,O,B,N,k;const{account:n=e.account,assertChainId:r=!0,chain:s=e.chain,accessList:o,authorizationList:i,blobs:a,data:c,dataSuffix:f=typeof e.dataSuffix=="string"?e.dataSuffix:($=e.dataSuffix)==null?void 0:$.value,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:b,pollingInterval:w,throwOnReceiptRevert:m,type:x,value:g,...y}=t,E=t.timeout??Math.max(((s==null?void 0:s.blockTime)??0)*3,5e3);if(typeof n>"u")throw new rt({docsPath:"/docs/actions/wallet/sendTransactionSync"});const A=n?Z(n):null;let v;try{We(t);const z=await(async()=>{if(t.to)return t.to;if(t.to!==null&&i&&i.length>0)return await gr({authorization:i[0]}).catch(()=>{throw new I("`to` is required. Could not infer from `authorizationList`.")})})();if((A==null?void 0:A.type)==="json-rpc"||A===null){let P;s!==null&&(P=await M(e,Re,"getChainId")({}),r&&ho({currentChainId:P,chain:s}));const S=(B=(O=(T=e.chain)==null?void 0:T.formatters)==null?void 0:O.transactionRequest)==null?void 0:B.format,C=(S||tt)({...Kt(y,{format:S}),accessList:o,account:A,authorizationList:i,blobs:a,chainId:P,data:f?ee([c??"0x",f]):c,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:b,to:z,type:x,value:g},"sendTransaction"),F=es.get(e.uid),j=F?"wallet_sendTransaction":"eth_sendTransaction",D=await(async()=>{try{return await e.request({method:j,params:[C]},{retryCount:0})}catch(H){if(F===!1)throw H;const G=H;if(G.name==="InvalidInputRpcError"||G.name==="InvalidParamsRpcError"||G.name==="MethodNotFoundRpcError"||G.name==="MethodNotSupportedRpcError")return await e.request({method:"wallet_sendTransaction",params:[C]},{retryCount:0}).then(V=>(es.set(e.uid,!0),V)).catch(V=>{const de=V;throw de.name==="MethodNotFoundRpcError"||de.name==="MethodNotSupportedRpcError"?(es.set(e.uid,!1),G):de});throw G}})(),q=await M(e,ou,"waitForTransactionReceipt")({checkReplacement:!1,hash:D,pollingInterval:w,timeout:E});if(m&&q.status==="reverted")throw new us({receipt:q});return q}if((A==null?void 0:A.type)==="local"){if(A.nonceManager&&typeof b>"u"){const C=y.chainId,F=await(async()=>typeof C=="number"?C:s?s.id:M(e,Re,"getChainId")({}))();v={address:A.address,chainId:F}}const P=await M(e,Ln,"prepareTransactionRequest")({account:A,accessList:o,authorizationList:i,blobs:a,chain:s,data:f?ee([c??"0x",f]):c,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:b,nonceManager:A.nonceManager,parameters:[...no,"sidecars"],type:x,value:g,...y,to:z}),S=(N=s==null?void 0:s.serializers)==null?void 0:N.transaction,R=await A.signTransaction(P,{serializer:S});return await M(e,To,"sendRawTransactionSync")({serializedTransaction:R,throwOnReceiptRevert:m,timeout:t.timeout})}throw(A==null?void 0:A.type)==="smart"?new lt({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new lt({docsPath:"/docs/actions/wallet/sendTransactionSync",type:A==null?void 0:A.type})}catch(z){throw z instanceof lt?z:(v&&!(z instanceof us)&&((k=A==null?void 0:A.nonceManager)==null||k.reset(v)),vr(z,{...t,account:A,chain:t.chain||void 0}))}}async function Vp(e,t){const{id:n}=t;await e.request({method:"wallet_showCallsStatus",params:[n]})}async function Wp(e,t){const{account:n=e.account}=t;if(!n)throw new rt({docsPath:"/docs/eip7702/signAuthorization"});const r=Z(n);if(!r.signAuthorization)throw new lt({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:r.type});const s=await iu(e,t);return r.signAuthorization(s)}async function Zp(e,{account:t=e.account,message:n}){if(!t)throw new rt({docsPath:"/docs/actions/wallet/signMessage"});const r=Z(t);if(r.signMessage)return r.signMessage({message:n});const s=typeof n=="string"?an(n):n.raw instanceof Uint8Array?Ge(n.raw):n.raw;return e.request({method:"personal_sign",params:[s,r.address]},{retryCount:0})}async function Kp(e,t){var f,u,d,l;const{account:n=e.account,chain:r=e.chain,...s}=t;if(!n)throw new rt({docsPath:"/docs/actions/wallet/signTransaction"});const o=Z(n);We({account:o,...t});const i=await M(e,Re,"getChainId")({});r!==null&&ho({currentChainId:i,chain:r});const a=(r==null?void 0:r.formatters)||((f=e.chain)==null?void 0:f.formatters),c=((u=a==null?void 0:a.transactionRequest)==null?void 0:u.format)||tt;return o.signTransaction?o.signTransaction({...s,account:o,chainId:i},{serializer:(l=(d=e.chain)==null?void 0:d.serializers)==null?void 0:l.transaction}):await e.request({method:"eth_signTransaction",params:[{...c({...s,account:o},"signTransaction"),chainId:L(i),from:o.address}]},{retryCount:0})}async function Yp(e,t){const{account:n=e.account,domain:r,message:s,primaryType:o}=t;if(!n)throw new rt({docsPath:"/docs/actions/wallet/signTypedData"});const i=Z(n),a={EIP712Domain:$c({domain:r}),...t.types};if(Ac({domain:r,message:s,primaryType:o,types:a}),i.signTypedData)return i.signTypedData({domain:r,message:s,primaryType:o,types:a});const c=Rh({domain:r,message:s,primaryType:o,types:a});return e.request({method:"eth_signTypedData_v4",params:[i.address,c]},{retryCount:0})}async function Jp(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:L(t)}]},{retryCount:0})}async function Xp(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}async function Qp(e,t){return Tn.internal(e,au,"sendTransactionSync",t)}function eb(e){return{addChain:t=>jp(e,t),deployContract:t=>Lp(e,t),fillTransaction:t=>to(e,t),getAddresses:()=>_p(e),getCallsStatus:t=>lc(e,t),getCapabilities:t=>Up(e,t),getChainId:()=>Re(e),getPermissions:()=>Dp(e),prepareAuthorization:t=>iu(e,t),prepareTransactionRequest:t=>Ln(e,t),requestAddresses:()=>qp(e),requestPermissions:t=>Gp(e,t),sendCalls:t=>dc(e,t),sendCallsSync:t=>Hp(e,t),sendRawTransaction:t=>po(e,t),sendRawTransactionSync:t=>To(e,t),sendTransaction:t=>Br(e,t),sendTransactionSync:t=>au(e,t),showCallsStatus:t=>Vp(e,t),signAuthorization:t=>Wp(e,t),signMessage:t=>Zp(e,t),signTransaction:t=>Kp(e,t),signTypedData:t=>Yp(e,t),switchChain:t=>Jp(e,t),waitForCallsStatus:t=>hc(e,t),watchAsset:t=>Xp(e,t),writeContract:t=>Tn(e,t),writeContractSync:t=>Qp(e,t)}}function tb(e){const{key:t="wallet",name:n="Wallet Client",transport:r}=e;return bc({...e,key:t,name:n,transport:r,type:"walletClient"}).extend(eb)}function Co({key:e,methods:t,name:n,request:r,retryCount:s=3,retryDelay:o=150,timeout:i,type:a},c){const f=pc();return{config:{key:e,methods:t,name:n,request:r,retryCount:s,retryDelay:o,timeout:i,type:a},request:vh(r,{methods:t,retryCount:s,retryDelay:o,uid:f}),value:c}}function nb(e,t={}){const{key:n="custom",methods:r,name:s="Custom Provider",retryDelay:o}=t;return({retryCount:i})=>Co({key:n,methods:r,name:s,request:e.request.bind(e),retryCount:t.retryCount??i,retryDelay:o,type:"custom"})}function rb(e,t={}){const{key:n="fallback",name:r="Fallback",rank:s=!1,shouldThrow:o=sb,retryCount:i,retryDelay:a}=t;return(({chain:c,pollingInterval:f=4e3,timeout:u,...d})=>{let l=e,p=()=>{};const h=Co({key:n,name:r,async request({method:b,params:w}){let m;const x=async(g=0)=>{const y=l[g]({...d,chain:c,retryCount:0,timeout:u});try{const E=await y.request({method:b,params:w});return p({method:b,params:w,response:E,transport:y,status:"success"}),E}catch(E){if(p({error:E,method:b,params:w,transport:y,status:"error"}),o(E)||g===l.length-1||(m??(m=l.slice(g+1).some(A=>{const{include:v,exclude:$}=A({chain:c}).config.methods||{};return v?v.includes(b):$?!$.includes(b):!0})),!m))throw E;return x(g+1)}};return x()},retryCount:i,retryDelay:a,type:"fallback"},{onResponse:b=>p=b,transports:l.map(b=>b({chain:c,retryCount:0}))});if(s){const b=typeof s=="object"?s:{};ob({chain:c,interval:b.interval??f,onTransports:w=>l=w,ping:b.ping,sampleCount:b.sampleCount,timeout:b.timeout,transports:l,weights:b.weights})}return h})}function sb(e){return!!("code"in e&&typeof e.code=="number"&&(e.code===zt.code||e.code===Je.code||e.code===Ut.code||ct.nodeMessage.test(e.message)||e.code===5e3))}function ob({chain:e,interval:t=4e3,onTransports:n,ping:r,sampleCount:s=10,timeout:o=1e3,transports:i,weights:a={}}){const{stability:c=.7,latency:f=.3}=a,u=[],d=async()=>{const l=await Promise.all(i.map(async b=>{const w=b({chain:e,retryCount:0,timeout:o}),m=Date.now();let x,g;try{await(r?r({transport:w}):w.request({method:"net_listening"})),g=1}catch{g=0}finally{x=Date.now()}return{latency:x-m,success:g}}));u.push(l),u.length>s&&u.shift();const p=Math.max(...u.map(b=>Math.max(...b.map(({latency:w})=>w)))),h=i.map((b,w)=>{const m=u.map(A=>A[w].latency),g=1-m.reduce((A,v)=>A+v,0)/m.length/p,y=u.map(A=>A[w].success),E=y.reduce((A,v)=>A+v,0)/y.length;return E===0?[0,w]:[f*g+c*E,w]}).sort((b,w)=>w[0]-b[0]);n(h.map(([,b])=>i[b])),await ar(t),d()};d()}class ib extends I{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}let ab=0;const Ci=new WeakMap;function cb(e){if(!e)return"default";const t=Ci.get(e);if(t!==void 0)return t;const n=ab++;return Ci.set(e,n),n}function ub(e,t={}){const{batch:n,fetchFn:r,fetchOptions:s,key:o="http",methods:i,name:a="HTTP JSON-RPC",onFetchRequest:c,onFetchResponse:f,retryDelay:u,raw:d}=t;return({chain:l,retryCount:p,timeout:h})=>{const{batchSize:b=1e3,wait:w=0}=typeof n=="object"?n:{},m=t.retryCount??p,x=h??t.timeout??1e4,g=e||(l==null?void 0:l.rpcUrls.default.http[0]);if(!g)throw new ib;const y=Ih(g,{fetchFn:r,fetchOptions:s,onRequest:c,onResponse:f,timeout:x});return Co({key:o,methods:i,name:a,async request({method:E,params:A},v){const $={method:E,params:A},T=v!=null&&v.signal?{signal:v.signal}:void 0,{schedule:O}=oc({id:`${g}.${cb(v==null?void 0:v.signal)}`,wait:w,shouldSplitBatch(z){return z.length>b},fn:z=>y.request({body:z,fetchOptions:T}),sort:(z,P)=>z.id-P.id}),B=async z=>n?O(z):[await y.request({body:z,fetchOptions:T})],[{error:N,result:k}]=await B($);if(d)return{error:N,result:k};if(N)throw new Ws({body:$,error:N,url:g});return k},retryCount:m,retryDelay:u,timeout:x,type:"http"},{fetchOptions:s,url:g})}}function cu(e,t){const n=dr(e),r=gu(e);return Ph({id:n,name:`chain-${n}`,nativeCurrency:{name:r,symbol:r,decimals:18},rpcUrls:{default:{http:t}}})}const ki=new Map;function fb(e,t){return`${dr(e)}:${t.join("|")}`}function db(e){var t;if(e.startsWith("/")&&!e.startsWith("//"))return!0;if(typeof window>"u"||!((t=window.location)!=null&&t.origin))return!1;try{return new URL(e,window.location.href).origin===window.location.origin}catch{return!1}}function lb(e){if(!db(e))return;const t=wu();return Object.keys(t).length?{headers:t}:void 0}function hb(e,t){const n=fb(e,t),r=ki.get(n);if(r)return r;const s=cu(e,t),o=t.length>1,i=rb(t.map(c=>{const f=lb(c);return ub(c,{batch:{batchSize:20,wait:16},timeout:8e3,retryCount:o?0:2,retryDelay:200,...f?{fetchOptions:f}:{}})}),{retryCount:1,retryDelay:250}),a=zp({chain:s,transport:i});return ki.set(n,a),a}function pb(e,t){return tb({chain:e,transport:nb(t)})}class uu extends Error{constructor(n){super("Transaction reverted on-chain");it(this,"txHash");this.name="WalletReceiptRevertedError",this.txHash=n}}class fu extends Error{constructor(n,r,s){const o=r instanceof Error&&r.message?`: ${r.message}`:"";super(`Transaction broadcast but receipt polling failed${o}`);it(this,"txHash");it(this,"txStep");it(this,"cause");this.name="WalletReceiptWaitError",this.txHash=n,this.txStep=s,this.cause=r}}class kn extends Error{constructor(n,r){const s=r instanceof Error&&r.message?`: ${r.message}`:"";super(`Wallet transaction failed during ${n}${s}`);it(this,"txStep");it(this,"cause");this.name="WalletTxStepError",this.txStep=n,this.cause=r}}function Fs(e,t){return e instanceof kn?Fs(e.cause,t):e instanceof I?e.walk(r=>t(r))??void 0:t(e)?e:void 0}function Xn(e,t){if(e instanceof kn)return Xn(e.cause,t);const n=((e instanceof Error?`${e.message} ${e.details??""}`:String(e))??"").toLowerCase();return t.some(r=>n.includes(r))}function Lb(e,t){var i;const n=e instanceof kn?e.txStep:t,r=e instanceof kn?e.cause:e;if(e instanceof uu)return{kind:"reverted_receipt",recoverable:!1,message:"The transaction was mined but reverted on-chain. Nothing was committed; check the explorer."};if(e instanceof fu&&Xn(e,["timed out","timeout","took too long","request timed out"]))return{kind:"rpc_timeout",recoverable:!0,message:"The network didn’t confirm in time — the transaction may still be processing. Re-check before retrying."};if(Fs(e,a=>a instanceof Je)??((r==null?void 0:r.code)===4001?r:void 0))return n==="approve"?{kind:"rejected",recoverable:!0,message:"You rejected the TRAC approval in your wallet. Nothing was committed."}:{kind:"rejected",recoverable:!0,message:"The TRAC allowance is set, but you rejected the next step in your wallet — retry to finish (no new approval needed)."};const o=Fs(e,a=>a instanceof tr);if(o){const a=((i=o.data)==null?void 0:i.errorName)??o.reason??void 0;return a==="PrimaryNodeNotInShardingTable"?{kind:"revert",recoverable:!0,revertName:a,message:"The node you picked is no longer staked — pick another and try again."}:{kind:"revert",recoverable:!1,revertName:a,message:a?`The transaction would revert (${a}).`:"The transaction would revert on-chain."}}return Xn(e,["insufficient funds","insufficient balance for gas"])?{kind:"insufficient_funds",recoverable:!0,message:"This wallet has no native gas to send the transaction — fund it and retry."}:Xn(e,["timed out","timeout","took too long","request timed out"])?{kind:"rpc_timeout",recoverable:!0,message:"The network didn’t confirm in time — the transaction may still be processing. Re-check before retrying."}:{kind:"unknown",recoverable:!1,message:e instanceof Error&&e.message?e.message:"The transaction could not be completed."}}function bb(e,t,n){try{return pt(e.trim())}catch{throw n(`${t} must be a valid EVM address.`)}}function _b(e,t){var i,a;const n=e.getWalletState();if(!n.provider||!n.address)throw t.unavailableError(t.messages.disconnected);const r=e.bootstrap,s=dr(r.chainId);if(n.chainId!==s)throw t.unavailableError(t.messages.wrongNetwork);const o=cu(r.chainId,r.rpcUrls);return{provider:n.provider,account:bb(n.address,"Connected wallet",t.error),expectedChainId:s,chain:o,publicClient:((i=e.publicClientFor)==null?void 0:i.call(e,r.chainId,r.rpcUrls))??hb(r.chainId,r.rpcUrls),walletClient:((a=e.walletClientFromProvider)==null?void 0:a.call(e,o,n.provider))??pb(o,n.provider),bootstrap:r}}async function mb(e,t,n){const r=t.getWalletState();if(r.provider!==e.provider)throw n.abortedError(n.messages.providerChanged);if(!No(r.address,e.account))throw n.abortedError(n.messages.addressChanged);if(r.chainId!==e.expectedChainId)throw n.abortedError(n.messages.networkChanged);const s=await e.provider.request({method:"eth_accounts"});if(!No(s==null?void 0:s[0],e.account))throw n.abortedError(n.messages.accountChanged);const o=await e.provider.request({method:"eth_chainId"});if(parseInt(o,16)!==e.expectedChainId)throw n.abortedError(n.messages.networkChanged)}async function Ub(e,t,n,r,s,o){await mb(e,t,n),o.signing();let i;try{i=await r(e.walletClient)}catch(a){throw o.failed(a),new kn(s,a)}o.submitted(i);try{let a;try{a=await e.publicClient.waitForTransactionReceipt({hash:i})}catch(c){throw new fu(i,c,s)}if(a.status!=="success")throw new uu(i);return o.confirmed(i),{hash:i,receipt:a}}catch(a){throw o.failed(a,i),a}}export{w0 as A,I as B,$u as C,Q as D,_b as E,Ll as F,Sr as G,on as H,Xe as I,L as J,Gt as K,hb as L,an as M,K as N,Ub as O,Oi as P,Au as Q,we as R,Pb as U,vb as W,$0 as a,Bu as b,uu as c,fu as d,wb as e,kn as f,kb as g,ta as h,bb as i,yf as j,qn as k,ee as l,Wt as m,Uf as n,Lb as o,Et as p,zb as q,wa as r,Qe as s,pt as t,Vs as u,ha as v,Zt as w,ge as x,gt as y,ke as z};