@dcl-regenesislabs/mobile-hub 1.0.0-20601593503.commit-26e252e

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 (69) hide show
  1. package/assets/PhArrowCircleDown-BtlNV0TZ.js +14 -0
  2. package/assets/PhArrowClockwise-mOiWYLMV.js +14 -0
  3. package/assets/PhArrowDown-CkoOD89h.js +14 -0
  4. package/assets/PhArrowLeft-C0jlxVhM.js +14 -0
  5. package/assets/PhArrowRight-BI-V03Xf.js +14 -0
  6. package/assets/PhArrowSquareOut-DnQ7n_B4.js +14 -0
  7. package/assets/PhArrowUp-izKvURUW.js +14 -0
  8. package/assets/PhArrowUpRight-Bn-JhHsY.js +14 -0
  9. package/assets/PhArrowsClockwise-Brtx2Re-.js +14 -0
  10. package/assets/PhArrowsDownUp-PZosTqZG.js +14 -0
  11. package/assets/PhArrowsLeftRight-CYsRQ2qh.js +14 -0
  12. package/assets/PhBank-hhPAIPVb.js +14 -0
  13. package/assets/PhBrowser-BjzAmrHO.js +14 -0
  14. package/assets/PhCaretDown-ddSjwcwm.js +14 -0
  15. package/assets/PhCaretLeft-B7YLoNEF.js +14 -0
  16. package/assets/PhCaretRight-BY8D5MIg.js +14 -0
  17. package/assets/PhCaretUp-BG10nSut.js +14 -0
  18. package/assets/PhCheck-DrKd7pBC.js +14 -0
  19. package/assets/PhCircleHalf-Bk9C4DvT.js +14 -0
  20. package/assets/PhClock-Sj17weCB.js +14 -0
  21. package/assets/PhCompass-Df1ugFO-.js +14 -0
  22. package/assets/PhCopy-rgttky8E.js +14 -0
  23. package/assets/PhCreditCard-CZpdid2n.js +14 -0
  24. package/assets/PhCurrencyDollar-B6IKKjue.js +14 -0
  25. package/assets/PhDesktop-BuCDXYJj.js +14 -0
  26. package/assets/PhDeviceMobile-CnybhXY-.js +14 -0
  27. package/assets/PhDotsThree-CSAEcba1.js +14 -0
  28. package/assets/PhEnvelope-SmaNeXoQ.js +14 -0
  29. package/assets/PhFunnelSimple-DKx35ITq.js +14 -0
  30. package/assets/PhGlobe-q1mqj65V.js +14 -0
  31. package/assets/PhIdentificationCard-BeLXJpfZ.js +14 -0
  32. package/assets/PhImage-BYrKfN9k.js +14 -0
  33. package/assets/PhInfo-X33f06Ej.js +14 -0
  34. package/assets/PhLightbulb-DMZJsowR.js +14 -0
  35. package/assets/PhMagnifyingGlass-B6D0sWFL.js +14 -0
  36. package/assets/PhPaperPlaneRight-Dvo-nXr9.js +14 -0
  37. package/assets/PhPlus-CBvZvLax.js +14 -0
  38. package/assets/PhPower-D8-AcNM6.js +14 -0
  39. package/assets/PhPuzzlePiece-C-7mYqGO.js +14 -0
  40. package/assets/PhQrCode-uIXlI5ER.js +14 -0
  41. package/assets/PhQuestion-rUoqC2sC.js +14 -0
  42. package/assets/PhQuestionMark-W55Txvvb.js +14 -0
  43. package/assets/PhSealCheck-BeVLq9PH.js +14 -0
  44. package/assets/PhSignOut-Cq2PivQ6.js +14 -0
  45. package/assets/PhSpinner-CZMtAFdX.js +14 -0
  46. package/assets/PhTrash-BamrmMsN.js +14 -0
  47. package/assets/PhUser-A2fxqIV0.js +14 -0
  48. package/assets/PhVault-B8m1usHw.js +14 -0
  49. package/assets/PhWarning-CpkID9oi.js +14 -0
  50. package/assets/PhWarningCircle-Cm58gXb9.js +14 -0
  51. package/assets/PhX-C3b4cCEy.js +14 -0
  52. package/assets/basic-BqNJI8_e.js +1423 -0
  53. package/assets/core-CHil1RFh.js +217 -0
  54. package/assets/features-C-ekZReg.js +5 -0
  55. package/assets/fortmatic-Fv2dqlKd.js +13 -0
  56. package/assets/index-8e4wv-tH.js +1 -0
  57. package/assets/index-B06SWXYS.js +36 -0
  58. package/assets/index-BH66FyTx.js +23 -0
  59. package/assets/index-Bxs-jmhN.js +15 -0
  60. package/assets/index-CcyN_bjy.css +1 -0
  61. package/assets/index-DoQzB8-2.js +5 -0
  62. package/assets/index-Nz_EXiLp.js +7 -0
  63. package/assets/index-QHMvomuf.js +1 -0
  64. package/assets/index-r-E8-KUv.js +1298 -0
  65. package/assets/property-CnFDNXw5.js +3 -0
  66. package/assets/w3m-modal-DV77a3rm.js +1209 -0
  67. package/index.html +14 -0
  68. package/package.json +22 -0
  69. package/vite.svg +1 -0
@@ -0,0 +1,36 @@
1
+ import{$ as T,a0 as H,a1 as Ye,a2 as hr,a3 as we,a4 as L,a5 as ze,a6 as pr,a7 as io,a8 as He,a9 as $a,aa as Ia,ab as Gn,ac as V,ad as Se,ae as tn,af as Sa,ag as Te,ah as oe,ai as Ta,aj as ka,ak as me,al as Na,am as Fa,an as yr,ao as Ra,ap as Dt,aq as Hn,ar as ts,as as ns,at as rs,au as ss,av as os,aw as is,ax as as,ay as cs,az as Dn,aA as Tt,aB as us,aC as Oa,aD as Wt,aE as fs,aF as Ca,aG as qn,aH as ds,aI as ao,aJ as ls,aK as za,aL as co,aM as bs,aN as La,aO as uo,aP as hs,aQ as _a,aR as ps}from"./core-CHil1RFh.js";import{b1 as V1,b0 as Z1,b2 as W1,b3 as K1,b4 as Y1,aZ as X1,b5 as J1,b6 as Q1,b7 as eb,b8 as tb,b9 as nb,ba as rb,bb as sb,bc as ob,bd as ib,be as ab,bf as cb,bg as ub,aY as fb,a_ as db,bh as lb,a$ as bb,bi as hb,bj as pb,bk as yb,bl as mb,bm as gb,bn as wb,bo as xb,bq as vb,bp as Eb,aS as Pb,aW as Ab,aT as Bb,aX as $b,aV as Ib,br as Sb,aU as Tb,bs as kb}from"./core-CHil1RFh.js";import{_ as fo}from"./index-BH66FyTx.js";import"./index-Bxs-jmhN.js";const Ua="1.2.3";let Q=class Vn extends Error{constructor(t,n={}){const r=n.cause instanceof Vn?n.cause.details:n.cause?.message?n.cause.message:n.details,s=n.cause instanceof Vn&&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@${Ua}`].join(`
2
+ `);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 Fe(e,t){return e.exec(t)?.groups}const lo=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,bo=/^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)?$/,ho=/^\(.+?\).*?$/,ys=/^tuple(?<array>(\[(\d*)\])*)$/;function Zn(e){let t=e.type;if(ys.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+=Zn(o),s<n-1&&(t+=", ")}const r=Fe(ys,e.type);return t+=`)${r?.array||""}`,Zn({...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+=Zn(s),r!==n-1&&(t+=", ")}return t}function Kt(e){return e.type==="function"?`function ${e.name}(${st(e.inputs)})${e.stateMutability&&e.stateMutability!=="nonpayable"?` ${e.stateMutability}`:""}${e.outputs?.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 po=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function Ma(e){return po.test(e)}function ja(e){return Fe(po,e)}const yo=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;function Ga(e){return yo.test(e)}function Ha(e){return Fe(yo,e)}const mo=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;function Da(e){return mo.test(e)}function qa(e){return Fe(mo,e)}const go=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function nn(e){return go.test(e)}function Va(e){return Fe(go,e)}const wo=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;function Za(e){return wo.test(e)}function Wa(e){return Fe(wo,e)}const xo=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;function Ka(e){return xo.test(e)}function Ya(e){return Fe(xo,e)}const Xa=/^receive\(\) external payable$/;function Ja(e){return Xa.test(e)}const ms=new Set(["memory","indexed","storage","calldata"]),Qa=new Set(["indexed"]),Wn=new Set(["calldata","memory","storage"]);class ec extends Q{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 tc extends Q{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 nc extends Q{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 rc extends Q{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 sc extends Q{constructor({param:t}){super("Invalid ABI parameter.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class oc extends Q{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 ic extends Q{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 ac extends Q{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 cc extends Q{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 pt extends Q{constructor({signature:t,type:n}){super(`Invalid ${n} signature.`,{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class uc extends Q{constructor({signature:t}){super("Unknown signature.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class fc extends Q{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 dc extends Q{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 lc extends Q{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 bc(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 En=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 Kn(e,t={}){if(Da(e))return hc(e,t);if(Ga(e))return pc(e,t);if(Ma(e))return yc(e,t);if(Za(e))return mc(e,t);if(Ka(e))return gc(e);if(Ja(e))return{type:"receive",stateMutability:"payable"};throw new uc({signature:e})}function hc(e,t={}){const n=qa(e);if(!n)throw new pt({signature:e,type:"function"});const r=ee(n.parameters),s=[],o=r.length;for(let a=0;a<o;a++)s.push(ke(r[a],{modifiers:Wn,structs:t,type:"function"}));const i=[];if(n.returns){const a=ee(n.returns),c=a.length;for(let u=0;u<c;u++)i.push(ke(a[u],{modifiers:Wn,structs:t,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:s,outputs:i}}function pc(e,t={}){const n=Ha(e);if(!n)throw new pt({signature:e,type:"event"});const r=ee(n.parameters),s=[],o=r.length;for(let i=0;i<o;i++)s.push(ke(r[i],{modifiers:Qa,structs:t,type:"event"}));return{name:n.name,type:"event",inputs:s}}function yc(e,t={}){const n=ja(e);if(!n)throw new pt({signature:e,type:"error"});const r=ee(n.parameters),s=[],o=r.length;for(let i=0;i<o;i++)s.push(ke(r[i],{structs:t,type:"error"}));return{name:n.name,type:"error",inputs:s}}function mc(e,t={}){const n=Wa(e);if(!n)throw new pt({signature:e,type:"constructor"});const r=ee(n.parameters),s=[],o=r.length;for(let i=0;i<o;i++)s.push(ke(r[i],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:s}}function gc(e){const t=Ya(e);if(!t)throw new pt({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}const wc=/^(?<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$_]*))?$/,xc=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,vc=/^u?int$/;function ke(e,t){const n=bc(e,t?.type,t?.structs);if(En.has(n))return En.get(n);const r=ho.test(e),s=Fe(r?xc:wc,e);if(!s)throw new sc({param:e});if(s.name&&Pc(s.name))throw new oc({param:e,name:s.name});const o=s.name?{name:s.name}:{},i=s.modifier==="indexed"?{indexed:!0}:{},a=t?.structs??{};let c,u={};if(r){c="tuple";const d=ee(s.type),l=[],b=d.length;for(let y=0;y<b;y++)l.push(ke(d[y],{structs:a}));u={components:l}}else if(s.type in a)c="tuple",u={components:a[s.type]};else if(vc.test(s.type))c=`${s.type}256`;else if(s.type==="address payable")c="address";else if(c=s.type,t?.type!=="struct"&&!vo(c))throw new nc({type:c});if(s.modifier){if(!t?.modifiers?.has?.(s.modifier))throw new ic({param:e,type:t?.type,modifier:s.modifier});if(Wn.has(s.modifier)&&!Ac(c,!!s.array))throw new ac({param:e,type:t?.type,modifier:s.modifier})}const f={type:`${c}${s.array??""}`,...o,...i,...u};return En.set(n,f),f}function ee(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?ee(a,[...t,n.trim()]):ee(a,t,`${n}${i}`,r);case"(":return ee(a,t,`${n}${i}`,r+1);case")":return ee(a,t,`${n}${i}`,r-1);default:return ee(a,t,`${n}${i}`,r)}}if(n==="")return t;if(r!==0)throw new lc({current:n,depth:r});return t.push(n.trim()),t}function vo(e){return e==="address"||e==="bool"||e==="function"||e==="string"||lo.test(e)||bo.test(e)}const Ec=/^(?: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 Pc(e){return e==="address"||e==="bool"||e==="function"||e==="string"||e==="tuple"||lo.test(e)||bo.test(e)||Ec.test(e)}function Ac(e,t){return t||e==="bytes"||e==="string"||e==="tuple"}function mr(e){const t={},n=e.length;for(let i=0;i<n;i++){const a=e[i];if(!nn(a))continue;const c=Va(a);if(!c)throw new pt({signature:a,type:"struct"});const u=c.properties.split(";"),f=[],d=u.length;for(let l=0;l<d;l++){const y=u[l].trim();if(!y)continue;const p=ke(y,{type:"struct"});f.push(p)}if(!f.length)throw new fc({signature:a});t[c.name]=f}const r={},s=Object.entries(t),o=s.length;for(let i=0;i<o;i++){const[a,c]=s[i];r[a]=Eo(c,t)}return r}const Bc=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function Eo(e=[],t={},n=new Set){const r=[],s=e.length;for(let o=0;o<s;o++){const i=e[o];if(ho.test(i.type))r.push(i);else{const c=Fe(Bc,i.type);if(!c?.type)throw new cc({abiParameter:i});const{array:u,type:f}=c;if(f in t){if(n.has(f))throw new dc({type:f});r.push({...i,type:`tuple${u??""}`,components:Eo(t[f],t,new Set([...n,f]))})}else if(vo(f))r.push(i);else throw new tc({type:f})}}return r}function Po(e){const t=mr(e),n=[],r=e.length;for(let s=0;s<r;s++){const o=e[s];nn(o)||n.push(Kn(o,t))}return n}function gs(e){let t;if(typeof e=="string")t=Kn(e);else{const n=mr(e),r=e.length;for(let s=0;s<r;s++){const o=e[s];if(!nn(o)){t=Kn(o,n);break}}}if(!t)throw new ec({signature:e});return t}function ws(e){const t=[];if(typeof e=="string"){const n=ee(e),r=n.length;for(let s=0;s<r;s++)t.push(ke(n[s],{modifiers:ms}))}else{const n=mr(e),r=e.length;for(let s=0;s<r;s++){const o=e[s];if(nn(o))continue;const i=ee(o),a=i.length;for(let c=0;c<a;c++)t.push(ke(i[c],{modifiers:ms,structs:n}))}}if(t.length===0)throw new rc({params:e});return t}function z(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 ue(e,{includeName:t=!1}={}){if(e.type!=="function"&&e.type!=="event"&&e.type!=="error")throw new Uc(e.type);return`${e.name}(${rn(e.inputs,{includeName:t})})`}function rn(e,{includeName:t=!1}={}){return e?e.map(n=>$c(n,{includeName:t})).join(t?", ":","):""}function $c(e,{includeName:t}){return e.type.startsWith("tuple")?`(${rn(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:"")}class Ic extends T{constructor({docsPath:t}){super(["A constructor was not found on the ABI.","Make sure you are using the correct ABI and that the constructor exists on it."].join(`
3
+ `),{docsPath:t,name:"AbiConstructorNotFoundError"})}}class xs extends T{constructor({docsPath:t}){super(["Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.","Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists."].join(`
4
+ `),{docsPath:t,name:"AbiConstructorParamsNotFoundError"})}}class Ao extends T{constructor({data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for given parameters.`].join(`
5
+ `),{metaMessages:[`Params: (${rn(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 kt extends T{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError"})}}class Sc extends T{constructor({expectedLength:t,givenLength:n,type:r}){super([`ABI encoding array length mismatch for type ${r}.`,`Expected length: ${t}`,`Given length: ${n}`].join(`
6
+ `),{name:"AbiEncodingArrayLengthMismatchError"})}}class Tc extends T{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${H(n)}) does not match expected size (bytes${t}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class kc extends T{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${n}`].join(`
7
+ `),{name:"AbiEncodingLengthMismatchError"})}}class Nc extends T{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(`
8
+ `),{docsPath:n,name:"AbiErrorInputsNotFoundError"})}}class vs extends T{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(`
9
+ `),{docsPath:n,name:"AbiErrorNotFoundError"})}}class Bo extends T{constructor(t,{docsPath:n}){super([`Encoded error signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${t}.`].join(`
10
+ `),{docsPath:n,name:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=t}}class Fc extends T{constructor({docsPath:t}){super("Cannot extract event signature from empty topics.",{docsPath:t,name:"AbiEventSignatureEmptyTopicsError"})}}class Rc extends T{constructor(t,{docsPath:n}){super([`Encoded event signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${t}.`].join(`
11
+ `),{docsPath:n,name:"AbiEventSignatureNotFoundError"})}}class Es extends T{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(`
12
+ `),{docsPath:n,name:"AbiEventNotFoundError"})}}class ft extends T{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(`
13
+ `),{docsPath:n,name:"AbiFunctionNotFoundError"})}}class $o extends T{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(`
14
+ `),{docsPath:n,name:"AbiFunctionOutputsNotFoundError"})}}class Oc extends T{constructor(t,{docsPath:n}){super([`Encoded function signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${t}.`].join(`
15
+ `),{docsPath:n,name:"AbiFunctionSignatureNotFoundError"})}}class Cc extends T{constructor(t,n){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${t.type}\` in \`${ue(t.abiItem)}\`, and`,`\`${n.type}\` in \`${ue(n.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}let zc=class extends T{constructor({expectedSize:t,givenSize:n}){super(`Expected bytes${t}, got bytes${n}.`,{name:"BytesSizeMismatchError"})}};class Yt extends T{constructor({abiItem:t,data:n,params:r,size:s}){super([`Data size of ${s} bytes is too small for non-indexed event parameters.`].join(`
16
+ `),{metaMessages:[`Params: (${rn(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 gr extends T{constructor({abiItem:t,param:n}){super([`Expected a topic for indexed event parameter${n.name?` "${n.name}"`:""} on event "${ue(t,{includeName:!0})}".`].join(`
17
+ `),{name:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t}}class Lc extends T{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
18
+ `),{docsPath:n,name:"InvalidAbiEncodingType"})}}class _c extends T{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(`
19
+ `),{docsPath:n,name:"InvalidAbiDecodingType"})}}let Io=class extends T{constructor(t){super([`Value "${t}" is not a valid array.`].join(`
20
+ `),{name:"InvalidArrayError"})}};class Uc extends T{constructor(t){super([`"${t}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(`
21
+ `),{name:"InvalidDefinitionTypeError"})}}class Mc extends T{constructor(t){super(`Filter type "${t}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}const jc=new TextEncoder;function yt(e,t={}){return typeof e=="number"||typeof e=="bigint"?Hc(e,t):typeof e=="boolean"?Gc(e,t):we(e)?xe(e,t):De(e,t)}function Gc(e,t={}){const n=new Uint8Array(1);return n[0]=Number(e),typeof t.size=="number"?(Ye(n,{size:t.size}),hr(n,{size:t.size})):n}const ve={zero:48,nine:57,A:65,F:70,a:97,f:102};function Ps(e){if(e>=ve.zero&&e<=ve.nine)return e-ve.zero;if(e>=ve.A&&e<=ve.F)return e-(ve.A-10);if(e>=ve.a&&e<=ve.f)return e-(ve.a-10)}function xe(e,t={}){let n=e;t.size&&(Ye(n,{size:t.size}),n=hr(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=Ps(r.charCodeAt(a++)),u=Ps(r.charCodeAt(a++));if(c===void 0||u===void 0)throw new T(`Invalid byte sequence ("${r[a-2]}${r[a-1]}" in "${r}").`);o[i]=c*16+u}return o}function Hc(e,t){const n=L(e,t);return xe(n)}function De(e,t={}){const n=jc.encode(e);return typeof t.size=="number"?(Ye(n,{size:t.size}),hr(n,{dir:"right",size:t.size})):n}const qt=BigInt(2**32-1),As=BigInt(32);function Dc(e,t=!1){return t?{h:Number(e&qt),l:Number(e>>As&qt)}:{h:Number(e>>As&qt)|0,l:Number(e&qt)|0}}function qc(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}=Dc(e[o],t);[r[o],s[o]]=[i,a]}return[r,s]}const Vc=(e,t,n)=>e<<n|t>>>32-n,Zc=(e,t,n)=>t<<n|e>>>32-n,Wc=(e,t,n)=>t<<n-32|e>>>64-n,Kc=(e,t,n)=>e<<n-32|t>>>64-n,nt=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Yc(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function At(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function Ve(e,...t){if(!Yc(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 Xc(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");At(e.outputLen),At(e.blockLen)}function dt(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 So(e,t){Ve(e);const n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function Jc(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function lt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Pn(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function pe(e,t){return e<<32-t|e>>>t}const Qc=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function e0(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function t0(e){for(let t=0;t<e.length;t++)e[t]=e0(e[t]);return e}const Bs=Qc?e=>e:t0;function n0(e){if(typeof e!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function sn(e){return typeof e=="string"&&(e=n0(e)),Ve(e),e}function r0(...e){let t=0;for(let r=0;r<e.length;r++){const s=e[r];Ve(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 wr{}function To(e){const t=r=>e().update(sn(r)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function s0(e=32){if(nt&&typeof nt.getRandomValues=="function")return nt.getRandomValues(new Uint8Array(e));if(nt&&typeof nt.randomBytes=="function")return Uint8Array.from(nt.randomBytes(e));throw new Error("crypto.getRandomValues must be defined")}const o0=BigInt(0),Et=BigInt(1),i0=BigInt(2),a0=BigInt(7),c0=BigInt(256),u0=BigInt(113),ko=[],No=[],Fo=[];for(let e=0,t=Et,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ko.push(2*(5*r+n)),No.push((e+1)*(e+2)/2%64);let s=o0;for(let o=0;o<7;o++)t=(t<<Et^(t>>a0)*u0)%c0,t&i0&&(s^=Et<<(Et<<BigInt(o))-Et);Fo.push(s)}const Ro=qc(Fo,!0),f0=Ro[0],d0=Ro[1],$s=(e,t,n)=>n>32?Wc(e,t,n):Vc(e,t,n),Is=(e,t,n)=>n>32?Kc(e,t,n):Zc(e,t,n);function l0(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,u=n[c],f=n[c+1],d=$s(u,f,1)^n[a],l=Is(u,f,1)^n[a+1];for(let b=0;b<50;b+=10)e[i+b]^=d,e[i+b+1]^=l}let s=e[2],o=e[3];for(let i=0;i<24;i++){const a=No[i],c=$s(s,o,a),u=Is(s,o,a),f=ko[i];s=e[f],o=e[f+1],e[f]=c,e[f+1]=u}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]^=f0[r],e[1]^=d0[r]}lt(n)}class xr extends wr{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,At(r),!(0<t&&t<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=Jc(this.state)}clone(){return this._cloneInto()}keccak(){Bs(this.state32),l0(this.state32,this.rounds),Bs(this.state32),this.posOut=0,this.pos=0}update(t){dt(this),t=sn(t),Ve(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){dt(this,!1),Ve(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 At(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(So(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,lt(this.state)}_cloneInto(t){const{blockLen:n,suffix:r,outputLen:s,rounds:o,enableXOF:i}=this;return t||(t=new xr(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 b0=(e,t,n)=>To(()=>new xr(t,e,n)),Oo=b0(1,136,256/8);function q(e,t){const n=t||"hex",r=Oo(we(e,{strict:!1})?yt(e):e);return n==="bytes"?r:ze(r)}const h0=e=>q(yt(e));function p0(e){return h0(e)}function y0(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 T("Unable to normalize signature.");return s}const m0=e=>{const t=typeof e=="string"?e:Kt(e);return y0(t)};function Co(e){return p0(m0(e))}const on=Co;let Le=class extends T{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"})}};const An=new pr(8192);function an(e,t){if(An.has(`${e}.${t}`))return An.get(`${e}.${t}`);const n=e.substring(2).toLowerCase(),r=q(De(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 An.set(`${e}.${t}`,o),o}function zo(e,t){if(!ie(e,{strict:!1}))throw new Le({address:e});return an(e,t)}const g0=/^0x[a-fA-F0-9]{40}$/,Bn=new pr(8192);function ie(e,t){const{strict:n=!0}=t??{},r=`${e}.${n}`;if(Bn.has(r))return Bn.get(r);const s=g0.test(e)?e.toLowerCase()===e?!0:n?an(e)===e:!0:!1;return Bn.set(r,s),s}function fe(e){return typeof e[0]=="string"?mt(e):w0(e)}function w0(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 mt(e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function bt(e,t,n,{strict:r}={}){return we(e,{strict:!1})?x0(e,t,n,{strict:r}):Uo(e,t,n,{strict:r})}function Lo(e,t){if(typeof t=="number"&&t>0&&t>H(e)-1)throw new io({offset:t,position:"start",size:H(e)})}function _o(e,t,n){if(typeof t=="number"&&typeof n=="number"&&H(e)!==n-t)throw new io({offset:n,position:"end",size:H(e)})}function Uo(e,t,n,{strict:r}={}){Lo(e,t);const s=e.slice(t,n);return r&&_o(s,t,n),s}function x0(e,t,n,{strict:r}={}){Lo(e,t);const s=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return r&&_o(s,t,n),s}const v0=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Mo=/^(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 Ue(e,t){if(e.length!==t.length)throw new kc({expectedLength:e.length,givenLength:t.length});const n=E0({params:e,values:t}),r=Er(n);return r.length===0?"0x":r}function E0({params:e,values:t}){const n=[];for(let r=0;r<e.length;r++)n.push(vr({param:e[r],value:t[r]}));return n}function vr({param:e,value:t}){const n=Pr(e.type);if(n){const[r,s]=n;return A0(t,{length:r,param:{...e,type:s}})}if(e.type==="tuple")return T0(t,{param:e});if(e.type==="address")return P0(t);if(e.type==="bool")return $0(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){const r=e.type.startsWith("int"),[,,s="256"]=Mo.exec(e.type)??[];return I0(t,{signed:r,size:Number(s)})}if(e.type.startsWith("bytes"))return B0(t,{param:e});if(e.type==="string")return S0(t);throw new Lc(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function Er(e){let t=0;for(let o=0;o<e.length;o++){const{dynamic:i,encoded:a}=e[o];i?t+=32:t+=H(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+=H(a)):n.push(a)}return fe([...n,...r])}function P0(e){if(!ie(e))throw new Le({address:e});return{dynamic:!1,encoded:He(e.toLowerCase())}}function A0(e,{length:t,param:n}){const r=t===null;if(!Array.isArray(e))throw new Io(e);if(!r&&e.length!==t)throw new Sc({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let s=!1;const o=[];for(let i=0;i<e.length;i++){const a=vr({param:n,value:e[i]});a.dynamic&&(s=!0),o.push(a)}if(r||s){const i=Er(o);if(r){const a=L(o.length,{size:32});return{dynamic:!0,encoded:o.length>0?fe([a,i]):a}}if(s)return{dynamic:!0,encoded:i}}return{dynamic:!1,encoded:fe(o.map(({encoded:i})=>i))}}function B0(e,{param:t}){const[,n]=t.type.split("bytes"),r=H(e);if(!n){let s=e;return r%32!==0&&(s=He(s,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:fe([He(L(r,{size:32})),s])}}if(r!==Number.parseInt(n,10))throw new Tc({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:He(e,{dir:"right"})}}function $0(e){if(typeof e!="boolean")throw new T(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:He($a(e))}}function I0(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 Ia({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 S0(e){const t=Gn(e),n=Math.ceil(H(t)/32),r=[];for(let s=0;s<n;s++)r.push(He(bt(t,s*32,(s+1)*32),{dir:"right"}));return{dynamic:!0,encoded:fe([He(L(H(t),{size:32})),...r])}}function T0(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=vr({param:o,value:e[i]});r.push(a),a.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Er(r):fe(r.map(({encoded:s})=>s))}}function Pr(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}const Nt=e=>bt(Co(e),0,4);function Xe(e){const{abi:t,args:n=[],name:r}=e,s=we(r,{strict:!1}),o=t.filter(a=>s?a.type==="function"?Nt(a)===r:a.type==="event"?on(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((u,f)=>{const d="inputs"in a&&a.inputs[f];return d?Yn(u,d):!1})){if(i&&"inputs"in i&&i.inputs){const u=jo(a.inputs,i.inputs,n);if(u)throw new Cc({abiItem:a,type:u[0]},{abiItem:i,type:u[1]})}i=a}}return i||o[0]}function Yn(e,t){const n=typeof e,r=t.type;switch(r){case"address":return ie(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)=>Yn(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=>Yn(s,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function jo(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 jo(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")?ie(n[r],{strict:!1}):i.includes("address")&&i.includes("bytes")?ie(n[r],{strict:!1}):!1)return i}}const Ss="/docs/contract/encodeEventTopics";function Ft(e){const{abi:t,eventName:n,args:r}=e;let s=t[0];if(n){const c=Xe({abi:t,name:n});if(!c)throw new Es(n,{docsPath:Ss});s=c}if(s.type!=="event")throw new Es(void 0,{docsPath:Ss});const o=ue(s),i=on(o);let a=[];if(r&&"inputs"in s){const c=s.inputs?.filter(f=>"indexed"in f&&f.indexed),u=Array.isArray(r)?r:Object.values(r).length>0?c?.map(f=>r[f.name])??[]:[];u.length>0&&(a=c?.map((f,d)=>Array.isArray(u[d])?u[d].map((l,b)=>Ts({param:f,value:u[d][b]})):typeof u[d]<"u"&&u[d]!==null?Ts({param:f,value:u[d]}):null)??[])}return[i,...a]}function Ts({param:e,value:t}){if(e.type==="string"||e.type==="bytes")return q(yt(t));if(e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/))throw new Mc(e.type);return Ue([e],[t])}function cn(e,{method:t}){const n={};return e.transport.type==="fallback"&&e.transport.onResponse?.(({method:r,response:s,status:o,transport:i})=>{o==="success"&&t===r&&(n[s]=i.request)}),(r=>n[r]||e.request)}async function Go(e,t){const{address:n,abi:r,args:s,eventName:o,fromBlock:i,strict:a,toBlock:c}=t,u=cn(e,{method:"eth_newFilter"}),f=o?Ft({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:f}]});return{abi:r,args:s,eventName:o,id:d,request:u(d),strict:!!a,type:"event"}}function te(e){return typeof e=="string"?{address:e,type:"json-rpc"}:e}const ks="/docs/contract/encodeFunctionData";function k0(e){const{abi:t,args:n,functionName:r}=e;let s=t[0];if(r){const o=Xe({abi:t,args:n,name:r});if(!o)throw new ft(r,{docsPath:ks});s=o}if(s.type!=="function")throw new ft(void 0,{docsPath:ks});return{abi:[s],functionName:Nt(ue(s))}}function he(e){const{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith("0x")?e:k0(e),s=n[0],o=r,i="inputs"in s&&s.inputs?Ue(s.inputs,t??[]):void 0;return mt([o,i??"0x"])}const N0={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."},Ho={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},F0={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};let Ns=class extends T{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`,{name:"NegativeOffsetError"})}},Do=class extends T{constructor({length:t,position:n}){super(`Position \`${n}\` is out of bounds (\`0 < position < ${t}\`).`,{name:"PositionOutOfBoundsError"})}},R0=class extends T{constructor({count:t,limit:n}){super(`Recursive read limit of \`${n}\` exceeded (recursive read count: \`${t}\`).`,{name:"RecursiveReadLimitExceededError"})}};const O0={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 R0({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Do({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Ns({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 Ns({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 Ar(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(O0);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}function C0(e,t={}){typeof t.size<"u"&&Ye(e,{size:t.size});const n=V(e,t);return Te(n,t)}function z0(e,t={}){let n=e;if(typeof t.size<"u"&&(Ye(n,{size:t.size}),n=tn(n)),n.length>1||n[0]>1)throw new Sa(n);return!!n[0]}function $e(e,t={}){typeof t.size<"u"&&Ye(e,{size:t.size});const n=V(e,t);return Se(n,t)}function L0(e,t={}){let n=e;return typeof t.size<"u"&&(Ye(n,{size:t.size}),n=tn(n,{dir:"right"})),new TextDecoder().decode(n)}function Rt(e,t){const n=typeof t=="string"?xe(t):t,r=Ar(n);if(H(n)===0&&e.length>0)throw new kt;if(H(t)&&H(t)<32)throw new Ao({data:typeof t=="string"?t:V(t),params:e,size:H(t)});let s=0;const o=[];for(let i=0;i<e.length;++i){const a=e[i];r.setPosition(s);const[c,u]=at(r,a,{staticPosition:0});s+=u,o.push(c)}return o}function at(e,t,{staticPosition:n}){const r=Pr(t.type);if(r){const[s,o]=r;return U0(e,{...t,type:o},{length:s,staticPosition:n})}if(t.type==="tuple")return H0(e,t,{staticPosition:n});if(t.type==="address")return _0(e);if(t.type==="bool")return M0(e);if(t.type.startsWith("bytes"))return j0(e,t,{staticPosition:n});if(t.type.startsWith("uint")||t.type.startsWith("int"))return G0(e,t);if(t.type==="string")return D0(e,{staticPosition:n});throw new _c(t.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const Fs=32,Xn=32;function _0(e){const t=e.readBytes(32);return[an(V(Uo(t,-20))),32]}function U0(e,t,{length:n,staticPosition:r}){if(!n){const i=$e(e.readBytes(Xn)),a=r+i,c=a+Fs;e.setPosition(a);const u=$e(e.readBytes(Fs)),f=Bt(t);let d=0;const l=[];for(let b=0;b<u;++b){e.setPosition(c+(f?b*32:d));const[y,p]=at(e,t,{staticPosition:c});d+=p,l.push(y)}return e.setPosition(r+32),[l,32]}if(Bt(t)){const i=$e(e.readBytes(Xn)),a=r+i,c=[];for(let u=0;u<n;++u){e.setPosition(a+u*32);const[f]=at(e,t,{staticPosition:a});c.push(f)}return e.setPosition(r+32),[c,32]}let s=0;const o=[];for(let i=0;i<n;++i){const[a,c]=at(e,t,{staticPosition:r+s});s+=c,o.push(a)}return[o,s]}function M0(e){return[z0(e.readBytes(32),{size:32}),32]}function j0(e,t,{staticPosition:n}){const[r,s]=t.type.split("bytes");if(!s){const i=$e(e.readBytes(32));e.setPosition(n+i);const a=$e(e.readBytes(32));if(a===0)return e.setPosition(n+32),["0x",32];const c=e.readBytes(a);return e.setPosition(n+32),[V(c),32]}return[V(e.readBytes(Number.parseInt(s,10),32)),32]}function G0(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?C0(s,{signed:n}):$e(s,{signed:n}),32]}function H0(e,t,{staticPosition:n}){const r=t.components.length===0||t.components.some(({name:i})=>!i),s=r?[]:{};let o=0;if(Bt(t)){const i=$e(e.readBytes(Xn)),a=n+i;for(let c=0;c<t.components.length;++c){const u=t.components[c];e.setPosition(a+o);const[f,d]=at(e,u,{staticPosition:a});o+=d,s[r?c:u?.name]=f}return e.setPosition(n+32),[s,32]}for(let i=0;i<t.components.length;++i){const a=t.components[i],[c,u]=at(e,a,{staticPosition:n});s[r?i:a?.name]=c,o+=u}return[s,o]}function D0(e,{staticPosition:t}){const n=$e(e.readBytes(32)),r=t+n;e.setPosition(r);const s=$e(e.readBytes(32));if(s===0)return e.setPosition(t+32),["",32];const o=e.readBytes(s,32),i=L0(tn(o));return e.setPosition(t+32),[i,32]}function Bt(e){const{type:t}=e;if(t==="string"||t==="bytes"||t.endsWith("[]"))return!0;if(t==="tuple")return e.components?.some(Bt);const n=Pr(e.type);return!!(n&&Bt({...e,type:n[1]}))}function qo(e){const{abi:t,data:n}=e,r=bt(n,0,4);if(r==="0x")throw new kt;const o=[...t||[],Ho,F0].find(i=>i.type==="error"&&r===Nt(ue(i)));if(!o)throw new Bo(r,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:o,args:"inputs"in o&&o.inputs&&o.inputs.length>0?Rt(o.inputs,bt(n,4)):void 0,errorName:o.name}}function Vo({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"?oe(t[o]):t[o]}`).join(", ")})`}function Br(e,t="wei"){return Ta(e,ka[t])}class q0 extends T{constructor({address:t}){super(`State for account "${t}" is set multiple times.`,{name:"AccountStateConflictError"})}}class V0 extends T{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function Rs(e){return e.reduce((t,{slot:n,value:r})=>`${t} ${n}: ${r}
22
+ `,"")}function Z0(e){return e.reduce((t,{address:n,...r})=>{let s=`${t} ${n}:
23
+ `;return r.nonce&&(s+=` nonce: ${r.nonce}
24
+ `),r.balance&&(s+=` balance: ${r.balance}
25
+ `),r.code&&(s+=` code: ${r.code}
26
+ `),r.state&&(s+=` state:
27
+ `,s+=Rs(r.state)),r.stateDiff&&(s+=` stateDiff:
28
+ `,s+=Rs(r.stateDiff)),s},` State Override:
29
+ `).slice(0,-1)}function Ot(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(`
30
+ `)}class W0 extends T{constructor({transaction:t}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",Ot(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 K0 extends T{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:i,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:f,to:d,value:l}){const b=Ot({chain:s&&`${s?.name} (id: ${s?.id})`,from:n?.address,to:d,value:typeof l<"u"&&`${Br(l)} ${s?.nativeCurrency?.symbol||"ETH"}`,data:o,gas:i,gasPrice:typeof a<"u"&&`${me(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${me(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${me(u)} gwei`,nonce:f});super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Request Arguments:",b].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class Zo extends T{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 Wo extends T{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 Y0 extends T{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 X0 extends T{constructor({hash:t}){super(`Timed out while waiting for transaction with hash "${t}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}class Ko extends T{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:i,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:f,to:d,value:l,stateOverride:b}){const y=n?te(n):void 0;let p=Ot({from:y?.address,to:d,value:typeof l<"u"&&`${Br(l)} ${s?.nativeCurrency?.symbol||"ETH"}`,data:o,gas:i,gasPrice:typeof a<"u"&&`${me(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${me(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${me(u)} gwei`,nonce:f});b&&(p+=`
31
+ ${Z0(b)}`),super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Raw Call Arguments:",p].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}class Yo extends T{constructor(t,{abi:n,args:r,contractAddress:s,docsPath:o,functionName:i,sender:a}){const c=Xe({abi:n,args:r,name:i}),u=c?Vo({abiItem:c,args:r,includeFunctionName:!1,includeName:!1}):void 0,f=c?ue(c,{includeName:!0}):void 0,d=Ot({address:s&&Na(s),function:f,args:u&&u!=="()"&&`${[...Array(i?.length??0).keys()].map(()=>" ").join("")}${u}`,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 Jn extends T{constructor({abi:t,data:n,functionName:r,message:s}){let o,i,a,c;if(n&&n!=="0x")try{i=qo({abi:t,data:n});const{abiItem:f,errorName:d,args:l}=i;if(d==="Error")c=l[0];else if(d==="Panic"){const[b]=l;c=N0[b]}else{const b=f?ue(f,{includeName:!0}):void 0,y=f&&l?Vo({abiItem:f,args:l,includeFunctionName:!1,includeName:!1}):void 0;a=[b?`Error: ${b}`:"",y&&y!=="()"?` ${[...Array(d?.length??0).keys()].map(()=>" ").join("")}${y}`:""]}}catch(f){o=f}else s&&(c=s);let u;o instanceof Bo&&(u=o.signature,a=[`Unable to decode signature "${u}" as it was not found on the provided ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${u}.`]),super(c&&c!=="execution reverted"||u?[`The contract function "${r}" reverted with the following ${u?"signature":"reason"}:`,c||u].join(`
32
+ `):`The contract function "${r}" reverted.`,{cause:o,metaMessages:a,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=i,this.raw=n,this.reason=c,this.signature=u}}class J0 extends T{constructor({functionName:t}){super(`The contract function "${t}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${t}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError"})}}class Q0 extends T{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 un extends T{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}}const eu=3;function ht(e,{abi:t,address:n,args:r,docsPath:s,functionName:o,sender:i}){const a=e instanceof un?e:e instanceof T?e.walk(y=>"data"in y)||e.walk():{},{code:c,data:u,details:f,message:d,shortMessage:l}=a,b=e instanceof kt?new J0({functionName:o}):[eu,Fa.code].includes(c)&&(u||f||d||l)||c===yr.code&&f==="execution reverted"&&u?new Jn({abi:t,data:typeof u=="object"?u.data:u,functionName:o,message:a instanceof Ra?f:l??d}):e;return new Yo(b,{abi:t,args:r,contractAddress:n,docsPath:s,functionName:o,sender:i})}function tu(e){const t=q(`0x${e.substring(4)}`).substring(26);return an(`0x${t}`)}async function nu({hash:e,signature:t}){const n=we(e)?e:ze(e),{secp256k1:r}=await fo(async()=>{const{secp256k1:i}=await Promise.resolve().then(()=>kl);return{secp256k1:i}},void 0);return`0x${(()=>{if(typeof t=="object"&&"r"in t&&"s"in t){const{r:u,s:f,v:d,yParity:l}=t,b=Number(l??d),y=Os(b);return new r.Signature(Te(u),Te(f)).addRecoveryBit(y)}const i=we(t)?t:ze(t);if(H(i)!==65)throw new Error("invalid signature length");const a=Se(`0x${i.slice(130)}`),c=Os(a);return r.Signature.fromCompact(i.substring(2,130)).addRecoveryBit(c)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Os(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 Xo({hash:e,signature:t}){return tu(await nu({hash:e,signature:t}))}function ru(e,t="hex"){const n=Jo(e),r=Ar(new Uint8Array(n.length));return n.encode(r),t==="hex"?V(r.bytes):r.bytes}function Jo(e){return Array.isArray(e)?su(e.map(t=>Jo(t))):ou(e)}function su(e){const t=e.reduce((s,o)=>s+o.length,0),n=Qo(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 ou(e){const t=typeof e=="string"?xe(e):e,n=Qo(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 Qo(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 T("Length is too large.")}function iu(e){const{chainId:t,nonce:n,to:r}=e,s=e.contractAddress??e.address,o=q(mt(["0x05",ru([t?L(t):"0x",s,n?L(n):"0x"])]));return r==="bytes"?xe(o):o}async function ei(e){const{authorization:t,signature:n}=e;return Xo({hash:iu(t),signature:n??t})}class au extends T{constructor(t,{account:n,docsPath:r,chain:s,data:o,gas:i,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:f,to:d,value:l}){const b=Ot({from:n?.address,to:d,value:typeof l<"u"&&`${Br(l)} ${s?.nativeCurrency?.symbol||"ETH"}`,data:o,gas:i,gasPrice:typeof a<"u"&&`${me(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${me(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${me(u)} gwei`,nonce:f});super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Estimate Gas Arguments:",b].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t}}function fn(e,t){const n=(e.details||"").toLowerCase(),r=e instanceof T?e.walk(s=>s?.code===Dt.code):e;return r instanceof T?new Dt({cause:e,message:r.details}):Dt.nodeMessage.test(n)?new Dt({cause:e,message:e.details}):Hn.nodeMessage.test(n)?new Hn({cause:e,maxFeePerGas:t?.maxFeePerGas}):ts.nodeMessage.test(n)?new ts({cause:e,maxFeePerGas:t?.maxFeePerGas}):ns.nodeMessage.test(n)?new ns({cause:e,nonce:t?.nonce}):rs.nodeMessage.test(n)?new rs({cause:e,nonce:t?.nonce}):ss.nodeMessage.test(n)?new ss({cause:e,nonce:t?.nonce}):os.nodeMessage.test(n)?new os({cause:e}):is.nodeMessage.test(n)?new is({cause:e,gas:t?.gas}):as.nodeMessage.test(n)?new as({cause:e,gas:t?.gas}):cs.nodeMessage.test(n)?new cs({cause:e}):Dn.nodeMessage.test(n)?new Dn({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new Tt({cause:e})}function cu(e,{docsPath:t,...n}){const r=(()=>{const s=fn(e,n);return s instanceof Tt?e:s})();return new au(r,{docsPath:t,...n})}function dn(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 uu={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function Ct(e,t){const n={};return typeof e.authorizationList<"u"&&(n.authorizationList=fu(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=>V(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=uu[e.type]),typeof e.value<"u"&&(n.value=L(e.value)),n}function fu(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 Cs(e){if(!(!e||e.length===0))return e.reduce((t,{slot:n,value:r})=>{if(n.length!==66)throw new us({size:n.length,targetSize:66,type:"hex"});if(r.length!==66)throw new us({size:r.length,targetSize:66,type:"hex"});return t[n]=r,t},{})}function du(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=Cs(r)),s!==void 0){if(i.state)throw new V0;i.stateDiff=Cs(s)}return i}function $r(e){if(!e)return;const t={};for(const{address:n,...r}of e){if(!ie(n,{strict:!1}))throw new Le({address:n});if(t[n])throw new q0({address:n});t[n]=du(r)}return t}const lu=2n**256n-1n;function gt(e){const{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:s}=e,o=t?te(t):void 0;if(o&&!ie(o.address))throw new Le({address:o.address});if(s&&!ie(s))throw new Le({address:s});if(n&&n>lu)throw new Hn({maxFeePerGas:n});if(r&&n&&r>n)throw new Dn({maxFeePerGas:n,maxPriorityFeePerGas:r})}class ti extends T{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class Ir extends T{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class bu extends T{constructor({maxPriorityFeePerGas:t}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${me(t)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class ni extends T{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 ri={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function Sr(e,t){const n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?Se(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?Se(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?ri[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=hu(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 hu(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 si(e,t){const n=(e.transactions??[]).map(r=>typeof r=="string"?r:Sr(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 ce(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest",includeTransactions:s}={}){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 ni({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||si)(a,"getBlock")}async function Tr(e){const t=await e.request({method:"eth_gasPrice"});return BigInt(t)}async function pu(e,t){return oi(e,t)}async function oi(e,t){const{block:n,chain:r=e.chain,request:s}=t||{};try{const o=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof o=="function"){const a=n||await z(e,ce,"getBlock")({}),c=await o({block:a,client:e,request:s});if(c===null)throw new Error;return c}if(typeof o<"u")return o;const i=await e.request({method:"eth_maxPriorityFeePerGas"});return Te(i)}catch{const[o,i]=await Promise.all([n?Promise.resolve(n):z(e,ce,"getBlock")({}),z(e,Tr,"getGasPrice")({})]);if(typeof o.baseFeePerGas!="bigint")throw new Ir;const a=i-o.baseFeePerGas;return a<0n?0n:a}}async function yu(e,t){return Qn(e,t)}async function Qn(e,t){const{block:n,chain:r=e.chain,request:s,type:o="eip1559"}=t||{},i=await(async()=>typeof r?.fees?.baseFeeMultiplier=="function"?r.fees.baseFeeMultiplier({block:n,client:e,request:s}):r?.fees?.baseFeeMultiplier??1.2)();if(i<1)throw new ti;const c=10**(i.toString().split(".")[1]?.length??0),u=l=>l*BigInt(Math.ceil(i*c))/BigInt(c),f=n||await z(e,ce,"getBlock")({});if(typeof r?.fees?.estimateFeesPerGas=="function"){const l=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:u,request:s,type:o});if(l!==null)return l}if(o==="eip1559"){if(typeof f.baseFeePerGas!="bigint")throw new Ir;const l=typeof s?.maxPriorityFeePerGas=="bigint"?s.maxPriorityFeePerGas:await oi(e,{block:f,chain:r,request:s}),b=u(f.baseFeePerGas);return{maxFeePerGas:s?.maxFeePerGas??b+l,maxPriorityFeePerGas:l}}return{gasPrice:s?.gasPrice??u(await z(e,Tr,"getGasPrice")({}))}}async function ii(e,{address:t,blockTag:n="latest",blockNumber:r}){const s=await e.request({method:"eth_getTransactionCount",params:[t,typeof r=="bigint"?L(r):n]},{dedupe:!!r});return Se(s)}function ai(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=>xe(o)):e.blobs,s=[];for(const o of r)s.push(Uint8Array.from(t.blobToKzgCommitment(o)));return n==="bytes"?s:s.map(o=>V(o))}function ci(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=>xe(i)):e.blobs,s=typeof e.commitments[0]=="string"?e.commitments.map(i=>xe(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=>V(i))}function mu(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,u=r?0:4;e.setUint32(t+c,i,r),e.setUint32(t+u,a,r)}function gu(e,t,n){return e&t^~e&n}function wu(e,t,n){return e&t^e&n^t&n}class xu extends wr{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=Pn(this.buffer)}update(t){dt(this),t=sn(t),Ve(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=Pn(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){dt(this),So(t,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:o}=this;let{pos:i}=this;n[i++]=128,lt(this.buffer.subarray(i)),this.padOffset>s-i&&(this.process(r,0),i=0);for(let d=i;d<s;d++)n[d]=0;mu(r,s-8,BigInt(this.length*8),o),this.process(r,0);const a=Pn(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d<u;d++)a.setUint32(4*d,f[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 Oe=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),vu=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]),Ce=new Uint32Array(64);class Eu extends xu{constructor(t=32){super(64,t,8,!1),this.A=Oe[0]|0,this.B=Oe[1]|0,this.C=Oe[2]|0,this.D=Oe[3]|0,this.E=Oe[4]|0,this.F=Oe[5]|0,this.G=Oe[6]|0,this.H=Oe[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)Ce[d]=t.getUint32(n,!1);for(let d=16;d<64;d++){const l=Ce[d-15],b=Ce[d-2],y=pe(l,7)^pe(l,18)^l>>>3,p=pe(b,17)^pe(b,19)^b>>>10;Ce[d]=p+Ce[d-7]+y+Ce[d-16]|0}let{A:r,B:s,C:o,D:i,E:a,F:c,G:u,H:f}=this;for(let d=0;d<64;d++){const l=pe(a,6)^pe(a,11)^pe(a,25),b=f+l+gu(a,c,u)+vu[d]+Ce[d]|0,p=(pe(r,2)^pe(r,13)^pe(r,22))+wu(r,s,o)|0;f=u,u=c,c=a,a=i+b|0,i=o,o=s,s=r,r=b+p|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,u=u+this.G|0,f=f+this.H|0,this.set(r,s,o,i,a,c,u,f)}roundClean(){lt(Ce)}destroy(){this.set(0,0,0,0,0,0,0,0),lt(this.buffer)}}const ui=To(()=>new Eu),Pu=ui;function Au(e,t){return Pu(we(e,{strict:!1})?yt(e):e)}function Bu(e){const{commitment:t,version:n=1}=e,r=e.to??(typeof t=="string"?"hex":"bytes"),s=Au(t);return s.set([n],0),r==="bytes"?s:V(s)}function $u(e){const{commitments:t,version:n}=e,r=e.to,s=[];for(const o of t)s.push(Bu({commitment:o,to:r,version:n}));return s}const zs=6,fi=32,kr=4096,di=fi*kr,Ls=di*zs-1-1*kr*zs;class Iu extends T{constructor({maxSize:t,size:n}){super("Blob size is too large.",{metaMessages:[`Max: ${t} bytes`,`Given: ${n} bytes`],name:"BlobSizeTooLargeError"})}}class Su extends T{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}function Tu(e){const t=typeof e.data=="string"?xe(e.data):e.data,n=H(t);if(!n)throw new Su;if(n>Ls)throw new Iu({maxSize:Ls,size:n});const r=[];let s=!0,o=0;for(;s;){const i=Ar(new Uint8Array(di));let a=0;for(;a<kr;){const c=t.slice(o,o+(fi-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=>V(i.bytes))}function ku(e){const{data:t,kzg:n,to:r}=e,s=e.blobs??Tu({data:t}),o=e.commitments??ai({blobs:s,kzg:n,to:r}),i=e.proofs??ci({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 Nu(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 W0({transaction:e})}function Fu(e,{docsPath:t,...n}){const r=(()=>{const s=fn(e,n);return s instanceof Tt?e:s})();return new K0(r,{docsPath:t,...n})}async function Nr(e){const t=await e.request({method:"eth_chainId"},{dedupe:!0});return Se(t)}async function li(e,t){const{account:n=e.account,accessList:r,authorizationList:s,chain:o=e.chain,blobVersionedHashes:i,blobs:a,data:c,gas:u,gasPrice:f,maxFeePerBlobGas:d,maxFeePerGas:l,maxPriorityFeePerGas:b,nonce:y,nonceManager:p,to:g,type:P,value:I,...w}=t,h=await(async()=>{if(!n||!p||typeof y<"u")return y;const $=te(n),N=o?o.id:await z(e,Nr,"getChainId")({});return await p.consume({address:$.address,chainId:N,client:e})})();gt(t);const m=o?.formatters?.transactionRequest?.format,x=(m||Ct)({...dn(w,{format:m}),account:n?te(n):void 0,accessList:r,authorizationList:s,blobs:a,blobVersionedHashes:i,data:c,gas:u,gasPrice:f,maxFeePerBlobGas:d,maxFeePerGas:l,maxPriorityFeePerGas:b,nonce:h,to:g,type:P,value:I},"fillTransaction");try{const $=await e.request({method:"eth_fillTransaction",params:[x]}),v=(o?.formatters?.transaction?.format||Sr)($.tx);delete v.blockHash,delete v.blockNumber,delete v.r,delete v.s,delete v.transactionIndex,delete v.v,delete v.yParity,v.data=v.input,v.gas&&(v.gas=t.gas??v.gas),v.gasPrice&&(v.gasPrice=t.gasPrice??v.gasPrice),v.maxFeePerBlobGas&&(v.maxFeePerBlobGas=t.maxFeePerBlobGas??v.maxFeePerBlobGas),v.maxFeePerGas&&(v.maxFeePerGas=t.maxFeePerGas??v.maxFeePerGas),v.maxPriorityFeePerGas&&(v.maxPriorityFeePerGas=t.maxPriorityFeePerGas??v.maxPriorityFeePerGas),v.nonce&&(v.nonce=t.nonce??v.nonce);const k=await(async()=>{if(typeof o?.fees?.baseFeeMultiplier=="function"){const B=await z(e,ce,"getBlock")({});return o.fees.baseFeeMultiplier({block:B,client:e,request:t})}return o?.fees?.baseFeeMultiplier??1.2})();if(k<1)throw new ti;const F=10**(k.toString().split(".")[1]?.length??0),M=B=>B*BigInt(Math.ceil(k*F))/BigInt(F);return v.maxFeePerGas&&!t.maxFeePerGas&&(v.maxFeePerGas=M(v.maxFeePerGas)),v.gasPrice&&!t.gasPrice&&(v.gasPrice=M(v.gasPrice)),{raw:$.raw,transaction:{from:x.from,...v}}}catch($){throw Fu($,{...t,chain:e.chain})}}const Ru=["blobVersionedHashes","chainId","fees","gas","nonce","type"],_s=new Map,$n=new pr(128);async function bi(e,t){let n=t;n.account??=e.account,n.parameters??=Ru;const{account:r,chain:s=e.chain,nonceManager:o,parameters:i}=n,a=(()=>{if(typeof s?.prepareTransactionRequest=="function")return{fn:s.prepareTransactionRequest,runAt:["beforeFillTransaction"]};if(Array.isArray(s?.prepareTransactionRequest))return{fn:s.prepareTransactionRequest[0],runAt:s.prepareTransactionRequest[1].runAt}})();let c;async function u(){return c||(typeof n.chainId<"u"?n.chainId:s?s.id:(c=await z(e,Nr,"getChainId")({}),c))}const f=r&&te(r);let d=n.nonce;if(i.includes("nonce")&&typeof d>"u"&&f&&o){const h=await u();d=await o.consume({address:f.address,chainId:h,client:e})}a?.fn&&a.runAt?.includes("beforeFillTransaction")&&(n=await a.fn({...n,chain:s},{phase:"beforeFillTransaction"}),d??=n.nonce);const b=((i.includes("blobVersionedHashes")||i.includes("sidecars"))&&n.kzg&&n.blobs||$n.get(e.uid)===!1||!["fees","gas"].some(m=>i.includes(m))?!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 z(e,li,"fillTransaction")({...n,nonce:d}).then(h=>{const{chainId:m,from:E,gas:x,gasPrice:$,nonce:N,maxFeePerBlobGas:v,maxFeePerGas:k,maxPriorityFeePerGas:R,type:F,...M}=h.transaction;return $n.set(e.uid,!0),{...n,...E?{from:E}:{},...F?{type:F}:{},...typeof m<"u"?{chainId:m}:{},...typeof x<"u"?{gas:x}:{},...typeof $<"u"?{gasPrice:$}:{},...typeof N<"u"?{nonce:N}:{},...typeof v<"u"?{maxFeePerBlobGas:v}:{},...typeof k<"u"?{maxFeePerGas:k}:{},...typeof R<"u"?{maxPriorityFeePerGas:R}:{},..."nonceKey"in M&&typeof M.nonceKey<"u"?{nonceKey:M.nonceKey}:{}}}).catch(h=>{const m=h;return m.name!=="TransactionExecutionError"||m.walk?.(x=>{const $=x;return $.name==="MethodNotFoundRpcError"||$.name==="MethodNotSupportedRpcError"})&&$n.set(e.uid,!1),n}):n;d??=b.nonce,n={...b,...f?{from:f?.address}:{},...d?{nonce:d}:{}};const{blobs:y,gas:p,kzg:g,type:P}=n;a?.fn&&a.runAt?.includes("beforeFillParameters")&&(n=await a.fn({...n,chain:s},{phase:"beforeFillParameters"}));let I;async function w(){return I||(I=await z(e,ce,"getBlock")({blockTag:"latest"}),I)}if(i.includes("nonce")&&typeof d>"u"&&f&&!o&&(n.nonce=await z(e,ii,"getTransactionCount")({address:f.address,blockTag:"pending"})),(i.includes("blobVersionedHashes")||i.includes("sidecars"))&&y&&g){const h=ai({blobs:y,kzg:g});if(i.includes("blobVersionedHashes")){const m=$u({commitments:h,to:"hex"});n.blobVersionedHashes=m}if(i.includes("sidecars")){const m=ci({blobs:y,commitments:h,kzg:g}),E=ku({blobs:y,commitments:h,proofs:m,to:"hex"});n.sidecars=E}}if(i.includes("chainId")&&(n.chainId=await u()),(i.includes("fees")||i.includes("type"))&&typeof P>"u")try{n.type=Nu(n)}catch{let h=_s.get(e.uid);typeof h>"u"&&(h=typeof(await w())?.baseFeePerGas=="bigint",_s.set(e.uid,h)),n.type=h?"eip1559":"legacy"}if(i.includes("fees"))if(n.type!=="legacy"&&n.type!=="eip2930"){if(typeof n.maxFeePerGas>"u"||typeof n.maxPriorityFeePerGas>"u"){const h=await w(),{maxFeePerGas:m,maxPriorityFeePerGas:E}=await Qn(e,{block:h,chain:s,request:n});if(typeof n.maxPriorityFeePerGas>"u"&&n.maxFeePerGas&&n.maxFeePerGas<E)throw new bu({maxPriorityFeePerGas:E});n.maxPriorityFeePerGas=E,n.maxFeePerGas=m}}else{if(typeof n.maxFeePerGas<"u"||typeof n.maxPriorityFeePerGas<"u")throw new Ir;if(typeof n.gasPrice>"u"){const h=await w(),{gasPrice:m}=await Qn(e,{block:h,chain:s,request:n,type:"legacy"});n.gasPrice=m}}return i.includes("gas")&&typeof p>"u"&&(n.gas=await z(e,Fr,"estimateGas")({...n,account:f,prepare:f?.type==="local"?[]:["blobVersionedHashes"]})),a?.fn&&a.runAt?.includes("afterFillParameters")&&(n=await a.fn({...n,chain:s},{phase:"afterFillParameters"})),gt(n),delete n.parameters,n}async function Fr(e,t){const{account:n=e.account,prepare:r=!0}=t,s=n?te(n):void 0,o=(()=>{if(Array.isArray(r))return r;if(s?.type!=="local")return["blobVersionedHashes"]})();try{const i=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await ei({authorization:t.authorizationList[0]}).catch(()=>{throw new T("`to` is required. Could not infer from `authorizationList`")})})(),{accessList:a,authorizationList:c,blobs:u,blobVersionedHashes:f,blockNumber:d,blockTag:l,data:b,gas:y,gasPrice:p,maxFeePerBlobGas:g,maxFeePerGas:P,maxPriorityFeePerGas:I,nonce:w,value:h,stateOverride:m,...E}=r?await bi(e,{...t,parameters:o,to:i}):t;if(y&&t.gas!==y)return y;const $=(typeof d=="bigint"?L(d):void 0)||l,N=$r(m);gt(t);const v=e.chain?.formatters?.transactionRequest?.format,R=(v||Ct)({...dn(E,{format:v}),account:s,accessList:a,authorizationList:c,blobs:u,blobVersionedHashes:f,data:b,gasPrice:p,maxFeePerBlobGas:g,maxFeePerGas:P,maxPriorityFeePerGas:I,nonce:w,to:i,value:h},"estimateGas");return BigInt(await e.request({method:"eth_estimateGas",params:N?[R,$??e.experimental_blockTag??"latest",N]:$?[R,$]:[R]}))}catch(i){throw cu(i,{...t,account:s,chain:e.chain})}}async function Ou(e,t){const{abi:n,address:r,args:s,functionName:o,dataSuffix:i,...a}=t,c=he({abi:n,args:s,functionName:o});try{return await z(e,Fr,"estimateGas")({data:`${c}${i?i.replace("0x",""):""}`,to:r,...a})}catch(u){const f=a.account?te(a.account):void 0;throw ht(u,{abi:n,address:r,args:s,docsPath:"/docs/contract/estimateContractGas",functionName:o,sender:f?.address})}}function zt(e,t){if(!ie(e,{strict:!1}))throw new Le({address:e});if(!ie(t,{strict:!1}))throw new Le({address:t});return e.toLowerCase()===t.toLowerCase()}const Us="/docs/contract/decodeEventLog";function Xt(e){const{abi:t,data:n,strict:r,topics:s}=e,o=r??!0,[i,...a]=s;if(!i)throw new Fc({docsPath:Us});const c=t.find(p=>p.type==="event"&&i===on(ue(p)));if(!(c&&"name"in c)||c.type!=="event")throw new Rc(i,{docsPath:Us});const{name:u,inputs:f}=c,d=f?.some(p=>!("name"in p&&p.name)),l=d?[]:{},b=f.map((p,g)=>[p,g]).filter(([p])=>"indexed"in p&&p.indexed);for(let p=0;p<b.length;p++){const[g,P]=b[p],I=a[p];if(!I)throw new gr({abiItem:c,param:g});l[d?P:g.name||P]=Cu({param:g,value:I})}const y=f.filter(p=>!("indexed"in p&&p.indexed));if(y.length>0){if(n&&n!=="0x")try{const p=Rt(y,n);if(p)if(d)for(let g=0;g<f.length;g++)l[g]=l[g]??p.shift();else for(let g=0;g<y.length;g++)l[y[g].name]=p[g]}catch(p){if(o)throw p instanceof Ao||p instanceof Do?new Yt({abiItem:c,data:n,params:y,size:H(n)}):p}else if(o)throw new Yt({abiItem:c,data:"0x",params:y,size:0})}return{eventName:u,args:Object.values(l).length>0?l:void 0}}function Cu({param:e,value:t}){return e.type==="string"||e.type==="bytes"||e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/)?t:(Rt([e],t)||[])[0]}function Rr(e){const{abi:t,args:n,logs:r,strict:s=!0}=e,o=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})();return r.map(i=>{const a=t.filter(f=>f.type==="event"&&i.topics[0]===on(f));if(a.length===0)return null;let c,u;for(const f of a)try{c=Xt({...i,abi:[f],strict:!0}),u=f;break}catch{}if(!c&&!s){u=a[0];try{c=Xt({...i,abi:[u],strict:!1})}catch{const f=u.inputs?.some(d=>!("name"in d&&d.name));return{...i,args:f?[]:{},eventName:u.name}}}return!c||!u||o&&!o.includes(c.eventName)||!zu({args:c.args,inputs:u.inputs,matchArgs:n})?null:{...c,...i}}).filter(Boolean)}function zu(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"?zt(i,a):o.type==="string"||o.type==="bytes"?q(yt(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(u=>s(a,u,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(u=>u.name===o);return a?(Array.isArray(i)?i:[i]).some(u=>s(a,u,t[o])):!1}):!1}function Ne(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}:{}}}async function Or(e,{address:t,blockHash:n,fromBlock:r,toBlock:s,event:o,events:i,args:a,strict:c}={}){const u=c??!1,f=i??(o?[o]:void 0);let d=[];f&&(d=[f.flatMap(p=>Ft({abi:[p],eventName:p.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 b=l.map(y=>Ne(y));return f?Rr({abi:f,args:a,logs:b,strict:u}):b}async function hi(e,t){const{abi:n,address:r,args:s,blockHash:o,eventName:i,fromBlock:a,toBlock:c,strict:u}=t,f=i?Xe({abi:n,name:i}):void 0,d=f?void 0:n.filter(l=>l.type==="event");return z(e,Or,"getLogs")({address:r,args:s,blockHash:o,event:f,events:d,fromBlock:a,toBlock:c,strict:u})}const In="/docs/contract/decodeFunctionResult";function Je(e){const{abi:t,args:n,functionName:r,data:s}=e;let o=t[0];if(r){const a=Xe({abi:t,args:n,name:r});if(!a)throw new ft(r,{docsPath:In});o=a}if(o.type!=="function")throw new ft(void 0,{docsPath:In});if(!o.outputs)throw new $o(o.name,{docsPath:In});const i=Rt(o.outputs,s);if(i&&i.length>1)return i;if(i&&i.length===1)return i[0]}const Cr=BigInt(0),er=BigInt(1);function Lt(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function zr(e){if(!Lt(e))throw new Error("Uint8Array expected")}function $t(e,t){if(typeof t!="boolean")throw new Error(e+" boolean expected, got "+t)}function Vt(e){const t=e.toString(16);return t.length&1?"0"+t:t}function pi(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return e===""?Cr:BigInt("0x"+e)}const yi=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",Lu=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function It(e){if(zr(e),yi)return e.toHex();let t="";for(let n=0;n<e.length;n++)t+=Lu[e[n]];return t}const Ee={_0:48,_9:57,A:65,F:70,a:97,f:102};function Ms(e){if(e>=Ee._0&&e<=Ee._9)return e-Ee._0;if(e>=Ee.A&&e<=Ee.F)return e-(Ee.A-10);if(e>=Ee.a&&e<=Ee.f)return e-(Ee.a-10)}function Jt(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);if(yi)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=Ms(e.charCodeAt(o)),a=Ms(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 qe(e){return pi(It(e))}function mi(e){return zr(e),pi(It(Uint8Array.from(e).reverse()))}function _t(e,t){return Jt(e.toString(16).padStart(t*2,"0"))}function gi(e,t){return _t(e,t).reverse()}function se(e,t,n){let r;if(typeof t=="string")try{r=Jt(t)}catch(o){throw new Error(e+" must be hex string or Uint8Array, cause: "+o)}else if(Lt(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 Qt(...e){let t=0;for(let r=0;r<e.length;r++){const s=e[r];zr(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 Sn=e=>typeof e=="bigint"&&Cr<=e;function Lr(e,t,n){return Sn(e)&&Sn(t)&&Sn(n)&&t<=e&&e<n}function ct(e,t,n,r){if(!Lr(t,n,r))throw new Error("expected valid "+e+": "+n+" <= n < "+r+", got "+t)}function _u(e){let t;for(t=0;e>Cr;e>>=er,t+=1);return t}const ln=e=>(er<<BigInt(e))-er,Tn=e=>new Uint8Array(e),js=e=>Uint8Array.from(e);function Uu(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=Tn(e),s=Tn(e),o=0;const i=()=>{r.fill(1),s.fill(0),o=0},a=(...d)=>n(s,r,...d),c=(d=Tn(0))=>{s=a(js([0]),d),r=a(),d.length!==0&&(s=a(js([1]),d),r=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let d=0;const l=[];for(;d<t;){r=a();const b=r.slice();l.push(b),d+=r.length}return Qt(...l)};return(d,l)=>{i(),c(d);let b;for(;!(b=l(u()));)c();return i(),b}}const Mu={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"||Lt(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 bn(e,t,n={}){const r=(s,o,i)=>{const a=Mu[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 Gs(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 ju="0.1.1";function Gu(){return ju}class _ extends Error{static setStaticOptions(t){_.prototype.docsOrigin=t.docsOrigin,_.prototype.showVersion=t.showVersion,_.prototype.version=t.version}constructor(t,n={}){const r=(()=>{if(n.cause instanceof _){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:n.cause?.message?n.cause.message:n.details})(),s=n.cause instanceof _&&n.cause.docsPath||n.docsPath,o=n.docsOrigin??_.prototype.docsOrigin,i=`${o}${s??""}`,a=!!(n.version??_.prototype.showVersion),c=n.version??_.prototype.version,u=[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(f=>typeof f=="string").join(`
33
+ `);super(u,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 wi(this,t)}}Object.defineProperty(_,"defaultStaticOptions",{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:"https://oxlib.sh",showVersion:!1,version:`ox@${Gu()}`}});_.setStaticOptions(_.defaultStaticOptions);function wi(e,t){return t?.(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause?wi(e.cause,t):t?null:e}function Ut(e,t){if(ot(e)>t)throw new of({givenSize:ot(e),maxSize:t})}const Pe={zero:48,nine:57,A:65,F:70,a:97,f:102};function Hs(e){if(e>=Pe.zero&&e<=Pe.nine)return e-Pe.zero;if(e>=Pe.A&&e<=Pe.F)return e-(Pe.A-10);if(e>=Pe.a&&e<=Pe.f)return e-(Pe.a-10)}function Hu(e,t={}){const{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new af({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 xi(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 hn(e,t){if(ne(e)>t)throw new bf({givenSize:ne(e),maxSize:t})}function Du(e,t){if(typeof t=="number"&&t>0&&t>ne(e)-1)throw new Ti({offset:t,position:"start",size:ne(e)})}function qu(e,t,n){if(typeof t=="number"&&typeof n=="number"&&ne(e)!==n-t)throw new Ti({offset:n,position:"end",size:ne(e)})}function vi(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 hf({size:Math.ceil(s.length/2),targetSize:r,type:"Hex"});return`0x${s[n==="right"?"padEnd":"padStart"](r*2,"0")}`}const Vu="#__bigint";function Ei(e,t,n){return JSON.stringify(e,(r,s)=>typeof s=="bigint"?s.toString()+Vu:s,n)}const Zu=new TextDecoder,Wu=new TextEncoder;function Ku(e){return e instanceof Uint8Array?e:typeof e=="string"?Pi(e):Yu(e)}function Yu(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function Pi(e,t={}){const{size:n}=t;let r=e;n&&(hn(e,n),r=We(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 u=Hs(s.charCodeAt(c++)),f=Hs(s.charCodeAt(c++));if(u===void 0||f===void 0)throw new _(`Invalid byte sequence ("${s[c-2]}${s[c-1]}" in "${s}").`);i[a]=u<<4|f}return i}function Xu(e,t={}){const{size:n}=t,r=Wu.encode(e);return typeof n=="number"?(Ut(r,n),Ju(r,n)):r}function Ju(e,t){return Hu(e,{dir:"right",size:t})}function ot(e){return e.length}function Qu(e,t,n,r={}){const{strict:s}=r;return e.slice(t,n)}function ef(e,t={}){const{size:n}=t;typeof n<"u"&&Ut(e,n);const r=le(e,t);return $i(r,t)}function tf(e,t={}){const{size:n}=t;let r=e;if(typeof n<"u"&&(Ut(r,n),r=Ai(r)),r.length>1||r[0]>1)throw new sf(r);return!!r[0]}function Ie(e,t={}){const{size:n}=t;typeof n<"u"&&Ut(e,n);const r=le(e,t);return Ii(r,t)}function nf(e,t={}){const{size:n}=t;let r=e;return typeof n<"u"&&(Ut(r,n),r=rf(r)),Zu.decode(r)}function Ai(e){return xi(e,{dir:"left"})}function rf(e){return xi(e,{dir:"right"})}class sf extends _{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 of=class extends _{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"})}},af=class extends _{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 cf=new TextEncoder,uf=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function ff(e,t={}){const{strict:n=!1}=t;if(!e)throw new Ds(e);if(typeof e!="string")throw new Ds(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e))throw new qs(e);if(!e.startsWith("0x"))throw new qs(e)}function de(...e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function df(e){return e instanceof Uint8Array?le(e):Array.isArray(e)?le(new Uint8Array(e)):e}function Bi(e,t={}){const n=`0x${Number(e)}`;return typeof t.size=="number"?(hn(n,t.size),Ze(n,t.size)):n}function le(e,t={}){let n="";for(let s=0;s<e.length;s++)n+=uf[e[s]];const r=`0x${n}`;return typeof t.size=="number"?(hn(r,t.size),We(r,t.size)):r}function W(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 u=typeof e=="bigint"?"n":"";throw new Si({max:o?`${o}${u}`:void 0,min:`${i}${u}`,signed:n,size:r,value:`${e}${u}`})}const c=`0x${(n&&s<0?BigInt.asUintN(r*8,BigInt(s)):s).toString(16)}`;return r?Ze(c,r):c}function _r(e,t={}){return le(cf.encode(e),t)}function Ze(e,t){return vi(e,{dir:"left",size:t})}function We(e,t){return vi(e,{dir:"right",size:t})}function ge(e,t,n,r={}){const{strict:s}=r;Du(e,t);const o=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return s&&qu(o,t,n),o}function ne(e){return Math.ceil((e.length-2)/2)}function $i(e,t={}){const{signed:n}=t;t.size&&hn(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 Ii(e,t={}){const{signed:n,size:r}=t;return Number(!n&&!r?e:$i(e,t))}function lf(e,t={}){const{strict:n=!1}=t;try{return ff(e,{strict:n}),!0}catch{return!1}}class Si extends _{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 Ds extends _{constructor(t){super(`Value \`${typeof t=="object"?Ei(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 qs extends _{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 bf extends _{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 Ti extends _{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 hf extends _{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 pf(e){return{address:e.address,amount:W(e.amount),index:W(e.index),validatorIndex:W(e.validatorIndex)}}function ki(e){return{...typeof e.baseFeePerGas=="bigint"&&{baseFeePerGas:W(e.baseFeePerGas)},...typeof e.blobBaseFee=="bigint"&&{blobBaseFee:W(e.blobBaseFee)},...typeof e.feeRecipient=="string"&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit=="bigint"&&{gasLimit:W(e.gasLimit)},...typeof e.number=="bigint"&&{number:W(e.number)},...typeof e.prevRandao=="bigint"&&{prevRandao:W(e.prevRandao)},...typeof e.time=="bigint"&&{time:W(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(pf)}}}const yf="0x82ad56cb",Ni="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",mf="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",gf="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",Ur="0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033";class tr extends T{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 Fi extends T{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}const kn="/docs/contract/encodeDeployData";function Mr(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 Ic({docsPath:kn});if(!("inputs"in s))throw new xs({docsPath:kn});if(!s.inputs||s.inputs.length===0)throw new xs({docsPath:kn});const o=Ue(s.inputs,n);return mt([r,o])}function wt({blockNumber:e,chain:t,contract:n}){const r=t?.contracts?.[n];if(!r)throw new tr({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new tr({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}function Ri(e,{docsPath:t,...n}){const r=(()=>{const s=fn(e,n);return s instanceof Tt?e:s})();return new Ko(r,{docsPath:t,...n})}async function Mt(e,t){const{account:n=e.account,authorizationList:r,batch:s=!!e.batch?.multicall,blockNumber:o,blockTag:i=e.experimental_blockTag??"latest",accessList:a,blobs:c,blockOverrides:u,code:f,data:d,factory:l,factoryData:b,gas:y,gasPrice:p,maxFeePerBlobGas:g,maxFeePerGas:P,maxPriorityFeePerGas:I,nonce:w,to:h,value:m,stateOverride:E,...x}=t,$=n?te(n):void 0;if(f&&(l||b))throw new T("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(f&&h)throw new T("Cannot provide both `code` & `to` as parameters.");const N=f&&d,v=l&&b&&h&&d,k=N||v,R=N?Oi({code:f,data:d}):v?vf({data:d,factory:l,factoryData:b,to:h}):d;try{gt(t);const M=(typeof o=="bigint"?L(o):void 0)||i,B=u?ki(u):void 0,A=$r(E),O=e.chain?.formatters?.transactionRequest?.format,C=(O||Ct)({...dn(x,{format:O}),accessList:a,account:$,authorizationList:r,blobs:c,data:R,gas:y,gasPrice:p,maxFeePerBlobGas:g,maxFeePerGas:P,maxPriorityFeePerGas:I,nonce:w,to:k?void 0:h,value:m},"call");if(s&&wf({request:C})&&!A&&!B)try{return await xf(e,{...C,blockNumber:o,blockTag:i})}catch(G){if(!(G instanceof Fi)&&!(G instanceof tr))throw G}const U=(()=>{const G=[C,M];return A&&B?[...G,A,B]:A?[...G,A]:B?[...G,{},B]:G})(),j=await e.request({method:"eth_call",params:U});return j==="0x"?{data:void 0}:{data:j}}catch(F){const M=Ef(F),{offchainLookup:B,offchainLookupSignature:A}=await fo(async()=>{const{offchainLookup:O,offchainLookupSignature:S}=await Promise.resolve().then(()=>md);return{offchainLookup:O,offchainLookupSignature:S}},void 0);if(e.ccipRead!==!1&&M?.slice(0,10)===A&&h)return{data:await B(e,{data:M,to:h})};throw k&&M?.slice(0,10)==="0x101bb98d"?new Q0({factory:l}):Ri(F,{...t,account:$,chain:e.chain})}}function wf({request:e}){const{data:t,to:n,...r}=e;return!(!t||t.startsWith(yf)||!n||Object.values(r).filter(s=>typeof s<"u").length>0)}async function xf(e,t){const{batchSize:n=1024,deployless:r=!1,wait:s=0}=typeof e.batch?.multicall=="object"?e.batch.multicall:{},{blockNumber:o,blockTag:i=e.experimental_blockTag??"latest",data:a,to:c}=t,u=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return wt({blockNumber:o,chain:e.chain,contract:"multicall3"});throw new Fi})(),d=(typeof o=="bigint"?L(o):void 0)||i,{schedule:l}=Oa({id:`${e.uid}.${d}`,wait:s,shouldSplitBatch(p){return p.reduce((P,{data:I})=>P+(I.length-2),0)>n*2},fn:async p=>{const g=p.map(w=>({allowFailure:!0,callData:w.data,target:w.to})),P=he({abi:Wt,args:[g],functionName:"aggregate3"}),I=await e.request({method:"eth_call",params:[{...u===null?{data:Oi({code:Ur,data:P})}:{to:u,data:P}},d]});return Je({abi:Wt,args:[g],functionName:"aggregate3",data:I||"0x"})}}),[{returnData:b,success:y}]=await l({data:a,to:c});if(!y)throw new un({data:b});return b==="0x"?{data:void 0}:{data:b}}function Oi(e){const{code:t,data:n}=e;return Mr({abi:Po(["constructor(bytes, bytes)"]),bytecode:Ni,args:[t,n]})}function vf(e){const{data:t,factory:n,factoryData:r,to:s}=e;return Mr({abi:Po(["constructor(address, bytes, address, bytes)"]),bytecode:mf,args:[s,t,n,r]})}function Ef(e){if(!(e instanceof T))return;const t=e.walk();return typeof t?.data=="object"?t.data?.data:t.data}async function be(e,t){const{abi:n,address:r,args:s,functionName:o,...i}=t,a=he({abi:n,args:s,functionName:o});try{const{data:c}=await z(e,Mt,"call")({...i,data:a,to:r});return Je({abi:n,args:s,functionName:o,data:c||"0x"})}catch(c){throw ht(c,{abi:n,address:r,args:s,docsPath:"/docs/contract/readContract",functionName:o})}}async function Pf(e,t){const{abi:n,address:r,args:s,dataSuffix:o,functionName:i,...a}=t,c=a.account?te(a.account):e.account,u=he({abi:n,args:s,functionName:i});try{const{data:f}=await z(e,Mt,"call")({batch:!1,data:`${u}${o?o.replace("0x",""):""}`,to:r,...a,account:c}),d=Je({abi:n,args:s,functionName:i,data:f||"0x"}),l=n.filter(b=>"name"in b&&b.name===t.functionName);return{result:d,request:{abi:l,address:r,args:s,dataSuffix:o,functionName:i,...a,account:c}}}catch(f){throw ht(f,{abi:n,address:r,args:s,docsPath:"/docs/contract/simulateContract",functionName:i,sender:c?.address})}}const Nn=new Map,Vs=new Map;let Af=0;function _e(e,t,n){const r=++Af,s=()=>Nn.get(e)||[],o=()=>{const f=s();Nn.set(e,f.filter(d=>d.id!==r))},i=()=>{const f=s();if(!f.some(l=>l.id===r))return;const d=Vs.get(e);if(f.length===1&&d){const l=d();l instanceof Promise&&l.catch(()=>{})}o()},a=s();if(Nn.set(e,[...a,{id:r,fns:t}]),a&&a.length>0)return i;const c={};for(const f in t)c[f]=((...d)=>{const l=s();if(l.length!==0)for(const b of l)b.fns[f]?.(...d)});const u=n(c);return typeof u=="function"&&Vs.set(e,u),i}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?.(a)??r;await fs(c);const u=async()=>{s&&(await e({unpoll:o}),await fs(r),u())};u()})(),o}const Bf=new Map,$f=new Map;function If(e){const t=(s,o)=>({clear:()=>o.delete(s),get:()=>o.get(s),set:i=>o.set(s,i)}),n=t(e,Bf),r=t(e,$f);return{clear:()=>{n.clear(),r.clear()},promise:n,response:r}}async function Sf(e,{cacheKey:t,cacheTime:n=Number.POSITIVE_INFINITY}){const r=If(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 Tf=e=>`blockNumber.${e}`;async function Gt(e,{cacheTime:t=e.cacheTime}={}){const n=await Sf(()=>e.request({method:"eth_blockNumber"}),{cacheKey:Tf(e.uid),cacheTime:t});return BigInt(n)}async function pn(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=>Ne(o));return!("abi"in t)||!t.abi?s:Rr({abi:t.abi,logs:s,strict:n})}async function yn(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function kf(e,t){const{abi:n,address:r,args:s,batch:o=!0,eventName:i,fromBlock:a,onError:c,onLogs:u,poll:f,pollingInterval:d=e.pollingInterval,strict:l}=t;return(typeof f<"u"?f: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 g=l??!1,P=oe(["watchContractEvent",r,s,o,e.uid,i,d,g,a]);return _e(P,{onLogs:u,onError:c},I=>{let w;a!==void 0&&(w=a-1n);let h,m=!1;const E=jt(async()=>{if(!m){try{h=await z(e,Go,"createContractEventFilter")({abi:n,address:r,args:s,eventName:i,strict:g,fromBlock:a})}catch{}m=!0;return}try{let x;if(h)x=await z(e,pn,"getFilterChanges")({filter:h});else{const $=await z(e,Gt,"getBlockNumber")({});w&&w<$?x=await z(e,hi,"getContractEvents")({abi:n,address:r,args:s,eventName:i,fromBlock:w+1n,toBlock:$,strict:g}):x=[],w=$}if(x.length===0)return;if(o)I.onLogs(x);else for(const $ of x)I.onLogs([$])}catch(x){h&&x instanceof yr&&(m=!1),I.onError?.(x)}},{emitOnBegin:!0,interval:d});return async()=>{h&&await z(e,yn,"uninstallFilter")({filter:h}),E()}})})():(()=>{const g=l??!1,P=oe(["watchContractEvent",r,s,o,e.uid,i,d,g]);let I=!0,w=()=>I=!1;return _e(P,{onLogs:u,onError:c},h=>((async()=>{try{const m=(()=>{if(e.transport.type==="fallback"){const $=e.transport.transports.find(N=>N.config.type==="webSocket"||N.config.type==="ipc");return $?$.value:e.transport}return e.transport})(),E=i?Ft({abi:n,eventName:i,args:s}):[],{unsubscribe:x}=await m.subscribe({params:["logs",{address:r,topics:E}],onData($){if(!I)return;const N=$.result;try{const{eventName:v,args:k}=Xt({abi:n,data:N.data,topics:N.topics,strict:l}),R=Ne(N,{args:k,eventName:v});h.onLogs([R])}catch(v){let k,R;if(v instanceof Yt||v instanceof gr){if(l)return;k=v.abiItem.name,R=v.abiItem.inputs?.some(M=>!("name"in M&&M.name))}const F=Ne(N,{args:R?[]:{},eventName:k});h.onLogs([F])}},onError($){h.onError?.($)}});w=x,I||w()}catch(m){c?.(m)}})(),()=>w()))})()}async function Nf(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}const Ff={"0x0":"reverted","0x1":"success"};function Ci(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=>Ne(r)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Se(e.transactionIndex):null,status:e.status?Ff[e.status]:null,type:e.type?ri[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}function Rf(e){const{batch:t,chain:n,ccipRead:r,key:s="base",name:o="Base Client",type:i="base"}=e,a=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime=="number"?"pending":void 0),c=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(c/2),500),4e3),f=e.pollingInterval??u,d=e.cacheTime??f,l=e.account?te(e.account):void 0,{config:b,request:y,value:p}=e.transport({account:l,chain:n,pollingInterval:f}),g={...b,...p},P={account:l,batch:t,cacheTime:d,ccipRead:r,chain:n,key:s,name:o,pollingInterval:f,request:y,transport:g,type:i,uid:Ca(),...a?{experimental_blockTag:a}:{}};function I(w){return h=>{const m=h(w);for(const x in P)delete m[x];const E={...w,...m};return Object.assign(E,{extend:I(E)})}}return Object.assign(P,{extend:I(P)})}function jr(e){if(!(e instanceof T))return!1;const t=e.walk(n=>n instanceof Jn);return t instanceof Jn?t.data?.errorName==="HttpError"||t.data?.errorName==="ResolverError"||t.data?.errorName==="ResolverNotContract"||t.data?.errorName==="ResolverNotFound"||t.data?.errorName==="ReverseAddressMismatch"||t.data?.errorName==="UnsupportedResolverProfile":!1}function Of(e){const{abi:t,data:n}=e,r=bt(n,0,4),s=t.find(o=>o.type==="function"&&r===Nt(ue(o)));if(!s)throw new Oc(r,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:s.name,args:"inputs"in s&&s.inputs&&s.inputs.length>0?Rt(s.inputs,bt(n,4)):void 0}}const Fn="/docs/contract/encodeErrorResult";function Zs(e){const{abi:t,errorName:n,args:r}=e;let s=t[0];if(n){const c=Xe({abi:t,args:r,name:n});if(!c)throw new vs(n,{docsPath:Fn});s=c}if(s.type!=="error")throw new vs(void 0,{docsPath:Fn});const o=ue(s),i=Nt(o);let a="0x";if(r&&r.length>0){if(!s.inputs)throw new Nc(s.name,{docsPath:Fn});a=Ue(s.inputs,r)}return mt([i,a])}const Rn="/docs/contract/encodeFunctionResult";function Cf(e){const{abi:t,functionName:n,result:r}=e;let s=t[0];if(n){const i=Xe({abi:t,name:n});if(!i)throw new ft(n,{docsPath:Rn});s=i}if(s.type!=="function")throw new ft(void 0,{docsPath:Rn});if(!s.outputs)throw new $o(s.name,{docsPath:Rn});const o=(()=>{if(s.outputs.length===0)return[];if(s.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Io(r)})();return Ue(s.outputs,o)}const Ht="x-batch-gateway:true";async function zi(e){const{data:t,ccipRequest:n}=e,{args:[r]}=Of({abi:qn,data:t}),s=[],o=[];return await Promise.all(r.map(async(i,a)=>{try{o[a]=i.urls.includes(Ht)?await zi({data:i.data,ccipRequest:n}):await n(i),s[a]=!1}catch(c){s[a]=!0,o[a]=zf(c)}})),Cf({abi:qn,functionName:"query",result:[s,o]})}function zf(e){return e.name==="HttpRequestError"&&e.status?Zs({abi:qn,errorName:"HttpError",args:[e.status,e.shortMessage]}):Zs({abi:[Ho],errorName:"Error",args:["shortMessage"in e?e.shortMessage:e.message]})}function Li(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return we(t)?t:null}function nr(e){let t=new Uint8Array(32).fill(0);if(!e)return V(t);const n=e.split(".");for(let r=n.length-1;r>=0;r-=1){const s=Li(n[r]),o=s?yt(s):q(De(n[r]),"bytes");t=q(fe([t,o]),"bytes")}return V(t)}function Lf(e){return`[${e.slice(2)}]`}function _f(e){const t=new Uint8Array(32).fill(0);return e?Li(e)||q(De(e)):V(t)}function Gr(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const n=new Uint8Array(De(t).byteLength+2);let r=0;const s=t.split(".");for(let o=0;o<s.length;o++){let i=De(s[o]);i.byteLength>255&&(i=De(Lf(_f(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 Uf(e,t){const{blockNumber:n,blockTag:r,coinType:s,name:o,gatewayUrls:i,strict:a}=t,{chain:c}=e,u=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!c)throw new Error("client chain not configured. universalResolverAddress is required.");return wt({blockNumber:n,chain:c,contract:"ensUniversalResolver"})})(),f=c?.ensTlds;if(f&&!f.some(l=>o.endsWith(l)))return null;const d=s!=null?[nr(o),BigInt(s)]:[nr(o)];try{const l=he({abi:ds,functionName:"addr",args:d}),b={address:u,abi:ao,functionName:"resolveWithGateways",args:[ze(Gr(o)),l,i??[Ht]],blockNumber:n,blockTag:r},p=await z(e,be,"readContract")(b);if(p[0]==="0x")return null;const g=Je({abi:ds,args:d,functionName:"addr",data:p[0]});return g==="0x"||tn(g)==="0x00"?null:g}catch(l){if(a)throw l;if(jr(l))return null;throw l}}class Mf extends T{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 Pt extends T{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class Hr extends T{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 jf extends T{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const Gf=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,Hf=/^(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>\/.*)?$/,Df=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,qf=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function Vf(e){try{const t=await fetch(e,{method:"HEAD"});return t.status===200?t.headers.get("content-type")?.startsWith("image/"):!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 Ws(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function _i({uri:e,gatewayUrls:t}){const n=Df.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=Ws(t?.ipfs,"https://ipfs.io"),s=Ws(t?.arweave,"https://arweave.net"),o=e.match(Gf),{protocol:i,subpath:a,target:c,subtarget:u=""}=o?.groups||{},f=i==="ipns:/"||a==="ipns/",d=i==="ipfs:/"||a==="ipfs/"||Hf.test(e);if(e.startsWith("http")&&!f&&!d){let b=e;return t?.arweave&&(b=e.replace(/https:\/\/arweave.net/g,t?.arweave)),{uri:b,isOnChain:!1,isEncoded:!1}}if((f||d)&&c)return{uri:`${r}/${f?"ipns":"ipfs"}/${c}${u}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&c)return{uri:`${s}/${c}${u||""}`,isOnChain:!1,isEncoded:!1};let l=e.replace(qf,"");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 Hr({uri:e})}function Ui(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new Mf({data:e});return e.image||e.image_url||e.image_data}async function Zf({gatewayUrls:e,uri:t}){try{const n=await fetch(t).then(s=>s.json());return await Dr({gatewayUrls:e,uri:Ui(n)})}catch{throw new Hr({uri:t})}}async function Dr({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=_i({uri:t,gatewayUrls:e});if(r||await Vf(n))return n;throw new Hr({uri:t})}function Wf(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 Pt({reason:"Only EIP-155 supported"});if(!i)throw new Pt({reason:"Chain ID not found"});if(!c)throw new Pt({reason:"Contract address not found"});if(!s)throw new Pt({reason:"Token ID not found"});if(!a)throw new Pt({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i,10),namespace:a.toLowerCase(),contractAddress:c,tokenID:s}}async function Kf(e,{nft:t}){if(t.namespace==="erc721")return be(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 be(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 jf({namespace:t.namespace})}async function Yf(e,{gatewayUrls:t,record:n}){return/eip155:/i.test(n)?Xf(e,{gatewayUrls:t,record:n}):Dr({uri:n,gatewayUrls:t})}async function Xf(e,{gatewayUrls:t,record:n}){const r=Wf(n),s=await Kf(e,{nft:r}),{uri:o,isOnChain:i,isEncoded:a}=_i({uri:s,gatewayUrls:t});if(i&&(o.includes("data:application/json;base64,")||o.startsWith("{"))){const u=a?atob(o.replace("data:application/json;base64,","")):o,f=JSON.parse(u);return Dr({uri:Ui(f),gatewayUrls:t})}let c=r.tokenID;return r.namespace==="erc1155"&&(c=c.replace("0x","").padStart(64,"0")),Zf({gatewayUrls:t,uri:o.replace(/(?:0x)?{id}/,c)})}async function Mi(e,t){const{blockNumber:n,blockTag:r,key:s,name:o,gatewayUrls:i,strict:a}=t,{chain:c}=e,u=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!c)throw new Error("client chain not configured. universalResolverAddress is required.");return wt({blockNumber:n,chain:c,contract:"ensUniversalResolver"})})(),f=c?.ensTlds;if(f&&!f.some(d=>o.endsWith(d)))return null;try{const d={address:u,abi:ao,args:[ze(Gr(o)),he({abi:ls,functionName:"text",args:[nr(o),s]}),i??[Ht]],functionName:"resolveWithGateways",blockNumber:n,blockTag:r},b=await z(e,be,"readContract")(d);if(b[0]==="0x")return null;const y=Je({abi:ls,functionName:"text",data:b[0]});return y===""?null:y}catch(d){if(a)throw d;if(jr(d))return null;throw d}}async function Jf(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:s,gatewayUrls:o,strict:i,universalResolverAddress:a}){const c=await z(e,Mi,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:s,universalResolverAddress:a,gatewayUrls:o,strict:i});if(!c)return null;try{return await Yf(e,{record:c,gatewayUrls:r})}catch{return null}}async function Qf(e,t){const{address:n,blockNumber:r,blockTag:s,coinType:o=60n,gatewayUrls:i,strict:a}=t,{chain:c}=e,u=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!c)throw new Error("client chain not configured. universalResolverAddress is required.");return wt({blockNumber:r,chain:c,contract:"ensUniversalResolver"})})();try{const f={address:u,abi:za,args:[n,o,i??[Ht]],functionName:"reverseWithGateways",blockNumber:r,blockTag:s},d=z(e,be,"readContract"),[l]=await d(f);return l||null}catch(f){if(a)throw f;if(jr(f))return null;throw f}}async function ed(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 wt({blockNumber:n,chain:o,contract:"ensUniversalResolver"})})(),a=o?.ensTlds;if(a&&!a.some(u=>s.endsWith(u)))throw new Error(`${s} is not a valid ENS TLD (${a?.join(", ")}) for chain "${o.name}" (id: ${o.id}).`);const[c]=await z(e,be,"readContract")({address:i,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[ze(Gr(s))],blockNumber:n,blockTag:r});return c}async function ji(e,t){const{account:n=e.account,blockNumber:r,blockTag:s="latest",blobs:o,data:i,gas:a,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:f,maxPriorityFeePerGas:d,to:l,value:b,...y}=t,p=n?te(n):void 0;try{gt(t);const P=(typeof r=="bigint"?L(r):void 0)||s,I=e.chain?.formatters?.transactionRequest?.format,h=(I||Ct)({...dn(y,{format:I}),account:p,blobs:o,data:i,gas:a,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:f,maxPriorityFeePerGas:d,to:l,value:b},"createAccessList"),m=await e.request({method:"eth_createAccessList",params:[h,P]});return{accessList:m.accessList,gasUsed:BigInt(m.gasUsed)}}catch(g){throw Ri(g,{...t,account:p,chain:e.chain})}}async function td(e){const t=cn(e,{method:"eth_newBlockFilter"}),n=await e.request({method:"eth_newBlockFilter"});return{id:n,request:t(n),type:"block"}}async function Gi(e,{address:t,args:n,event:r,events:s,fromBlock:o,strict:i,toBlock:a}={}){const c=s??(r?[r]:void 0),u=cn(e,{method:"eth_newFilter"});let f=[];c&&(f=[c.flatMap(b=>Ft({abi:[b],eventName:b.name,args:n}))],r&&(f=f[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,...f.length?{topics:f}:{}}]});return{abi:c,args:n,eventName:r?r.name:void 0,fromBlock:o,id:d,request:u(d),strict:!!i,toBlock:a,type:"event"}}async function Hi(e){const t=cn(e,{method:"eth_newPendingTransactionFilter"}),n=await e.request({method:"eth_newPendingTransactionFilter"});return{id:n,request:t(n),type:"transaction"}}async function nd(e,{address:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest"}){const s=typeof n=="bigint"?L(n):void 0,o=await e.request({method:"eth_getBalance",params:[t,s||r]});return BigInt(o)}async function rd(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function sd(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}),Se(o)}async function rr(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=n!==void 0?L(n):void 0,o=await e.request({method:"eth_getCode",params:[t,s||r]},{dedupe:!!s});if(o!=="0x")return o}class od extends T{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 id(e,t){const{address:n,factory:r,factoryData:s}=t;try{const[o,i,a,c,u,f,d]=await z(e,be,"readContract")({abi:ad,address:n,functionName:"eip712Domain",factory:r,factoryData:s});return{domain:{name:i,version:a,chainId:Number(c),verifyingContract:u,salt:f},extensions:d,fields:o}}catch(o){const i=o;throw i.name==="ContractFunctionExecutionError"&&i.cause.name==="ContractFunctionZeroDataError"?new od({address:n}):i}}const ad=[{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 cd(e){return{baseFeePerGas:e.baseFeePerGas.map(t=>BigInt(t)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:e.reward?.map(t=>t.map(n=>BigInt(n)))}}async function ud(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 cd(i)}async function fd(e,{filter:t}){const n=t.strict??!1,s=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(o=>Ne(o));return t.abi?Rr({abi:t.abi,logs:s,strict:n}):s}async function dd({address:e,authorization:t,signature:n}){return zt(zo(e),await ei({authorization:t,signature:n}))}class ld extends T{constructor({callbackSelector:t,cause:n,data:r,extraData:s,sender:o,urls:i}){super(n.shortMessage||"An error occurred while fetching for an offchain result.",{cause:n,metaMessages:[...n.metaMessages||[],n.metaMessages?.length?"":[],"Offchain Gateway Call:",i&&[" Gateway URL(s):",...i.map(a=>` ${co(a)}`)],` Sender: ${o}`,` Data: ${r}`,` Callback selector: ${t}`,` Extra data: ${s}`].flat(),name:"OffchainLookupError"})}}class bd extends T{constructor({result:t,url:n}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${co(n)}`,`Response: ${oe(t)}`],name:"OffchainLookupResponseMalformedError"})}}class hd extends T{constructor({sender:t,to:n}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${n}`,`OffchainLookup sender address: ${t}`],name:"OffchainLookupSenderMismatchError"})}}const pd="0x556f1830",Di={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function yd(e,{blockNumber:t,blockTag:n,data:r,to:s}){const{args:o}=qo({data:r,abi:[Di]}),[i,a,c,u,f]=o,{ccipRead:d}=e,l=d&&typeof d?.request=="function"?d.request:qi;try{if(!zt(s,i))throw new hd({sender:i,to:s});const b=a.includes(Ht)?await zi({data:c,ccipRequest:l}):await l({data:c,sender:i,urls:a}),{data:y}=await Mt(e,{blockNumber:t,blockTag:n,data:fe([u,Ue([{type:"bytes"},{type:"bytes"}],[b,f])]),to:s});return y}catch(b){throw new ld({callbackSelector:u,cause:b,data:r,extraData:f,sender:i,urls:a})}}async function qi({data:e,sender:t,urls:n}){let r=new Error("An unknown error occurred.");for(let s=0;s<n.length;s++){const o=n[s],i=o.includes("{data}")?"GET":"POST",a=i==="POST"?{data:e,sender:t}:void 0,c=i==="POST"?{"Content-Type":"application/json"}:{};try{const u=await fetch(o.replace("{sender}",t.toLowerCase()).replace("{data}",e),{body:JSON.stringify(a),headers:c,method:i});let f;if(u.headers.get("Content-Type")?.startsWith("application/json")?f=(await u.json()).data:f=await u.text(),!u.ok){r=new bs({body:a,details:f?.error?oe(f.error):u.statusText,headers:u.headers,status:u.status,url:o});continue}if(!we(f)){r=new bd({result:f,url:o});continue}return f}catch(u){r=new bs({body:a,details:u.message,url:o})}}throw r}const md=Object.freeze(Object.defineProperty({__proto__:null,ccipRequest:qi,offchainLookup:yd,offchainLookupAbiItem:Di,offchainLookupSignature:pd},Symbol.toStringTag,{value:"Module"}));function j1(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)})}const gd=`Ethereum Signed Message:
34
+ `;function wd(e){const t=typeof e=="string"?Gn(e):typeof e.raw=="string"?e.raw:V(e.raw),n=Gn(`${gd}${H(t)}`);return fe([n,t])}function Vi(e,t){return q(wd(e),t)}class xd extends T{constructor({domain:t}){super(`Invalid domain "${oe(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class vd extends T{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 Ed extends T{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function Pd(e){const{domain:t,message:n,primaryType:r,types:s}=e,o=(i,a)=>{for(const c of i){const{name:u,type:f}=c,d=a[u],l=f.match(Mo);if(l&&(typeof d=="number"||typeof d=="bigint")){const[p,g,P]=l;L(d,{signed:g==="int",size:Number.parseInt(P,10)/8})}if(f==="address"&&typeof d=="string"&&!ie(d))throw new Le({address:d});const b=f.match(v0);if(b){const[p,g]=b;if(g&&H(d)!==Number.parseInt(g,10))throw new zc({expectedSize:Number.parseInt(g,10),givenSize:H(d)})}const y=s[f];y&&(Bd(f),o(y,d))}};if(s.EIP712Domain&&t){if(typeof t!="object")throw new xd({domain:t});o(s.EIP712Domain,t)}if(r!=="EIP712Domain")if(s[r])o(s[r],n);else throw new vd({primaryType:r,types:s})}function Ad({domain:e}){return[typeof e?.name=="string"&&{name:"name",type:"string"},e?.version&&{name:"version",type:"string"},(typeof e?.chainId=="number"||typeof e?.chainId=="bigint")&&{name:"chainId",type:"uint256"},e?.verifyingContract&&{name:"verifyingContract",type:"address"},e?.salt&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Bd(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new Ed({type:e})}function $d(e){const{domain:t={},message:n,primaryType:r}=e,s={EIP712Domain:Ad({domain:t}),...e.types};Pd({domain:t,message:n,primaryType:r,types:s});const o=["0x1901"];return t&&o.push(Id({domain:t,types:s})),r!=="EIP712Domain"&&o.push(Zi({data:n,primaryType:r,types:s})),q(fe(o))}function Id({domain:e,types:t}){return Zi({data:e,primaryType:"EIP712Domain",types:t})}function Zi({data:e,primaryType:t,types:n}){const r=Wi({data:e,primaryType:t,types:n});return q(r)}function Wi({data:e,primaryType:t,types:n}){const r=[{type:"bytes32"}],s=[Sd({primaryType:t,types:n})];for(const o of n[t]){const[i,a]=Yi({types:n,name:o.name,type:o.type,value:e[o.name]});r.push(i),s.push(a)}return Ue(r,s)}function Sd({primaryType:e,types:t}){const n=ze(Td({primaryType:e,types:t}));return q(n)}function Td({primaryType:e,types:t}){let n="";const r=Ki({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 Ki({primaryType:e,types:t},n=new Set){const s=e.match(/^\w*/u)?.[0];if(n.has(s)||t[s]===void 0)return n;n.add(s);for(const o of t[s])Ki({primaryType:o.type,types:t},n);return n}function Yi({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:"bytes32"},q(Wi({data:r,primaryType:n,types:e}))];if(n==="bytes")return[{type:"bytes32"},q(r)];if(n==="string")return[{type:"bytes32"},q(ze(r))];if(n.lastIndexOf("]")===n.length-1){const s=n.slice(0,n.lastIndexOf("[")),o=r.map(i=>Yi({name:t,type:s,types:e,value:i}));return[{type:"bytes32"},q(Ue(o.map(([i])=>i),o.map(([,i])=>i)))]}return[{type:n},r]}class kd 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 Nd={checksum:new kd(8192)},On=Nd.checksum;function Xi(e,t={}){const{as:n=typeof e=="string"?"Hex":"Bytes"}=t,r=Oo(Ku(e));return n==="Bytes"?r:le(r)}const Fd=/^0x[a-fA-F0-9]{40}$/;function mn(e,t={}){const{strict:n=!0}=t;if(!Fd.test(e))throw new Ks({address:e,cause:new Rd});if(n){if(e.toLowerCase()===e)return;if(Ji(e)!==e)throw new Ks({address:e,cause:new Od})}}function Ji(e){if(On.has(e))return On.get(e);mn(e,{strict:!1});const t=e.substring(2).toLowerCase(),n=Xi(Xu(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 On.set(e,s),s}function sr(e,t={}){const{strict:n=!0}=t??{};try{return mn(e,{strict:n}),!0}catch{return!1}}class Ks extends _{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 Rd extends _{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 Od extends _{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}const Cd=/^(.*)\[([0-9]*)\]$/,zd=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Qi=/^(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)?$/,Ys=2n**256n-1n;function ut(e,t,n){const{checksumAddress:r,staticPosition:s}=n,o=Zr(t.type);if(o){const[i,a]=o;return _d(e,{...t,type:a},{checksumAddress:r,length:i,staticPosition:s})}if(t.type==="tuple")return Gd(e,t,{checksumAddress:r,staticPosition:s});if(t.type==="address")return Ld(e,{checksum:r});if(t.type==="bool")return Ud(e);if(t.type.startsWith("bytes"))return Md(e,t,{staticPosition:s});if(t.type.startsWith("uint")||t.type.startsWith("int"))return jd(e,t);if(t.type==="string")return Hd(e,{staticPosition:s});throw new Kr(t.type)}const Xs=32,or=32;function Ld(e,t={}){const{checksum:n=!1}=t,r=e.readBytes(32);return[(o=>n?Ji(o):o)(le(Qu(r,-20))),32]}function _d(e,t,n){const{checksumAddress:r,length:s,staticPosition:o}=n;if(!s){const c=Ie(e.readBytes(or)),u=o+c,f=u+Xs;e.setPosition(u);const d=Ie(e.readBytes(Xs)),l=St(t);let b=0;const y=[];for(let p=0;p<d;++p){e.setPosition(f+(l?p*32:b));const[g,P]=ut(e,t,{checksumAddress:r,staticPosition:f});b+=P,y.push(g)}return e.setPosition(o+32),[y,32]}if(St(t)){const c=Ie(e.readBytes(or)),u=o+c,f=[];for(let d=0;d<s;++d){e.setPosition(u+d*32);const[l]=ut(e,t,{checksumAddress:r,staticPosition:u});f.push(l)}return e.setPosition(o+32),[f,32]}let i=0;const a=[];for(let c=0;c<s;++c){const[u,f]=ut(e,t,{checksumAddress:r,staticPosition:o+i});i+=f,a.push(u)}return[a,i]}function Ud(e){return[tf(e.readBytes(32),{size:32}),32]}function Md(e,t,{staticPosition:n}){const[r,s]=t.type.split("bytes");if(!s){const i=Ie(e.readBytes(32));e.setPosition(n+i);const a=Ie(e.readBytes(32));if(a===0)return e.setPosition(n+32),["0x",32];const c=e.readBytes(a);return e.setPosition(n+32),[le(c),32]}return[le(e.readBytes(Number.parseInt(s,10),32)),32]}function jd(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?ef(s,{signed:n}):Ie(s,{signed:n}),32]}function Gd(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(St(t)){const c=Ie(e.readBytes(or)),u=s+c;for(let f=0;f<t.components.length;++f){const d=t.components[f];e.setPosition(u+a);const[l,b]=ut(e,d,{checksumAddress:r,staticPosition:u});a+=b,i[o?f:d?.name]=l}return e.setPosition(s+32),[i,32]}for(let c=0;c<t.components.length;++c){const u=t.components[c],[f,d]=ut(e,u,{checksumAddress:r,staticPosition:s});i[o?c:u?.name]=f,a+=d}return[i,a]}function Hd(e,{staticPosition:t}){const n=Ie(e.readBytes(32)),r=t+n;e.setPosition(r);const s=Ie(e.readBytes(32));if(s===0)return e.setPosition(t+32),["",32];const o=e.readBytes(s,32),i=nf(Ai(o));return e.setPosition(t+32),[i,32]}function Dd({checksumAddress:e,parameters:t,values:n}){const r=[];for(let s=0;s<t.length;s++)r.push(qr({checksumAddress:e,parameter:t[s],value:n[s]}));return r}function qr({checksumAddress:e=!1,parameter:t,value:n}){const r=t,s=Zr(r.type);if(s){const[o,i]=s;return Vd(n,{checksumAddress:e,length:o,parameter:{...r,type:i}})}if(r.type==="tuple")return Xd(n,{checksumAddress:e,parameter:r});if(r.type==="address")return qd(n,{checksum:e});if(r.type==="bool")return Wd(n);if(r.type.startsWith("uint")||r.type.startsWith("int")){const o=r.type.startsWith("int"),[,,i="256"]=Qi.exec(r.type)??[];return Kd(n,{signed:o,size:Number(i)})}if(r.type.startsWith("bytes"))return Zd(n,{type:r.type});if(r.type==="string")return Yd(n);throw new Kr(r.type)}function Vr(e){let t=0;for(let o=0;o<e.length;o++){const{dynamic:i,encoded:a}=e[o];i?t+=32:t+=ne(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(W(t+s,{size:32})),r.push(a),s+=ne(a)):n.push(a)}return de(...n,...r)}function qd(e,t){const{checksum:n=!1}=t;return mn(e,{strict:n}),{dynamic:!1,encoded:Ze(e.toLowerCase())}}function Vd(e,t){const{checksumAddress:n,length:r,parameter:s}=t,o=r===null;if(!Array.isArray(e))throw new il(e);if(!o&&e.length!==r)throw new ol({expectedLength:r,givenLength:e.length,type:`${s.type}[${r}]`});let i=!1;const a=[];for(let c=0;c<e.length;c++){const u=qr({checksumAddress:n,parameter:s,value:e[c]});u.dynamic&&(i=!0),a.push(u)}if(o||i){const c=Vr(a);if(o){const u=W(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?de(u,c):u}}if(i)return{dynamic:!0,encoded:c}}return{dynamic:!1,encoded:de(...a.map(({encoded:c})=>c))}}function Zd(e,{type:t}){const[,n]=t.split("bytes"),r=ne(e);if(!n){let s=e;return r%32!==0&&(s=We(s,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:de(Ze(W(r,{size:32})),s)}}if(r!==Number.parseInt(n,10))throw new ta({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:We(e)}}function Wd(e){if(typeof e!="boolean")throw new _(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:Ze(Bi(e))}}function Kd(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 Si({max:r.toString(),min:s.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:W(e,{size:32,signed:t})}}function Yd(e){const t=_r(e),n=Math.ceil(ne(t)/32),r=[];for(let s=0;s<n;s++)r.push(We(ge(t,s*32,(s+1)*32)));return{dynamic:!0,encoded:de(We(W(ne(t),{size:32})),...r)}}function Xd(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,u=qr({checksumAddress:n,parameter:a,value:e[c]});o.push(u),u.dynamic&&(s=!0)}return{dynamic:s,encoded:s?Vr(o):de(...o.map(({encoded:i})=>i))}}function Zr(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function St(e){const{type:t}=e;if(t==="string"||t==="bytes"||t.endsWith("[]"))return!0;if(t==="tuple")return e.components?.some(St);const n=Zr(e.type);return!!(n&&St({...e,type:n[1]}))}const Jd={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 tl({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new el({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Js({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 Js({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 Qd(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(Jd);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}class Js extends _{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class el extends _{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 tl extends _{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 nl(e,t,n={}){const{as:r="Array",checksumAddress:s=!1}=n,o=typeof t=="string"?Pi(t):t,i=Qd(o);if(ot(o)===0&&e.length>0)throw new sl;if(ot(o)&&ot(o)<32)throw new rl({data:typeof t=="string"?t:le(t),parameters:e,size:ot(o)});let a=0;const c=r==="Array"?[]:{};for(let u=0;u<e.length;++u){const f=e[u];i.setPosition(a);const[d,l]=ut(i,f,{checksumAddress:s,staticPosition:0});a+=l,r==="Array"?c.push(d):c[f.name??u]=d}return c}function Wr(e,t,n){const{checksumAddress:r=!1}={};if(e.length!==t.length)throw new na({expectedLength:e.length,givenLength:t.length});const s=Dd({checksumAddress:r,parameters:e,values:t}),o=Vr(s);return o.length===0?"0x":o}function ir(e,t){if(e.length!==t.length)throw new na({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(ir.encode(s,o))}return de(...n)}(function(e){function t(n,r,s=!1){if(n==="address"){const c=r;return mn(c),Ze(c.toLowerCase(),s?32:0)}if(n==="string")return _r(r);if(n==="bytes")return r;if(n==="bool")return Ze(Bi(r),s?32:1);const o=n.match(Qi);if(o){const[c,u,f="256"]=o,d=Number.parseInt(f,10)/8;return W(r,{size:s?32:d,signed:u==="int"})}const i=n.match(zd);if(i){const[c,u]=i;if(Number.parseInt(u,10)!==(r.length-2)/2)throw new ta({expectedSize:Number.parseInt(u,10),value:r});return We(r,s?32:0)}const a=n.match(Cd);if(a&&Array.isArray(r)){const[c,u]=a,f=[];for(let d=0;d<r.length;d++)f.push(t(u,r[d],!0));return f.length===0?"0x":de(...f)}throw new Kr(n)}e.encode=t})(ir||(ir={}));function ea(e){return Array.isArray(e)&&typeof e[0]=="string"||typeof e=="string"?ws(e):e}class rl extends _{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 sl extends _{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class ol extends _{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 ta extends _{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${ne(n)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class na extends _{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${t}`,`Given length (values): ${n}`].join(`
35
+ `)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class il extends _{constructor(t){super(`Value \`${t}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class Kr extends _{constructor(t){super(`Type \`${t}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}class ra extends wr{constructor(t,n){super(),this.finished=!1,this.destroyed=!1,Xc(t);const r=sn(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),lt(o)}update(t){return dt(this),this.iHash.update(t),this}digestInto(t){dt(this),Ve(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 sa=(e,t,n)=>new ra(e,t).update(n).digest();sa.create=(e,t)=>new ra(e,t);const J=BigInt(0),K=BigInt(1),Ge=BigInt(2),al=BigInt(3),oa=BigInt(4),ia=BigInt(5),aa=BigInt(8);function X(e,t){const n=e%t;return n>=J?n:t+n}function re(e,t,n){let r=e;for(;t-- >J;)r*=r,r%=n;return r}function ar(e,t){if(e===J)throw new Error("invert: expected non-zero number");if(t<=J)throw new Error("invert: expected positive modulus, got "+t);let n=X(e,t),r=t,s=J,o=K;for(;n!==J;){const a=r/n,c=r%n,u=s-o*a;r=n,n=c,s=o,o=u}if(r!==K)throw new Error("invert: does not exist");return X(s,t)}function ca(e,t){const n=(e.ORDER+K)/oa,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw new Error("Cannot find square root");return r}function cl(e,t){const n=(e.ORDER-ia)/aa,r=e.mul(t,Ge),s=e.pow(r,n),o=e.mul(t,s),i=e.mul(e.mul(o,Ge),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 ul(e){if(e<BigInt(3))throw new Error("sqrt is not defined for small field");let t=e-K,n=0;for(;t%Ge===J;)t/=Ge,n++;let r=Ge;const s=Yr(e);for(;Qs(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return ca;let o=s.pow(r,t);const i=(t+K)/Ge;return function(c,u){if(c.is0(u))return u;if(Qs(c,u)!==1)throw new Error("Cannot find square root");let f=n,d=c.mul(c.ONE,o),l=c.pow(u,t),b=c.pow(u,i);for(;!c.eql(l,c.ONE);){if(c.is0(l))return c.ZERO;let y=1,p=c.sqr(l);for(;!c.eql(p,c.ONE);)if(y++,p=c.sqr(p),y===f)throw new Error("Cannot find square root");const g=K<<BigInt(f-y-1),P=c.pow(d,g);f=y,d=c.sqr(P),l=c.mul(l,d),b=c.mul(b,P)}return b}}function fl(e){return e%oa===al?ca:e%aa===ia?cl:ul(e)}const dl=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ll(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=dl.reduce((r,s)=>(r[s]="function",r),t);return bn(e,n)}function bl(e,t,n){if(n<J)throw new Error("invalid exponent, negatives unsupported");if(n===J)return e.ONE;if(n===K)return t;let r=e.ONE,s=t;for(;n>J;)n&K&&(r=e.mul(r,s)),s=e.sqr(s),n>>=K;return r}function ua(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 Qs(e,t){const n=(e.ORDER-K)/Ge,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 fa(e,t){t!==void 0&&At(t);const n=t!==void 0?t:e.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Yr(e,t,n=!1,r={}){if(e<=J)throw new Error("invalid field: expected ORDER > 0, got "+e);const{nBitLength:s,nByteLength:o}=fa(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:ln(s),ZERO:J,ONE:K,create:c=>X(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof c);return J<=c&&c<e},is0:c=>c===J,isOdd:c=>(c&K)===K,neg:c=>X(-c,e),eql:(c,u)=>c===u,sqr:c=>X(c*c,e),add:(c,u)=>X(c+u,e),sub:(c,u)=>X(c-u,e),mul:(c,u)=>X(c*u,e),pow:(c,u)=>bl(a,c,u),div:(c,u)=>X(c*ar(u,e),e),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>ar(c,e),sqrt:r.sqrt||(c=>(i||(i=fl(e)),i(a,c))),toBytes:c=>n?gi(c,o):_t(c,o),fromBytes:c=>{if(c.length!==o)throw new Error("Field.fromBytes: expected "+o+" bytes, got "+c.length);return n?mi(c):qe(c)},invertBatch:c=>ua(a,c),cmov:(c,u,f)=>f?u:c});return Object.freeze(a)}function da(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 la(e){const t=da(e);return t+Math.ceil(t/2)}function hl(e,t,n=!1){const r=e.length,s=da(t),o=la(t);if(r<16||r<o||r>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+r);const i=n?mi(e):qe(e),a=X(i,t-K)+K;return n?gi(a,s):_t(a,s)}const eo=BigInt(0),cr=BigInt(1);function Cn(e,t){const n=t.negate();return e?n:t}function ba(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function zn(e,t){ba(e,t);const n=Math.ceil(t/e)+1,r=2**(e-1),s=2**e,o=ln(e),i=BigInt(e);return{windows:n,windowSize:r,mask:o,maxNumber:s,shiftBy:i}}function to(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+=cr);const u=t*r,f=u+Math.abs(a)-1,d=a===0,l=a<0,b=t%2!==0;return{nextN:c,offset:f,isZero:d,isNeg:l,isNegF:b,offsetF:u}}function pl(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 yl(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 Ln=new WeakMap,ha=new WeakMap;function _n(e){return ha.get(e)||1}function ml(e,t){return{constTimeNegate:Cn,hasPrecomputes(n){return _n(n)!==1},unsafeLadder(n,r,s=e.ZERO){let o=n;for(;r>eo;)r&cr&&(s=s.add(o)),o=o.double(),r>>=cr;return s},precomputeWindow(n,r){const{windows:s,windowSize:o}=zn(r,t),i=[];let a=n,c=a;for(let u=0;u<s;u++){c=a,i.push(c);for(let f=1;f<o;f++)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=zn(n,t);for(let c=0;c<a.windows;c++){const{nextN:u,offset:f,isZero:d,isNeg:l,isNegF:b,offsetF:y}=to(s,c,a);s=u,d?i=i.add(Cn(b,r[y])):o=o.add(Cn(l,r[f]))}return{p:o,f:i}},wNAFUnsafe(n,r,s,o=e.ZERO){const i=zn(n,t);for(let a=0;a<i.windows&&s!==eo;a++){const{nextN:c,offset:u,isZero:f,isNeg:d}=to(s,a,i);if(s=c,!f){const l=r[u];o=o.add(d?l.negate():l)}}return o},getPrecomputes(n,r,s){let o=Ln.get(r);return o||(o=this.precomputeWindow(r,n),n!==1&&Ln.set(r,s(o))),o},wNAFCached(n,r,s){const o=_n(n);return this.wNAF(o,this.getPrecomputes(o,n,s),r)},wNAFCachedUnsafe(n,r,s,o){const i=_n(n);return i===1?this.unsafeLadder(n,r,o):this.wNAFUnsafe(i,this.getPrecomputes(i,n,s),r,o)},setWindowSize(n,r){ba(r,t),ha.set(n,r),Ln.delete(n)}}}function gl(e,t,n,r){pl(n,e),yl(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=_u(BigInt(s));let c=1;a>12?c=a-3:a>4?c=a-2:a>0&&(c=2);const u=ln(c),f=new Array(Number(u)+1).fill(i),d=Math.floor((t.BITS-1)/c)*c;let l=i;for(let b=d;b>=0;b-=c){f.fill(i);for(let p=0;p<o;p++){const g=r[p],P=Number(g>>BigInt(b)&u);f[P]=f[P].add(n[p])}let y=i;for(let p=f.length-1,g=i;p>0;p--)g=g.add(f[p]),y=y.add(g);if(l=l.add(y),b!==0)for(let p=0;p<c;p++)l=l.double()}return l}function pa(e){return ll(e.Fp),bn(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...fa(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}function no(e){e.lowS!==void 0&&$t("lowS",e.lowS),e.prehash!==void 0&&$t("prehash",e.prehash)}function wl(e){const t=pa(e);bn(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 xl extends Error{constructor(t=""){super(t)}}const Ae={Err:xl,_tlv:{encode:(e,t)=>{const{Err:n}=Ae;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=Vt(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const o=r>127?Vt(s.length/2|128):"";return Vt(e)+o+s+t},decode(e,t){const{Err:n}=Ae;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 u=t.subarray(r,r+c);if(u.length!==c)throw new n("tlv.decode: length bytes not complete");if(u[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const f of u)i=i<<8|f;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}=Ae;if(e<Be)throw new t("integer: negative integers are not allowed");let n=Vt(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}=Ae;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 qe(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=Ae,s=se("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:u,l:f}=r.decode(2,c);if(f.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(a),s:n.decode(u)}},hexFromSig(e){const{_tlv:t,_int:n}=Ae,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 Un(e,t){return It(_t(e,t))}const Be=BigInt(0),D=BigInt(1);BigInt(2);const Mn=BigInt(3),vl=BigInt(4);function El(e){const t=wl(e),{Fp:n}=t,r=Yr(t.n,t.nBitLength),s=t.toBytes||((w,h,m)=>{const E=h.toAffine();return Qt(Uint8Array.from([4]),n.toBytes(E.x),n.toBytes(E.y))}),o=t.fromBytes||(w=>{const h=w.subarray(1),m=n.fromBytes(h.subarray(0,n.BYTES)),E=n.fromBytes(h.subarray(n.BYTES,2*n.BYTES));return{x:m,y:E}});function i(w){const{a:h,b:m}=t,E=n.sqr(w),x=n.mul(E,w);return n.add(n.add(x,n.mul(w,h)),m)}function a(w,h){const m=n.sqr(h),E=i(w);return n.eql(m,E)}if(!a(t.Gx,t.Gy))throw new Error("bad curve params: generator point");const c=n.mul(n.pow(t.a,Mn),vl),u=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,u)))throw new Error("bad curve params: a or b");function f(w){return Lr(w,D,t.n)}function d(w){const{allowedPrivateKeyLengths:h,nByteLength:m,wrapPrivateKey:E,n:x}=t;if(h&&typeof w!="bigint"){if(Lt(w)&&(w=It(w)),typeof w!="string"||!h.includes(w.length))throw new Error("invalid private key");w=w.padStart(m*2,"0")}let $;try{$=typeof w=="bigint"?w:qe(se("private key",w,m))}catch{throw new Error("invalid private key, expected hex or "+m+" bytes, got "+typeof w)}return E&&($=X($,x)),ct("private key",$,D,x),$}function l(w){if(!(w instanceof p))throw new Error("ProjectivePoint expected")}const b=Gs((w,h)=>{const{px:m,py:E,pz:x}=w;if(n.eql(x,n.ONE))return{x:m,y:E};const $=w.is0();h==null&&(h=$?n.ONE:n.inv(x));const N=n.mul(m,h),v=n.mul(E,h),k=n.mul(x,h);if($)return{x:n.ZERO,y:n.ZERO};if(!n.eql(k,n.ONE))throw new Error("invZ was invalid");return{x:N,y:v}}),y=Gs(w=>{if(w.is0()){if(t.allowInfinityPoint&&!n.is0(w.py))return;throw new Error("bad point: ZERO")}const{x:h,y:m}=w.toAffine();if(!n.isValid(h)||!n.isValid(m))throw new Error("bad point: x or y not FE");if(!a(h,m))throw new Error("bad point: equation left != right");if(!w.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class p{constructor(h,m,E){if(h==null||!n.isValid(h))throw new Error("x required");if(m==null||!n.isValid(m)||n.is0(m))throw new Error("y required");if(E==null||!n.isValid(E))throw new Error("z required");this.px=h,this.py=m,this.pz=E,Object.freeze(this)}static fromAffine(h){const{x:m,y:E}=h||{};if(!h||!n.isValid(m)||!n.isValid(E))throw new Error("invalid affine point");if(h instanceof p)throw new Error("projective point not allowed");const x=$=>n.eql($,n.ZERO);return x(m)&&x(E)?p.ZERO:new p(m,E,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(h){const m=ua(n,h.map(E=>E.pz));return h.map((E,x)=>E.toAffine(m[x])).map(p.fromAffine)}static fromHex(h){const m=p.fromAffine(o(se("pointHex",h)));return m.assertValidity(),m}static fromPrivateKey(h){return p.BASE.multiply(d(h))}static msm(h,m){return gl(p,r,h,m)}_setWindowSize(h){I.setWindowSize(this,h)}assertValidity(){y(this)}hasEvenY(){const{y:h}=this.toAffine();if(n.isOdd)return!n.isOdd(h);throw new Error("Field doesn't support isOdd")}equals(h){l(h);const{px:m,py:E,pz:x}=this,{px:$,py:N,pz:v}=h,k=n.eql(n.mul(m,v),n.mul($,x)),R=n.eql(n.mul(E,v),n.mul(N,x));return k&&R}negate(){return new p(this.px,n.neg(this.py),this.pz)}double(){const{a:h,b:m}=t,E=n.mul(m,Mn),{px:x,py:$,pz:N}=this;let v=n.ZERO,k=n.ZERO,R=n.ZERO,F=n.mul(x,x),M=n.mul($,$),B=n.mul(N,N),A=n.mul(x,$);return A=n.add(A,A),R=n.mul(x,N),R=n.add(R,R),v=n.mul(h,R),k=n.mul(E,B),k=n.add(v,k),v=n.sub(M,k),k=n.add(M,k),k=n.mul(v,k),v=n.mul(A,v),R=n.mul(E,R),B=n.mul(h,B),A=n.sub(F,B),A=n.mul(h,A),A=n.add(A,R),R=n.add(F,F),F=n.add(R,F),F=n.add(F,B),F=n.mul(F,A),k=n.add(k,F),B=n.mul($,N),B=n.add(B,B),F=n.mul(B,A),v=n.sub(v,F),R=n.mul(B,M),R=n.add(R,R),R=n.add(R,R),new p(v,k,R)}add(h){l(h);const{px:m,py:E,pz:x}=this,{px:$,py:N,pz:v}=h;let k=n.ZERO,R=n.ZERO,F=n.ZERO;const M=t.a,B=n.mul(t.b,Mn);let A=n.mul(m,$),O=n.mul(E,N),S=n.mul(x,v),C=n.add(m,E),U=n.add($,N);C=n.mul(C,U),U=n.add(A,O),C=n.sub(C,U),U=n.add(m,x);let j=n.add($,v);return U=n.mul(U,j),j=n.add(A,S),U=n.sub(U,j),j=n.add(E,x),k=n.add(N,v),j=n.mul(j,k),k=n.add(O,S),j=n.sub(j,k),F=n.mul(M,U),k=n.mul(B,S),F=n.add(k,F),k=n.sub(O,F),F=n.add(O,F),R=n.mul(k,F),O=n.add(A,A),O=n.add(O,A),S=n.mul(M,S),U=n.mul(B,U),O=n.add(O,S),S=n.sub(A,S),S=n.mul(M,S),U=n.add(U,S),A=n.mul(O,U),R=n.add(R,A),A=n.mul(j,U),k=n.mul(C,k),k=n.sub(k,A),A=n.mul(C,O),F=n.mul(j,F),F=n.add(F,A),new p(k,R,F)}subtract(h){return this.add(h.negate())}is0(){return this.equals(p.ZERO)}wNAF(h){return I.wNAFCached(this,h,p.normalizeZ)}multiplyUnsafe(h){const{endo:m,n:E}=t;ct("scalar",h,Be,E);const x=p.ZERO;if(h===Be)return x;if(this.is0()||h===D)return this;if(!m||I.hasPrecomputes(this))return I.wNAFCachedUnsafe(this,h,p.normalizeZ);let{k1neg:$,k1:N,k2neg:v,k2:k}=m.splitScalar(h),R=x,F=x,M=this;for(;N>Be||k>Be;)N&D&&(R=R.add(M)),k&D&&(F=F.add(M)),M=M.double(),N>>=D,k>>=D;return $&&(R=R.negate()),v&&(F=F.negate()),F=new p(n.mul(F.px,m.beta),F.py,F.pz),R.add(F)}multiply(h){const{endo:m,n:E}=t;ct("scalar",h,D,E);let x,$;if(m){const{k1neg:N,k1:v,k2neg:k,k2:R}=m.splitScalar(h);let{p:F,f:M}=this.wNAF(v),{p:B,f:A}=this.wNAF(R);F=I.constTimeNegate(N,F),B=I.constTimeNegate(k,B),B=new p(n.mul(B.px,m.beta),B.py,B.pz),x=F.add(B),$=M.add(A)}else{const{p:N,f:v}=this.wNAF(h);x=N,$=v}return p.normalizeZ([x,$])[0]}multiplyAndAddUnsafe(h,m,E){const x=p.BASE,$=(v,k)=>k===Be||k===D||!v.equals(x)?v.multiplyUnsafe(k):v.multiply(k),N=$(this,m).add($(h,E));return N.is0()?void 0:N}toAffine(h){return b(this,h)}isTorsionFree(){const{h,isTorsionFree:m}=t;if(h===D)return!0;if(m)return m(p,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h,clearCofactor:m}=t;return h===D?this:m?m(p,this):this.multiplyUnsafe(t.h)}toRawBytes(h=!0){return $t("isCompressed",h),this.assertValidity(),s(p,this,h)}toHex(h=!0){return $t("isCompressed",h),It(this.toRawBytes(h))}}p.BASE=new p(t.Gx,t.Gy,n.ONE),p.ZERO=new p(n.ZERO,n.ONE,n.ZERO);const{endo:g,nBitLength:P}=t,I=ml(p,g?Math.ceil(P/2):P);return{CURVE:t,ProjectivePoint:p,normPrivateKeyToScalar:d,weierstrassEquation:i,isWithinCurveOrder:f}}function Pl(e){const t=pa(e);return bn(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Al(e){const t=Pl(e),{Fp:n,n:r,nByteLength:s,nBitLength:o}=t,i=n.BYTES+1,a=2*n.BYTES+1;function c(B){return X(B,r)}function u(B){return ar(B,r)}const{ProjectivePoint:f,normPrivateKeyToScalar:d,weierstrassEquation:l,isWithinCurveOrder:b}=El({...t,toBytes(B,A,O){const S=A.toAffine(),C=n.toBytes(S.x),U=Qt;return $t("isCompressed",O),O?U(Uint8Array.from([A.hasEvenY()?2:3]),C):U(Uint8Array.from([4]),C,n.toBytes(S.y))},fromBytes(B){const A=B.length,O=B[0],S=B.subarray(1);if(A===i&&(O===2||O===3)){const C=qe(S);if(!Lr(C,D,n.ORDER))throw new Error("Point is not on curve");const U=l(C);let j;try{j=n.sqrt(U)}catch(Y){const Z=Y instanceof Error?": "+Y.message:"";throw new Error("Point is not on curve"+Z)}const G=(j&D)===D;return(O&1)===1!==G&&(j=n.neg(j)),{x:C,y:j}}else if(A===a&&O===4){const C=n.fromBytes(S.subarray(0,n.BYTES)),U=n.fromBytes(S.subarray(n.BYTES,2*n.BYTES));return{x:C,y:U}}else{const C=i,U=a;throw new Error("invalid Point, expected length of "+C+", or uncompressed "+U+", got "+A)}}});function y(B){const A=r>>D;return B>A}function p(B){return y(B)?c(-B):B}const g=(B,A,O)=>qe(B.slice(A,O));class P{constructor(A,O,S){ct("r",A,D,r),ct("s",O,D,r),this.r=A,this.s=O,S!=null&&(this.recovery=S),Object.freeze(this)}static fromCompact(A){const O=s;return A=se("compactSignature",A,O*2),new P(g(A,0,O),g(A,O,2*O))}static fromDER(A){const{r:O,s:S}=Ae.toSig(se("DER",A));return new P(O,S)}assertValidity(){}addRecoveryBit(A){return new P(this.r,this.s,A)}recoverPublicKey(A){const{r:O,s:S,recovery:C}=this,U=x(se("msgHash",A));if(C==null||![0,1,2,3].includes(C))throw new Error("recovery id invalid");const j=C===2||C===3?O+t.n:O;if(j>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const G=(C&1)===0?"02":"03",ae=f.fromHex(G+Un(j,n.BYTES)),Y=u(j),Z=c(-U*Y),Qe=c(S*Y),Re=f.BASE.multiplyAndAddUnsafe(ae,Z,Qe);if(!Re)throw new Error("point at infinify");return Re.assertValidity(),Re}hasHighS(){return y(this.s)}normalizeS(){return this.hasHighS()?new P(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Jt(this.toDERHex())}toDERHex(){return Ae.hexFromSig(this)}toCompactRawBytes(){return Jt(this.toCompactHex())}toCompactHex(){const A=s;return Un(this.r,A)+Un(this.s,A)}}const I={isValidPrivateKey(B){try{return d(B),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{const B=la(t.n);return hl(t.randomBytes(B),t.n)},precompute(B=8,A=f.BASE){return A._setWindowSize(B),A.multiply(BigInt(3)),A}};function w(B,A=!0){return f.fromPrivateKey(B).toRawBytes(A)}function h(B){if(typeof B=="bigint")return!1;if(B instanceof f)return!0;const O=se("key",B).length,S=n.BYTES,C=S+1,U=2*S+1;if(!(t.allowedPrivateKeyLengths||s===C))return O===C||O===U}function m(B,A,O=!0){if(h(B)===!0)throw new Error("first arg must be private key");if(h(A)===!1)throw new Error("second arg must be public key");return f.fromHex(A).multiply(d(B)).toRawBytes(O)}const E=t.bits2int||function(B){if(B.length>8192)throw new Error("input is too large");const A=qe(B),O=B.length*8-o;return O>0?A>>BigInt(O):A},x=t.bits2int_modN||function(B){return c(E(B))},$=ln(o);function N(B){return ct("num < 2^"+o,B,Be,$),_t(B,s)}function v(B,A,O=k){if(["recovered","canonical"].some(Me=>Me in O))throw new Error("sign() legacy options not supported");const{hash:S,randomBytes:C}=t;let{lowS:U,prehash:j,extraEntropy:G}=O;U==null&&(U=!0),B=se("msgHash",B),no(O),j&&(B=se("prehashed msgHash",S(B)));const ae=x(B),Y=d(A),Z=[N(Y),N(ae)];if(G!=null&&G!==!1){const Me=G===!0?C(n.BYTES):G;Z.push(se("extraEntropy",Me))}const Qe=Qt(...Z),Re=ae;function xn(Me){const et=E(Me);if(!b(et))return;const vn=u(et),xt=f.BASE.multiply(et).toAffine(),je=c(xt.x);if(je===Be)return;const vt=c(vn*c(Re+je*Y));if(vt===Be)return;let tt=(xt.x===je?0:2)|Number(xt.y&D),es=vt;return U&&y(vt)&&(es=p(vt),tt^=1),new P(je,es,tt)}return{seed:Qe,k2sig:xn}}const k={lowS:t.lowS,prehash:!1},R={lowS:t.lowS,prehash:!1};function F(B,A,O=k){const{seed:S,k2sig:C}=v(B,A,O),U=t;return Uu(U.hash.outputLen,U.nByteLength,U.hmac)(S,C)}f.BASE._setWindowSize(8);function M(B,A,O,S=R){const C=B;A=se("msgHash",A),O=se("publicKey",O);const{lowS:U,prehash:j,format:G}=S;if(no(S),"strict"in S)throw new Error("options.strict was renamed to lowS");if(G!==void 0&&G!=="compact"&&G!=="der")throw new Error("format must be compact or der");const ae=typeof C=="string"||Lt(C),Y=!ae&&!G&&typeof C=="object"&&C!==null&&typeof C.r=="bigint"&&typeof C.s=="bigint";if(!ae&&!Y)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let Z,Qe;try{if(Y&&(Z=new P(C.r,C.s)),ae){try{G!=="compact"&&(Z=P.fromDER(C))}catch(tt){if(!(tt instanceof Ae.Err))throw tt}!Z&&G!=="der"&&(Z=P.fromCompact(C))}Qe=f.fromHex(O)}catch{return!1}if(!Z||U&&Z.hasHighS())return!1;j&&(A=t.hash(A));const{r:Re,s:xn}=Z,Me=x(A),et=u(xn),vn=c(Me*et),xt=c(Re*et),je=f.BASE.multiplyAndAddUnsafe(Qe,vn,xt)?.toAffine();return je?c(je.x)===Re:!1}return{CURVE:t,getPublicKey:w,getSharedSecret:m,sign:F,verify:M,ProjectivePoint:f,Signature:P,utils:I}}function Bl(e){return{hash:e,hmac:(t,...n)=>sa(e,t,r0(...n)),randomBytes:s0}}function $l(e,t){const n=r=>Al({...e,...Bl(r)});return{...n(t),create:n}}const ya=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),ro=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Il=BigInt(0),Sl=BigInt(1),ur=BigInt(2),so=(e,t)=>(e+t/ur)/t;function Tl(e){const t=ya,n=BigInt(3),r=BigInt(6),s=BigInt(11),o=BigInt(22),i=BigInt(23),a=BigInt(44),c=BigInt(88),u=e*e*e%t,f=u*u*e%t,d=re(f,n,t)*f%t,l=re(d,n,t)*f%t,b=re(l,ur,t)*u%t,y=re(b,s,t)*b%t,p=re(y,o,t)*y%t,g=re(p,a,t)*p%t,P=re(g,c,t)*g%t,I=re(P,a,t)*p%t,w=re(I,n,t)*f%t,h=re(w,i,t)*y%t,m=re(h,r,t)*u%t,E=re(m,ur,t);if(!fr.eql(fr.sqr(E),e))throw new Error("Cannot find square root");return E}const fr=Yr(ya,void 0,void 0,{sqrt:Tl}),ma=$l({a:Il,b:BigInt(7),Fp:fr,n:ro,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=ro,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-Sl*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=n,i=BigInt("0x100000000000000000000000000000000"),a=so(o*e,t),c=so(-r*e,t);let u=X(e-a*n-c*s,t),f=X(-a*r-c*o,t);const d=u>i,l=f>i;if(d&&(u=t-u),l&&(f=t-f),u>i||f>i)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:d,k1:u,k2neg:l,k2:f}}}},ui),kl=Object.freeze(Object.defineProperty({__proto__:null,secp256k1:ma},Symbol.toStringTag,{value:"Module"}));function ga(e,t={}){const{recovered:n}=t;if(typeof e.r>"u")throw new jn({signature:e});if(typeof e.s>"u")throw new jn({signature:e});if(n&&typeof e.yParity>"u")throw new jn({signature:e});if(e.r<0n||e.r>Ys)throw new Ll({value:e.r});if(e.s<0n||e.s>Ys)throw new _l({value:e.s});if(typeof e.yParity=="number"&&e.yParity!==0&&e.yParity!==1)throw new Jr({value:e.yParity})}function Nl(e){return wa(le(e))}function wa(e){if(e.length!==130&&e.length!==132)throw new zl({signature:e});const t=BigInt(ge(e,0,32)),n=BigInt(ge(e,32,64)),r=(()=>{const s=+`0x${e.slice(130)}`;if(!Number.isNaN(s))try{return Xr(s)}catch{throw new Jr({value:s})}})();return typeof r>"u"?{r:t,s:n}:{r:t,s:n,yParity:r}}function Fl(e){if(!(typeof e.r>"u")&&!(typeof e.s>"u"))return Rl(e)}function Rl(e){const t=typeof e=="string"?wa(e):e instanceof Uint8Array?Nl(e):typeof e.r=="string"?Cl(e):e.v?Ol(e):{r:e.r,s:e.s,...typeof e.yParity<"u"?{yParity:e.yParity}:{}};return ga(t),t}function Ol(e){return{r:e.r,s:e.s,yParity:Xr(e.v)}}function Cl(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=Xr(n)),typeof r!="number")throw new Jr({value:e.yParity});return r})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function Xr(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 Ul({value:e})}class zl extends _{constructor({signature:t}){super(`Value \`${t}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${ne(df(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class jn extends _{constructor({signature:t}){super(`Signature \`${Ei(t)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class Ll extends _{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 _l extends _{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 Jr extends _{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 Ul extends _{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 Ml(e,t={}){return typeof e.chainId=="string"?jl(e):{...e,...t.signature}}function jl(e){const{address:t,chainId:n,nonce:r}=e,s=Fl(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...s}}const Gl="0x8010801080108010801080108010801080108010801080108010801080108010",Hl=ea("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function xa(e){if(typeof e=="string"){if(ge(e,-32)!==Gl)throw new Vl(e)}else ga(e.authorization)}function Dl(e){xa(e);const t=Ii(ge(e,-64,-32)),n=ge(e,-t-64,-64),r=ge(e,0,-t-64),[s,o,i]=nl(Hl,n);return{authorization:Ml({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 ql(e){try{return xa(e),!0}catch{return!1}}let Vl=class extends _{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 Zl(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function Wl(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?Se(e.nonce):void 0,storageProof:e.storageProof?Zl(e.storageProof):void 0}}async function Kl(e,{address:t,blockNumber:n,blockTag:r,storageKeys:s}){const o=r??"latest",i=n!==void 0?L(n):void 0,a=await e.request({method:"eth_getProof",params:[t,s,i||o]});return Wl(a)}async function Yl(e,{address:t,blockNumber:n,blockTag:r="latest",slot:s}){const o=n!==void 0?L(n):void 0;return await e.request({method:"eth_getStorageAt",params:[t,s,o||r]})}async function Qr(e,{blockHash:t,blockNumber:n,blockTag:r,hash:s,index:o,sender:i,nonce:a}){const c=r||"latest",u=n!==void 0?L(n):void 0;let f=null;if(s?f=await e.request({method:"eth_getTransactionByHash",params:[s]},{dedupe:!0}):t?f=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,L(o)]},{dedupe:!0}):typeof o=="number"?f=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[u||c,L(o)]},{dedupe:!!u}):i&&typeof a=="number"&&(f=await e.request({method:"eth_getTransactionBySenderAndNonce",params:[i,L(a)]},{dedupe:!0})),!f)throw new Zo({blockHash:t,blockNumber:n,blockTag:c,hash:s,index:o});return(e.chain?.formatters?.transaction?.format||Sr)(f,"getTransaction")}async function Xl(e,{hash:t,transactionReceipt:n}){const[r,s]=await Promise.all([z(e,Gt,"getBlockNumber")({}),t?z(e,Qr,"getTransaction")({hash:t}):void 0]),o=n?.blockNumber||s?.blockNumber;return o?r-o+1n:0n}async function Zt(e,{hash:t}){const n=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!n)throw new Wo({hash:t});return(e.chain?.formatters?.transactionReceipt?.format||Ci)(n,"getTransactionReceipt")}async function Jl(e,t){const{account:n,authorizationList:r,allowFailure:s=!0,blockNumber:o,blockOverrides:i,blockTag:a,stateOverride:c}=t,u=t.contracts,{batchSize:f=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall=="object"?e.batch.multicall:{},l=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return wt({blockNumber:o,chain:e.chain,contract:"multicall3"});throw new Error("client chain not configured. multicallAddress is required.")})(),b=[[]];let y=0,p=0;for(let I=0;I<u.length;I++){const{abi:w,address:h,args:m,functionName:E}=u[I];try{const x=he({abi:w,args:m,functionName:E});p+=(x.length-2)/2,f>0&&p>f&&b[y].length>0&&(y++,p=(x.length-2)/2,b[y]=[]),b[y]=[...b[y],{allowFailure:!0,callData:x,target:h}]}catch(x){const $=ht(x,{abi:w,address:h,args:m,docsPath:"/docs/contract/multicall",functionName:E,sender:n});if(!s)throw $;b[y]=[...b[y],{allowFailure:!0,callData:"0x",target:h}]}}const g=await Promise.allSettled(b.map(I=>z(e,be,"readContract")({...l===null?{code:Ur}:{address:l},abi:Wt,account:n,args:[I],authorizationList:r,blockNumber:o,blockOverrides:i,blockTag:a,functionName:"aggregate3",stateOverride:c}))),P=[];for(let I=0;I<g.length;I++){const w=g[I];if(w.status==="rejected"){if(!s)throw w.reason;for(let m=0;m<b[I].length;m++)P.push({status:"failure",error:w.reason,result:void 0});continue}const h=w.value;for(let m=0;m<h.length;m++){const{returnData:E,success:x}=h[m],{callData:$}=b[I][m],{abi:N,address:v,functionName:k,args:R}=u[P.length];try{if($==="0x")throw new kt;if(!x)throw new un({data:E});const F=Je({abi:N,args:R,data:E,functionName:k});P.push(s?{result:F,status:"success"}:F)}catch(F){const M=ht(F,{abi:N,address:v,args:R,docsPath:"/docs/contract/multicall",functionName:k});if(!s)throw M;P.push({error:M,result:void 0,status:"failure"})}}}if(P.length!==u.length)throw new T("multicall results mismatch");return P}async function dr(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 b=l.blockOverrides?ki(l.blockOverrides):void 0,y=l.calls.map(g=>{const P=g,I=P.account?te(P.account):void 0,w=P.abi?he(P):P.data,h={...P,account:I,data:P.dataSuffix?fe([w||"0x",P.dataSuffix]):w,from:P.from??I?.address};return gt(h),Ct(h)}),p=l.stateOverrides?$r(l.stateOverrides):void 0;c.push({blockOverrides:b,calls:y,stateOverrides:p})}const f=(typeof n=="bigint"?L(n):void 0)||r;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:c,returnFullTransactions:o,traceTransfers:i,validation:a},f]})).map((l,b)=>({...si(l),calls:l.calls.map((y,p)=>{const{abi:g,args:P,functionName:I,to:w}=s[b].calls[p],h=y.error?.data??y.returnData,m=BigInt(y.gasUsed),E=y.logs?.map(v=>Ne(v)),x=y.status==="0x1"?"success":"failure",$=g&&x==="success"&&h!=="0x"?Je({abi:g,data:h,functionName:I}):null,N=(()=>{if(x==="success")return;let v;if(y.error?.data==="0x"?v=new kt:y.error&&(v=new un(y.error)),!!v)return ht(v,{abi:g??[],address:w??"0x",args:P,functionName:I??"<unknown>"})})();return{data:h,gasUsed:m,logs:E,status:x,...x==="success"?{result:$}:{error:N}}})}))}catch(c){const u=c,f=fn(u,{});throw f instanceof Tt?u:f}}function lr(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 _("Unable to normalize signature.");return s}function br(e,t){const n=typeof e,r=t.type;switch(r){case"address":return sr(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)=>br(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=>br(s,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function va(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 va(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")?sr(n[r],{strict:!1}):i.includes("address")&&i.includes("bytes")?sr(n[r],{strict:!1}):!1)return i}}function Ea(e,t={}){const{prepare:n=!0}=t,r=Array.isArray(e)||typeof e=="string"?gs(e):e;return{...r,...n?{hash:it(r)}:{}}}function gn(e,t,n){const{args:r=[],prepare:s=!0}=n??{},o=lf(t,{strict:!1}),i=e.filter(u=>o?u.type==="function"||u.type==="error"?Pa(u)===ge(t,0,4):u.type==="event"?it(u)===t:!1:"name"in u&&u.name===t);if(i.length===0)throw new en({name:t});if(i.length===1)return{...i[0],...s?{hash:it(i[0])}:{}};let a;for(const u of i){if(!("inputs"in u))continue;if(!r||r.length===0){if(!u.inputs||u.inputs.length===0)return{...u,...s?{hash:it(u)}:{}};continue}if(!u.inputs||u.inputs.length===0||u.inputs.length!==r.length)continue;if(r.every((d,l)=>{const b="inputs"in u&&u.inputs[l];return b?br(d,b):!1})){if(a&&"inputs"in a&&a.inputs){const d=va(u.inputs,a.inputs,r);if(d)throw new e1({abiItem:u,type:d[0]},{abiItem:a,type:d[1]})}a=u}}const c=(()=>{if(a)return a;const[u,...f]=i;return{...u,overloads:f}})();if(!c)throw new en({name:t});return{...c,...s?{hash:it(c)}:{}}}function Pa(...e){const t=(()=>{if(Array.isArray(e[0])){const[n,r]=e;return gn(n,r)}return e[0]})();return ge(it(t),0,4)}function Ql(...e){const t=(()=>{if(Array.isArray(e[0])){const[r,s]=e;return gn(r,s)}return e[0]})(),n=typeof t=="string"?t:Kt(t);return lr(n)}function it(...e){const t=(()=>{if(Array.isArray(e[0])){const[n,r]=e;return gn(n,r)}return e[0]})();return typeof t!="string"&&"hash"in t&&t.hash?t.hash:Xi(_r(Ql(t)))}class e1 extends _{constructor(t,n){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${t.type}\` in \`${lr(Kt(t.abiItem))}\`, and`,`\`${n.type}\` in \`${lr(Kt(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 en extends _{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 t1(...e){const[t,n]=(()=>{if(Array.isArray(e[0])){const[o,i]=e;return[r1(o),i]}return e})(),{bytecode:r,args:s}=n;return de(r,t.inputs?.length&&s?.length?Wr(t.inputs,s):"0x")}function n1(e){return Ea(e)}function r1(e){const t=e.find(n=>n.type==="constructor");if(!t)throw new en({name:"constructor"});return t}function s1(...e){const[t,n=[]]=(()=>{if(Array.isArray(e[0])){const[u,f,d]=e;return[oo(u,f,{args:d}),d]}const[a,c]=e;return[a,c]})(),{overloads:r}=t,s=r?oo([t,...r],t.name,{args:n}):t,o=o1(s),i=n.length>0?Wr(s.inputs,n):void 0;return i?de(o,i):o}function rt(e,t={}){return Ea(e,t)}function oo(e,t,n){const r=gn(e,t,n);if(r.type!=="function")throw new en({name:t,type:"function"});return r}function o1(e){return Pa(e)}const i1="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",ye="0x0000000000000000000000000000000000000000",a1="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function c1(e,t){const{blockNumber:n,blockTag:r,calls:s,stateOverrides:o,traceAssetChanges:i,traceTransfers:a,validation:c}=t,u=t.account?te(t.account):void 0;if(i&&!u)throw new T("`account` is required when `traceAssetChanges` is true");const f=u?t1(n1("constructor(bytes, bytes)"),{bytecode:Ni,args:[a1,s1(rt("function getBalance(address)"),[u.address])]}):void 0,d=i?await Promise.all(t.calls.map(async S=>{if(!S.data&&!S.abi)return;const{accessList:C}=await ji(e,{account:u.address,...S,data:S.abi?he(S):S.data});return C.map(({address:U,storageKeys:j})=>j.length>0?U:null)})).then(S=>S.flat().filter(Boolean)):[],l=await dr(e,{blockNumber:n,blockTag:r,blocks:[...i?[{calls:[{data:f}],stateOverrides:o},{calls:d.map((S,C)=>({abi:[rt("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[u.address],to:S,from:ye,nonce:C})),stateOverrides:[{address:ye,nonce:0}]}]:[],{calls:[...s,{}].map(S=>({...S,from:u?.address})),stateOverrides:o},...i?[{calls:[{data:f}]},{calls:d.map((S,C)=>({abi:[rt("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[u.address],to:S,from:ye,nonce:C})),stateOverrides:[{address:ye,nonce:0}]},{calls:d.map((S,C)=>({to:S,abi:[rt("function decimals() returns (uint256)")],functionName:"decimals",from:ye,nonce:C})),stateOverrides:[{address:ye,nonce:0}]},{calls:d.map((S,C)=>({to:S,abi:[rt("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:ye,nonce:C})),stateOverrides:[{address:ye,nonce:0}]},{calls:d.map((S,C)=>({to:S,abi:[rt("function symbol() returns (string)")],functionName:"symbol",from:ye,nonce:C})),stateOverrides:[{address:ye,nonce:0}]}]:[]],traceTransfers:a,validation:c}),b=i?l[2]:l[0],[y,p,,g,P,I,w,h]=i?l:[],{calls:m,...E}=b,x=m.slice(0,-1)??[],$=y?.calls??[],N=p?.calls??[],v=[...$,...N].map(S=>S.status==="success"?Te(S.data):null),k=g?.calls??[],R=P?.calls??[],F=[...k,...R].map(S=>S.status==="success"?Te(S.data):null),M=(I?.calls??[]).map(S=>S.status==="success"?S.result:null),B=(h?.calls??[]).map(S=>S.status==="success"?S.result:null),A=(w?.calls??[]).map(S=>S.status==="success"?S.result:null),O=[];for(const[S,C]of F.entries()){const U=v[S];if(typeof C!="bigint"||typeof U!="bigint")continue;const j=M[S-1],G=B[S-1],ae=A[S-1],Y=S===0?{address:i1,decimals:18,symbol:"ETH"}:{address:d[S-1],decimals:ae||j?Number(j??1):void 0,symbol:G??void 0};O.some(Z=>Z.token.address===Y.address)||O.push({token:Y,value:{pre:U,post:C,diff:C-U}})}return{assetChanges:O,block:E,results:x}}const Aa="0x6492649264926492649264926492649264926492649264926492649264926492";function u1(e){if(ge(e,-32)!==Aa)throw new l1(e)}function f1(e){const{data:t,signature:n,to:r}=e;return de(Wr(ea("address, bytes, bytes"),[r,t,n]),Aa)}function d1(e){try{return u1(e),!0}catch{return!1}}class l1 extends _{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 b1({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 ma.Signature(Te(e),Te(t)).toCompactHex()}${o===0?"1b":"1c"}`;return n==="hex"?i:xe(i)}async function wn(e,t){const{address:n,chain:r=e.chain,hash:s,erc6492VerifierAddress:o=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:i=t.multicallAddress??r?.contracts?.multicall3?.address}=t;if(r?.verifyHash)return await r.verifyHash(e,t);const a=(()=>{const c=t.signature;return we(c)?c:typeof c=="object"&&"r"in c&&"s"in c?b1(c):V(c)})();try{return ql(a)?await h1(e,{...t,multicallAddress:i,signature:a}):await p1(e,{...t,verifierAddress:o,signature:a})}catch(c){try{if(zt(zo(n),await Xo({hash:s,signature:a})))return!0}catch{}if(c instanceof Ke)return!1;throw c}}async function h1(e,t){const{address:n,blockNumber:r,blockTag:s,hash:o,multicallAddress:i}=t,{authorization:a,data:c,signature:u,to:f}=Dl(t.signature);if(await rr(e,{address:n,blockNumber:r,blockTag:s})===mt(["0xef0100",a.address]))return await y1(e,{address:n,blockNumber:r,blockTag:s,hash:o,signature:u});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 dd({address:n,authorization:l}))throw new Ke;const y=await z(e,be,"readContract")({...i?{address:i}:{code:Ur},authorizationList:[l],abi:Wt,blockNumber:r,blockTag:"pending",functionName:"aggregate3",args:[[...c?[{allowFailure:!0,target:f??n,callData:c}]:[],{allowFailure:!0,target:n,callData:he({abi:uo,functionName:"isValidSignature",args:[o,u]})}]]});if(y[y.length-1]?.returnData?.startsWith("0x1626ba7e"))return!0;throw new Ke}async function p1(e,t){const{address:n,factory:r,factoryData:s,hash:o,signature:i,verifierAddress:a,...c}=t,u=await(async()=>!r&&!s||d1(i)?i:f1({data:s,signature:i,to:r}))(),f=a?{to:a,data:he({abi:hs,functionName:"isValidSig",args:[n,o,u]}),...c}:{data:Mr({abi:hs,args:[n,o,u],bytecode:gf}),...c},{data:d}=await z(e,Mt,"call")(f).catch(l=>{throw l instanceof Ko?new Ke:l});if(La(d??"0x0"))return!0;throw new Ke}async function y1(e,t){const{address:n,blockNumber:r,blockTag:s,hash:o,signature:i}=t;if((await z(e,be,"readContract")({address:n,abi:uo,args:[o,i],blockNumber:r,blockTag:s,functionName:"isValidSignature"}).catch(c=>{throw c instanceof Yo?new Ke:c})).startsWith("0x1626ba7e"))return!0;throw new Ke}class Ke extends Error{}async function m1(e,{address:t,message:n,factory:r,factoryData:s,signature:o,...i}){const a=Vi(n);return z(e,wn,"verifyHash")({address:t,factory:r,factoryData:s,hash:a,signature:o,...i})}async function g1(e,t){const{address:n,factory:r,factoryData:s,signature:o,message:i,primaryType:a,types:c,domain:u,...f}=t,d=$d({message:i,primaryType:a,types:c,domain:u});return z(e,wn,"verifyHash")({address:n,factory:r,factoryData:s,hash:d,signature:o,...f})}function Ba(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=oe(["watchBlockNumber",e.uid,t,n,i]);return _e(d,{onBlockNumber:r,onError:s},l=>jt(async()=>{try{const b=await z(e,Gt,"getBlockNumber")({cacheTime:0});if(c!==void 0){if(b===c)return;if(b-c>1&&n)for(let y=c+1n;y<b;y++)l.onBlockNumber(y,c),c=y}(c===void 0||b>c)&&(l.onBlockNumber(b,c),c=b)}catch(b){l.onError?.(b)}},{emitOnBegin:t,interval:i}))})():(()=>{const d=oe(["watchBlockNumber",e.uid,t,n]);return _e(d,{onBlockNumber:r,onError:s},l=>{let b=!0,y=()=>b=!1;return(async()=>{try{const p=(()=>{if(e.transport.type==="fallback"){const P=e.transport.transports.find(I=>I.config.type==="webSocket"||I.config.type==="ipc");return P?P.value:e.transport}return e.transport})(),{unsubscribe:g}=await p.subscribe({params:["newHeads"],onData(P){if(!b)return;const I=Te(P.result?.number);l.onBlockNumber(I,c),c=I},onError(P){l.onError?.(P)}});y=g,b||y()}catch(p){s?.(p)}})(),()=>y()})})()}async function w1(e,t){const{checkReplacement:n=!0,confirmations:r=1,hash:s,onReplaced:o,retryCount:i=6,retryDelay:a=({count:m})=>~~(1<<m)*200,timeout:c=18e4}=t,u=oe(["waitForTransactionReceipt",e.uid,s]),f=t.pollingInterval?t.pollingInterval:e.chain?.experimental_preconfirmationTime?e.chain.experimental_preconfirmationTime:e.pollingInterval;let d,l,b,y=!1,p,g;const{promise:P,resolve:I,reject:w}=_a(),h=c?setTimeout(()=>{g?.(),p?.(),w(new X0({hash:s}))},c):void 0;return p=_e(u,{onReplaced:o,resolve:I,reject:w},async m=>{if(b=await z(e,Zt,"getTransactionReceipt")({hash:s}).catch(()=>{}),b&&r<=1){clearTimeout(h),m.resolve(b),p?.();return}g=z(e,Ba,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:f,async onBlockNumber(E){const x=N=>{clearTimeout(h),g?.(),N(),p?.()};let $=E;if(!y)try{if(b){if(r>1&&(!b.blockNumber||$-b.blockNumber+1n<r))return;x(()=>m.resolve(b));return}if(n&&!d&&(y=!0,await ps(async()=>{d=await z(e,Qr,"getTransaction")({hash:s}),d.blockNumber&&($=d.blockNumber)},{delay:a,retryCount:i}),y=!1),b=await z(e,Zt,"getTransactionReceipt")({hash:s}),r>1&&(!b.blockNumber||$-b.blockNumber+1n<r))return;x(()=>m.resolve(b))}catch(N){if(N instanceof Zo||N instanceof Wo){if(!d){y=!1;return}try{l=d,y=!0;const v=await ps(()=>z(e,ce,"getBlock")({blockNumber:$,includeTransactions:!0}),{delay:a,retryCount:i,shouldRetry:({error:F})=>F instanceof ni});y=!1;const k=v.transactions.find(({from:F,nonce:M})=>F===l.from&&M===l.nonce);if(!k||(b=await z(e,Zt,"getTransactionReceipt")({hash:k.hash}),r>1&&(!b.blockNumber||$-b.blockNumber+1n<r)))return;let R="replaced";k.to===l.to&&k.value===l.value&&k.input===l.input?R="repriced":k.from===k.to&&k.value===0n&&(R="cancelled"),x(()=>{m.onReplaced?.({reason:R,replacedTransaction:l,transaction:k,transactionReceipt:b}),m.resolve(b)})}catch(v){x(()=>m.reject(v))}}else x(()=>m.reject(N))}}})}),P}function x1(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 u=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")),f=i??!1;let d;return u?(()=>{const y=oe(["watchBlocks",e.uid,t,n,r,f,c]);return _e(y,{onBlock:s,onError:o},p=>jt(async()=>{try{const g=await z(e,ce,"getBlock")({blockTag:t,includeTransactions:f});if(g.number!==null&&d?.number!=null){if(g.number===d.number)return;if(g.number-d.number>1&&n)for(let P=d?.number+1n;P<g.number;P++){const I=await z(e,ce,"getBlock")({blockNumber:P,includeTransactions:f});p.onBlock(I,d),d=I}}(d?.number==null||t==="pending"&&g?.number==null||g.number!==null&&g.number>d.number)&&(p.onBlock(g,d),d=g)}catch(g){p.onError?.(g)}},{emitOnBegin:r,interval:c}))})():(()=>{let y=!0,p=!0,g=()=>y=!1;return(async()=>{try{r&&z(e,ce,"getBlock")({blockTag:t,includeTransactions:f}).then(w=>{y&&p&&(s(w,void 0),p=!1)}).catch(o);const P=(()=>{if(e.transport.type==="fallback"){const w=e.transport.transports.find(h=>h.config.type==="webSocket"||h.config.type==="ipc");return w?w.value:e.transport}return e.transport})(),{unsubscribe:I}=await P.subscribe({params:["newHeads"],async onData(w){if(!y)return;const h=await z(e,ce,"getBlock")({blockNumber:w.result?.number,includeTransactions:f}).catch(()=>{});y&&(s(h,d),p=!1,d=h)},onError(w){o?.(w)}});g=I,y||g()}catch(P){o?.(P)}})(),()=>g()})()}function v1(e,{address:t,args:n,batch:r=!0,event:s,events:o,fromBlock:i,onError:a,onLogs:c,poll:u,pollingInterval:f=e.pollingInterval,strict:d}){const l=typeof u<"u"?u: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")),b=d??!1;return l?(()=>{const g=oe(["watchEvent",t,n,r,e.uid,s,f,i]);return _e(g,{onLogs:c,onError:a},P=>{let I;i!==void 0&&(I=i-1n);let w,h=!1;const m=jt(async()=>{if(!h){try{w=await z(e,Gi,"createEventFilter")({address:t,args:n,event:s,events:o,strict:b,fromBlock:i})}catch{}h=!0;return}try{let E;if(w)E=await z(e,pn,"getFilterChanges")({filter:w});else{const x=await z(e,Gt,"getBlockNumber")({});I&&I!==x?E=await z(e,Or,"getLogs")({address:t,args:n,event:s,events:o,fromBlock:I+1n,toBlock:x}):E=[],I=x}if(E.length===0)return;if(r)P.onLogs(E);else for(const x of E)P.onLogs([x])}catch(E){w&&E instanceof yr&&(h=!1),P.onError?.(E)}},{emitOnBegin:!0,interval:f});return async()=>{w&&await z(e,yn,"uninstallFilter")({filter:w}),m()}})})():(()=>{let g=!0,P=()=>g=!1;return(async()=>{try{const I=(()=>{if(e.transport.type==="fallback"){const E=e.transport.transports.find(x=>x.config.type==="webSocket"||x.config.type==="ipc");return E?E.value:e.transport}return e.transport})(),w=o??(s?[s]:void 0);let h=[];w&&(h=[w.flatMap(x=>Ft({abi:[x],eventName:x.name,args:n}))],s&&(h=h[0]));const{unsubscribe:m}=await I.subscribe({params:["logs",{address:t,topics:h}],onData(E){if(!g)return;const x=E.result;try{const{eventName:$,args:N}=Xt({abi:w??[],data:x.data,topics:x.topics,strict:b}),v=Ne(x,{args:N,eventName:$});c([v])}catch($){let N,v;if($ instanceof Yt||$ instanceof gr){if(d)return;N=$.abiItem.name,v=$.abiItem.inputs?.some(R=>!("name"in R&&R.name))}const k=Ne(x,{args:v?[]:{},eventName:N});c([k])}},onError(E){a?.(E)}});P=m,g||P()}catch(I){a?.(I)}})(),()=>P()})()}function E1(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 u=oe(["watchPendingTransactions",e.uid,t,o]);return _e(u,{onTransactions:r,onError:n},f=>{let d;const l=jt(async()=>{try{if(!d)try{d=await z(e,Hi,"createPendingTransactionFilter")({});return}catch(y){throw l(),y}const b=await z(e,pn,"getFilterChanges")({filter:d});if(b.length===0)return;if(t)f.onTransactions(b);else for(const y of b)f.onTransactions([y])}catch(b){f.onError?.(b)}},{emitOnBegin:!0,interval:o});return async()=>{d&&await z(e,yn,"uninstallFilter")({filter:d}),l()}})})():(()=>{let u=!0,f=()=>u=!1;return(async()=>{try{const{unsubscribe:d}=await e.transport.subscribe({params:["newPendingTransactions"],onData(l){if(!u)return;const b=l.result;r([b])},onError(l){n?.(l)}});f=d,u||f()}catch(d){n?.(d)}})(),()=>f()})()}function P1(e){const{scheme:t,statement:n,...r}=e.match(A1)?.groups??{},{chainId:s,expirationTime:o,issuedAt:i,notBefore:a,requestId:c,...u}=e.match(B1)?.groups??{},f=e.split("Resources:")[1]?.split(`
36
+ - `).slice(1);return{...r,...u,...s?{chainId:Number(s)}:{},...o?{expirationTime:new Date(o)}:{},...i?{issuedAt:new Date(i)}:{},...a?{notBefore:new Date(a)}:{},...c?{requestId:c}:{},...f?{resources:f}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}const A1=/^(?:(?<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)?/,B1=/(?: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 $1(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||!ie(r.address,{strict:!1})||t&&!zt(r.address,t))return!1}catch{return!1}return!0}async function I1(e,t){const{address:n,domain:r,message:s,nonce:o,scheme:i,signature:a,time:c=new Date,...u}=t,f=P1(s);if(!f.address||!$1({address:n,domain:r,message:f,nonce:o,scheme:i,time:c}))return!1;const l=Vi(s);return wn(e,{address:f.address,hash:l,signature:a,...u})}async function S1(e,{serializedTransaction:t,throwOnReceiptRevert:n,timeout:r}){const s=await e.request({method:"eth_sendRawTransactionSync",params:r?[t,L(r)]:[t]},{retryCount:0}),i=(e.chain?.formatters?.transactionReceipt?.format||Ci)(s);if(i.status==="reverted"&&n)throw new Y0({receipt:i});return i}function T1(e){return{call:t=>Mt(e,t),createAccessList:t=>ji(e,t),createBlockFilter:()=>td(e),createContractEventFilter:t=>Go(e,t),createEventFilter:t=>Gi(e,t),createPendingTransactionFilter:()=>Hi(e),estimateContractGas:t=>Ou(e,t),estimateGas:t=>Fr(e,t),getBalance:t=>nd(e,t),getBlobBaseFee:()=>rd(e),getBlock:t=>ce(e,t),getBlockNumber:t=>Gt(e,t),getBlockTransactionCount:t=>sd(e,t),getBytecode:t=>rr(e,t),getChainId:()=>Nr(e),getCode:t=>rr(e,t),getContractEvents:t=>hi(e,t),getEip712Domain:t=>id(e,t),getEnsAddress:t=>Uf(e,t),getEnsAvatar:t=>Jf(e,t),getEnsName:t=>Qf(e,t),getEnsResolver:t=>ed(e,t),getEnsText:t=>Mi(e,t),getFeeHistory:t=>ud(e,t),estimateFeesPerGas:t=>yu(e,t),getFilterChanges:t=>pn(e,t),getFilterLogs:t=>fd(e,t),getGasPrice:()=>Tr(e),getLogs:t=>Or(e,t),getProof:t=>Kl(e,t),estimateMaxPriorityFeePerGas:t=>pu(e,t),fillTransaction:t=>li(e,t),getStorageAt:t=>Yl(e,t),getTransaction:t=>Qr(e,t),getTransactionConfirmations:t=>Xl(e,t),getTransactionCount:t=>ii(e,t),getTransactionReceipt:t=>Zt(e,t),multicall:t=>Jl(e,t),prepareTransactionRequest:t=>bi(e,t),readContract:t=>be(e,t),sendRawTransaction:t=>Nf(e,t),sendRawTransactionSync:t=>S1(e,t),simulate:t=>dr(e,t),simulateBlocks:t=>dr(e,t),simulateCalls:t=>c1(e,t),simulateContract:t=>Pf(e,t),verifyHash:t=>wn(e,t),verifyMessage:t=>m1(e,t),verifySiweMessage:t=>I1(e,t),verifyTypedData:t=>g1(e,t),uninstallFilter:t=>yn(e,t),waitForTransactionReceipt:t=>w1(e,t),watchBlocks:t=>x1(e,t),watchBlockNumber:t=>Ba(e,t),watchContractEvent:t=>kf(e,t),watchEvent:t=>v1(e,t),watchPendingTransactions:t=>E1(e,t)}}function H1(e){const{key:t="public",name:n="Public Client"}=e;return Rf({...e,key:t,name:n,type:"publicClient"}).extend(T1)}export{Ic as AbiConstructorNotFoundError,xs as AbiConstructorParamsNotFoundError,Ao as AbiDecodingDataSizeTooSmallError,kt as AbiDecodingZeroDataError,Sc as AbiEncodingArrayLengthMismatchError,Tc as AbiEncodingBytesSizeMismatchError,kc as AbiEncodingLengthMismatchError,Nc as AbiErrorInputsNotFoundError,vs as AbiErrorNotFoundError,Bo as AbiErrorSignatureNotFoundError,Es as AbiEventNotFoundError,Fc as AbiEventSignatureEmptyTopicsError,Rc as AbiEventSignatureNotFoundError,ft as AbiFunctionNotFoundError,$o as AbiFunctionOutputsNotFoundError,Oc as AbiFunctionSignatureNotFoundError,q0 as AccountStateConflictError,V1 as AtomicReadyWalletRejectedUpgradeError,Z1 as AtomicityNotSupportedError,T as BaseError,ti as BaseFeeScalarError,ni as BlockNotFoundError,W1 as BundleTooLargeError,zc as BytesSizeMismatchError,Ko as CallExecutionError,K1 as ChainDisconnectedError,tr as ChainDoesNotSupportContract,dc as CircularReferenceError,Fi as ClientChainNotConfiguredError,Yo as ContractFunctionExecutionError,Jn as ContractFunctionRevertedError,J0 as ContractFunctionZeroDataError,Q0 as CounterfactualDeploymentFailedError,Yt as DecodeLogDataMismatch,gr as DecodeLogTopicsMismatch,Y1 as DuplicateIdError,Ir as Eip1559FeesNotSupportedError,Pt as EnsAvatarInvalidNftUriError,jf as EnsAvatarUnsupportedNamespaceError,Hr as EnsAvatarUriResolutionError,au as EstimateGasExecutionError,Dt as ExecutionRevertedError,Hn as FeeCapTooHighError,ts as FeeCapTooLowError,Mc as FilterTypeNotSupportedError,bs as HttpRequestError,os as InsufficientFundsError,Ia as IntegerOutOfRangeError,Fa as InternalRpcError,is as IntrinsicGasTooHighError,as as IntrinsicGasTooLowError,_c as InvalidAbiDecodingTypeError,Lc as InvalidAbiEncodingTypeError,ec as InvalidAbiItemError,rc as InvalidAbiParametersError,cc as InvalidAbiTypeParameterError,Le as InvalidAddressError,Io as InvalidArrayError,Sa as InvalidBytesBooleanError,Uc as InvalidDefinitionTypeError,xd as InvalidDomainError,ac as InvalidFunctionModifierError,X1 as InvalidHexBooleanError,yr as InvalidInputRpcError,ic as InvalidModifierError,sc as InvalidParameterError,J1 as InvalidParamsRpcError,lc as InvalidParenthesisError,vd as InvalidPrimaryTypeError,Q1 as InvalidRequestRpcError,W0 as InvalidSerializableTransactionError,pt as InvalidSignatureError,fc as InvalidStructSignatureError,Ed as InvalidStructTypeError,eb as JsonRpcVersionUnsupportedError,tb as LimitExceededRpcError,bu as MaxFeePerGasTooLowError,nb as MethodNotFoundRpcError,rb as MethodNotSupportedRpcError,ss as NonceMaxValueError,ns as NonceTooHighError,rs as NonceTooLowError,sb as ParseRpcError,ob as ProviderDisconnectedError,ib as ProviderRpcError,un as RawContractError,ab as ResourceNotFoundRpcError,cb as ResourceUnavailableRpcError,ub as RpcError,Ra as RpcRequestError,fb as SizeExceedsPaddingSizeError,db as SizeOverflowError,io as SliceOffsetOutOfBoundsError,oc as SolidityProtectedKeywordError,V0 as StateAssignmentConflictError,lb as SwitchChainError,bb as TimeoutError,Dn as TipAboveFeeCapError,K0 as TransactionExecutionError,Zo as TransactionNotFoundError,Wo as TransactionReceiptNotFoundError,hb as TransactionRejectedRpcError,cs as TransactionTypeNotSupportedError,pb as UnauthorizedProviderError,yb as UnknownBundleIdError,Tt as UnknownNodeError,mb as UnknownRpcError,uc as UnknownSignatureError,tc as UnknownTypeError,gb as UnsupportedChainIdError,wb as UnsupportedNonOptionalCapabilityError,xb as UnsupportedProviderMethodError,vb as UrlRequiredError,Eb as UserRejectedRequestError,X0 as WaitForTransactionReceiptTimeoutError,gt as assertRequest,ai as blobsToCommitments,ci as blobsToProofs,Gc as boolToBytes,$a as boolToHex,C0 as bytesToBigInt,z0 as bytesToBool,V as bytesToHex,$e as bytesToNumber,L0 as bytesToString,qi as ccipFetch,qi as ccipRequest,an as checksumAddress,Bu as commitmentToVersionedHash,$u as commitmentsToVersionedHashes,fe as concat,w0 as concatBytes,mt as concatHex,Rf as createClient,H1 as createPublicClient,Pb as createTransport,Rt as decodeAbiParameters,qo as decodeErrorResult,Xt as decodeEventLog,Of as decodeFunctionData,Je as decodeFunctionResult,j1 as defineChain,Ni as deploylessCallViaBytecodeBytecode,mf as deploylessCallViaFactoryBytecode,Ue as encodeAbiParameters,Mr as encodeDeployData,Zs as encodeErrorResult,Ft as encodeEventTopics,he as encodeFunctionData,Cf as encodeFunctionResult,Ab as erc20Abi,hs as erc6492SignatureValidatorAbi,gf as erc6492SignatureValidatorByteCode,i1 as ethAddress,ka as etherUnits,Bb as fallback,si as formatBlock,Br as formatEther,me as formatGwei,Ne as formatLog,Sr as formatTransaction,Ci as formatTransactionReceipt,Ct as formatTransactionRequest,Ta as formatUnits,Xe as getAbiItem,zo as getAddress,wt as getChainContractAddress,ht as getContractError,on as getEventSelector,m0 as getEventSignature,Nt as getFunctionSelector,m0 as getFunctionSignature,Nu as getTransactionType,Ad as getTypesForEIP712Domain,$b as gweiUnits,Id as hashDomain,Vi as hashMessage,Zi as hashStruct,$d as hashTypedData,Te as hexToBigInt,La as hexToBool,xe as hexToBytes,Se as hexToNumber,Ib as http,ie as isAddress,zt as isAddressEqual,we as isHex,q as keccak256,_f as labelhash,lu as maxUint256,Wt as multicall3Abi,nr as namehash,Hc as numberToBytes,L as numberToHex,yd as offchainLookup,Di as offchainLookupAbiItem,pd as offchainLookupSignature,hr as pad,Sb as padBytes,He as padHex,Po as parseAbi,gs as parseAbiItem,ws as parseAbiParameters,Rr as parseEventLogs,k0 as prepareEncodeFunctionData,gd as presignMessagePrefix,T1 as publicActions,Xo as recoverAddress,nu as recoverPublicKey,uu as rpcTransactionType,b1 as serializeSignature,Au as sha256,Tb as shouldThrow,b1 as signatureToHex,H as size,bt as slice,Uo as sliceBytes,x0 as sliceHex,De as stringToBytes,Gn as stringToHex,oe as stringify,ku as toBlobSidecars,Tu as toBlobs,yt as toBytes,Co as toEventHash,on as toEventSelector,m0 as toEventSignature,Co as toFunctionHash,Nt as toFunctionSelector,m0 as toFunctionSignature,ze as toHex,wd as toPrefixedMessage,ru as toRlp,ri as transactionType,tn as trim,hs as universalSignatureValidatorAbi,gf as universalSignatureValidatorByteCode,Pd as validateTypedData,Sf as withCache,ps as withRetry,kb as withTimeout,ye as zeroAddress};