@dodoex/wallet-web3 0.6.3 → 0.6.5

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 (217) hide show
  1. package/dist/PhArrowCircleDown-4a08ae8e.js +14 -0
  2. package/dist/PhArrowClockwise-401ea1c0.js +14 -0
  3. package/dist/PhArrowDown-789ae7d2.js +14 -0
  4. package/dist/PhArrowLeft-2e6d4940.js +14 -0
  5. package/dist/PhArrowRight-2928b0dc.js +14 -0
  6. package/dist/PhArrowSquareOut-17d61d08.js +14 -0
  7. package/dist/PhArrowUp-1cfcf9df.js +14 -0
  8. package/dist/PhArrowUpRight-552c41cb.js +14 -0
  9. package/dist/PhArrowsClockwise-92a70162.js +14 -0
  10. package/dist/PhArrowsDownUp-ce27c8a7.js +14 -0
  11. package/dist/PhArrowsLeftRight-ed549dc7.js +14 -0
  12. package/dist/PhBank-92a1a1df.js +14 -0
  13. package/dist/PhBrowser-495dc3ce.js +14 -0
  14. package/dist/PhCaretDown-610f20fc.js +14 -0
  15. package/dist/PhCaretLeft-2a86ee53.js +14 -0
  16. package/dist/PhCaretRight-f3057f58.js +14 -0
  17. package/dist/PhCaretUp-7b74b8cb.js +14 -0
  18. package/dist/PhCheck-c514f32c.js +14 -0
  19. package/dist/PhCircleHalf-3bfd24c9.js +14 -0
  20. package/dist/PhClock-29284ead.js +14 -0
  21. package/dist/PhCompass-101d3241.js +14 -0
  22. package/dist/PhCopy-d92dcd27.js +14 -0
  23. package/dist/PhCreditCard-d8d77fc2.js +14 -0
  24. package/dist/PhCurrencyDollar-6553df79.js +14 -0
  25. package/dist/PhDesktop-91653c8e.js +14 -0
  26. package/dist/PhDeviceMobile-0f3d8fa2.js +14 -0
  27. package/dist/PhDotsThree-67debca2.js +14 -0
  28. package/dist/PhEnvelope-f83faab2.js +14 -0
  29. package/dist/PhFunnelSimple-5058af43.js +14 -0
  30. package/dist/PhGlobe-c4653621.js +14 -0
  31. package/dist/PhIdentificationCard-848bf9a1.js +14 -0
  32. package/dist/PhImage-de71fc6b.js +14 -0
  33. package/dist/PhInfo-9614a766.js +14 -0
  34. package/dist/PhLightbulb-7d582ae7.js +14 -0
  35. package/dist/PhMagnifyingGlass-c926bd63.js +14 -0
  36. package/dist/PhPaperPlaneRight-76b25832.js +14 -0
  37. package/dist/PhPlus-767ddc55.js +14 -0
  38. package/dist/PhPower-95f188dd.js +14 -0
  39. package/dist/PhPuzzlePiece-f016afe5.js +14 -0
  40. package/dist/PhQrCode-e9b7ab93.js +14 -0
  41. package/dist/PhQuestion-ea0e639d.js +14 -0
  42. package/dist/PhQuestionMark-13d6338e.js +14 -0
  43. package/dist/PhSealCheck-45bb7b9c.js +14 -0
  44. package/dist/PhSignOut-6b91c59c.js +14 -0
  45. package/dist/PhSpinner-eb9b7ac1.js +14 -0
  46. package/dist/PhTrash-758cc3b3.js +14 -0
  47. package/dist/PhUser-0834861d.js +14 -0
  48. package/dist/PhVault-e4d6f9af.js +14 -0
  49. package/dist/PhWallet-5e257abe.js +14 -0
  50. package/dist/PhWarning-6af3740e.js +14 -0
  51. package/dist/PhWarningCircle-a78fd8e8.js +14 -0
  52. package/dist/PhX-60c46532.js +14 -0
  53. package/dist/{__tslib-2b1b6d17.js → __tslib-6d6a586c.js} +1 -1
  54. package/dist/{alchemy-provider-5870b6fa-b23243a1.js → alchemy-provider-5870b6fa-a9fe5aa5.js} +1 -1
  55. package/dist/{alchemy-websocket-provider-213da986-559da73b.js → alchemy-websocket-provider-213da986-16164c2e.js} +1 -1
  56. package/dist/basic-77fe1b96.js +1320 -0
  57. package/dist/{blocto-8e69bccf.js → blocto-ab8ba330.js} +1 -1
  58. package/dist/{ccip-99b4ad16.js → ccip-e246f9cf.js} +1 -1
  59. package/dist/cjs/PhArrowCircleDown-df23d036.cjs +14 -0
  60. package/dist/cjs/PhArrowClockwise-440d23dc.cjs +14 -0
  61. package/dist/cjs/PhArrowDown-252590ed.cjs +14 -0
  62. package/dist/cjs/PhArrowLeft-d480faa4.cjs +14 -0
  63. package/dist/cjs/PhArrowRight-969dbdd8.cjs +14 -0
  64. package/dist/cjs/PhArrowSquareOut-eabfdecb.cjs +14 -0
  65. package/dist/cjs/PhArrowUp-66bd5f15.cjs +14 -0
  66. package/dist/cjs/PhArrowUpRight-6df3b31b.cjs +14 -0
  67. package/dist/cjs/PhArrowsClockwise-3a9d2dc6.cjs +14 -0
  68. package/dist/cjs/PhArrowsDownUp-47a7788f.cjs +14 -0
  69. package/dist/cjs/PhArrowsLeftRight-f90368dd.cjs +14 -0
  70. package/dist/cjs/PhBank-670a2708.cjs +14 -0
  71. package/dist/cjs/PhBrowser-b9c35fd1.cjs +14 -0
  72. package/dist/cjs/PhCaretDown-11a46455.cjs +14 -0
  73. package/dist/cjs/PhCaretLeft-04f11ca7.cjs +14 -0
  74. package/dist/cjs/PhCaretRight-391111c1.cjs +14 -0
  75. package/dist/cjs/PhCaretUp-b17dccf6.cjs +14 -0
  76. package/dist/cjs/PhCheck-08bf36b0.cjs +14 -0
  77. package/dist/cjs/PhCircleHalf-0a9eac35.cjs +14 -0
  78. package/dist/cjs/PhClock-cf1cc2cb.cjs +14 -0
  79. package/dist/cjs/PhCompass-e9671b30.cjs +14 -0
  80. package/dist/cjs/PhCopy-9132cbc5.cjs +14 -0
  81. package/dist/cjs/PhCreditCard-853e1556.cjs +14 -0
  82. package/dist/cjs/PhCurrencyDollar-34eea829.cjs +14 -0
  83. package/dist/cjs/PhDesktop-c02b883b.cjs +14 -0
  84. package/dist/cjs/PhDeviceMobile-93c2088c.cjs +14 -0
  85. package/dist/cjs/PhDotsThree-69beaba7.cjs +14 -0
  86. package/dist/cjs/PhEnvelope-86ee730e.cjs +14 -0
  87. package/dist/cjs/PhFunnelSimple-056c2f76.cjs +14 -0
  88. package/dist/cjs/PhGlobe-64c4ee8e.cjs +14 -0
  89. package/dist/cjs/PhIdentificationCard-ec7a98e0.cjs +14 -0
  90. package/dist/cjs/PhImage-07904cbb.cjs +14 -0
  91. package/dist/cjs/PhInfo-34eeeace.cjs +14 -0
  92. package/dist/cjs/PhLightbulb-39ebe854.cjs +14 -0
  93. package/dist/cjs/PhMagnifyingGlass-2fbe4400.cjs +14 -0
  94. package/dist/cjs/PhPaperPlaneRight-e06c210f.cjs +14 -0
  95. package/dist/cjs/PhPlus-03a04ed3.cjs +14 -0
  96. package/dist/cjs/PhPower-4cc2ecb8.cjs +14 -0
  97. package/dist/cjs/PhPuzzlePiece-035d561e.cjs +14 -0
  98. package/dist/cjs/PhQrCode-37e23b36.cjs +14 -0
  99. package/dist/cjs/PhQuestion-bfba435e.cjs +14 -0
  100. package/dist/cjs/PhQuestionMark-8ef38ecf.cjs +14 -0
  101. package/dist/cjs/PhSealCheck-5458de15.cjs +14 -0
  102. package/dist/cjs/PhSignOut-2d177ea1.cjs +14 -0
  103. package/dist/cjs/PhSpinner-e7c590df.cjs +14 -0
  104. package/dist/cjs/PhTrash-1920f5dc.cjs +14 -0
  105. package/dist/cjs/PhUser-84a1a685.cjs +14 -0
  106. package/dist/cjs/PhVault-1493c03f.cjs +14 -0
  107. package/dist/cjs/PhWallet-f0502f03.cjs +14 -0
  108. package/dist/cjs/PhWarning-1bf637ba.cjs +14 -0
  109. package/dist/cjs/PhWarningCircle-b1747661.cjs +14 -0
  110. package/dist/cjs/PhX-f864d86c.cjs +14 -0
  111. package/dist/cjs/{__tslib-91c50e46.cjs → __tslib-a9f27ba6.cjs} +1 -1
  112. package/dist/cjs/{alchemy-provider-5870b6fa-a824dbf0.cjs → alchemy-provider-5870b6fa-bb1c607e.cjs} +1 -1
  113. package/dist/cjs/{alchemy-websocket-provider-213da986-f96378c8.cjs → alchemy-websocket-provider-213da986-521569b5.cjs} +1 -1
  114. package/dist/cjs/basic-b777d2b1.cjs +1320 -0
  115. package/dist/cjs/{blocto-255deb25.cjs → blocto-09e0d574.cjs} +1 -1
  116. package/dist/cjs/{ccip-58f4c3ce.cjs → ccip-6ebee1cf.cjs} +1 -1
  117. package/dist/cjs/core-78a709db.cjs +210 -0
  118. package/dist/cjs/{draggabilly-b00ba129.cjs → draggabilly-76af6217.cjs} +1 -1
  119. package/dist/cjs/features-fa5c5622.cjs +1 -0
  120. package/dist/cjs/id-c0538166.cjs +1 -0
  121. package/dist/cjs/{index-4cb4044e.cjs → index-07e81389.cjs} +1 -1
  122. package/dist/cjs/{index-28fe8dc2.cjs → index-093cef5a.cjs} +2 -2
  123. package/dist/cjs/{index-0f3e4a4a.cjs → index-208df3f3.cjs} +1 -1
  124. package/dist/cjs/{index-9cbeb66d.cjs → index-253e7cce.cjs} +1 -1
  125. package/dist/cjs/index-2e8e7a50.cjs +4 -0
  126. package/dist/cjs/index-395b933d.cjs +2 -0
  127. package/dist/cjs/{index-b0eb86b6.cjs → index-54d7fc75.cjs} +1 -1
  128. package/dist/cjs/{index-5d1879f6.cjs → index-5d28acf4.cjs} +3 -3
  129. package/dist/cjs/{index-02043814.cjs → index-5dac528b.cjs} +4 -4
  130. package/dist/cjs/index-702e8f89.cjs +15 -0
  131. package/dist/cjs/{index-7d213984.cjs → index-823e17e6.cjs} +1 -1
  132. package/dist/cjs/{index-2c339ec0.cjs → index-916994aa.cjs} +1 -1
  133. package/dist/cjs/{index-96c22872.cjs → index-a2b665f4.cjs} +1 -1
  134. package/dist/cjs/{index-110f55af.cjs → index-b099293c.cjs} +1 -1
  135. package/dist/cjs/index-d72ddbc1.cjs +17 -0
  136. package/dist/cjs/index-ef4ef0cc.cjs +1449 -0
  137. package/dist/cjs/index.cjs +1 -1
  138. package/dist/cjs/{interface-a67cd05c.cjs → interface-4947cfa6.cjs} +1 -1
  139. package/dist/cjs/lib-typedarrays-a9baf142.cjs +1 -0
  140. package/dist/cjs/native-55bb141d.cjs +1 -0
  141. package/dist/cjs/{portis-ec737dc5.cjs → portis-08d9d731.cjs} +1 -1
  142. package/dist/cjs/property-29e6f732.cjs +29 -0
  143. package/dist/cjs/providers/connector/safeGnosis/query.d.ts +2 -1
  144. package/dist/cjs/providers/connector/types.d.ts +1 -1
  145. package/dist/cjs/providers/wallets/index.d.ts +1 -0
  146. package/dist/cjs/rainbow-6e84bcfa.cjs +1 -0
  147. package/dist/cjs/sha224-b46bc3e6.cjs +1 -0
  148. package/dist/cjs/sha256-ccd47519.cjs +1 -0
  149. package/dist/cjs/{typed-data-65a82f1e.cjs → typed-data-5176b792.cjs} +1 -1
  150. package/dist/cjs/uAuth-b29d2670.cjs +1 -0
  151. package/dist/cjs/w3m-modal-70bcf6d8.cjs +2380 -0
  152. package/dist/cjs/walletConnect-20d477a9.cjs +1 -0
  153. package/dist/cjs/{walletLink-095edc5f.cjs → walletLink-08b8da20.cjs} +2 -2
  154. package/dist/core-4d7ad6f2.js +210 -0
  155. package/dist/{draggabilly-919fe798.js → draggabilly-daf3b444.js} +1 -1
  156. package/dist/features-d8d1c9ce.js +1 -0
  157. package/dist/id-d4d22b29.js +1 -0
  158. package/dist/{index-de7476e4.js → index-09298bd0.js} +7 -7
  159. package/dist/{index-085a063c.js → index-244a8189.js} +1 -1
  160. package/dist/{index-23ae718c.js → index-2ad0fb2a.js} +1 -1
  161. package/dist/index-35d87b79.js +17 -0
  162. package/dist/{index-bbaf7a43.js → index-587ff998.js} +1 -1
  163. package/dist/{index-601a6250.js → index-750a7dfe.js} +1 -1
  164. package/dist/{index-cc764016.js → index-8bd12de1.js} +1 -1
  165. package/dist/{index-6382b40b.js → index-938686fb.js} +1 -1
  166. package/dist/{index-3cf73206.js → index-9d7fee1e.js} +2 -2
  167. package/dist/{index-fd3058aa.js → index-aa744ca0.js} +1 -1
  168. package/dist/{index-7fabb817.js → index-b7d25e8a.js} +3 -3
  169. package/dist/index-bb1a0019.js +15 -0
  170. package/dist/index-c5ca8a4e.js +4 -0
  171. package/dist/{index-f5d95949.js → index-cddbc8e8.js} +1 -1
  172. package/dist/index-f095c09e.js +2 -0
  173. package/dist/index-ffdf981b.js +1449 -0
  174. package/dist/index.js +1 -1
  175. package/dist/{interface-82bdcddb.js → interface-0c535796.js} +1 -1
  176. package/dist/lib-typedarrays-979d2723.js +1 -0
  177. package/dist/native-029c50f7.js +1 -0
  178. package/dist/{portis-0a2bd95e.js → portis-9602ac9f.js} +1 -1
  179. package/dist/property-8eb37909.js +35 -0
  180. package/dist/providers/connector/safeGnosis/query.d.ts +2 -1
  181. package/dist/providers/connector/types.d.ts +1 -1
  182. package/dist/providers/wallets/index.d.ts +1 -0
  183. package/dist/rainbow-ccab7a95.js +1 -0
  184. package/dist/sha224-fe98e1bf.js +1 -0
  185. package/dist/sha256-5a24dfd5.js +1 -0
  186. package/dist/{typed-data-83d7ae9a.js → typed-data-3a3d44dc.js} +1 -1
  187. package/dist/uAuth-27f5728d.js +1 -0
  188. package/dist/w3m-modal-49add722.js +2380 -0
  189. package/dist/walletConnect-a541881e.js +1 -0
  190. package/dist/{walletLink-1b3cb067.js → walletLink-67264328.js} +2 -2
  191. package/package.json +5 -5
  192. package/dist/_commonjs-dynamic-modules-7cfc9805.js +0 -1
  193. package/dist/cjs/_commonjs-dynamic-modules-f09a98c7.cjs +0 -1
  194. package/dist/cjs/id-0c26cee0.cjs +0 -1
  195. package/dist/cjs/index-21f86827.cjs +0 -17
  196. package/dist/cjs/index-35edc6a0.cjs +0 -60
  197. package/dist/cjs/index-568647cf.cjs +0 -15
  198. package/dist/cjs/index-9f2a69d5.cjs +0 -1
  199. package/dist/cjs/index.es-2a36620f.cjs +0 -9
  200. package/dist/cjs/lib-typedarrays-f921c603.cjs +0 -1
  201. package/dist/cjs/rainbow-322fb6a9.cjs +0 -1
  202. package/dist/cjs/sha224-f0657d8a.cjs +0 -1
  203. package/dist/cjs/sha256-a0c6063a.cjs +0 -1
  204. package/dist/cjs/uAuth-d389b45d.cjs +0 -1
  205. package/dist/cjs/walletConnect-3c32ceb8.cjs +0 -1
  206. package/dist/id-bc1ef47c.js +0 -1
  207. package/dist/index-24d19ee3.js +0 -15
  208. package/dist/index-65d96278.js +0 -60
  209. package/dist/index-e4c02dc7.js +0 -17
  210. package/dist/index-f08d6a6b.js +0 -1
  211. package/dist/index.es-474ba2f2.js +0 -9
  212. package/dist/lib-typedarrays-becaa8ad.js +0 -1
  213. package/dist/rainbow-aa24fa3b.js +0 -1
  214. package/dist/sha224-e9d5a920.js +0 -1
  215. package/dist/sha256-65d6895c.js +0 -1
  216. package/dist/uAuth-8aef513a.js +0 -1
  217. package/dist/walletConnect-f12ca9e1.js +0 -1
@@ -0,0 +1,2 @@
1
+ import{a6 as e,a7 as t,a8 as n,a9 as r,aa as s,ab as a,ac as o,ad as i,ae as c,af as u,ag as d,ah as l,ai as f,aj as h,ak as p}from"./core-4d7ad6f2.js";export{an as erc1155Abi,ak as erc20Abi,al as erc20Abi_bytes32,ao as erc4626Abi,ai as erc6492SignatureValidatorAbi,am as erc721Abi,aj as formatUnits,a8 as multicall3Abi,ai as universalSignatureValidatorAbi}from"./core-4d7ad6f2.js";import"events";import"./index-c5ca8a4e.js";import"./__tslib-6d6a586c.js";import"./index-09298bd0.js";import"@ethersproject/providers";import"zustand";import"@ethersproject/bytes";import"@ethersproject/properties";import"@ethersproject/address";import"@ethersproject/abstract-signer";import"buffer";import"@ethersproject/abstract-provider";import"@ethersproject/contracts";import"@ethersproject/constants";import"@ethersproject/transactions";class b extends Error{constructor(e,t={}){const n=t.cause instanceof b?t.cause.details:t.cause?.message?t.cause.message:t.details,r=t.cause instanceof b&&t.cause.docsPath||t.docsPath;super([e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...r?[`Docs: https://abitype.dev${r}`]:[],...n?[`Details: ${n}`]:[],"Version: abitype@1.2.3"].join("\n")),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"}),t.cause&&(this.cause=t.cause),this.details=n,this.docsPath=r,this.metaMessages=t.metaMessages,this.shortMessage=e}}function m(e,t){const n=e.exec(t);return n?.groups}const y=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,g=/^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)?$/,w=/^\(.+?\).*?$/,v=/^tuple(?<array>(\[(\d*)\])*)$/;function x(e){let t=e.type;if(v.test(e.type)&&"components"in e){t="(";const n=e.components.length;for(let r=0;r<n;r++){t+=x(e.components[r]),r<n-1&&(t+=", ")}const r=m(v,e.type);return t+=`)${r?.array||""}`,x({...e,type:t})}return"indexed"in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function P(e){let t="";const n=e.length;for(let r=0;r<n;r++){t+=x(e[r]),r!==n-1&&(t+=", ")}return t}const E=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const k=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const I=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;const $=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function A(e){return $.test(e)}function B(e){return m($,e)}const T=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;const N=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;const S=/^receive\(\) external payable$/;const z=new Set(["memory","indexed","storage","calldata"]),O=new Set(["indexed"]),C=new Set(["calldata","memory","storage"]);class R extends b{constructor({signature:e}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify(e,null,2)})`,docsPath:"/api/human#parseabiitem-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}}class F extends b{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" 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 M extends b{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class j extends b{constructor({param:e}){super("Failed to parse ABI parameter.",{details:`parseAbiParameter(${JSON.stringify(e,null,2)})`,docsPath:"/api/human#parseabiparameter-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParameterError"})}}class q extends b{constructor({params:e}){super("Failed to parse ABI parameters.",{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:"/api/human#parseabiparameters-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParametersError"})}}class L extends b{constructor({param:e}){super("Invalid ABI parameter.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class U extends b{constructor({param:e,name:t}){super("Invalid ABI parameter.",{details:e,metaMessages:[`"${t}" 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 G extends b{constructor({param:e,type:t,modifier:n}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${n}" not allowed${t?` in "${t}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class _ extends b{constructor({param:e,type:t,modifier:n}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${n}" not allowed${t?` in "${t}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${n}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class D extends b{constructor({abiParameter:e}){super("Invalid ABI parameter.",{details:JSON.stringify(e,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class H extends b{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class V extends b{constructor({signature:e}){super("Unknown signature.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class Z extends b{constructor({signature:e}){super("Invalid struct signature.",{details:e,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class W extends b{constructor({type:e}){super("Circular reference detected.",{metaMessages:[`Struct "${e}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class K extends b{constructor({current:e,depth:t}){super("Unbalanced parentheses.",{metaMessages:[`"${e.trim()}" has too many ${t>0?"opening":"closing"} parentheses.`],details:`Depth "${t}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}const Y=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 J(e,t={}){if(function(e){return I.test(e)}(e))return function(e,t={}){const n=function(e){return m(I,e)}(e);if(!n)throw new H({signature:e,type:"function"});const r=ne(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(te(r[e],{modifiers:C,structs:t,type:"function"}));const o=[];if(n.returns){const e=ne(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(te(e[n],{modifiers:C,structs:t,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:s,outputs:o}}(e,t);if(function(e){return k.test(e)}(e))return function(e,t={}){const n=function(e){return m(k,e)}(e);if(!n)throw new H({signature:e,type:"event"});const r=ne(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(te(r[e],{modifiers:O,structs:t,type:"event"}));return{name:n.name,type:"event",inputs:s}}(e,t);if(function(e){return E.test(e)}(e))return function(e,t={}){const n=function(e){return m(E,e)}(e);if(!n)throw new H({signature:e,type:"error"});const r=ne(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(te(r[e],{structs:t,type:"error"}));return{name:n.name,type:"error",inputs:s}}(e,t);if(function(e){return T.test(e)}(e))return function(e,t={}){const n=function(e){return m(T,e)}(e);if(!n)throw new H({signature:e,type:"constructor"});const r=ne(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(te(r[e],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:s}}(e,t);if(function(e){return N.test(e)}(e))return function(e){const t=function(e){return m(N,e)}(e);if(!t)throw new H({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}(e);if(function(e){return S.test(e)}(e))return{type:"receive",stateMutability:"payable"};throw new V({signature:e})}const X=/^(?<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$_]*))?$/,Q=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,ee=/^u?int$/;function te(e,t){const n=function(e,t,n){let r="";if(n)for(const e of Object.entries(n)){if(!e)continue;let t="";for(const n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:""}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}(e,t?.type,t?.structs);if(Y.has(n))return Y.get(n);const r=w.test(e),s=m(r?Q:X,e);if(!s)throw new L({param:e});if(s.name&&function(e){return"address"===e||"bool"===e||"function"===e||"string"===e||"tuple"===e||y.test(e)||g.test(e)||se.test(e)}(s.name))throw new U({param:e,name:s.name});const a=s.name?{name:s.name}:{},o="indexed"===s.modifier?{indexed:!0}:{},i=t?.structs??{};let c,u={};if(r){c="tuple";const e=ne(s.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(te(e[r],{structs:i}));u={components:t}}else if(s.type in i)c="tuple",u={components:i[s.type]};else if(ee.test(s.type))c=`${s.type}256`;else if("address payable"===s.type)c="address";else if(c=s.type,"struct"!==t?.type&&!re(c))throw new M({type:c});if(s.modifier){if(!t?.modifiers?.has?.(s.modifier))throw new G({param:e,type:t?.type,modifier:s.modifier});if(C.has(s.modifier)&&!function(e,t){return t||"bytes"===e||"string"===e||"tuple"===e}(c,!!s.array))throw new _({param:e,type:t?.type,modifier:s.modifier})}const d={type:`${c}${s.array??""}`,...a,...o,...u};return Y.set(n,d),d}function ne(e,t=[],n="",r=0){const s=e.trim().length;for(let a=0;a<s;a++){const s=e[a],o=e.slice(a+1);switch(s){case",":return 0===r?ne(o,[...t,n.trim()]):ne(o,t,`${n}${s}`,r);case"(":return ne(o,t,`${n}${s}`,r+1);case")":return ne(o,t,`${n}${s}`,r-1);default:return ne(o,t,`${n}${s}`,r)}}if(""===n)return t;if(0!==r)throw new K({current:n,depth:r});return t.push(n.trim()),t}function re(e){return"address"===e||"bool"===e||"function"===e||"string"===e||y.test(e)||g.test(e)}const se=/^(?: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 ae(e){const t={},n=e.length;for(let r=0;r<n;r++){const n=e[r];if(!A(n))continue;const s=B(n);if(!s)throw new H({signature:n,type:"struct"});const a=s.properties.split(";"),o=[],i=a.length;for(let e=0;e<i;e++){const t=a[e].trim();if(!t)continue;const n=te(t,{type:"struct"});o.push(n)}if(!o.length)throw new Z({signature:n});t[s.name]=o}const r={},s=Object.entries(t),a=s.length;for(let e=0;e<a;e++){const[n,a]=s[e];r[n]=ie(a,t)}return r}const oe=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function ie(e=[],t={},n=new Set){const r=[],s=e.length;for(let a=0;a<s;a++){const s=e[a];if(w.test(s.type))r.push(s);else{const e=m(oe,s.type);if(!e?.type)throw new D({abiParameter:s});const{array:a,type:o}=e;if(o in t){if(n.has(o))throw new W({type:o});r.push({...s,type:`tuple${a??""}`,components:ie(t[o],t,new Set([...n,o]))})}else{if(!re(o))throw new F({type:o});r.push(s)}}}return r}function ce(e){const t=ae(e),n=[],r=e.length;for(let s=0;s<r;s++){const r=e[s];A(r)||n.push(J(r,t))}return n}function ue(e){let t;if("string"==typeof e)t=J(e);else{const n=ae(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(!A(r)){t=J(r,n);break}}}if(!t)throw new R({signature:e});return t}function de(e){let t;if("string"==typeof e)t=te(e,{modifiers:z});else{const n=ae(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(!A(r)){t=te(r,{modifiers:z,structs:n});break}}}if(!t)throw new j({param:e});return t}function le(e){const t=[];if("string"==typeof e){const n=ne(e),r=n.length;for(let e=0;e<r;e++)t.push(te(n[e],{modifiers:z}))}else{const n=ae(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(A(r))continue;const a=ne(r),o=a.length;for(let e=0;e<o;e++)t.push(te(a[e],{modifiers:z,structs:n}))}}if(0===t.length)throw new q({params:e});return t}function fe(e,t,n){const r=e[t.name];if("function"==typeof r)return r;const s=e[n];return"function"==typeof s?s:n=>t(e,n)}function he(e,{includeName:t=!1}={}){if("function"!==e.type&&"event"!==e.type&&"error"!==e.type)throw new Ve(e.type);return`${e.name}(${pe(e.inputs,{includeName:t})})`}function pe(e,{includeName:t=!1}={}){return e?e.map((e=>function(e,{includeName:t}){if(e.type.startsWith("tuple"))return`(${pe(e.components,{includeName:t})})${e.type.slice(5)}`;return e.type+(t&&e.name?` ${e.name}`:"")}(e,{includeName:t}))).join(t?", ":","):""}function be(e,{strict:t=!0}={}){return!!e&&("string"==typeof e&&(t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")))}function me(e){return be(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}const ye="2.56.3";let ge={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:n})=>t?`${e??"https://viem.sh"}${t}${n?`#${n}`:""}`:void 0,version:`viem@${ye}`};function we(e){ge=e}class ve extends Error{constructor(e,t={}){const n=t.cause instanceof ve?t.cause.details:t.cause?.message?t.cause.message:t.details,r=t.cause instanceof ve&&t.cause.docsPath||t.docsPath,s=ge.getDocsUrl?.({...t,docsPath:r});super([e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...s?[`Docs: ${s}`]:[],...n?[`Details: ${n}`]:[],...ge.version?[`Version: ${ge.version}`]:[]].join("\n"),t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=n,this.docsPath=r,this.metaMessages=t.metaMessages,this.name=t.name??this.name,this.shortMessage=e,this.version=ye}walk(e){return xe(this,e)}}function xe(e,t){return t?.(e)?e:e&&"object"==typeof e&&"cause"in e&&void 0!==e.cause?xe(e.cause,t):t?null:e}class Pe extends ve{constructor({docsPath:e}){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("\n"),{docsPath:e,name:"AbiConstructorNotFoundError"})}}class Ee extends ve{constructor({docsPath:e}){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("\n"),{docsPath:e,name:"AbiConstructorParamsNotFoundError"})}}class ke extends ve{constructor({data:e,size:t}){super([`Data size of ${t} bytes is invalid.`,"Size must be in increments of 32 bytes (size % 32 === 0)."].join("\n"),{metaMessages:[`Data: ${e} (${t} bytes)`],name:"AbiDecodingDataSizeInvalidError"})}}class Ie extends ve{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join("\n"),{metaMessages:[`Params: (${pe(t,{includeName:!0})})`,`Data: ${e} (${n} 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=e,this.params=t,this.size=n}}class $e extends ve{constructor({cause:e}={}){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError",cause:e})}}class Ae extends ve{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join("\n"),{name:"AbiEncodingArrayLengthMismatchError"})}}class Be extends ve{constructor({expectedSize:e,value:t}){super(`Size of bytes "${t}" (bytes${me(t)}) does not match expected size (bytes${e}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class Te extends ve{constructor({expectedLength:e,givenLength:t}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${e}`,`Given length (values): ${t}`].join("\n"),{name:"AbiEncodingLengthMismatchError"})}}class Ne extends ve{constructor(e,{docsPath:t}){super([`Arguments (\`args\`) were provided to "${e}", but "${e}" 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("\n"),{docsPath:t,name:"AbiErrorInputsNotFoundError"})}}class Se extends ve{constructor(e,{docsPath:t}={}){super([`Error ${e?`"${e}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join("\n"),{docsPath:t,name:"AbiErrorNotFoundError"})}}class ze extends ve{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature "${e}" not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${e}.`].join("\n"),{docsPath:t,name:"AbiErrorSignatureNotFoundError",cause:n}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}}class Oe extends ve{constructor({docsPath:e}){super("Cannot extract event signature from empty topics.",{docsPath:e,name:"AbiEventSignatureEmptyTopicsError"})}}class Ce extends ve{constructor(e,{docsPath:t}){super([`Encoded event signature "${e}" not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it.",`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join("\n"),{docsPath:t,name:"AbiEventSignatureNotFoundError"})}}class Re extends ve{constructor(e,{docsPath:t}={}){super([`Event ${e?`"${e}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it."].join("\n"),{docsPath:t,name:"AbiEventNotFoundError"})}}class Fe extends ve{constructor(e,{docsPath:t}={}){super([`Function ${e?`"${e}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join("\n"),{docsPath:t,name:"AbiFunctionNotFoundError"})}}class Me extends ve{constructor(e,{docsPath:t}){super([`Function "${e}" 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("\n"),{docsPath:t,name:"AbiFunctionOutputsNotFoundError"})}}class je extends ve{constructor(e,{docsPath:t}){super([`Encoded function signature "${e}" not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it.",`You can look up the signature here: https://4byte.sourcify.dev/?q=${e}.`].join("\n"),{docsPath:t,name:"AbiFunctionSignatureNotFoundError"})}}class qe extends ve{constructor(e,t){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${e.type}\` in \`${he(e.abiItem)}\`, and`,`\`${t.type}\` in \`${he(t.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}class Le extends ve{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:"BytesSizeMismatchError"})}}class Ue extends ve{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join("\n"),{metaMessages:[`Params: (${pe(n,{includeName:!0})})`,`Data: ${t} (${r} 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=e,this.data=t,this.params=n,this.size=r}}class Ge extends ve{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` "${t.name}"`:""} on event "${he(e,{includeName:!0})}".`].join("\n"),{name:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}}class _e extends ve{constructor(e,{docsPath:t}){super([`Type "${e}" is not a valid encoding type.`,"Please provide a valid ABI type."].join("\n"),{docsPath:t,name:"InvalidAbiEncodingType"})}}class De extends ve{constructor(e,{docsPath:t}){super([`Type "${e}" is not a valid decoding type.`,"Please provide a valid ABI type."].join("\n"),{docsPath:t,name:"InvalidAbiDecodingType"})}}class He extends ve{constructor(e){super([`Value "${e}" is not a valid array.`].join("\n"),{name:"InvalidArrayError"})}}class Ve extends ve{constructor(e){super([`"${e}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join("\n"),{name:"InvalidDefinitionTypeError"})}}class Ze extends ve{constructor(e){super(`Type "${e}" is not supported for packed encoding.`,{name:"UnsupportedPackedAbiType"})}}class We extends ve{constructor(e){super(`Filter type "${e}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}class Ke extends ve{constructor({offset:e,position:t,size:n}){super(`Slice ${"start"===t?"starting":"ending"} at offset "${e}" is out-of-bounds (size: ${n}).`,{name:"SliceOffsetOutOfBoundsError"})}}class Ye extends ve{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:"SizeExceedsPaddingSizeError"})}}class Je extends ve{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:"InvalidBytesLengthError"})}}function Xe(e,{dir:t,size:n=32}={}){return"string"==typeof e?Qe(e,{dir:t,size:n}):et(e,{dir:t,size:n})}function Qe(e,{dir:t,size:n=32}={}){if(null===n)return e;const r=e.replace("0x","");if(r.length>2*n)throw new Ye({size:Math.ceil(r.length/2),targetSize:n,type:"hex"});return`0x${r["right"===t?"padEnd":"padStart"](2*n,"0")}`}function et(e,{dir:t,size:n=32}={}){if(null===n)return e;if(e.length>n)throw new Ye({size:e.length,targetSize:n,type:"bytes"});const r=new Uint8Array(n);for(let s=0;s<n;s++){const a="right"===t;r[a?s:n-s-1]=e[a?s:e.length-s-1]}return r}class tt extends ve{constructor({max:e,min:t,signed:n,size:r,value:s}){super(`Number "${s}" is not in safe ${r?`${8*r}-bit ${n?"signed":"unsigned"} `:""}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:"IntegerOutOfRangeError"})}}class nt extends ve{constructor(e){super(`Bytes value "${e}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class rt extends ve{constructor(e){super(`Hex value "${e}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}}class st extends ve{constructor(e){super(`Hex value "${e}" is an odd length (${e.length}). It must be an even length.`,{name:"InvalidHexValueError"})}}class at extends ve{constructor({limit:e}){super(`RLP depth limit of \`${e}\` exceeded.`,{name:"RlpDepthLimitExceededError"})}}class ot extends ve{constructor({consumed:e,declared:t}){super(`RLP list items consumed \`${e}\` bytes but the list declared a length of \`${t}\`.`,{name:"RlpListBoundaryExceededError"})}}class it extends ve{constructor({count:e}){super(`RLP payload encodes a single item, but \`${e}\` trailing ${1===e?"byte remains":"bytes remain"}.`,{name:"RlpTrailingBytesError"})}}class ct extends ve{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function ut(e,{dir:t="left"}={}){let n="string"==typeof e?e.replace("0x",""):e,r=0;for(let e=0;e<n.length-1&&"0"===n["left"===t?e:n.length-e-1].toString();e++)r++;return n="left"===t?n.slice(r):n.slice(0,n.length-r),"string"==typeof e?(1===n.length&&"right"===t&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}function dt(e,{size:t}){if(me(e)>t)throw new ct({givenSize:me(e),maxSize:t})}function lt(e,t){const n="string"==typeof t?{to:t}:t,r=n.to;return"number"===r?pt(e,n):"bigint"===r?ft(e,n):"string"===r?bt(e,n):"boolean"===r?ht(e,n):Bt(e,n)}function ft(e,t={}){const{signed:n}=t;t.size&&dt(e,{size:t.size});const r=BigInt(e);if(!n)return r;const s=Math.ceil((e.length-2)/2);return r<=(1n<<8n*BigInt(s)-1n)-1n?r:r-BigInt(`0x${"f".padStart(2*s,"f")}`)-1n}function ht(e,t={}){let n=e;if(t.size&&(dt(n,{size:t.size}),n=ut(n)),"0x00"===ut(n))return!1;if("0x01"===ut(n))return!0;throw new rt(n)}function pt(e,t={}){const n=ft(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new tt({max:`${Number.MAX_SAFE_INTEGER}`,min:`${Number.MIN_SAFE_INTEGER}`,signed:t.signed,size:t.size,value:`${n}n`});return r}function bt(e,t={}){let n=Bt(e);return t.size&&(dt(n,{size:t.size}),n=ut(n,{dir:"right"})),(new TextDecoder).decode(n)}const mt=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function yt(e,t={}){return"number"==typeof e||"bigint"==typeof e?vt(e,t):"string"==typeof e?Pt(e,t):"boolean"==typeof e?gt(e,t):wt(e,t)}function gt(e,t={}){const n=`0x${Number(e)}`;return"number"==typeof t.size?(dt(n,{size:t.size}),Xe(n,{size:t.size})):n}function wt(e,t={}){let n="";for(let t=0;t<e.length;t++)n+=mt[e[t]];const r=`0x${n}`;return"number"==typeof t.size?(dt(r,{size:t.size}),Xe(r,{dir:"right",size:t.size})):r}function vt(e,t={}){const{signed:n,size:r}=t,s=BigInt(e);let a;r?a=n?(1n<<8n*BigInt(r)-1n)-1n:2n**(8n*BigInt(r))-1n:"number"==typeof e&&(a=BigInt(Number.MAX_SAFE_INTEGER));const o="bigint"==typeof a&&n?-a-1n:0;if(a&&s>a||s<o){const t="bigint"==typeof e?"n":"";throw new tt({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}const i=`0x${(n&&s<0?(1n<<BigInt(8*r))+BigInt(s):s).toString(16)}`;return r?Xe(i,{size:r}):i}const xt=new TextEncoder;function Pt(e,t={}){return wt(xt.encode(e),t)}const Et=new TextEncoder;function kt(e,t={}){return"number"==typeof e||"bigint"==typeof e?Tt(e,t):"boolean"==typeof e?It(e,t):be(e)?Bt(e,t):Nt(e,t)}function It(e,t={}){const n=new Uint8Array(1);return n[0]=Number(e),"number"==typeof t.size?(dt(n,{size:t.size}),Xe(n,{size:t.size})):n}const $t={zero:48,nine:57,A:65,F:70,a:97,f:102};function At(e){return e>=$t.zero&&e<=$t.nine?e-$t.zero:e>=$t.A&&e<=$t.F?e-($t.A-10):e>=$t.a&&e<=$t.f?e-($t.a-10):void 0}function Bt(e,t={}){let n=e;t.size&&(dt(n,{size:t.size}),n=Xe(n,{dir:"right",size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);const s=r.length/2,a=new Uint8Array(s);for(let e=0,t=0;e<s;e++){const n=At(r.charCodeAt(t++)),s=At(r.charCodeAt(t++));if(void 0===n||void 0===s)throw new ve(`Invalid byte sequence ("${r[t-2]}${r[t-1]}" in "${r}").`);a[e]=16*n+s}return a}function Tt(e,t){return Bt(vt(e,t))}function Nt(e,t={}){const n=Et.encode(e);return"number"==typeof t.size?(dt(n,{size:t.size}),Xe(n,{dir:"right",size:t.size})):n}const St=BigInt(2**32-1),zt=BigInt(32);function Ot(e,t=!1){return t?{h:Number(e&St),l:Number(e>>zt&St)}:{h:0|Number(e>>zt&St),l:0|Number(e&St)}}function Ct(e,t=!1){const n=e.length;let r=new Uint32Array(n),s=new Uint32Array(n);for(let a=0;a<n;a++){const{h:n,l:o}=Ot(e[a],t);[r[a],s[a]]=[n,o]}return[r,s]}const Rt="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0;function Ft(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function Mt(e,...t){if(!((n=e)instanceof Uint8Array||ArrayBuffer.isView(n)&&"Uint8Array"===n.constructor.name))throw new Error("Uint8Array expected");var n;if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function jt(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function qt(e,t){Mt(e);const n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function Lt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Ut(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Gt(e,t){return e<<32-t|e>>>t}function _t(e,t){return e<<t|e>>>32-t>>>0}const Dt=(()=>68===new Uint8Array(new Uint32Array([287454020]).buffer)[0])()?e=>e:function(e){for(let n=0;n<e.length;n++)e[n]=(t=e[n])<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255;var t;return e};function Ht(e){return"string"==typeof e&&(e=function(e){if("string"!=typeof e)throw new Error("string expected");return new Uint8Array((new TextEncoder).encode(e))}(e)),Mt(e),e}class Vt{}function Zt(e){const t=t=>e().update(Ht(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Wt(e=32){if(Rt&&"function"==typeof Rt.getRandomValues)return Rt.getRandomValues(new Uint8Array(e));if(Rt&&"function"==typeof Rt.randomBytes)return Uint8Array.from(Rt.randomBytes(e));throw new Error("crypto.getRandomValues must be defined")}const Kt=BigInt(0),Yt=BigInt(1),Jt=BigInt(2),Xt=BigInt(7),Qt=BigInt(256),en=BigInt(113),tn=[],nn=[],rn=[];for(let e=0,t=Yt,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],tn.push(2*(5*r+n)),nn.push((e+1)*(e+2)/2%64);let s=Kt;for(let e=0;e<7;e++)t=(t<<Yt^(t>>Xt)*en)%Qt,t&Jt&&(s^=Yt<<(Yt<<BigInt(e))-Yt);rn.push(s)}const sn=Ct(rn,!0),on=sn[0],cn=sn[1],un=(e,t,n)=>n>32?((e,t,n)=>t<<n-32|e>>>64-n)(e,t,n):((e,t,n)=>e<<n|t>>>32-n)(e,t,n),dn=(e,t,n)=>n>32?((e,t,n)=>e<<n-32|t>>>64-n)(e,t,n):((e,t,n)=>t<<n|e>>>32-n)(e,t,n);class ln extends Vt{constructor(e,t,n,r=!1,s=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=s,Ft(n),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");var a;this.state=new Uint8Array(200),this.state32=(a=this.state,new Uint32Array(a.buffer,a.byteOffset,Math.floor(a.byteLength/4)))}clone(){return this._cloneInto()}keccak(){Dt(this.state32),function(e,t=24){const n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){const r=(t+8)%10,s=(t+2)%10,a=n[s],o=n[s+1],i=un(a,o,1)^n[r],c=dn(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=i,e[t+n+1]^=c}let t=e[2],s=e[3];for(let n=0;n<24;n++){const r=nn[n],a=un(t,s,r),o=dn(t,s,r),i=tn[n];t=e[i],s=e[i+1],e[i]=a,e[i+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=on[r],e[1]^=cn[r]}Lt(n)}(this.state32,this.rounds),Dt(this.state32),this.posOut=0,this.pos=0}update(e){jt(this),Mt(e=Ht(e));const{blockLen:t,state:n}=this,r=e.length;for(let s=0;s<r;){const a=Math.min(t-this.pos,r-s);for(let t=0;t<a;t++)n[this.pos++]^=e[s++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,0!=(128&t)&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){jt(this,!1),Mt(e),this.finish();const t=this.state,{blockLen:n}=this;for(let r=0,s=e.length;r<s;){this.posOut>=n&&this.keccak();const a=Math.min(n-this.posOut,s-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Ft(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(qt(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,Lt(this.state)}_cloneInto(e){const{blockLen:t,suffix:n,outputLen:r,rounds:s,enableXOF:a}=this;return e||(e=new ln(t,n,r,a,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=n,e.outputLen=r,e.enableXOF=a,e.destroyed=this.destroyed,e}}const fn=(()=>{return e=1,t=136,n=32,Zt((()=>new ln(t,e,n)));var e,t,n})();function hn(e,t){const n=t||"hex",r=fn(be(e,{strict:!1})?kt(e):e);return"bytes"===n?r:yt(r)}const pn=e=>hn(kt(e));const bn=e=>{var t;return function(e){let t=!0,n="",r=0,s="",a=!1;for(let o=0;o<e.length;o++){const i=e[o];if(["(",")",","].includes(i)&&(t=!0),"("===i&&r++,")"===i&&r--,t)if(0!==r)" "!==i?(s+=i,n+=i):","!==e[o-1]&&","!==n&&",("!==n&&(n="",t=!1);else if(" "===i&&["event","function",""].includes(s))s="";else if(s+=i,")"===i){a=!0;break}}if(!a)throw new ve("Unable to normalize signature.");return s}("string"==typeof e?e:"function"===(t=e).type?`function ${t.name}(${P(t.inputs)})${t.stateMutability&&"nonpayable"!==t.stateMutability?` ${t.stateMutability}`:""}${t.outputs?.length?` returns (${P(t.outputs)})`:""}`:"event"===t.type?`event ${t.name}(${P(t.inputs)})`:"error"===t.type?`error ${t.name}(${P(t.inputs)})`:"constructor"===t.type?`constructor(${P(t.inputs)})${"payable"===t.stateMutability?" payable":""}`:"fallback"===t.type?"fallback() external"+("payable"===t.stateMutability?" payable":""):"receive() external payable")};function mn(e){return t=bn(e),pn(t);var t}const yn=mn;class gn extends ve{constructor({address:e}){super(`Address "${e}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}class wn extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){const e=super.keys().next().value;void 0!==e&&super.delete(e)}return this}}const vn=new wn(8192);function xn(e,t){if(vn.has(`${e}.${t}`))return vn.get(`${e}.${t}`);const n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=hn(Nt(n),"bytes"),s=(t?n.substring(`${t}0x`.length):n).split("");for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&s[e]&&(s[e]=s[e].toUpperCase()),(15&r[e>>1])>=8&&s[e+1]&&(s[e+1]=s[e+1].toUpperCase());const a=`0x${s.join("")}`;return vn.set(`${e}.${t}`,a),a}function Pn(e,t){if(!In(e,{strict:!1}))throw new gn({address:e});return xn(e,t)}const En=/^0x[a-fA-F0-9]{40}$/,kn=new wn(8192);function In(e,t){const{strict:n=!0}=t??{},r=`${e}.${n}`;if(kn.has(r))return kn.get(r);const s=!(!En.test(e)||e.toLowerCase()!==e&&n&&xn(e)!==e);return kn.set(r,s),s}function $n(e){return"string"==typeof e[0]?Bn(e):An(e)}function An(e){let t=0;for(const n of e)t+=n.length;const n=new Uint8Array(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}function Bn(e){return`0x${e.reduce(((e,t)=>e+t.replace("0x","")),"")}`}function Tn(e,t,n,{strict:r}={}){return be(e,{strict:!1})?On(e,t,n,{strict:r}):zn(e,t,n,{strict:r})}function Nn(e,t){if("number"==typeof t&&t>0&&t>me(e)-1)throw new Ke({offset:t,position:"start",size:me(e)})}function Sn(e,t,n){if("number"==typeof t&&"number"==typeof n&&me(e)!==n-t)throw new Ke({offset:n,position:"end",size:me(e)})}function zn(e,t,n,{strict:r}={}){Nn(e,t);const s=e.slice(t,n);return r&&Sn(s,t,n),s}function On(e,t,n,{strict:r}={}){Nn(e,t);const s=`0x${e.replace("0x","").slice(2*(t??0),2*(n??e.length))}`;return r&&Sn(s,t,n),s}const Cn=/^(.*)\[([0-9]*)\]$/,Rn=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Fn=/^(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 Mn(e,t){if(e.length!==t.length)throw new Te({expectedLength:e.length,givenLength:t.length});const n=function({params:e,values:t}){const n=[];for(let r=0;r<e.length;r++)n.push(jn({param:e[r],value:t[r]}));return n}({params:e,values:t});return qn(n)}function jn({param:e,value:t}){const n=Ln(e.type);if(n){const[r,s]=n;return function(e,{length:t,param:n}){const r=null===t;if(!Array.isArray(e))throw new He(e);if(!r&&e.length!==t)throw new Ae({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let s=0===e.length&&Un(n);const a=[];for(let t=0;t<e.length;t++){const r=jn({param:n,value:e[t]});r.dynamic&&(s=!0),a.push(r)}if(r||s){const e=qn(a);if(r){return{dynamic:!0,encoded:Bn([vt(a.length,{size:32}),e])}}if(s)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Bn(a.map((({encoded:e})=>e)))}}(t,{length:r,param:{...e,type:s}})}if("tuple"===e.type)return function(e,{param:t}){let n=!1;const r=[];for(let s=0;s<t.components.length;s++){const a=t.components[s],o=jn({param:a,value:e[Array.isArray(e)?s:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?qn(r):Bn(r.map((({encoded:e})=>e)))}}(t,{param:e});if("address"===e.type)return function(e){if(!In(e))throw new gn({address:e});return{dynamic:!1,encoded:Qe(e.toLowerCase())}}(t);if("bool"===e.type)return function(e){if("boolean"!=typeof e)throw new ve(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:Qe(gt(e))}}(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){const n=e.type.startsWith("int"),[,,r="256"]=Fn.exec(e.type)??[];return function(e,{signed:t,size:n=256}){if("number"==typeof n){const r=2n**(BigInt(n)-(t?1n:0n))-1n,s=t?-r-1n:0n;if(e>r||e<s)throw new tt({max:r.toString(),min:s.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:vt(e,{size:32,signed:t})}}(t,{signed:n,size:Number(r)})}if(e.type.startsWith("bytes"))return function(e,{param:t}){const[,n]=t.type.split("bytes"),r=me(e);if(!n){let t=e;return r%32!=0&&(t=Qe(t,{dir:"right",size:32*Math.ceil((e.length-2)/2/32)})),{dynamic:!0,encoded:Bn([Qe(vt(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Be({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Qe(e,{dir:"right"})}}(t,{param:e});if("string"===e.type)return function(e){const t=Pt(e),n=Math.ceil(me(t)/32),r=[];for(let e=0;e<n;e++)r.push(Qe(Tn(t,32*e,32*(e+1)),{dir:"right"}));return{dynamic:!0,encoded:Bn([Qe(vt(me(t),{size:32})),...r])}}(t);throw new _e(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function qn(e){let t=0;for(let n=0;n<e.length;n++){const{dynamic:r,encoded:s}=e[n];t+=r?32:me(s)}const n=[],r=[];let s=0;for(let a=0;a<e.length;a++){const{dynamic:o,encoded:i}=e[a];o?(n.push(vt(t+s,{size:32})),r.push(i),s+=me(i)):n.push(i)}return Bn([...n,...r])}function Ln(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Un(e){const{type:t}=e;if("string"===t)return!0;if("bytes"===t)return!0;if(t.endsWith("[]"))return!0;if("tuple"===t)return e.components.some(Un);const n=Ln(t);return!!n&&Un({...e,type:n[1]})}const Gn=e=>Tn(mn(e),0,4);function _n(e){const{abi:t,args:n=[],name:r}=e,s=be(r,{strict:!1}),a=t.filter((e=>s?"function"===e.type?Gn(e)===r:"event"===e.type&&yn(e)===r:"name"in e&&e.name===r));if(0===a.length)return;if(1===a.length)return a[0];let o;for(const e of a){if(!("inputs"in e))continue;if(!n||0===n.length){if(!e.inputs||0===e.inputs.length)return e;continue}if(!e.inputs)continue;if(0===e.inputs.length)continue;if(e.inputs.length!==n.length)continue;const t=n.every(((t,n)=>{const r="inputs"in e&&e.inputs[n];return!!r&&Dn(t,r)}));if(t){if(o&&"inputs"in o&&o.inputs){const t=Hn(e.inputs,o.inputs,n);if(t)throw new qe({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Dn(e,t){const n=typeof e,r=t.type;switch(r){case"address":return In(e,{strict:!1});case"bool":return"boolean"===n;case"function":case"string":return"string"===n;default:return"tuple"===r&&"components"in t?Object.values(t.components).every(((t,r)=>"object"===n&&Dn(Object.values(e)[r],t))):/^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)?"number"===n||"bigint"===n:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?"string"===n||e instanceof Uint8Array:!!/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)&&(Array.isArray(e)&&e.every((e=>Dn(e,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")}))))}}function Hn(e,t,n){for(const r in e){const s=e[r],a=t[r];if("tuple"===s.type&&"tuple"===a.type&&"components"in s&&"components"in a)return Hn(s.components,a.components,n[r]);const o=[s.type,a.type];if(!(!o.includes("address")||!o.includes("bytes20"))||(o.includes("address")&&o.includes("string")||!(!o.includes("address")||!o.includes("bytes")))&&In(n[r],{strict:!1}))return o}}const Vn="/docs/contract/encodeEventTopics";function Zn(e){const{abi:t,eventName:n,args:r}=e;let s=t[0];if(n){const e=_n({abi:t,name:n});if(!e)throw new Re(n,{docsPath:Vn});s=e}if("event"!==s.type)throw new Re(void 0,{docsPath:Vn});let a=[];if(r&&"inputs"in s){const e=s.inputs?.filter((e=>"indexed"in e&&e.indexed)),t=Array.isArray(r)?r:Object.values(r).length>0?e?.map((e=>r[e.name]))??[]:[];t.length>0&&(a=e?.map(((e,n)=>Array.isArray(t[n])?t[n].map(((r,s)=>Wn({param:e,value:t[n][s]}))):void 0!==t[n]&&null!==t[n]?Wn({param:e,value:t[n]}):null))??[])}if(s.anonymous)return a;const o=he(s);return[yn(o),...a]}function Wn({param:e,value:t}){if("string"===e.type||"bytes"===e.type)return hn(kt(t));if("tuple"===e.type||e.type.match(/^(.*)\[(\d+)?\]$/))throw new We(e.type);return Mn([e],[t])}function Kn(e,{method:t}){const n={};return"fallback"===e.transport.type&&e.transport.onResponse?.((({method:e,response:r,status:s,transport:a})=>{"success"===s&&t===e&&(n[r]=a.request)})),t=>n[t]||e.request}async function Yn(e,t){const{address:n,abi:r,args:s,eventName:a,fromBlock:o,strict:i,toBlock:c}=t,u=Kn(e,{method:"eth_newFilter"}),d=a?Zn({abi:r,args:s,eventName:a}):void 0,l=await e.request({method:"eth_newFilter",params:[{address:n,fromBlock:"bigint"==typeof o?vt(o):o,toBlock:"bigint"==typeof c?vt(c):c,topics:d}]});return{abi:r,args:s,eventName:a,id:l,request:u(l),strict:Boolean(i),type:"event"}}function Jn(e){return"string"==typeof e?{address:e,type:"json-rpc"}:e}const Xn="/docs/contract/encodeFunctionData";function Qn(e){const{abi:t,args:n,functionName:r}=e;let s=t[0];if(r){const e=_n({abi:t,args:n,name:r});if(!e)throw new Fe(r,{docsPath:Xn});s=e}if("function"!==s.type)throw new Fe(void 0,{docsPath:Xn});return{abi:[s],functionName:Gn(he(s))}}function er(e){const{args:t}=e,{abi:n,functionName:r}=1===e.abi.length&&e.functionName?.startsWith("0x")?e:Qn(e),s=n[0];return Bn([r,("inputs"in s&&s.inputs?Mn(s.inputs,t??[]):void 0)??"0x"])}const tr={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."},nr={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},rr={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};class sr extends ve{constructor({offset:e}){super(`Offset \`${e}\` cannot be negative.`,{name:"NegativeOffsetError"})}}class ar extends ve{constructor({length:e,position:t}){super(`Position \`${t}\` is out of bounds (\`0 < position < ${e}\`).`,{name:"PositionOutOfBoundsError"})}}class or extends ve{constructor({count:e,limit:t}){super(`Recursive read limit of \`${t}\` exceeded (recursive read count: \`${e}\`).`,{name:"RecursiveReadLimitExceededError"})}}const ir={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 or({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new ar({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new sr({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 sr({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,255&e),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 cr(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(ir);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}function ur(e,t){const n="string"==typeof t?{to:t}:t,r=n.to;return"number"===r?fr(e,n):"bigint"===r?dr(e,n):"boolean"===r?lr(e,n):"string"===r?hr(e,n):wt(e,n)}function dr(e,t={}){void 0!==t.size&&dt(e,{size:t.size});return ft(wt(e),t)}function lr(e,t={}){let n=e;if(void 0!==t.size&&(dt(n,{size:t.size}),n=ut(n)),n.length>1||n[0]>1)throw new nt(n);return Boolean(n[0])}function fr(e,t={}){void 0!==t.size&&dt(e,{size:t.size});return pt(wt(e),t)}function hr(e,t={}){let n=e;return void 0!==t.size&&(dt(n,{size:t.size}),n=ut(n,{dir:"right"})),(new TextDecoder).decode(n)}function pr(e,t){const n="string"==typeof t?Bt(t):t,r=cr(n);if(0===me(n)&&e.length>0)throw new $e;if(me(t)&&me(t)<32)throw new Ie({data:"string"==typeof t?t:wt(t),params:e,size:me(t)});let s=0;const a=[];for(let t=0;t<e.length;++t){const o=e[t];s<n.length&&r.setPosition(s);const[i,c]=br(r,o,{staticPosition:0});s+=c,a.push(i)}return a}function br(e,t,{staticPosition:n}){const r=Ln(t.type);if(r){const[s,a]=r;return function(e,t,{length:n,staticPosition:r}){if(null===n){const n=r+fr(e.readBytes(yr)),s=n+mr;e.setPosition(n);const a=fr(e.readBytes(mr)),o=gr(t);let i=0;const c=[];for(let n=0;n<a;++n){e.setPosition(s+(o?32*n:i));const[r,a]=br(e,t,{staticPosition:s});i+=a,c.push(r),0===a&&(e.assertReadLimit(),e._touch())}return e.setPosition(r+32),[c,32]}if(gr(t)){const s=r+fr(e.readBytes(yr)),a=[];for(let r=0;r<n;++r){e.setPosition(s+32*r);const[n]=br(e,t,{staticPosition:s});a.push(n)}return e.setPosition(r+32),[a,32]}let s=0;const a=[];for(let o=0;o<n;++o){const[n,o]=br(e,t,{staticPosition:r+s});s+=o,a.push(n),0===o&&(e.assertReadLimit(),e._touch())}return[a,s]}(e,{...t,type:a},{length:s,staticPosition:n})}if("tuple"===t.type)return function(e,t,{staticPosition:n}){const r=0===t.components.length||t.components.some((({name:e})=>!e)),s=r?[]:{};let a=0;if(gr(t)){const o=n+fr(e.readBytes(yr));for(let n=0;n<t.components.length;++n){const i=t.components[n];e.setPosition(o+a);const[c,u]=br(e,i,{staticPosition:o});a+=u,s[r?n:i?.name]=c}return e.setPosition(n+32),[s,32]}for(let o=0;o<t.components.length;++o){const i=t.components[o],[c,u]=br(e,i,{staticPosition:n});s[r?o:i?.name]=c,a+=u}return[s,a]}(e,t,{staticPosition:n});if("address"===t.type)return function(e){const t=e.readBytes(32);return[xn(wt(zn(t,-20))),32]}(e);if("bool"===t.type)return function(e){return[lr(e.readBytes(32),{size:32}),32]}(e);if(t.type.startsWith("bytes"))return function(e,t,{staticPosition:n}){const[r,s]=t.type.split("bytes");if(!s){const t=fr(e.readBytes(32));e.setPosition(n+t);const r=fr(e.readBytes(32));if(0===r)return e.setPosition(n+32),["0x",32];const s=e.readBytes(r);return e.setPosition(n+32),[wt(s),32]}const a=wt(e.readBytes(Number.parseInt(s,10),32));return[a,32]}(e,t,{staticPosition:n});if(t.type.startsWith("uint")||t.type.startsWith("int"))return function(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?dr(s,{signed:n}):fr(s,{signed:n}),32]}(e,t);if("string"===t.type)return function(e,{staticPosition:t}){const n=fr(e.readBytes(32)),r=t+n;e.setPosition(r);const s=fr(e.readBytes(32));if(0===s)return e.setPosition(t+32),["",32];const a=e.readBytes(s,32),o=hr(a);return e.setPosition(t+32),[o,32]}(e,{staticPosition:n});throw new De(t.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const mr=32,yr=32;function gr(e){const{type:t}=e;if("string"===t)return!0;if("bytes"===t)return!0;if(t.endsWith("[]"))return!0;if("tuple"===t)return e.components?.some(gr);const n=Ln(e.type);return!(!n||!gr({...e,type:n[1]}))}function wr(e){const{abi:t,data:n,cause:r}=e,s=Tn(n,0,4);if("0x"===s)throw new $e({cause:r});const a=[...t||[],nr,rr].find((e=>"error"===e.type&&s===Gn(he(e))));if(!a)throw new ze(s,{docsPath:"/docs/contract/decodeErrorResult",cause:r});return{abiItem:a,args:"inputs"in a&&a.inputs&&a.inputs.length>0?pr(a.inputs,Tn(n,4)):void 0,errorName:a.name}}const vr=(e,t,n)=>JSON.stringify(e,((e,n)=>{const r="bigint"==typeof n?n.toString():n;return"function"==typeof t?t(e,r):r}),n);function xr({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(((e,n)=>`${r&&e.name?`${e.name}: `:""}${"object"==typeof t[n]?vr(t[n]):t[n]}`)).join(", ")})`}function Pr(t,n="wei"){return e(t,n)}function Er(e,n="wei"){return t(e,n)}class kr extends ve{constructor({address:e}){super(`State for account "${e}" is set multiple times.`,{name:"AccountStateConflictError"})}}class Ir extends ve{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function $r(e){return e.reduce(((e,{slot:t,value:n})=>`${e} ${t}: ${n}\n`),"")}function Ar(e){const t=Object.entries(e).map((([e,t])=>void 0===t||!1===t?null:[e,t])).filter(Boolean),n=t.reduce(((e,[t])=>Math.max(e,t.length)),0);return t.map((([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`)).join("\n")}class Br extends ve{constructor(){super(["Cannot specify both a `gasPrice` and a `maxFeePerGas`/`maxPriorityFeePerGas`.","Use `maxFeePerGas`/`maxPriorityFeePerGas` for EIP-1559 compatible networks, and `gasPrice` for others."].join("\n"),{name:"FeeConflictError"})}}class Tr extends ve{constructor({filledNonce:e,requestedNonce:t}){super("The filled transaction nonce does not match the requested nonce.",{metaMessages:[`Requested Nonce: ${t}`,`Filled Nonce: ${e}`],name:"FeePayerNonceMismatchError"})}}class Nr extends ve{constructor({v:e}){super(`Invalid \`v\` value "${e}". Expected 27 or 28.`,{name:"InvalidLegacyVError"})}}class Sr extends ve{constructor({yParity:e}){super(`Invalid \`yParity\` value "${e}". Expected 0 or 1.`,{name:"InvalidYParityError"})}}class zr extends ve{constructor({transaction:e}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",Ar(e),"}","","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 Or extends ve{constructor({serializedType:e}){super(`Serialized transaction type "${e}" is invalid.`,{name:"InvalidSerializedTransactionType"}),Object.defineProperty(this,"serializedType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}}class Cr extends ve{constructor({attributes:e,serializedTransaction:t,type:n}){const r=Object.entries(e).map((([e,t])=>void 0===t?e:void 0)).filter(Boolean);super(`Invalid serialized transaction of type "${n}" was provided.`,{metaMessages:[`Serialized Transaction: "${t}"`,r.length>0?`Missing Attributes: ${r.join(", ")}`:""].filter(Boolean),name:"InvalidSerializedTransactionError"}),Object.defineProperty(this,"serializedTransaction",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=t,this.type=n}}class Rr extends ve{constructor({storageKey:e}){super(`Size for storage key "${e}" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:"InvalidStorageKeySizeError"})}}class Fr extends ve{constructor(e,{account:t,docsPath:n,chain:r,data:s,gas:a,gasPrice:o,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:d,value:l}){const f=Ar({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:d,value:void 0!==l&&`${Pr(l)} ${r?.nativeCurrency?.symbol||"ETH"}`,data:s,gas:a,gasPrice:void 0!==o&&`${Er(o)} gwei`,maxFeePerGas:void 0!==i&&`${Er(i)} gwei`,maxPriorityFeePerGas:void 0!==c&&`${Er(c)} gwei`,nonce:u});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],"Request Arguments:",f].filter(Boolean),name:"TransactionExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}class Mr extends ve{constructor({blockHash:e,blockNumber:t,blockTag:n,hash:r,index:s}){let a="Transaction";n&&void 0!==s&&(a=`Transaction at block time "${n}" at index "${s}"`),e&&void 0!==s&&(a=`Transaction at block hash "${e}" at index "${s}"`),t&&void 0!==s&&(a=`Transaction at block number "${t}" at index "${s}"`),r&&(a=`Transaction with hash "${r}"`),super(`${a} could not be found.`,{name:"TransactionNotFoundError"})}}class jr extends ve{constructor({hash:e}){super(`Transaction receipt with hash "${e}" could not be found. The Transaction may not be processed on a block yet.`,{name:"TransactionReceiptNotFoundError"})}}class qr extends ve{constructor({receipt:e}){super(`Transaction with hash "${e.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=e}}class Lr extends ve{constructor({hash:e}){super(`Timed out while waiting for transaction with hash "${e}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}function Ur(e){if(e?.reason)return e.reason;if("function"==typeof DOMException)return new DOMException("This operation was aborted","AbortError");const t=new Error("This operation was aborted");return t.name="AbortError",t}function Gr(e){return"object"==typeof e&&null!==e&&"name"in e&&"AbortError"===e.name}const _r=e=>{try{const t=new URL(e);return t.username||t.password?(t.username="",t.password="",t.toString()):e}catch{return e}};class Dr extends ve{constructor(e,{account:t,docsPath:n,chain:r,data:s,gas:a,gasPrice:o,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:d,value:l,stateOverride:f}){const h=t?Jn(t):void 0;let p=Ar({from:h?.address,to:d,value:void 0!==l&&`${Pr(l)} ${r?.nativeCurrency?.symbol||"ETH"}`,data:s,gas:a,gasPrice:void 0!==o&&`${Er(o)} gwei`,maxFeePerGas:void 0!==i&&`${Er(i)} gwei`,maxPriorityFeePerGas:void 0!==c&&`${Er(c)} gwei`,nonce:u});f&&(p+=`\n${function(e){return e.reduce(((e,{address:t,...n})=>{let r=`${e} ${t}:\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\n`),n.balance&&(r+=` balance: ${n.balance}\n`),n.code&&(r+=` code: ${n.code}\n`),n.state&&(r+=" state:\n",r+=$r(n.state)),n.stateDiff&&(r+=" stateDiff:\n",r+=$r(n.stateDiff)),r})," State Override:\n").slice(0,-1)}(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],"Raw Call Arguments:",p].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}class Hr extends ve{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:s,functionName:a,sender:o}){const i=_n({abi:t,args:n,name:a}),c=i?xr({abiItem:i,args:n,includeFunctionName:!1,includeName:!1}):void 0,u=Ar({address:r&&r,function:i?he(i,{includeName:!0}):void 0,args:c&&"()"!==c&&`${[...Array(a?.length??0).keys()].map((()=>" ")).join("")}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function "${a}".`,{cause:e,docsPath:s,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],u&&"Contract Call:",u].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=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}}class Vr extends ve{constructor({abi:e,data:t,functionName:n,message:r,cause:s}){let a,o,i,c,u;if(t&&"0x"!==t)try{o=wr({abi:e,data:t,cause:s});const{abiItem:n,errorName:r,args:a}=o;if("Error"===r)c=a[0];else if("Panic"===r){const[e]=a;c=tr[e]}else{const e=n?he(n,{includeName:!0}):void 0,t=n&&a?xr({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;i=[e?`Error: ${e}`:"",t&&"()"!==t?` ${[...Array(r?.length??0).keys()].map((()=>" ")).join("")}${t}`:""]}}catch(e){a=e}else r&&(c=r);a instanceof ze&&(u=a.signature,i=[`Unable to decode signature "${u}" as it was not found on the provided ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://4byte.sourcify.dev/?q=${u}.`]),super(c&&"execution reverted"!==c||u?[`The contract function "${n}" reverted with the following ${u?"signature":"reason"}:`,c||u].join("\n"):`The contract function "${n}" reverted.`,{cause:a??s,metaMessages:i,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=o,this.raw=t,this.reason=c,this.signature=u}}class Zr extends ve{constructor({functionName:e,cause:t}){super(`The contract function "${e}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${e}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."],name:"ContractFunctionZeroDataError",cause:t})}}class Wr extends ve{constructor({factory:e}){super("Deployment for counterfactual contract call failed"+(e?` for factory "${e}".`:""),{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 Kr extends ve{constructor({data:e,message:t}){super(t||"",{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=e}}class Yr extends ve{constructor({body:e,cause:t,details:n,headers:r,status:s,url:a}){super("HTTP request failed.",{cause:t,details:n,metaMessages:[s&&`Status: ${s}`,`URL: ${_r(a)}`,e&&`Request body: ${vr(e)}`].filter(Boolean),name:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=r,this.status=s,this.url=a}}class Jr extends ve{constructor({maxSize:e,size:t}){super("HTTP response body exceeded the size limit.",{metaMessages:[`Max: ${e} bytes`,`Received: ${t} bytes`],name:"ResponseBodyTooLargeError"}),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e,this.size=t}}class Xr extends ve{constructor({body:e,cause:t,details:n,url:r}){super("WebSocket request failed.",{cause:t,details:n,metaMessages:[`URL: ${_r(r)}`,e&&`Request body: ${vr(e)}`].filter(Boolean),name:"WebSocketRequestError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=r}}class Qr extends ve{constructor({body:e,error:t,url:n}){super("RPC Request failed.",{cause:t,details:t.message,metaMessages:[`URL: ${_r(n)}`,`Request body: ${vr(e)}`],name:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}}class es extends ve{constructor({url:e}={}){super("The socket has been closed.",{metaMessages:[e&&`URL: ${_r(e)}`].filter(Boolean),name:"SocketClosedError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=e}}class ts extends ve{constructor({body:e,url:t}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${_r(t)}`,`Request body: ${vr(e)}`],name:"TimeoutError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}class ns extends ve{constructor(e,{code:t,docsPath:n,metaMessages:r,name:s,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:s||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=s||e.name,this.code=e instanceof Qr?e.code:t??-1}}class rs extends ns{constructor(e,t){super(e,t),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}}class ss extends ns{constructor(e){super(e,{code:ss.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(ss,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class as extends ns{constructor(e){super(e,{code:as.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(as,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class os extends ns{constructor(e,{method:t}={}){super(e,{code:os.code,name:"MethodNotFoundRpcError",shortMessage:`The method${t?` "${t}"`:""} does not exist / is not available.`})}}Object.defineProperty(os,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class is extends ns{constructor(e){super(e,{code:is.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join("\n")})}}Object.defineProperty(is,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class cs extends ns{constructor(e){super(e,{code:cs.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(cs,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class us extends ns{constructor(e){super(e,{code:us.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join("\n")})}}Object.defineProperty(us,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class ds extends ns{constructor(e){super(e,{code:ds.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(ds,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class ls extends ns{constructor(e){super(e,{code:ls.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(ls,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class fs extends ns{constructor(e){super(e,{code:fs.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(fs,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class hs extends ns{constructor(e,{method:t}={}){super(e,{code:hs.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${t?` "${t}"`:""} is not supported.`})}}Object.defineProperty(hs,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class ps extends ns{constructor(e){super(e,{code:ps.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(ps,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class bs extends ns{constructor(e){super(e,{code:bs.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(bs,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class ms extends rs{constructor(e){super(e,{code:ms.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(ms,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class ys extends rs{constructor(e){super(e,{code:ys.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(ys,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class gs extends rs{constructor(e,{method:t}={}){super(e,{code:gs.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${t?` " ${t}"`:""}.`})}}Object.defineProperty(gs,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class ws extends rs{constructor(e){super(e,{code:ws.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(ws,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class vs extends rs{constructor(e){super(e,{code:vs.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(vs,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class xs extends rs{constructor(e){super(e,{code:xs.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(xs,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Ps extends rs{constructor(e){super(e,{code:Ps.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}}Object.defineProperty(Ps,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});class Es extends rs{constructor(e){super(e,{code:Es.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}}Object.defineProperty(Es,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});class ks extends rs{constructor(e){super(e,{code:ks.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}}Object.defineProperty(ks,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});class Is extends rs{constructor(e){super(e,{code:Is.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}}Object.defineProperty(Is,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});class $s extends rs{constructor(e){super(e,{code:$s.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}}Object.defineProperty($s,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});class As extends rs{constructor(e){super(e,{code:As.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}}Object.defineProperty(As,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});class Bs extends rs{constructor(e){super(e,{code:Bs.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}}Object.defineProperty(Bs,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});class Ts extends rs{constructor(e){super(e,{code:Ts.code,name:"WalletConnectSessionSettlementError",shortMessage:"WalletConnect session settlement failed."})}}Object.defineProperty(Ts,"code",{enumerable:!0,configurable:!0,writable:!0,value:7e3});class Ns extends ns{constructor(e){super(e,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}const Ss=3;function zs(e,{abi:t,address:n,args:r,docsPath:s,functionName:a,sender:o}){const i=e instanceof Kr?e:e instanceof ve?e.walk((e=>"data"in e))||e.walk():{},{code:c,data:u,details:d,message:l,shortMessage:f}=i,h=e instanceof $e?new Zr({functionName:a,cause:e}):[Ss,cs.code].includes(c)&&(u||d||l||f)||c===us.code&&"execution reverted"===d&&u?new Vr({abi:t,data:"object"==typeof u?u.data:u,functionName:a,message:i instanceof Qr?d:f??l,cause:e}):e;return new Hr(h,{abi:t,args:r,contractAddress:n,docsPath:s,functionName:a,sender:o})}async function Os({hash:e,signature:t}){const n=be(e)?e:yt(e),{secp256k1:r}=await Promise.resolve().then((function(){return Pm}));return`0x${(()=>{if("object"==typeof t&&"r"in t&&"s"in t){const{r:e,s:n,v:s,yParity:a}=t,o=Cs(Number(a??s));return new r.Signature(ft(e),ft(n)).addRecoveryBit(o)}const e=be(t)?t:yt(t);if(65!==me(e))throw new Error("invalid signature length");const n=Cs(pt(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Cs(e){if(0===e||1===e)return e;if(27===e)return 0;if(28===e)return 1;throw new Error("Invalid yParityOrV value")}async function Rs({hash:e,signature:t}){return xn(`0x${hn(`0x${(await Os({hash:e,signature:t})).substring(4)}`).substring(26)}`)}function Fs(e,t="hex"){const n=qs(e),r=cr(new Uint8Array(n.length));return n.encode(r),"hex"===t?wt(r.bytes):r.bytes}function Ms(e,t="bytes"){return Fs(e,t)}function js(e,t="hex"){return Fs(e,t)}function qs(e){return Array.isArray(e)?function(e){const t=e.reduce(((e,t)=>e+t.length),0),n=Ls(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),1===n?r.pushUint8(t):2===n?r.pushUint16(t):3===n?r.pushUint24(t):r.pushUint32(t));for(const{encode:t}of e)t(r)}}}(e.map((e=>qs(e)))):function(e){const t="string"==typeof e?Bt(e):e,n=Ls(t.length),r=1===t.length&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length;return{length:r,encode(e){1===t.length&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),1===n?e.pushUint8(t.length):2===n?e.pushUint16(t.length):3===n?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}(e)}function Ls(e){if(e<256)return 1;if(e<65536)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new ve("Length is too large.")}function Us(e){const{chainId:t,nonce:n,to:r}=e,s=e.contractAddress??e.address,a=hn(Bn(["0x05",Fs([t?vt(t):"0x",s,n?vt(n):"0x"])]));return"bytes"===r?Bt(a):a}async function Gs(e){const{authorization:t,signature:n}=e;return Rs({hash:Us(t),signature:n??t})}class _s extends ve{constructor(e,{account:t,docsPath:n,chain:r,data:s,gas:a,gasPrice:o,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:d,value:l}){const f=Ar({from:t?.address,to:d,value:void 0!==l&&`${Pr(l)} ${r?.nativeCurrency?.symbol||"ETH"}`,data:s,gas:a,gasPrice:void 0!==o&&`${Er(o)} gwei`,maxFeePerGas:void 0!==i&&`${Er(i)} gwei`,maxPriorityFeePerGas:void 0!==c&&`${Er(c)} gwei`,nonce:u});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages," "]:[],"Estimate Gas Arguments:",f].filter(Boolean),name:"EstimateGasExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}class Ds extends ve{constructor({cause:e,message:t}={}){const n=t?.replace("execution reverted: ","")?.replace("execution reverted","");super(`Execution reverted ${n?`with reason: ${n}`:"for an unknown reason"}.`,{cause:e,name:"ExecutionRevertedError"})}}Object.defineProperty(Ds,"code",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(Ds,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/});class Hs extends ve{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\`maxFeePerGas\`${t?` = ${Er(t)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:"FeeCapTooHighError"})}}Object.defineProperty(Hs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});class Vs extends ve{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\`maxFeePerGas\`${t?` = ${Er(t)}`:""} gwei) cannot be lower than the block base fee.`,{cause:e,name:"FeeCapTooLowError"})}}Object.defineProperty(Vs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/});class Zs extends ve{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:""}is higher than the next one expected.`,{cause:e,name:"NonceTooHighError"})}}Object.defineProperty(Zs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class Ws extends ve{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join("\n"),{cause:e,name:"NonceTooLowError"})}}Object.defineProperty(Ws,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class Ks extends ve{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:""}exceeds the maximum allowed nonce.`,{cause:e,name:"NonceMaxValueError"})}}Object.defineProperty(Ks,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class Ys extends ve{constructor({cause:e}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join("\n"),{cause:e,metaMessages:["This error could arise when the account does not have enough funds to:"," - pay for the total gas fee,"," - pay for the value to send."," ","The cost of the transaction is calculated as `gas * gas fee + value`, where:"," - `gas` is the amount of gas needed for transaction to execute,"," - `gas fee` is the gas fee,"," - `value` is the amount of ether to send to the recipient."],name:"InsufficientFundsError"})}}Object.defineProperty(Ys,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class Js extends ve{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:"IntrinsicGasTooHighError"})}}Object.defineProperty(Js,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class Xs extends ve{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:""}provided for the transaction is too low.`,{cause:e,name:"IntrinsicGasTooLowError"})}}Object.defineProperty(Xs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class Qs extends ve{constructor({cause:e}){super("The transaction type is not supported for this chain.",{cause:e,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(Qs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class ea extends ve{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${t?` = ${Er(t)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${n?` = ${Er(n)} gwei`:""}).`].join("\n"),{cause:e,name:"TipAboveFeeCapError"})}}Object.defineProperty(ea,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});class ta extends ve{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:"UnknownNodeError"})}}function na(e,t){const n=(e.details||"").toLowerCase(),r=e instanceof ve?e.walk((e=>e?.code===Ds.code)):e;return r instanceof ve?new Ds({cause:e,message:r.details}):Ds.nodeMessage.test(n)?new Ds({cause:e,message:e.details}):Hs.nodeMessage.test(n)?new Hs({cause:e,maxFeePerGas:t?.maxFeePerGas}):Vs.nodeMessage.test(n)?new Vs({cause:e,maxFeePerGas:t?.maxFeePerGas}):Zs.nodeMessage.test(n)?new Zs({cause:e,nonce:t?.nonce}):Ws.nodeMessage.test(n)?new Ws({cause:e,nonce:t?.nonce}):Ks.nodeMessage.test(n)?new Ks({cause:e,nonce:t?.nonce}):Ys.nodeMessage.test(n)?new Ys({cause:e}):Js.nodeMessage.test(n)?new Js({cause:e,gas:t?.gas}):Xs.nodeMessage.test(n)?new Xs({cause:e,gas:t?.gas}):Qs.nodeMessage.test(n)?new Qs({cause:e}):ea.nodeMessage.test(n)?new ea({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new ta({cause:e})}function ra(e,{format:t}){if(!t)return{};const n={};return function t(r){const s=Object.keys(r);for(const a of s)a in e&&(n[a]=e[a]),r[a]&&"object"==typeof r[a]&&!Array.isArray(r[a])&&t(r[a])}(t(e||{})),n}function sa(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,s)=>{const a=t(e,s);if(n)for(const e of n)delete a[e];return{...a,...r(e,s)}},type:e})}const aa={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function oa(e,t){const n={};return void 0!==e.authorizationList&&(n.authorizationList=e.authorizationList.map((e=>({address:e.address,r:e.r?vt(BigInt(e.r)):e.r,s:e.s?vt(BigInt(e.s)):e.s,chainId:vt(e.chainId),nonce:vt(e.nonce),...void 0!==e.yParity?{yParity:vt(e.yParity)}:{},...void 0!==e.v&&void 0===e.yParity?{v:vt(e.v)}:{}})))),void 0!==e.accessList&&(n.accessList=e.accessList),void 0!==e.blobVersionedHashes&&(n.blobVersionedHashes=e.blobVersionedHashes),void 0!==e.blobs&&("string"!=typeof e.blobs[0]?n.blobs=e.blobs.map((e=>wt(e))):n.blobs=e.blobs),void 0!==e.data&&(n.data=e.data),e.account&&(n.from=e.account.address),void 0!==e.from&&(n.from=e.from),void 0!==e.gas&&(n.gas=vt(e.gas)),void 0!==e.gasPrice&&(n.gasPrice=vt(e.gasPrice)),void 0!==e.maxFeePerBlobGas&&(n.maxFeePerBlobGas=vt(e.maxFeePerBlobGas)),void 0!==e.maxFeePerGas&&(n.maxFeePerGas=vt(e.maxFeePerGas)),void 0!==e.maxPriorityFeePerGas&&(n.maxPriorityFeePerGas=vt(e.maxPriorityFeePerGas)),void 0!==e.nonce&&(n.nonce=vt(e.nonce)),void 0!==e.to&&(n.to=e.to),void 0!==e.type&&(n.type=aa[e.type]),void 0!==e.value&&(n.value=vt(e.value)),n}const ia=sa("transactionRequest",oa);function ca(e){if(e&&0!==e.length)return e.reduce(((e,{slot:t,value:n})=>{if(66!==t.length)throw new Je({size:t.length,targetSize:66,type:"hex"});if(66!==n.length)throw new Je({size:n.length,targetSize:66,type:"hex"});return e[t]=n,e}),{})}function ua(e){const{balance:t,nonce:n,state:r,stateDiff:s,code:a}=e,o={};if(void 0!==a&&(o.code=a),void 0!==t&&(o.balance=vt(t)),void 0!==n&&(o.nonce=vt(n)),void 0!==r&&(o.state=ca(r)),void 0!==s){if(o.state)throw new Ir;o.stateDiff=ca(s)}return o}function da(e){if(!e)return;const t={};for(const{address:n,...r}of e){if(!In(n,{strict:!1}))throw new gn({address:n});if(t[n])throw new kr({address:n});t[n]=ua(r)}return t}const la=2n**(8n-1n)-1n,fa=2n**(16n-1n)-1n,ha=2n**(24n-1n)-1n,pa=2n**(32n-1n)-1n,ba=2n**(40n-1n)-1n,ma=2n**(48n-1n)-1n,ya=2n**(56n-1n)-1n,ga=2n**(64n-1n)-1n,wa=2n**(72n-1n)-1n,va=2n**(80n-1n)-1n,xa=2n**(88n-1n)-1n,Pa=2n**(96n-1n)-1n,Ea=2n**(104n-1n)-1n,ka=2n**(112n-1n)-1n,Ia=2n**(120n-1n)-1n,$a=2n**(128n-1n)-1n,Aa=2n**(136n-1n)-1n,Ba=2n**(144n-1n)-1n,Ta=2n**(152n-1n)-1n,Na=2n**(160n-1n)-1n,Sa=2n**(168n-1n)-1n,za=2n**(176n-1n)-1n,Oa=2n**(184n-1n)-1n,Ca=2n**(192n-1n)-1n,Ra=2n**(200n-1n)-1n,Fa=2n**(208n-1n)-1n,Ma=2n**(216n-1n)-1n,ja=2n**(224n-1n)-1n,qa=2n**(232n-1n)-1n,La=2n**(240n-1n)-1n,Ua=2n**(248n-1n)-1n,Ga=2n**(256n-1n)-1n,_a=-(2n**(8n-1n)),Da=-(2n**(16n-1n)),Ha=-(2n**(24n-1n)),Va=-(2n**(32n-1n)),Za=-(2n**(40n-1n)),Wa=-(2n**(48n-1n)),Ka=-(2n**(56n-1n)),Ya=-(2n**(64n-1n)),Ja=-(2n**(72n-1n)),Xa=-(2n**(80n-1n)),Qa=-(2n**(88n-1n)),eo=-(2n**(96n-1n)),to=-(2n**(104n-1n)),no=-(2n**(112n-1n)),ro=-(2n**(120n-1n)),so=-(2n**(128n-1n)),oo=-(2n**(136n-1n)),io=-(2n**(144n-1n)),co=-(2n**(152n-1n)),uo=-(2n**(160n-1n)),lo=-(2n**(168n-1n)),fo=-(2n**(176n-1n)),ho=-(2n**(184n-1n)),po=-(2n**(192n-1n)),bo=-(2n**(200n-1n)),mo=-(2n**(208n-1n)),yo=-(2n**(216n-1n)),go=-(2n**(224n-1n)),wo=-(2n**(232n-1n)),vo=-(2n**(240n-1n)),xo=-(2n**(248n-1n)),Po=-(2n**(256n-1n)),Eo=2n**8n-1n,ko=2n**16n-1n,Io=2n**24n-1n,$o=2n**32n-1n,Ao=2n**40n-1n,Bo=2n**48n-1n,To=2n**56n-1n,No=2n**64n-1n,So=2n**72n-1n,zo=2n**80n-1n,Oo=2n**88n-1n,Co=2n**96n-1n,Ro=2n**104n-1n,Fo=2n**112n-1n,Mo=2n**120n-1n,jo=2n**128n-1n,qo=2n**136n-1n,Lo=2n**144n-1n,Uo=2n**152n-1n,Go=2n**160n-1n,_o=2n**168n-1n,Do=2n**176n-1n,Ho=2n**184n-1n,Vo=2n**192n-1n,Zo=2n**200n-1n,Wo=2n**208n-1n,Ko=2n**216n-1n,Yo=2n**224n-1n,Jo=2n**232n-1n,Xo=2n**240n-1n,Qo=2n**248n-1n,ei=2n**256n-1n;function ti(e){const{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:s}=e,a=t?Jn(t):void 0;if(a&&!In(a.address))throw new gn({address:a.address});if(s&&!In(s))throw new gn({address:s});if(n&&n>ei)throw new Hs({maxFeePerGas:n});if(r&&n&&r>n)throw new ea({maxFeePerGas:n,maxPriorityFeePerGas:r})}class ni extends ve{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class ri extends ve{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class si extends ve{constructor({maxPriorityFeePerGas:e}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${Er(e)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class oi extends ve{constructor({blockHash:e,blockNumber:t}){let n="Block";e&&(n=`Block at hash "${e}"`),t&&(n=`Block at number "${t}"`),super(`${n} could not be found.`,{name:"BlockNotFoundError"})}}const ii={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function ci(e,t){const n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,...null!=e.blockTimestamp&&{blockTimestamp:BigInt(e.blockTimestamp)},chainId:e.chainId?pt(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?pt(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?ii[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=e.authorizationList.map((e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)})))),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if("bigint"==typeof n.v){if(0n===n.v||27n===n.v)return 0;if(1n===n.v||28n===n.v)return 1;if(n.v>=35n)return n.v%2n===0n?1:0}})(),"legacy"===n.type&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),"eip2930"===n.type&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),"eip1559"===n.type&&delete n.maxFeePerBlobGas,n}const ui=sa("transaction",ci);function di(e,t){const n=(e.transactions??[]).map((e=>"string"==typeof e?e:ci(e)));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}}const li=sa("block",di);async function fi(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest",includeTransactions:s}={}){const a=s??!1,o=void 0!==n?vt(n):void 0;let i=null;if(i=t?await e.request({method:"eth_getBlockByHash",params:[t,a]},{dedupe:!0}):await e.request({method:"eth_getBlockByNumber",params:[o||r,a]},{dedupe:Boolean(o)}),!i)throw new oi({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||di)(i,"getBlock")}async function hi(e){const t=await e.request({method:"eth_gasPrice"});return BigInt(t)}async function pi(e,t){const{block:n,chain:r=e.chain,request:s}=t||{};try{const t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if("function"==typeof t){const r=n||await fe(e,fi,"getBlock")({}),a=await t({block:r,client:e,request:s});if(null===a)throw new Error;return a}if(void 0!==t)return t;return ft(await e.request({method:"eth_maxPriorityFeePerGas"}))}catch{const[t,r]=await Promise.all([n?Promise.resolve(n):fe(e,fi,"getBlock")({}),fe(e,hi,"getGasPrice")({})]);if("bigint"!=typeof t.baseFeePerGas)throw new ri;const s=r-t.baseFeePerGas;return s<0n?0n:s}}async function bi(e,t){const{block:n,chain:r=e.chain,request:s,type:a="eip1559"}=t||{},o=await(async()=>"function"==typeof r?.fees?.baseFeeMultiplier?r.fees.baseFeeMultiplier({block:n,client:e,request:s}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new ni;const i=10**(o.toString().split(".")[1]?.length??0),c=e=>e*BigInt(Math.round(o*i))/BigInt(i),u=n||await fe(e,fi,"getBlock")({});if("function"==typeof r?.fees?.estimateFeesPerGas){const t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:s,type:a});if(null!==t)return t}if("eip1559"===a){if("bigint"!=typeof u.baseFeePerGas)throw new ri;const t="bigint"==typeof s?.maxPriorityFeePerGas?s.maxPriorityFeePerGas:await pi(e,{block:u,chain:r,request:s}),n=c(u.baseFeePerGas);return{maxFeePerGas:s?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:s?.gasPrice??c(await fe(e,hi,"getGasPrice")({}))}}function mi(e){const{blockHash:t,blockNumber:n,blockTag:r,requireCanonical:s}=e;if(void 0!==s&&!t)throw new ve("`requireCanonical` can only be provided when `blockHash` is set.");return t?s?{blockHash:t,requireCanonical:s}:{blockHash:t}:"bigint"==typeof n?vt(n):r??"latest"}async function yi(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a}){const o=mi({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:a});return pt(await e.request({method:"eth_getTransactionCount",params:[t,o]},{dedupe:"bigint"==typeof r||void 0!==n}))}function gi(e){const{kzg:t}=e,n=e.to??("string"==typeof e.blobs[0]?"hex":"bytes"),r="string"==typeof e.blobs[0]?e.blobs.map((e=>Bt(e))):e.blobs,s=[];for(const e of r)s.push(Uint8Array.from(t.blobToKzgCommitment(e)));return"bytes"===n?s:s.map((e=>wt(e)))}function wi(e){const{kzg:t}=e,n=e.to??("string"==typeof e.blobs[0]?"hex":"bytes"),r="string"==typeof e.blobs[0]?e.blobs.map((e=>Bt(e))):e.blobs,s="string"==typeof e.commitments[0]?e.commitments.map((e=>Bt(e))):e.commitments,a=[];for(let e=0;e<r.length;e++){const n=r[e],o=s[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return"bytes"===n?a:a.map((e=>wt(e)))}function vi(e,t,n){return e&t^e&n^t&n}class xi extends Vt{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=Ut(this.buffer)}update(e){jt(this),Mt(e=Ht(e));const{view:t,buffer:n,blockLen:r}=this,s=e.length;for(let a=0;a<s;){const o=Math.min(r-this.pos,s-a);if(o!==r)n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0);else{const t=Ut(e);for(;r<=s-a;a+=r)this.process(t,a)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){jt(this),qt(e,this),this.finished=!0;const{buffer:t,view:n,blockLen:r,isLE:s}=this;let{pos:a}=this;t[a++]=128,Lt(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;!function(e,t,n,r){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,n,r);const s=BigInt(32),a=BigInt(4294967295),o=Number(n>>s&a),i=Number(n&a),c=r?4:0,u=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+u,i,r)}(n,r-8,BigInt(8*this.length),s),this.process(n,0);const o=Ut(e),i=this.outputLen;if(i%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=i/4,u=this.get();if(c>u.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;e<c;e++)o.setUint32(4*e,u[e],s)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:n,length:r,finished:s,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=s,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}}const Pi=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ei=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]),ki=new Uint32Array(64);class Ii extends xi{constructor(e=32){super(64,e,8,!1),this.A=0|Pi[0],this.B=0|Pi[1],this.C=0|Pi[2],this.D=0|Pi[3],this.E=0|Pi[4],this.F=0|Pi[5],this.G=0|Pi[6],this.H=0|Pi[7]}get(){const{A:e,B:t,C:n,D:r,E:s,F:a,G:o,H:i}=this;return[e,t,n,r,s,a,o,i]}set(e,t,n,r,s,a,o,i){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|r,this.E=0|s,this.F=0|a,this.G=0|o,this.H=0|i}process(e,t){for(let n=0;n<16;n++,t+=4)ki[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=ki[e-15],n=ki[e-2],r=Gt(t,7)^Gt(t,18)^t>>>3,s=Gt(n,17)^Gt(n,19)^n>>>10;ki[e]=s+ki[e-7]+r+ki[e-16]|0}let{A:n,B:r,C:s,D:a,E:o,F:i,G:c,H:u}=this;for(let e=0;e<64;e++){const t=u+(Gt(o,6)^Gt(o,11)^Gt(o,25))+((d=o)&i^~d&c)+Ei[e]+ki[e]|0,l=(Gt(n,2)^Gt(n,13)^Gt(n,22))+vi(n,r,s)|0;u=c,c=i,i=o,o=a+t|0,a=s,s=r,r=n,n=t+l|0}var d;n=n+this.A|0,r=r+this.B|0,s=s+this.C|0,a=a+this.D|0,o=o+this.E|0,i=i+this.F|0,c=c+this.G|0,u=u+this.H|0,this.set(n,r,s,a,o,i,c,u)}roundClean(){Lt(ki)}destroy(){this.set(0,0,0,0,0,0,0,0),Lt(this.buffer)}}const $i=Zt((()=>new Ii)),Ai=$i;function Bi(e,t){const n=t||"hex",r=Ai(be(e,{strict:!1})?kt(e):e);return"bytes"===n?r:yt(r)}function Ti(e){const{commitment:t,version:n=1}=e,r=e.to??("string"==typeof t?"hex":"bytes"),s=Bi(t,"bytes");return s.set([n],0),"bytes"===r?s:wt(s)}function Ni(e){const{commitments:t,version:n}=e,r=e.to??("string"==typeof t[0]?"hex":"bytes"),s=[];for(const e of t)s.push(Ti({commitment:e,to:r,version:n}));return s}const Si=32,zi=4096,Oi=Si*zi,Ci=6*Oi-1-1*zi*6,Ri=1;class Fi extends ve{constructor({maxSize:e,size:t}){super("Blob size is too large.",{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:"BlobSizeTooLargeError"})}}class Mi extends ve{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}class ji extends ve{constructor({hash:e,size:t}){super(`Versioned hash "${e}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${t}`],name:"InvalidVersionedHashSizeError"})}}class qi extends ve{constructor({hash:e,version:t}){super(`Versioned hash "${e}" version is invalid.`,{metaMessages:[`Expected: ${Ri}`,`Received: ${t}`],name:"InvalidVersionedHashVersionError"})}}function Li(e){const t=e.to??("string"==typeof e.data?"hex":"bytes"),n="string"==typeof e.data?Bt(e.data):e.data,r=me(n);if(!r)throw new Mi;if(r>Ci)throw new Fi({maxSize:Ci,size:r});const s=[];let a=!0,o=0;for(;a;){const e=cr(new Uint8Array(Oi));let t=0;for(;t<zi;){const r=n.slice(o,o+(Si-1));if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}s.push(e)}return"bytes"===t?s.map((e=>e.bytes)):s.map((e=>wt(e.bytes)))}function Ui(e){const{data:t,kzg:n,to:r}=e,s=e.blobs??Li({data:t,to:r}),a=e.commitments??gi({blobs:s,kzg:n,to:r}),o=e.proofs??wi({blobs:s,commitments:a,kzg:n,to:r}),i=[];for(let e=0;e<s.length;e++)i.push({blob:s[e],commitment:a[e],proof:o[e]});return i}function Gi(e){if(e.type)return e.type;if(void 0!==e.authorizationList)return"eip7702";if(void 0!==e.blobs||void 0!==e.blobVersionedHashes||void 0!==e.maxFeePerBlobGas||void 0!==e.sidecars)return"eip4844";if(void 0!==e.maxFeePerGas||void 0!==e.maxPriorityFeePerGas)return"eip1559";if(void 0!==e.gasPrice)return void 0!==e.accessList?"eip2930":"legacy";throw new zr({transaction:e})}function _i(e,{docsPath:t,...n}){const r=(()=>{const t=na(e,n);return t instanceof ta?e:t})();return new Fr(r,{docsPath:t,...n})}async function Di(e){return pt(await e.request({method:"eth_chainId"},{dedupe:!0}))}async function Hi(e,t){const{account:n=e.account,accessList:r,authorizationList:s,chain:a=e.chain,blobVersionedHashes:o,blobs:i,data:c,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:f,maxPriorityFeePerGas:h,nonce:p,nonceManager:b,to:m,type:y,value:g,...w}=t,v=await(async()=>{if(!n)return p;if(!b)return p;if(void 0!==p)return p;const t=Jn(n),r=a?a.id:await fe(e,Di,"getChainId")({});return await b.consume({address:t.address,chainId:r,client:e})})();ti(t);const x=a?.formatters?.transactionRequest?.format,P=(x||oa)({...ra(w,{format:x}),account:n?Jn(n):void 0,accessList:r,authorizationList:s,blobs:i,blobVersionedHashes:o,data:c,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:f,maxPriorityFeePerGas:h,nonce:v,to:m,type:y,value:g},"fillTransaction");try{const n=await e.request({method:"eth_fillTransaction",params:[P]}),r=(a?.formatters?.transaction?.format||ci)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input;const s=void 0!==r.feePayerSignature&&null!==r.feePayerSignature;if(s&&void 0!==v&&r.nonce!==v)throw new Tr({filledNonce:r.nonce,requestedNonce:v});if(!s){r.gas&&(r.gas=t.gas??r.gas),r.gasPrice&&(r.gasPrice=t.gasPrice??r.gasPrice),r.maxFeePerBlobGas&&(r.maxFeePerBlobGas=t.maxFeePerBlobGas??r.maxFeePerBlobGas),r.maxFeePerGas&&(r.maxFeePerGas=t.maxFeePerGas??r.maxFeePerGas),r.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas),void 0!==r.nonce&&(r.nonce=t.nonce??r.nonce);const n=await(async()=>{if("function"==typeof a?.fees?.baseFeeMultiplier){const n=await fe(e,fi,"getBlock")({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(n<1)throw new ni;const s=10**(n.toString().split(".")[1]?.length??0),o=e=>e*BigInt(Math.round(n*s))/BigInt(s);r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=o(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=o(r.gasPrice))}return{raw:n.raw,transaction:{from:P.from,...r},...n.capabilities?{capabilities:n.capabilities}:{}}}catch(n){throw _i(n,{...t,chain:e.chain})}}const Vi=["blobVersionedHashes","chainId","fees","gas","nonce","type"],Zi=new Map,Wi=new wn(128);async function Ki(e,t){let n=t;n.account??=e.account,n.parameters??=Vi;const{account:r,chain:s=e.chain,nonceManager:a,parameters:o}=n,i="function"==typeof s?.prepareTransactionRequest?{fn:s.prepareTransactionRequest,runAt:["beforeFillTransaction"]}:Array.isArray(s?.prepareTransactionRequest)?{fn:s.prepareTransactionRequest[0],runAt:s.prepareTransactionRequest[1].runAt}:void 0;let c;async function u(){if(c)return c;if(void 0!==n.chainId)return n.chainId;if(s)return s.id;const t=await fe(e,Di,"getChainId")({});return c=t,c}let d=r?Jn(r):r,l=n.nonce;if(i?.fn&&i.runAt?.includes("beforeFillTransaction")){n=await i.fn({...n,chain:s},{client:e,phase:"beforeFillTransaction"}),l??=n.nonce;const t=n.account??n.from;d=t?Jn(t):void 0}if(o.includes("nonce")&&void 0===l&&d&&a){const t=await u();l=await a.consume({address:d.address,chainId:t,client:e})}const f=(()=>{if((o.includes("blobVersionedHashes")||o.includes("sidecars"))&&n.kzg&&n.blobs)return!1;if(o.length>0&&"feePayer"in n&&n.feePayer&&(!("feePayerSignature"in n)||!n.feePayerSignature))return!0;if(!1===Wi.get(e.uid))return!1;return!!["fees","gas"].some((e=>o.includes(e)))&&(!(!o.includes("chainId")||"number"==typeof n.chainId)||(!(!o.includes("nonce")||"number"==typeof l)||(!(!o.includes("fees")||"bigint"==typeof n.gasPrice||"bigint"==typeof n.maxFeePerGas&&"bigint"==typeof n.maxPriorityFeePerGas)||!(!o.includes("gas")||"bigint"==typeof n.gas))))})()?await fe(e,Hi,"fillTransaction")({...n,nonce:l}).then((t=>{const{chainId:r,from:s,gas:a,gasPrice:o,nonce:i,maxFeePerBlobGas:c,maxFeePerGas:u,maxPriorityFeePerGas:d,type:l,...f}=t.transaction,h="feeToken"in f?f.feeToken:void 0,p="feePayerSignature"in f&&null!==f.feePayerSignature&&void 0!==f.feePayerSignature,b=null!=h&&(!("feeToken"in n)||p);return Wi.set(e.uid,!0),{...n,...s?{from:s}:{},...l&&!n.type?{type:l}:{},...void 0!==r?{chainId:r}:{},...void 0!==a?{gas:a}:{},...void 0!==o?{gasPrice:o}:{},...void 0!==i?{nonce:i}:{},...void 0!==c&&"legacy"!==n.type&&"eip2930"!==n.type?{maxFeePerBlobGas:c}:{},...void 0!==u&&"legacy"!==n.type&&"eip2930"!==n.type?{maxFeePerGas:u}:{},...void 0!==d&&"legacy"!==n.type&&"eip2930"!==n.type?{maxPriorityFeePerGas:d}:{},..."nonceKey"in f&&void 0!==f.nonceKey?{nonceKey:f.nonceKey}:{},..."keyAuthorization"in f&&void 0!==f.keyAuthorization&&null!==f.keyAuthorization&&!("keyAuthorization"in n)?{keyAuthorization:f.keyAuthorization}:{},..."feePayerSignature"in f&&void 0!==f.feePayerSignature&&null!==f.feePayerSignature?{feePayerSignature:f.feePayerSignature}:{},...b?{feeToken:h}:{},...t.capabilities?{_capabilities:t.capabilities}:{}}})).catch((t=>{const r=t;if("TransactionExecutionError"!==r.name)return n;const s=r.walk?.((e=>e instanceof Tr));if(s)throw t;const a=r.walk?.((e=>"ExecutionRevertedError"===e.name));if(a)throw t;const o=r.walk?.((e=>{const t=e;return"MethodNotFoundRpcError"===t.name||"MethodNotSupportedRpcError"===t.name||t.message?.includes("eth_fillTransaction is not available")}));return o&&Wi.set(e.uid,!1),n})):n;l??=f.nonce,n={...f,...d?{from:d?.address}:{},...void 0!==l?{nonce:l}:{}};const{blobs:h,gas:p,kzg:b,type:m}=n;let y;async function g(){return y||(y=await fe(e,fi,"getBlock")({blockTag:"latest"}),y)}if(i?.fn&&i.runAt?.includes("beforeFillParameters")&&(n=await i.fn({...n,chain:s},{client:e,phase:"beforeFillParameters"})),o.includes("nonce")&&void 0===l&&d&&!a&&(n.nonce=await fe(e,yi,"getTransactionCount")({address:d.address,blockTag:"pending"})),(o.includes("blobVersionedHashes")||o.includes("sidecars"))&&h&&b){const e=gi({blobs:h,kzg:b});if(o.includes("blobVersionedHashes")){const t=Ni({commitments:e,to:"hex"});n.blobVersionedHashes=t}if(o.includes("sidecars")){const t=Ui({blobs:h,commitments:e,proofs:wi({blobs:h,commitments:e,kzg:b}),to:"hex"});n.sidecars=t}}if(o.includes("chainId")&&(n.chainId=await u()),(o.includes("fees")||o.includes("type"))&&void 0===m)try{n.type=Gi(n)}catch{let t=Zi.get(e.uid);if(void 0===t){const n=await g();t="bigint"==typeof n?.baseFeePerGas,Zi.set(e.uid,t)}n.type=t?"eip1559":"legacy"}if(o.includes("fees"))if("legacy"!==n.type&&"eip2930"!==n.type){if(void 0===n.maxFeePerGas||void 0===n.maxPriorityFeePerGas){const t=await g(),{maxFeePerGas:r,maxPriorityFeePerGas:a}=await bi(e,{block:t,chain:s,request:n});if(void 0===n.maxPriorityFeePerGas&&n.maxFeePerGas&&n.maxFeePerGas<a)throw new si({maxPriorityFeePerGas:a});n.maxPriorityFeePerGas=a,n.maxFeePerGas=r}}else{if(void 0!==n.maxFeePerGas||void 0!==n.maxPriorityFeePerGas)throw new ri;if(void 0===n.gasPrice){const t=await g(),{gasPrice:r}=await bi(e,{block:t,chain:s,request:n,type:"legacy"});n.gasPrice=r}}return o.includes("gas")&&void 0===p&&(n.gas=await fe(e,Yi,"estimateGas")({...n,account:d,prepare:"local"===d?.type?[]:["blobVersionedHashes"]})),i?.fn&&i.runAt?.includes("afterFillParameters")&&(n=await i.fn({...n,chain:s},{client:e,phase:"afterFillParameters"})),ti(n),delete n.parameters,n}async function Yi(e,t){const{account:n=e.account,prepare:r=!0}=t,s=n?Jn(n):void 0,a=Array.isArray(r)?r:"local"!==s?.type?["blobVersionedHashes"]:void 0;try{const n=await(async()=>t.to?t.to:t.authorizationList&&t.authorizationList.length>0?await Gs({authorization:t.authorizationList[0]}).catch((()=>{throw new ve("`to` is required. Could not infer from `authorizationList`")})):void 0)(),{accessList:o,authorizationList:i,blobs:c,blobVersionedHashes:u,blockNumber:d,blockTag:l,data:f,gas:h,gasPrice:p,maxFeePerBlobGas:b,maxFeePerGas:m,maxPriorityFeePerGas:y,nonce:g,value:w,stateOverride:v,...x}=r?await Ki(e,{...t,parameters:a,to:n}):t;if(h&&t.gas!==h)return h;const P=("bigint"==typeof d?vt(d):void 0)||l,E=da(v);ti(t);const k=e.chain?.formatters?.transactionRequest?.format,I=(k||oa)({...ra(x,{format:k}),account:s,accessList:o,authorizationList:i,blobs:c,blobVersionedHashes:u,data:f,gasPrice:p,maxFeePerBlobGas:b,maxFeePerGas:m,maxPriorityFeePerGas:y,nonce:g,to:n,value:w},"estimateGas");return BigInt(await e.request({method:"eth_estimateGas",params:E?[I,P??e.experimental_blockTag??"latest",E]:P?[I,P]:[I]}))}catch(n){throw function(e,{docsPath:t,...n}){const r=(()=>{const t=na(e,n);return t instanceof ta?e:t})();return new _s(r,{docsPath:t,...n})}(n,{...t,account:s,chain:e.chain})}}async function Ji(e,t){const{abi:n,address:r,args:s,functionName:a,dataSuffix:o=("string"==typeof e.dataSuffix?e.dataSuffix:e.dataSuffix?.value),...i}=t,c=er({abi:n,args:s,functionName:a});try{return await fe(e,Yi,"estimateGas")({data:`${c}${o?o.replace("0x",""):""}`,to:r,...i})}catch(e){const t=i.account?Jn(i.account):void 0;throw zs(e,{abi:n,address:r,args:s,docsPath:"/docs/contract/estimateContractGas",functionName:a,sender:t?.address})}}function Xi(e,t){if(!In(e,{strict:!1}))throw new gn({address:e});if(!In(t,{strict:!1}))throw new gn({address:t});return e.toLowerCase()===t.toLowerCase()}function Qi(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):null===e.blockTimestamp?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}const ec="/docs/contract/decodeEventLog";function tc(e){const{abi:t,data:n,strict:r,topics:s}=e,a=r??!0,[o,...i]=s;if(!o)throw new Oe({docsPath:ec});const c=t.find((e=>"event"===e.type&&o===yn(he(e))));if(!c||!("name"in c)||"event"!==c.type)throw new Ce(o,{docsPath:ec});const{name:u,inputs:d}=c,l=d?.some((e=>!("name"in e&&e.name))),f=l?[]:{},h=d.map(((e,t)=>[e,t])).filter((([e])=>"indexed"in e&&e.indexed)),p=[];for(let e=0;e<h.length;e++){const[t,n]=h[e],r=i[e];if(r)f[l?n:t.name||n]=nc({param:t,value:r});else{if(a)throw new Ge({abiItem:c,param:t});p.push([t,n])}}const b=d.filter((e=>!("indexed"in e&&e.indexed))),m=a?b:[...p.map((([e])=>e)),...b];if(m.length>0)if(n&&"0x"!==n)try{const e=pr(m,n);if(e){let t=0;if(!a)for(const[n,r]of p)f[l?r:n.name||r]=e[t++];if(l)for(let n=0;n<d.length;n++)void 0===f[n]&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<b.length;n++)f[b[n].name]=e[t++]}}catch(e){if(a){if(e instanceof Ie||e instanceof ar)throw new Ue({abiItem:c,data:n,params:m,size:me(n)});throw e}}else if(a)throw new Ue({abiItem:c,data:"0x",params:m,size:0});return{eventName:u,args:Object.values(f).length>0?f:void 0}}function nc({param:e,value:t}){if("string"===e.type||"bytes"===e.type||"tuple"===e.type||e.type.match(/^(.*)\[(\d+)?\]$/))return t;return(pr([e],t)||[])[0]}function rc(e){const{abi:t,args:n,logs:r,strict:s=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter((e=>"event"===e.type)).map((e=>({abi:e,selector:yn(e)})));return r.map((e=>{const t="string"==typeof e.blockNumber?Qi(e):e,r=o.filter((e=>t.topics[0]===e.selector));if(0===r.length)return null;let i,c;for(const e of r)try{i=tc({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!i&&!s){c=r[0];try{i=tc({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{const e=c.abi.inputs?.some((e=>!("name"in e&&e.name)));return{...t,args:e?[]:{},eventName:c.abi.name}}}return i&&c?a&&!a.includes(i.eventName)?null:function(e){const{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function s(e,t,n){try{return"address"===e.type?Xi(t,n):"string"===e.type||"bytes"===e.type?hn(kt(t))===n:t===n}catch{return!1}}if(Array.isArray(t)&&Array.isArray(r))return r.every(((e,r)=>{if(null==e)return!0;const a=n[r];if(!a)return!1;return(Array.isArray(e)?e:[e]).some((e=>s(a,e,t[r])))}));return"object"==typeof t&&!Array.isArray(t)&&"object"==typeof r&&!Array.isArray(r)&&Object.entries(r).every((([e,r])=>{if(null==r)return!0;const a=n.find((t=>t.name===e));if(!a)return!1;return(Array.isArray(r)?r:[r]).some((n=>s(a,n,t[e])))}))}({args:i.args,inputs:c.abi.inputs,matchArgs:n})?{...i,...t}:null:null})).filter(Boolean)}async function sc(e,{address:t,blockHash:n,fromBlock:r,toBlock:s,event:a,events:o,args:i,strict:c}={}){const u=c??!1,d=o??(a?[a]:void 0);let l,f=[];if(d){const e=d.flatMap((e=>Zn({abi:[e],eventName:e.name,args:o?void 0:i})));f=[e],a&&(f=f[0])}l=n?await e.request({method:"eth_getLogs",params:[{address:t,topics:f,blockHash:n}]}):await e.request({method:"eth_getLogs",params:[{address:t,topics:f,fromBlock:"bigint"==typeof r?vt(r):r,toBlock:"bigint"==typeof s?vt(s):s}]});const h=l.map((e=>Qi(e)));return d?rc({abi:d,args:i,logs:h,strict:u}):h}async function ac(e,t){const{abi:n,address:r,args:s,blockHash:a,eventName:o,fromBlock:i,toBlock:c,strict:u}=t,d=o?_n({abi:n,name:o}):void 0,l=d?void 0:n.filter((e=>"event"===e.type));return fe(e,sc,"getLogs")({address:r,args:s,blockHash:a,event:d,events:l,fromBlock:i,toBlock:c,strict:u})}const oc="/docs/contract/decodeFunctionResult";function ic(e){const{abi:t,args:n,functionName:r,data:s}=e;let a=t[0];if(r){const e=_n({abi:t,args:n,name:r});if(!e)throw new Fe(r,{docsPath:oc});a=e}if("function"!==a.type)throw new Fe(void 0,{docsPath:oc});if(!a.outputs)throw new Me(a.name,{docsPath:oc});const o=pr(a.outputs,s);return o&&o.length>1?o:o&&1===o.length?o[0]:void 0}
2
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const cc=BigInt(0),uc=BigInt(1);function dc(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function lc(e){if(!dc(e))throw new Error("Uint8Array expected")}function fc(e,t){if("boolean"!=typeof t)throw new Error(e+" boolean expected, got "+t)}function hc(e){const t=e.toString(16);return 1&t.length?"0"+t:t}function pc(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);return""===e?cc:BigInt("0x"+e)}const bc="function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex,mc=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function yc(e){if(lc(e),bc)return e.toHex();let t="";for(let n=0;n<e.length;n++)t+=mc[e[n]];return t}const gc={_0:48,_9:57,A:65,F:70,a:97,f:102};function wc(e){return e>=gc._0&&e<=gc._9?e-gc._0:e>=gc.A&&e<=gc.F?e-(gc.A-10):e>=gc.a&&e<=gc.f?e-(gc.a-10):void 0}function vc(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);if(bc)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 t=0,s=0;t<n;t++,s+=2){const n=wc(e.charCodeAt(s)),a=wc(e.charCodeAt(s+1));if(void 0===n||void 0===a){const t=e[s]+e[s+1];throw new Error('hex string expected, got non-hex character "'+t+'" at index '+s)}r[t]=16*n+a}return r}function xc(e){return pc(yc(e))}function Pc(e){return lc(e),pc(yc(Uint8Array.from(e).reverse()))}function Ec(e,t){return vc(e.toString(16).padStart(2*t,"0"))}function kc(e,t){return Ec(e,t).reverse()}function Ic(e,t,n){let r;if("string"==typeof t)try{r=vc(t)}catch(t){throw new Error(e+" must be hex string or Uint8Array, cause: "+t)}else{if(!dc(t))throw new Error(e+" must be hex string or Uint8Array");r=Uint8Array.from(t)}const s=r.length;if("number"==typeof n&&s!==n)throw new Error(e+" of length "+n+" expected, got "+s);return r}function $c(...e){let t=0;for(let n=0;n<e.length;n++){const r=e[n];lc(r),t+=r.length}const n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){const s=e[t];n.set(s,r),r+=s.length}return n}function Ac(e){if("string"!=typeof e)throw new Error("string expected");return new Uint8Array((new TextEncoder).encode(e))}const Bc=e=>"bigint"==typeof e&&cc<=e;function Tc(e,t,n){return Bc(e)&&Bc(t)&&Bc(n)&&t<=e&&e<n}function Nc(e,t,n,r){if(!Tc(t,n,r))throw new Error("expected valid "+e+": "+n+" <= n < "+r+", got "+t)}const Sc=e=>(uc<<BigInt(e))-uc,zc=e=>new Uint8Array(e),Oc=e=>Uint8Array.from(e);const Cc={bigint:e=>"bigint"==typeof e,function:e=>"function"==typeof e,boolean:e=>"boolean"==typeof e,string:e=>"string"==typeof e,stringOrUint8Array:e=>"string"==typeof e||dc(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>"function"==typeof e&&Number.isSafeInteger(e.outputLen)};function Rc(e,t,n={}){const r=(t,n,r)=>{const s=Cc[n];if("function"!=typeof s)throw new Error("invalid validator function");const a=e[t];if(!(r&&void 0===a||s(a,e)))throw new Error("param "+String(t)+" is invalid. Expected "+n+", got "+a)};for(const[e,n]of Object.entries(t))r(e,n,!1);for(const[e,t]of Object.entries(n))r(e,t,!0);return e}function Fc(e){const t=new WeakMap;return(n,...r)=>{const s=t.get(n);if(void 0!==s)return s;const a=e(n,...r);return t.set(n,a),a}}class Mc extends Error{static setStaticOptions(e){Mc.prototype.docsOrigin=e.docsOrigin,Mc.prototype.showVersion=e.showVersion,Mc.prototype.version=e.version}constructor(e,t={}){const n=(()=>{if(t.cause instanceof Mc){if(t.cause.details)return t.cause.details;if(t.cause.shortMessage)return t.cause.shortMessage}return t.cause&&"details"in t.cause&&"string"==typeof t.cause.details?t.cause.details:t.cause?.message?t.cause.message:t.details})(),r=t.cause instanceof Mc&&t.cause.docsPath||t.docsPath,s=t.docsOrigin??Mc.prototype.docsOrigin,a=`${s}${r??""}`,o=Boolean(t.version??Mc.prototype.showVersion),i=t.version??Mc.prototype.version;super([e||"An error occurred.",...t.metaMessages?["",...t.metaMessages]:[],...n||r||o?["",n?`Details: ${n}`:void 0,r?`See: ${a}`:void 0,o?`Version: ${i}`:void 0]:[]].filter((e=>"string"==typeof e)).join("\n"),t.cause?{cause:t.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=t.cause,this.details=n,this.docs=a,this.docsOrigin=s,this.docsPath=r,this.shortMessage=e,this.showVersion=o,this.version=i}walk(e){return jc(this,e)}}function jc(e,t){return t?.(e)?e:e&&"object"==typeof e&&"cause"in e&&e.cause?jc(e.cause,t):t?null:e}function qc(e,t){if(Jc(e)>t)throw new iu({givenSize:Jc(e),maxSize:t})}Object.defineProperty(Mc,"defaultStaticOptions",{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:"https://oxlib.sh",showVersion:!1,version:"ox@0.1.1"}}),Mc.setStaticOptions(Mc.defaultStaticOptions);const Lc={zero:48,nine:57,A:65,F:70,a:97,f:102};function Uc(e){return e>=Lc.zero&&e<=Lc.nine?e-Lc.zero:e>=Lc.A&&e<=Lc.F?e-(Lc.A-10):e>=Lc.a&&e<=Lc.f?e-(Lc.a-10):void 0}function Gc(e,t={}){const{dir:n="left"}=t;let r=e,s=0;for(let e=0;e<r.length-1&&"0"===r["left"===n?e:r.length-e-1].toString();e++)s++;return r="left"===n?r.slice(s):r.slice(0,r.length-s),r}function _c(e,t){if(xu(e)>t)throw new Tu({givenSize:xu(e),maxSize:t})}function Dc(e,t={}){const{dir:n,size:r=32}=t;if(0===r)return e;const s=e.replace("0x","");if(s.length>2*r)throw new Su({size:Math.ceil(s.length/2),targetSize:r,type:"Hex"});return`0x${s["right"===n?"padEnd":"padStart"](2*r,"0")}`}function Hc(e,t,n){return JSON.stringify(e,((e,n)=>"function"==typeof t?t(e,n):"bigint"==typeof n?n.toString()+"#__bigint":n),n)}const Vc=new TextDecoder,Zc=new TextEncoder;function Wc(e){return e instanceof Uint8Array?e:"string"==typeof e?Kc(e):function(e){return e instanceof Uint8Array?e:new Uint8Array(e)}(e)}function Kc(e,t={}){const{size:n}=t;let r=e;n&&(_c(e,n),r=wu(e,n));let s=r.slice(2);s.length%2&&(s=`0${s}`);const a=s.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){const n=Uc(s.charCodeAt(t++)),r=Uc(s.charCodeAt(t++));if(void 0===n||void 0===r)throw new Mc(`Invalid byte sequence ("${s[t-2]}${s[t-1]}" in "${s}").`);o[e]=n<<4|r}return o}function Yc(e,t={}){const{size:n}=t,r=Zc.encode(e);return"number"==typeof n?(qc(r,n),function(e,t){return function(e,t={}){const{dir:n,size:r=32}=t;if(0===r)return e;if(e.length>r)throw new uu({size:e.length,targetSize:r,type:"Bytes"});const s=new Uint8Array(r);for(let t=0;t<r;t++){const a="right"===n;s[a?t:r-t-1]=e[a?t:e.length-t-1]}return s}(e,{dir:"right",size:t})}(r,n)):r}function Jc(e){return e.length}function Xc(e,t,n,r={}){const{strict:s}=r;!function(e,t){if("number"==typeof t&&t>0&&t>Jc(e)-1)throw new cu({offset:t,position:"start",size:Jc(e)})}(e,t);const a=e.slice(t,n);return s&&function(e,t,n){if("number"==typeof t&&"number"==typeof n&&Jc(e)!==n-t)throw new cu({offset:n,position:"end",size:Jc(e)})}(a,t,n),a}function Qc(e,t={}){const{size:n}=t;void 0!==n&&qc(e,n);return Eu(bu(e,t),t)}function eu(e,t={}){const{size:n}=t;let r=e;if(void 0!==n&&(qc(r,n),r=ru(r)),r.length>1||r[0]>1)throw new au(r);return Boolean(r[0])}function tu(e,t={}){const{size:n}=t;void 0!==n&&qc(e,n);return ku(bu(e,t),t)}function nu(e,t={}){const{size:n}=t;let r=e;return void 0!==n&&(qc(r,n),r=Gc(r,{dir:"right"})),Vc.decode(r)}function ru(e){return Gc(e,{dir:"left"})}function su(e){try{return function(e){if(!(e instanceof Uint8Array)){if(!e)throw new ou(e);if("object"!=typeof e)throw new ou(e);if(!("BYTES_PER_ELEMENT"in e))throw new ou(e);if(1!==e.BYTES_PER_ELEMENT||"Uint8Array"!==e.constructor.name)throw new ou(e)}}(e),!0}catch{return!1}}class au extends Mc{constructor(e){super(`Bytes value \`${e}\` 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"})}}class ou extends Mc{constructor(e){super(`Value \`${"object"==typeof e?Hc(e):e}\` of type \`${typeof e}\` is an invalid Bytes value.`,{metaMessages:["Bytes values must be of type `Bytes`."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesTypeError"})}}class iu extends Mc{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \`${t}\` bytes. Given size: \`${e}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}}class cu extends Mc{constructor({offset:e,position:t,size:n}){super(`Slice ${"start"===t?"starting":"ending"} at offset \`${e}\` is out-of-bounds (size: \`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SliceOffsetOutOfBoundsError"})}}class uu extends Mc{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}}const du=new TextEncoder,lu=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function fu(...e){return`0x${e.reduce(((e,t)=>e+t.replace("0x","")),"")}`}function hu(e){return e instanceof Uint8Array?bu(e):Array.isArray(e)?bu(new Uint8Array(e)):e}function pu(e,t={}){const n=`0x${Number(e)}`;return"number"==typeof t.size?(_c(n,t.size),gu(n,t.size)):n}function bu(e,t={}){let n="";for(let t=0;t<e.length;t++)n+=lu[e[t]];const r=`0x${n}`;return"number"==typeof t.size?(_c(r,t.size),wu(r,t.size)):r}function mu(e,t={}){const{signed:n,size:r}=t,s=BigInt(e);let a;r?a=n?(1n<<8n*BigInt(r)-1n)-1n:2n**(8n*BigInt(r))-1n:"number"==typeof e&&(a=BigInt(Number.MAX_SAFE_INTEGER));const o="bigint"==typeof a&&n?-a-1n:0;if(a&&s>a||s<o){const t="bigint"==typeof e?"n":"";throw new $u({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}const i=`0x${(n&&s<0?BigInt.asUintN(8*r,BigInt(s)):s).toString(16)}`;return r?gu(i,r):i}function yu(e,t={}){return bu(du.encode(e),t)}function gu(e,t){return Dc(e,{dir:"left",size:t})}function wu(e,t){return Dc(e,{dir:"right",size:t})}function vu(e,t,n,r={}){const{strict:s}=r;!function(e,t){if("number"==typeof t&&t>0&&t>xu(e)-1)throw new Nu({offset:t,position:"start",size:xu(e)})}(e,t);const a=`0x${e.replace("0x","").slice(2*(t??0),2*(n??e.length))}`;return s&&function(e,t,n){if("number"==typeof t&&"number"==typeof n&&xu(e)!==n-t)throw new Nu({offset:n,position:"end",size:xu(e)})}(a,t,n),a}function xu(e){return Math.ceil((e.length-2)/2)}function Pu(e){return function(e,t={}){const{dir:n="left"}=t;let r=e.replace("0x",""),s=0;for(let e=0;e<r.length-1&&"0"===r["left"===n?e:r.length-e-1].toString();e++)s++;return r="left"===n?r.slice(s):r.slice(0,r.length-s),"0"===r?"0x":"right"===n&&r.length%2==1?`0x${r}0`:`0x${r}`}(e,{dir:"left"})}function Eu(e,t={}){const{signed:n}=t;t.size&&_c(e,t.size);const r=BigInt(e);if(!n)return r;const s=(e.length-2)/2,a=(1n<<8n*BigInt(s))-1n;return r<=a>>1n?r:r-a-1n}function ku(e,t={}){const{signed:n,size:r}=t;return Number(n||r?Eu(e,t):e)}function Iu(e,t={}){const{strict:n=!1}=t;try{return function(e,t={}){const{strict:n=!1}=t;if(!e)throw new Au(e);if("string"!=typeof e)throw new Au(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e))throw new Bu(e);if(!e.startsWith("0x"))throw new Bu(e)}(e,{strict:n}),!0}catch{return!1}}class $u extends Mc{constructor({max:e,min:t,signed:n,size:r,value:s}){super(`Number \`${s}\` is not in safe${r?` ${8*r}-bit`:""}${n?" signed":" unsigned"} integer range ${e?`(\`${t}\` to \`${e}\`)`:`(above \`${t}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class Au extends Mc{constructor(e){super(`Value \`${"object"==typeof e?Hc(e):e}\` of type \`${typeof e}\` 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 Bu extends Mc{constructor(e){super(`Value \`${e}\` 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 Tu extends Mc{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \`${t}\` bytes. Given size: \`${e}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class Nu extends Mc{constructor({offset:e,position:t,size:n}){super(`Slice ${"start"===t?"starting":"ending"} at offset \`${e}\` is out-of-bounds (size: \`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class Su extends Mc{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}function zu(e){return{address:e.address,amount:mu(e.amount),index:mu(e.index),validatorIndex:mu(e.validatorIndex)}}function Ou(e){return{..."bigint"==typeof e.baseFeePerGas&&{baseFeePerGas:mu(e.baseFeePerGas)},..."bigint"==typeof e.blobBaseFee&&{blobBaseFee:mu(e.blobBaseFee)},..."string"==typeof e.feeRecipient&&{feeRecipient:e.feeRecipient},..."bigint"==typeof e.gasLimit&&{gasLimit:mu(e.gasLimit)},..."bigint"==typeof e.number&&{number:mu(e.number)},..."bigint"==typeof e.prevRandao&&{prevRandao:mu(e.prevRandao)},..."bigint"==typeof e.time&&{time:mu(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(zu)}}}const Cu="0x82ad56cb",Ru="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",Fu="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",Mu="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",ju="0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033";class qu extends ve{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain "${t.name}" does not support contract "${n.name}".`,{metaMessages:["This could be due to any of the following:",...e&&n.blockCreated&&n.blockCreated>e?[`- The contract "${n.name}" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract "${n.name}" configured.`]],name:"ChainDoesNotSupportContract"})}}class Lu extends ve{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:"ChainMismatchError"})}}class Uu extends ve{constructor(){super(["No chain was provided to the request.","Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient."].join("\n"),{name:"ChainNotFoundError"})}}class Gu extends ve{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}class _u extends ve{constructor({chainId:e}){super("number"==typeof e?`Chain ID "${e}" is invalid.`:"Chain ID is invalid.",{name:"InvalidChainIdError"})}}const Du="/docs/contract/encodeDeployData";function Hu(e){const{abi:t,args:n,bytecode:r}=e;if(!n||0===n.length)return r;const s=t.find((e=>"type"in e&&"constructor"===e.type));if(!s)throw new Pe({docsPath:Du});if(!("inputs"in s))throw new Ee({docsPath:Du});if(!s.inputs||0===s.inputs.length)throw new Ee({docsPath:Du});return Bn([r,Mn(s.inputs,n)])}function Vu({blockNumber:e,chain:t,contract:n}){const r=t?.contracts?.[n];if(!r)throw new qu({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new qu({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}function Zu(e,{docsPath:t,...n}){const r=(()=>{const t=na(e,n);return t instanceof ta?e:t})();return new Dr(r,{docsPath:t,...n})}function Wu(){let e=()=>{},t=()=>{};return{promise:new Promise(((n,r)=>{e=n,t=r})),resolve:e,reject:t}}const Ku=new Map;function Yu({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:s}){const a=async()=>{const t=i();o();const n=t.map((({args:e})=>e));0!==n.length&&e(n).then((e=>{s&&Array.isArray(e)&&e.sort(s);for(let n=0;n<t.length;n++){const{resolve:r}=t[n];r?.([e[n],e])}})).catch((e=>{for(let n=0;n<t.length;n++){const{reject:r}=t[n];r?.(e)}}))},o=()=>Ku.delete(t),i=()=>Ku.get(t)||[],c=e=>Ku.set(t,[...i(),e]);return{flush:o,async schedule(e){const{promise:t,resolve:s,reject:o}=Wu(),u=n?.([...i().map((({args:e})=>e)),e]);u&&a();return i().length>0?(c({args:e,resolve:s,reject:o}),t):(c({args:e,resolve:s,reject:o}),setTimeout(a,r),t)}}}async function Ju(e,t){const{account:r=e.account,authorizationList:s,batch:a=Boolean(e.batch?.multicall),blockHash:o,blockNumber:i,blockTag:c=e.experimental_blockTag??"latest",requireCanonical:u,accessList:d,blobs:l,blockOverrides:f,code:h,data:p,factory:b,factoryData:m,gas:y,gasPrice:g,maxFeePerBlobGas:w,maxFeePerGas:v,maxPriorityFeePerGas:x,nonce:P,requestOptions:E,to:k,value:I,stateOverride:$,...A}=t,B=r?Jn(r):void 0;if(h&&(b||m))throw new ve("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(h&&k)throw new ve("Cannot provide both `code` & `to` as parameters.");const T=h&&p,N=b&&m&&k&&p,S=T||N,z=T?nd({code:h,data:p}):N?function(e){const{data:t,factory:n,factoryData:r,to:s}=e;return Hu({abi:ce(["constructor(address, bytes, address, bytes)"]),bytecode:Fu,args:[s,t,n,r]})}({data:p,factory:b,factoryData:m,to:k}):p;try{ti(t);const r=mi({blockHash:o,blockNumber:i,blockTag:c,requireCanonical:u}),h=f?Ou(f):void 0,p=da($),b=e.chain?.formatters?.transactionRequest?.format,m=(b||oa)({...ra(A,{format:b}),accessList:d,account:B,authorizationList:s,blobs:l,data:z,gas:y,gasPrice:g,maxFeePerBlobGas:w,maxFeePerGas:v,maxPriorityFeePerGas:x,nonce:P,to:S?void 0:k,value:I},"call");if(a&&function({request:e}){const{data:t,to:n,...r}=e;return!!t&&(!t.startsWith(Cu)&&(!!n&&!(Object.values(r).filter((e=>void 0!==e)).length>0)))}({request:m})&&!h&&void 0===o)try{const{deployless:t=!1}="object"==typeof e.batch?.multicall?e.batch.multicall:{},r=td(e,{blockNumber:i,deployless:t});if(!r||!function(e,t){return!!e&&Object.keys(e).some((e=>Xi(e,t)))}(p,r))return await async function(e,t){const{batchSize:r=1024,deployless:s=!1,wait:a=0}="object"==typeof e.batch?.multicall?e.batch.multicall:{},{blockHash:o,blockNumber:i,blockTag:c=e.experimental_blockTag??"latest",requireCanonical:u,data:d,multicallAddress:l,requestOptions:f,rpcStateOverride:h,to:p}=t,b=void 0!==l?l:td(e,{blockNumber:i,deployless:s}),m=mi({blockHash:o,blockNumber:i,blockTag:c,requireCanonical:u}),y="string"==typeof m?m:JSON.stringify(m),g=h?`.${JSON.stringify(h)}`:"",{schedule:w}=Yu({id:`${e.uid}.${y}.${ed(f)}${g}`,wait:a,shouldSplitBatch(e){const t=e.reduce(((e,{data:t})=>e+(t.length-2)),0);return t>2*r},fn:async t=>{const r=t.map((e=>({allowFailure:!0,callData:e.data,target:e.to}))),s=er({abi:n,args:[r],functionName:"aggregate3"}),a={...null===b?{data:nd({code:ju,data:s})}:{to:b,data:s}},o=await e.request({method:"eth_call",params:h?[a,m,h]:[a,m]},f);return ic({abi:n,args:[r],functionName:"aggregate3",data:o||"0x"})}}),[{returnData:v,success:x}]=await w({data:d,to:p});if(!x)throw new Kr({data:v});return"0x"===v?{data:void 0}:{data:v}}(e,{...m,blockHash:o,blockNumber:i,blockTag:c,multicallAddress:r,requestOptions:E,requireCanonical:u,rpcStateOverride:p})}catch(e){if(!(e instanceof Gu||e instanceof qu))throw e}const T=(()=>{const e=[m,r];return p&&h?[...e,p,h]:p?[...e,p]:h?[...e,{},h]:e})(),N=await e.request({method:"eth_call",params:T},E);return"0x"===N?{data:void 0}:{data:N}}catch(n){if(E?.signal?.aborted)throw Ur(E.signal);if(Gr(n))throw n;const r=function(e){if(!(e instanceof ve))return;const t=e.walk();return"object"==typeof t?.data?t.data?.data:t.data}(n),{offchainLookup:s,offchainLookupSignature:a}=await Promise.resolve().then((function(){return Ql}));if(!1!==e.ccipRead&&r?.slice(0,10)===a&&k)return{data:await s(e,{data:r,requestOptions:E,to:k})};if(S&&"0x101bb98d"===r?.slice(0,10))throw new Wr({factory:b});throw Zu(n,{...t,account:B,chain:e.chain})}}let Xu=0;const Qu=new WeakMap;function ed(e){if(!e)return"default";const t=Qu.get(e);if(void 0!==t)return t;const n=Xu++;return Qu.set(e,n),n}function td(e,t){const{blockNumber:n,deployless:r}=t;if(r)return null;if(e.chain)return Vu({blockNumber:n,chain:e.chain,contract:"multicall3"});throw new Gu}function nd(e){const{code:t,data:n}=e;return Hu({abi:ce(["constructor(bytes, bytes)"]),bytecode:Ru,args:[t,n]})}async function rd(e,t){const{abi:n,address:r,args:s,functionName:a,...o}=t,i=er({abi:n,args:s,functionName:a});try{const{data:t}=await fe(e,Ju,"call")({...o,data:i,to:r});return ic({abi:n,args:s,functionName:a,data:t||"0x"})}catch(e){throw zs(e,{abi:n,address:r,args:s,docsPath:"/docs/contract/readContract",functionName:a})}}async function sd(e,t){const{abi:n,address:r,args:s,functionName:a,dataSuffix:o=("string"==typeof e.dataSuffix?e.dataSuffix:e.dataSuffix?.value),...i}=t,c=i.account?Jn(i.account):e.account,u=er({abi:n,args:s,functionName:a});try{const{data:d}=await fe(e,Ju,"call")({batch:!1,data:`${u}${o?o.replace("0x",""):""}`,to:r,...i,account:c}),l=ic({abi:n,args:s,functionName:a,data:d||"0x"});return{result:l,request:{abi:n.filter((e=>"name"in e&&e.name===t.functionName)),address:r,args:s,dataSuffix:o,functionName:a,...i,account:c}}}catch(e){throw zs(e,{abi:n,address:r,args:s,docsPath:"/docs/contract/simulateContract",functionName:a,sender:c?.address})}}const ad=new Map,od=new Map;let id=0;function cd(e,t,n){const r=++id,s=()=>ad.get(e)||[],a=()=>{const t=s();if(!t.some((e=>e.id===r)))return;const n=od.get(e);if(1===t.length&&n){const e=n();e instanceof Promise&&e.catch((()=>{}))}(()=>{const t=s().filter((e=>e.id!==r));if(0===t.length)return ad.delete(e),void od.delete(e);ad.set(e,t)})()},o=s();if(ad.set(e,[...o,{id:r,fns:t}]),o&&o.length>0)return a;const i={};for(const e in t)i[e]=(...t)=>{const n=s();if(0!==n.length)for(const r of n)r.fns[e]?.(...t)};const c=n(i);return"function"==typeof c&&od.set(e,c),a}async function ud(e,{signal:t}={}){return new Promise(((n,r)=>{if(t?.aborted)return void r(Ur(t));const s=()=>t?.removeEventListener("abort",o),a=setTimeout((()=>{s(),n()}),e),o=()=>{clearTimeout(a),s(),r(Ur(t))};t?.addEventListener("abort",o,{once:!0})}))}function dd(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let s=!0;const a=()=>s=!1;return(async()=>{let o;t&&(o=await e({unpoll:a}));const i=await(n?.(o))??r;await ud(i);const c=async()=>{s&&(await e({unpoll:a}),await ud(r),c())};c()})(),a}const ld=new Map,fd=new Map;async function hd(e,{cacheKey:t,cacheTime:n=Number.POSITIVE_INFINITY}){const r=function(e){const t=(e,t)=>({clear:()=>t.delete(e),get:()=>t.get(e),set:n=>t.set(e,n)}),n=t(e,ld),r=t(e,fd);return{clear:()=>{n.clear(),r.clear()},promise:n,response:r}}(t),s=r.response.get();if(s&&n>0){if(Date.now()-s.created.getTime()<n)return s.data}let a=r.promise.get();a||(a=e(),r.promise.set(a));try{const e=await a;return r.response.set({created:new Date,data:e}),e}finally{r.promise.clear()}}const pd=e=>`blockNumber.${e}`;async function bd(e,{cacheTime:t=e.cacheTime}={}){const n=await hd((()=>e.request({method:"eth_blockNumber"})),{cacheKey:pd(e.uid),cacheTime:t});return BigInt(n)}async function md(e,{filter:t}){const n="strict"in t&&t.strict,r=await t.request({method:"eth_getFilterChanges",params:[t.id]});if("string"==typeof r[0])return r;const s=r.map((e=>Qi(e)));return"abi"in t&&t.abi?rc({abi:t.abi,logs:s,strict:n}):s}async function yd(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function gd(e,t){const{abi:n,address:r,args:s,batch:a=!0,eventName:o,fromBlock:i,onError:c,onLogs:u,poll:d,pollingInterval:l=e.pollingInterval,strict:f}=t;return(void 0!==d?d:"bigint"==typeof i||"webSocket"!==e.transport.type&&"ipc"!==e.transport.type&&("fallback"!==e.transport.type||"webSocket"!==e.transport.transports[0].config.type&&"ipc"!==e.transport.transports[0].config.type))?(()=>{const t=f??!1;return cd(vr(["watchContractEvent",r,s,a,e.uid,o,l,t,i]),{onLogs:u,onError:c},(c=>{let u,d;void 0!==i&&(u=i-1n);let f=!1;const h=dd((async()=>{if(f)try{let i;if(d)i=await fe(e,md,"getFilterChanges")({filter:d});else{const a=await fe(e,bd,"getBlockNumber")({});i=u&&u<a?await fe(e,ac,"getContractEvents")({abi:n,address:r,args:s,eventName:o,fromBlock:u+1n,toBlock:a,strict:t}):[],u=a}if(0===i.length)return;if(a)c.onLogs(i);else for(const e of i)c.onLogs([e])}catch(e){d&&e instanceof us&&(f=!1),c.onError?.(e)}else{try{d=await fe(e,Yn,"createContractEventFilter")({abi:n,address:r,args:s,eventName:o,strict:t,fromBlock:i})}catch{}f=!0}}),{emitOnBegin:!0,interval:l});return async()=>{d&&await fe(e,yd,"uninstallFilter")({filter:d}),h()}}))})():(()=>{const t=f??!1,i=vr(["watchContractEvent",r,s,a,e.uid,o,l,t]);let d=!0,h=()=>d=!1;return cd(i,{onLogs:u,onError:c},(t=>((async()=>{try{const a=(()=>{if("fallback"===e.transport.type){const t=e.transport.transports.find((e=>"webSocket"===e.config.type||"ipc"===e.config.type));return t?t.value:e.transport}return e.transport})(),i=o?Zn({abi:n,eventName:o,args:s}):[],{unsubscribe:c}=await a.subscribe({params:["logs",{address:r,topics:i}],onData(e){if(!d)return;const r=e.result;try{const{eventName:e,args:s}=tc({abi:n,data:r.data,topics:r.topics,strict:f}),a=Qi(r,{args:s,eventName:e});t.onLogs([a])}catch(e){let n,s;if(e instanceof Ue||e instanceof Ge){if(f)return;n=e.abiItem.name,s=e.abiItem.inputs?.some((e=>!("name"in e&&e.name)))}const a=Qi(r,{args:s?[]:{},eventName:n});t.onLogs([a])}},onError(e){t.onError?.(e)}});h=c,d||h()}catch(e){c?.(e)}})(),()=>h())))})()}class wd extends ve{constructor({docsPath:e}={}){super(["Could not find an Account to execute with this Action.","Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."].join("\n"),{docsPath:e,docsSlug:"account",name:"AccountNotFoundError"})}}class vd extends ve{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type "${n}" is not supported.`,{docsPath:e,metaMessages:t,name:"AccountTypeNotSupportedError"})}}function xd({chain:e,currentChainId:t}){if(!e)throw new Uu;if(t!==e.id)throw new Lu({chain:e,currentChainId:t})}async function Pd(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}const Ed=new wn(128);async function kd(e,t){const{account:n=e.account,assertChainId:r=!0,chain:s=e.chain,accessList:a,authorizationList:o,blobs:i,data:c,dataSuffix:u=("string"==typeof e.dataSuffix?e.dataSuffix:e.dataSuffix?.value),gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:h,maxPriorityFeePerGas:p,nonce:b,type:m,value:y,...g}=t;if(void 0===n)throw new wd({docsPath:"/docs/actions/wallet/sendTransaction"});const w=n?Jn(n):null;let v;try{ti(t);const n=await(async()=>t.to?t.to:null!==t.to&&o&&o.length>0?await Gs({authorization:o[0]}).catch((()=>{throw new ve("`to` is required. Could not infer from `authorizationList`.")})):void 0)();if("json-rpc"===w?.type||null===w){let t;null!==s&&(t=await fe(e,Di,"getChainId")({}),r&&xd({currentChainId:t,chain:s}));const v=e.chain?.formatters?.transactionRequest?.format,x=(v||oa)({...ra(g,{format:v}),accessList:a,account:w,authorizationList:o,blobs:i,chainId:t,data:u?$n([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:h,maxPriorityFeePerGas:p,nonce:b,to:n,type:m,value:y},"sendTransaction"),P=Ed.get(e.uid),E=P?"wallet_sendTransaction":"eth_sendTransaction";try{return await e.request({method:E,params:[x]},{retryCount:0})}catch(t){if(!1===P)throw t;const n=t;if("InvalidInputRpcError"===n.name||"InvalidParamsRpcError"===n.name||"MethodNotFoundRpcError"===n.name||"MethodNotSupportedRpcError"===n.name)return await e.request({method:"wallet_sendTransaction",params:[x]},{retryCount:0}).then((t=>(Ed.set(e.uid,!0),t))).catch((t=>{const r=t;if("MethodNotFoundRpcError"===r.name||"MethodNotSupportedRpcError"===r.name)throw Ed.set(e.uid,!1),n;throw r}));throw n}}if("local"===w?.type){const t=(()=>{if(!w.nonceManager||void 0!==b)return w.nonceManager;const e=w.nonceManager;return{consume:t=>(v={address:t.address,chainId:t.chainId},e.consume(t)),get:t=>e.get(t),increment:t=>e.increment(t),reset:t=>e.reset(t)}})(),r=await fe(e,Ki,"prepareTransactionRequest")({account:w,accessList:a,authorizationList:o,blobs:i,chain:s,data:u?$n([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:h,maxPriorityFeePerGas:p,nonce:b,nonceManager:t,parameters:[...Vi,"sidecars"],type:m,value:y,...g,to:n}),x=s?.serializers?.transaction,P=await w.signTransaction(r,{serializer:x}),E=(s??e.chain)?.serializers?.transactionEnvelope,k=E?await E({serializedTransaction:P,transaction:r}):P;return await fe(e,Pd,"sendRawTransaction")({serializedTransaction:k})}if("smart"===w?.type)throw new vd({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new vd({docsPath:"/docs/actions/wallet/sendTransaction",type:w?.type})}catch(e){if(e instanceof vd)throw e;throw v&&w?.nonceManager?.reset(v),_i(e,{...t,account:w,chain:t.chain||void 0})}}async function Id(e,t){return Id.internal(e,kd,"sendTransaction",t)}function $d({abi:e,address:t,client:n}){const r=n,[s,a]=r?"public"in r&&"wallet"in r?[r.public,r.wallet]:"public"in r?[r.public,void 0]:"wallet"in r?[void 0,r.wallet]:[r,r]:[void 0,void 0],o=null!=s,i=null!=a,c={};let u=!1,d=!1,l=!1;for(const t of e)if("function"===t.type?"view"===t.stateMutability||"pure"===t.stateMutability?u=!0:d=!0:"event"===t.type&&(l=!0),u&&d&&l)break;return o&&(u&&(c.read=new Proxy({},{get:(n,r)=>(...n)=>{const{args:a,options:o}=Ad(n);return fe(s,rd,"readContract")({abi:e,address:t,functionName:r,args:a,...o})}})),d&&(c.simulate=new Proxy({},{get:(n,r)=>(...n)=>{const{args:a,options:o}=Ad(n);return fe(s,sd,"simulateContract")({abi:e,address:t,functionName:r,args:a,...o})}})),l&&(c.createEventFilter=new Proxy({},{get:(n,r)=>(...n)=>{const a=e.find((e=>"event"===e.type&&e.name===r)),{args:o,options:i}=Bd(n,a);return fe(s,Yn,"createContractEventFilter")({abi:e,address:t,eventName:r,args:o,...i})}}),c.getEvents=new Proxy({},{get:(n,r)=>(...n)=>{const a=e.find((e=>"event"===e.type&&e.name===r)),{args:o,options:i}=Bd(n,a);return fe(s,ac,"getContractEvents")({abi:e,address:t,eventName:r,args:o,...i})}}),c.watchEvent=new Proxy({},{get:(n,r)=>(...n)=>{const a=e.find((e=>"event"===e.type&&e.name===r)),{args:o,options:i}=Bd(n,a);return fe(s,gd,"watchContractEvent")({abi:e,address:t,eventName:r,args:o,...i})}}))),i&&d&&(c.write=new Proxy({},{get:(n,r)=>(...n)=>{const{args:s,options:o}=Ad(n);return fe(a,Id,"writeContract")({abi:e,address:t,functionName:r,args:s,...o})}})),(o||i)&&d&&(c.estimateGas=new Proxy({},{get:(n,r)=>(...n)=>{const{args:o,options:i}=Ad(n);return fe(s??a,Ji,"estimateContractGas")({abi:e,address:t,functionName:r,args:o,...i,account:i.account??a.account})}})),c.address=t,c.abi=e,c}function Ad(e){const t=e.length&&Array.isArray(e[0]);return{args:t?e[0]:[],options:(t?e[1]:e[0])??{}}}function Bd(e,t){let n=!1;Array.isArray(e[0])?n=!0:1===e.length?n=t.inputs.some((e=>e.indexed)):2===e.length&&(n=!0);return{args:n?e[0]:void 0,options:(n?e[1]:e[0])??{}}}!function(e){e.internal=async function(e,t,n,r){const{abi:s,account:a=e.account,address:o,args:i,functionName:c,...u}=r;if(void 0===a)throw new wd({docsPath:"/docs/contract/writeContract"});const d=a?Jn(a):null,l=er({abi:s,args:i,functionName:c});try{return await fe(e,t,n)({data:l,to:o,account:d,...u})}catch(e){throw zs(e,{abi:s,address:o,args:i,docsPath:"/docs/contract/writeContract",functionName:c,sender:d?.address})}}}(Id||(Id={}));class Td extends ve{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:"BundleFailedError"}),Object.defineProperty(this,"result",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}}function Nd(e,{delay:t=100,retryCount:n=2,shouldRetry:r=(()=>!0),signal:s}={}){return new Promise(((a,o)=>{const i=async({count:c=0}={})=>{if(s?.aborted)return void o(Ur(s));try{const t=await e();a(t)}catch(e){if(s?.aborted)return void o(Ur(s));if(Gr(e))return void o(e);if(c<n&&await r({count:c,error:e}))return(async({error:e})=>{const n="function"==typeof t?t({count:c,error:e}):t;if(n)try{await ud(n,{signal:s})}catch(e){return void o(e)}return i({count:c+1})})({error:e});o(e)}};i().catch(o)}))}const Sd={"0x0":"reverted","0x1":"success"};function zd(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((e=>Qi(e))):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?pt(e.transactionIndex):null,status:e.status?Sd[e.status]:null,type:e.type?ii[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}const Od=sa("transactionReceipt",zd),Cd="0x5792579257925792579257925792579257925792579257925792579257925792",Rd=vt(0,{size:32});async function Fd(e,t){const{account:n=e.account,chain:r=e.chain,experimental_fallback:s,experimental_fallbackDelay:a=32,forceAtomic:o=!1,id:i,version:c="2.0.0"}=t,u=n?Jn(n):null;let d=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(d="string"==typeof e.dataSuffix?{...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:{...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});const l=t.calls.map((e=>{const t=e,n=t.abi?er({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?$n([n,t.dataSuffix]):n,to:t.to,value:t.value?vt(t.value):void 0}}));try{const t=await e.request({method:"wallet_sendCalls",params:[{atomicRequired:o,calls:l,capabilities:d,chainId:vt(r.id),from:u?.address,id:i,version:c}]},{retryCount:0});return"string"==typeof t?{id:t}:t}catch(n){const i=n;if(s&&("MethodNotFoundRpcError"===i.name||"MethodNotSupportedRpcError"===i.name||"UnknownRpcError"===i.name||i.details.toLowerCase().includes("does not exist / is not available")||i.details.toLowerCase().includes("missing or invalid. request()")||i.details.toLowerCase().includes("did not match any variant of untagged enum")||i.details.toLowerCase().includes("account upgraded to unsupported contract")||i.details.toLowerCase().includes("eip-7702 not supported")||i.details.toLowerCase().includes("unsupported wc_ method")||i.details.toLowerCase().includes("feature toggled misconfigured")||i.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))){if(d){if(Object.values(d).some((e=>!e.optional))){const e="non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";throw new Ps(new ve(e,{details:e}))}}if(o&&l.length>1){const e="`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";throw new Bs(new ve(e,{details:e}))}const t=[];for(const n of l){try{const s=await kd(e,{account:u,chain:r,data:n.data,to:n.to,value:n.value?ft(n.value):void 0});t.push({status:"fulfilled",value:s})}catch(e){t.push({reason:e,status:"rejected"})}a>0&&await new Promise((e=>setTimeout(e,a)))}if(t.every((e=>"rejected"===e.status)))throw t[0].reason;return{id:$n([...t.map((e=>"fulfilled"===e.status?e.value:Rd)),vt(r.id,{size:32}),Cd])}}throw _i(n,{...t,account:u,chain:t.chain})}}async function Md(e,t){const{atomic:n=!1,chainId:r,receipts:s,version:a="2.0.0",...o}=await async function(t){if(t.endsWith(Cd.slice(2))){const n=ut(On(t,-64,-32)),r=On(t,0,-64).slice(2).match(/.{1,64}/g),s=await Promise.all(r.map((t=>Rd.slice(2)!==t?e.request({method:"eth_getTransactionReceipt",params:[`0x${t}`]},{dedupe:!0}):void 0))),a=s.some((e=>null===e))?100:s.every((e=>"0x1"===e?.status))?200:s.every((e=>"0x0"===e?.status))?500:600;return{atomic:!1,chainId:pt(n),receipts:s.filter(Boolean),status:a,version:"2.0.0"}}return e.request({method:"wallet_getCallsStatus",params:[t]})}(t.id),[i,c]=(()=>{const e=o.status;return e>=100&&e<200?["pending",e]:e>=200&&e<300?["success",e]:e>=300&&e<700?["failure",e]:"CONFIRMED"===e?["success",200]:"PENDING"===e?["pending",100]:[void 0,e]})();return{...o,atomic:n,chainId:r?pt(r):void 0,receipts:s?.map((e=>({...e,blockNumber:ft(e.blockNumber),gasUsed:ft(e.gasUsed),status:Sd[e.status]})))??[],statusCode:c,status:i,version:a}}async function jd(e,t){const{id:n,pollingInterval:r=e.pollingInterval,status:s=(({statusCode:e})=>200===e||e>=300),retryCount:a=4,retryDelay:o=(({count:e})=>200*~~(1<<e)),timeout:i=6e4,throwOnFailure:c=!1}=t,u=vr(["waitForCallsStatus",e.uid,n]),{promise:d,resolve:l,reject:f}=Wu();let h;const p=cd(u,{resolve:l,reject:f},(t=>{const i=dd((async()=>{const r=e=>{clearTimeout(h),i(),e(),p()};try{const i=await Nd((async()=>{const t=await fe(e,Md,"getCallsStatus")({id:n});if(c&&"failure"===t.status)throw new Td(t);return t}),{retryCount:a,delay:o});if(!s(i))return;r((()=>t.resolve(i)))}catch(e){r((()=>t.reject(e)))}}),{interval:r,emitOnBegin:!0});return i}));return h=i?setTimeout((()=>{p(),clearTimeout(h),f(new qd({id:n}))}),i):void 0,await d}class qd extends ve{constructor({id:e}){super(`Timed out while waiting for call bundle with id "${e}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}const Ld=256;let Ud,Gd=Ld;function _d(e=11){if(!Ud||Gd+e>2*Ld){Ud="",Gd=0;for(let e=0;e<Ld;e++)Ud+=(256+256*Math.random()|0).toString(16).substring(1)}return Ud.substring(Gd,Gd+++e)}function Dd(e){const{batch:t,chain:n,ccipRead:r,dataSuffix:s,key:a="base",name:o="Base Client",tokens:i,type:c="base"}=e,u=e.experimental_blockTag??("number"==typeof n?.experimental_preconfirmationTime?"pending":void 0),d=n?.blockTime??12e3,l=Math.min(Math.max(Math.floor(d/2),500),4e3),f=e.pollingInterval??l,h=e.cacheTime??f,p=e.account?Jn(e.account):void 0,{config:b,request:m,value:y}=e.transport({account:p,chain:n,pollingInterval:f}),g={account:p,batch:t,cacheTime:h,ccipRead:r,chain:n,dataSuffix:s,key:a,name:o,pollingInterval:f,request:m,tokens:i,transport:{...b,...y},type:c,uid:_d(),...u?{experimental_blockTag:u}:{}};return Object.assign(g,{extend:function e(t){return n=>{const r=n(t);for(const e in g)delete r[e];const s={...t,...r};for(const e in r){const n=t[e],a=r[e];Hd(n)&&Hd(a)&&(s[e]={...n,...a})}return Object.assign(s,{extend:e(s)})}}(g)})}function Hd(e){if("object"!=typeof e||null===e)return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function Vd(e,t){const n=(n={})=>t(e,n);for(const r of["call","calls","callWithPeriod","estimateGas","prepare","prepareRecipient","predict","simulate"])if(Object.hasOwn(t,r)){const s=t[r];n[r]=(t={})=>1===s.length?s(t):s(e,t)}for(const e of["extractEvent","extractEvents"])Object.hasOwn(t,e)&&(n[e]=t[e]);return n}function Zd(){return null}function Wd(e){if(!(e instanceof ve))return!1;const t=e.walk((e=>e instanceof Vr));return t instanceof Vr&&("HttpError"===t.data?.errorName||("ResolverError"===t.data?.errorName||("ResolverNotContract"===t.data?.errorName||("ResolverNotFound"===t.data?.errorName||("ReverseAddressMismatch"===t.data?.errorName||"UnsupportedResolverProfile"===t.data?.errorName)))))}function Kd(e){const{abi:t,data:n}=e,r=Tn(n,0,4),s=t.find((e=>"function"===e.type&&r===Gn(he(e))));if(!s)throw new je(r,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:s.name,args:"inputs"in s&&s.inputs&&s.inputs.length>0?pr(s.inputs,Tn(n,4)):void 0}}const Yd="/docs/contract/encodeErrorResult";function Jd(e){const{abi:t,errorName:n,args:r}=e;let s=t[0];if(n){const e=_n({abi:t,args:r,name:n});if(!e)throw new Se(n,{docsPath:Yd});s=e}if("error"!==s.type)throw new Se(void 0,{docsPath:Yd});const a=he(s),o=Gn(a);let i="0x";if(r&&r.length>0){if(!s.inputs)throw new Ne(s.name,{docsPath:Yd});i=Mn(s.inputs,r)}return Bn([o,i])}const Xd="/docs/contract/encodeFunctionResult";function Qd(e){const{abi:t,functionName:n,result:r}=e;let s=t[0];if(n){const e=_n({abi:t,name:n});if(!e)throw new Fe(n,{docsPath:Xd});s=e}if("function"!==s.type)throw new Fe(void 0,{docsPath:Xd});if(!s.outputs)throw new Me(s.name,{docsPath:Xd});const a=(()=>{if(0===s.outputs.length)return[];if(1===s.outputs.length)return[r];if(Array.isArray(r))return r;throw new He(r)})();return Mn(s.outputs,a)}const el="x-batch-gateway:true";async function tl(e){const{data:t,ccipRequest:n}=e,{args:[s]}=Kd({abi:r,data:t}),a=[],o=[];return await Promise.all(s.map((async(e,t)=>{try{o[t]=e.urls.includes(el)?await tl({data:e.data,ccipRequest:n}):await n(e),a[t]=!1}catch(e){a[t]=!0,o[t]="HttpRequestError"===(s=e).name&&s.status?Jd({abi:r,errorName:"HttpError",args:[s.status,s.shortMessage]}):Jd({abi:[nr],errorName:"Error",args:["shortMessage"in s?s.shortMessage:s.message]})}var s}))),Qd({abi:r,functionName:"query",result:[a,o]})}function nl(e){if(66!==e.length)return null;if(0!==e.indexOf("["))return null;if(65!==e.indexOf("]"))return null;const t=`0x${e.slice(1,65)}`;return be(t)?t:null}function rl(e){let t=new Uint8Array(32).fill(0);if(!e)return wt(t);const n=e.split(".");for(let e=n.length-1;e>=0;e-=1){const r=nl(n[e]),s=r?kt(r):hn(Nt(n[e]),"bytes");t=hn($n([t,s]),"bytes")}return wt(t)}function sl(e){return`[${e.slice(2)}]`}function ol(e){const t=new Uint8Array(32).fill(0);return e?nl(e)||hn(Nt(e)):wt(t)}function il(e){const t=e.replace(/^\.|\.$/gm,"");if(0===t.length)return new Uint8Array(1);const n=new Uint8Array(Nt(t).byteLength+2);let r=0;const s=t.split(".");for(let e=0;e<s.length;e++){let t=Nt(s[e]);t.byteLength>255&&(t=Nt(sl(ol(s[e])))),n[r]=t.length,n.set(t,r+1),r+=t.length+1}return n.byteLength!==r+1?n.slice(0,r+1):n}async function cl(e,t){const{blockNumber:n,blockTag:r,coinType:o,name:i,gatewayUrls:c,strict:u}=t,{chain:d}=e,l=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!d)throw new Error("client chain not configured. universalResolverAddress is required.");return Vu({blockNumber:n,chain:d,contract:"ensUniversalResolver"})})(),f=d?.ensTlds;if(f&&!f.some((e=>i.endsWith(e))))return null;const h=null!=o?[rl(i),BigInt(o)]:[rl(i)];try{const t=er({abi:s,functionName:"addr",args:h}),u={address:l,abi:a,functionName:"resolveWithGateways",args:[yt(il(i)),t,c??[el]],blockNumber:n,blockTag:r},d=fe(e,rd,"readContract"),f=await d(u);if("0x"===f[0])return null;const p=function({coinType:e,data:t,args:n}){try{return ic({abi:s,args:n,functionName:"addr",data:t})}catch(n){if(null==e)throw n;const r=ut(t);if(20===me(r))return Pn(r);throw n}}({coinType:o,data:f[0],args:h});return"0x"===p||"0x00"===ut(p)?null:p}catch(e){if(u)throw e;if(Wd(e))return null;throw e}}class ul extends ve{constructor({data:e}){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(e)}`],name:"EnsAvatarInvalidMetadataError"})}}class dl extends ve{constructor({reason:e}){super(`ENS NFT avatar URI is invalid. ${e}`,{name:"EnsAvatarInvalidNftUriError"})}}class ll extends ve{constructor({uri:e}){super(`Unable to resolve ENS avatar URI "${e}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class fl extends ve{constructor({namespace:e}){super(`ENS NFT avatar namespace "${e}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}class hl extends ve{constructor({chainId:e}){super(`Invalid ENSIP-11 chainId: ${e}. Must be between 0 and 0x7fffffff, or 1.`,{name:"EnsInvalidChainIdError"})}}const pl=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,bl=/^(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>\/.*)?$/,ml=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,yl=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;function gl(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function wl({uri:e,gatewayUrls:t}){const n=ml.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=gl(t?.ipfs,"https://ipfs.io"),s=gl(t?.arweave,"https://arweave.net"),a=e.match(pl),{protocol:o,subpath:i,target:c,subtarget:u=""}=a?.groups||{},d="ipns:/"===o||"ipns/"===i,l="ipfs:/"===o||"ipfs/"===i||bl.test(e);if(e.startsWith("http")&&!d&&!l){let n=e;return t?.arweave&&(n=e.replace(/https:\/\/arweave.net/g,t?.arweave)),{uri:n,isOnChain:!1,isEncoded:!1}}if((d||l)&&c)return{uri:`${r}/${d?"ipns":"ipfs"}/${c}${u}`,isOnChain:!1,isEncoded:!1};if("ar:/"===o&&c)return{uri:`${s}/${c}${u||""}`,isOnChain:!1,isEncoded:!1};let f=e.replace(yl,"");if(f.startsWith("<svg")&&(f=`data:image/svg+xml;base64,${btoa(f)}`),f.startsWith("data:")||f.startsWith("{"))return{uri:f,isOnChain:!0,isEncoded:!1};throw new ll({uri:e})}function vl(e){if("object"!=typeof e||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new ul({data:e});return e.image||e.image_url||e.image_data}async function xl({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=wl({uri:t,gatewayUrls:e});if(r)return n;const s=await async function(e){try{const t=await fetch(e,{method:"HEAD"});if(200===t.status){const e=t.headers.get("content-type");return e?.startsWith("image/")}return!1}catch(t){return("object"!=typeof t||void 0===t.response)&&!!Object.hasOwn(globalThis,"Image")&&new Promise((t=>{const n=new Image;n.onload=()=>{t(!0)},n.onerror=()=>{t(!1)},n.src=e}))}}(n);if(s)return n;throw new ll({uri:t})}async function Pl(e,{gatewayUrls:t,record:n}){return/eip155:/i.test(n)?async function(e,{gatewayUrls:t,record:n}){const r=function(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[n,r,s]=t.split("/"),[a,o]=n.split(":"),[i,c]=r.split(":");if(!a||"eip155"!==a.toLowerCase())throw new dl({reason:"Only EIP-155 supported"});if(!o)throw new dl({reason:"Chain ID not found"});if(!c)throw new dl({reason:"Contract address not found"});if(!s)throw new dl({reason:"Token ID not found"});if(!i)throw new dl({reason:"ERC namespace not found"});return{chainID:Number.parseInt(o,10),namespace:i.toLowerCase(),contractAddress:c,tokenID:s}}(n),s=await async function(e,{nft:t}){if("erc721"===t.namespace)return rd(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("erc1155"===t.namespace)return rd(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 fl({namespace:t.namespace})}(e,{nft:r}),{uri:a,isOnChain:o,isEncoded:i}=wl({uri:s,gatewayUrls:t});if(o&&(a.includes("data:application/json;base64,")||a.startsWith("{"))){const e=i?atob(a.replace("data:application/json;base64,","")):a;return xl({uri:vl(JSON.parse(e)),gatewayUrls:t})}let c=r.tokenID;"erc1155"===r.namespace&&(c=c.replace("0x","").padStart(64,"0"));return async function({gatewayUrls:e,uri:t}){try{const n=await fetch(t).then((e=>e.json()));return await xl({gatewayUrls:e,uri:vl(n)})}catch{throw new ll({uri:t})}}({gatewayUrls:t,uri:a.replace(/(?:0x)?{id}/,c)})}(e,{gatewayUrls:t,record:n}):xl({uri:n,gatewayUrls:t})}async function El(e,t){const{blockNumber:n,blockTag:r,key:s,name:i,gatewayUrls:c,strict:u}=t,{chain:d}=e,l=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!d)throw new Error("client chain not configured. universalResolverAddress is required.");return Vu({blockNumber:n,chain:d,contract:"ensUniversalResolver"})})(),f=d?.ensTlds;if(f&&!f.some((e=>i.endsWith(e))))return null;try{const t={address:l,abi:a,args:[yt(il(i)),er({abi:o,functionName:"text",args:[rl(i),s]}),c??[el]],functionName:"resolveWithGateways",blockNumber:n,blockTag:r},u=fe(e,rd,"readContract"),d=await u(t);if("0x"===d[0])return null;const f=ic({abi:o,functionName:"text",data:d[0]});return""===f?null:f}catch(e){if(u)throw e;if(Wd(e))return null;throw e}}async function kl(e,{address:t,args:n,event:r,events:s,fromBlock:a,strict:o,toBlock:i}={}){const c=s??(r?[r]:void 0),u=Kn(e,{method:"eth_newFilter"});let d=[];if(c){const e=c.flatMap((e=>Zn({abi:[e],eventName:e.name,args:n})));d=[e],r&&(d=d[0])}const l=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:"bigint"==typeof a?vt(a):a,toBlock:"bigint"==typeof i?vt(i):i,...d.length?{topics:d}:{}}]});return{abi:c,args:n,eventName:r?r.name:void 0,fromBlock:a,id:l,request:u(l),strict:Boolean(o),toBlock:i,type:"event"}}async function Il(e){const t=Kn(e,{method:"eth_newPendingTransactionFilter"}),n=await e.request({method:"eth_newPendingTransactionFilter"});return{id:n,request:t(n),type:"transaction"}}async function $l(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a}){const o=mi({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:a}),i=await e.request({method:"eth_getCode",params:[t,o]},{dedupe:"bigint"==typeof r||void 0!==n});if("0x"!==i)return i}class Al extends ve{constructor({address:e}){super(`No EIP-712 domain found on contract "${e}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${e}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}const Bl=[{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"}];async function Tl(e,{blockCount:t,blockNumber:n,blockTag:r="latest",rewardPercentiles:s}){const a="bigint"==typeof n?vt(n):void 0;return function(e){return{baseFeePerGas:e.baseFeePerGas.map((e=>BigInt(e))),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:e.reward?.map((e=>e.map((e=>BigInt(e)))))}}(await e.request({method:"eth_feeHistory",params:[vt(t),a||r,s]},{dedupe:Boolean(a)}))}function Nl(e,t){if(e.length!==t.length)throw new Te({expectedLength:e.length,givenLength:t.length});const n=[];for(let r=0;r<e.length;r++){const s=e[r],a=t[r];n.push(Sl(s,a))}return Bn(n)}function Sl(e,t,n=!1){if("address"===e){const e=t;if(!In(e))throw new gn({address:e});return Xe(e.toLowerCase(),{size:n?32:null})}if("string"===e)return Pt(t);if("bytes"===e)return t;if("bool"===e)return Xe(gt(t),{size:n?32:1});const r=e.match(Fn);if(r){const[e,s,a="256"]=r,o=Number.parseInt(a,10)/8;return vt(t,{size:n?32:o,signed:"int"===s})}const s=e.match(Rn);if(s){const[e,r]=s;if(Number.parseInt(r,10)!==(t.length-2)/2)throw new Le({expectedSize:Number.parseInt(r,10),givenSize:(t.length-2)/2});return Xe(t,{dir:"right",size:n?32:null})}const a=e.match(Cn);if(a&&Array.isArray(t)){const[e,n]=a,r=[];for(let e=0;e<t.length;e++)r.push(Sl(n,t[e],!0));return 0===r.length?"0x":Bn(r)}throw new Ze(e)}function zl(e){return!!e&&("object"==typeof e&&("BYTES_PER_ELEMENT"in e&&(1===e.BYTES_PER_ELEMENT&&"Uint8Array"===e.constructor.name)))}function Ol(e){return"CREATE2"===e.opcode?Rl(e):Cl(e)}function Cl(e){const t=kt(Pn(e.from));let n=kt(e.nonce);return 0===n[0]&&(n=new Uint8Array([])),Pn(`0x${hn(Fs([t,n],"bytes")).slice(26)}`)}function Rl(e){const t=kt(Pn(e.from)),n=Xe(zl(e.salt)?e.salt:kt(e.salt),{size:32}),r="bytecodeHash"in e?zl(e.bytecodeHash)?e.bytecodeHash:kt(e.bytecodeHash):hn(e.bytecode,"bytes");return Pn(Tn(hn($n([kt("0xff"),t,n,r])),12))}function Fl(e){const{authorizationList:t}=e;if(t)for(const e of t){const{chainId:t}=e,n=e.address;if(!In(n))throw new gn({address:n});if(t<0)throw new _u({chainId:t})}jl(e)}function Ml(e){const{blobVersionedHashes:t}=e;if(t){if(0===t.length)throw new Mi;for(const e of t){const t=me(e),n=pt(Tn(e,0,1));if(32!==t)throw new ji({hash:e,size:t});if(n!==Ri)throw new qi({hash:e,version:n})}}jl(e)}function jl(e){const{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:s}=e;if(t<=0)throw new _u({chainId:t});if(s&&!In(s))throw new gn({address:s});if(r&&r>ei)throw new Hs({maxFeePerGas:r});if(n&&r&&n>r)throw new ea({maxFeePerGas:r,maxPriorityFeePerGas:n})}function ql(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:s,to:a}=e;if(t<=0)throw new _u({chainId:t});if(a&&!In(a))throw new gn({address:a});if(n||s)throw new ve("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(r&&r>ei)throw new Hs({maxFeePerGas:r})}function Ll(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:s,to:a}=e;if(a&&!In(a))throw new gn({address:a});if(void 0!==t&&t<=0)throw new _u({chainId:t});if(n||s)throw new ve("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(r&&r>ei)throw new Hs({maxFeePerGas:r})}function Ul(e){if(!e||0===e.length)return[];const t=[];for(let n=0;n<e.length;n++){const{address:r,storageKeys:s}=e[n];for(let e=0;e<s.length;e++)if(s[e].length-2!=64)throw new Rr({storageKey:s[e]});if(!In(r,{strict:!1}))throw new gn({address:r});t.push([r,s])}return t}function Gl(e,t){const n=Gi(e);return"eip1559"===n?function(e,t){const{chainId:n,gas:r,nonce:s,to:a,value:o,maxFeePerGas:i,maxPriorityFeePerGas:c,accessList:u,data:d}=e;jl(e);const l=Ul(u),f=[vt(n),s?vt(s):"0x",c?vt(c):"0x",i?vt(i):"0x",r?vt(r):"0x",a??"0x",o?vt(o):"0x",d??"0x",l,..._l(e,t)];return Bn(["0x02",Fs(f)])}(e,t):"eip2930"===n?function(e,t){const{chainId:n,gas:r,data:s,nonce:a,to:o,value:i,accessList:c,gasPrice:u}=e;ql(e);const d=Ul(c),l=[vt(n),a?vt(a):"0x",u?vt(u):"0x",r?vt(r):"0x",o??"0x",i?vt(i):"0x",s??"0x",d,..._l(e,t)];return Bn(["0x01",Fs(l)])}(e,t):"eip4844"===n?function(e,t){const{chainId:n,gas:r,nonce:s,to:a,value:o,maxFeePerBlobGas:i,maxFeePerGas:c,maxPriorityFeePerGas:u,accessList:d,data:l}=e;Ml(e);let f=e.blobVersionedHashes,h=e.sidecars;if(e.blobs&&(void 0===f||void 0===h)){const t="string"==typeof e.blobs[0]?e.blobs:e.blobs.map((e=>wt(e))),n=e.kzg,r=gi({blobs:t,kzg:n});if(void 0===f&&(f=Ni({commitments:r})),void 0===h){h=Ui({blobs:t,commitments:r,proofs:wi({blobs:t,commitments:r,kzg:n})})}}const p=Ul(d),b=[vt(n),s?vt(s):"0x",u?vt(u):"0x",c?vt(c):"0x",r?vt(r):"0x",a??"0x",o?vt(o):"0x",l??"0x",p,i?vt(i):"0x",f??[],..._l(e,t)],m=[],y=[],g=[];if(h)for(let e=0;e<h.length;e++){const{blob:t,commitment:n,proof:r}=h[e];m.push(t),y.push(n),g.push(r)}return Bn(["0x03",Fs(h?[b,m,y,g]:b)])}(e,t):"eip7702"===n?function(e,t){const{authorizationList:n,chainId:r,gas:s,nonce:a,to:o,value:i,maxFeePerGas:c,maxPriorityFeePerGas:u,accessList:d,data:l}=e;Fl(e);const f=Ul(d),h=function(e){if(!e||0===e.length)return[];const t=[];for(const n of e){const{chainId:e,nonce:r,...s}=n,a=n.address;t.push([e?yt(e):"0x",a,r?yt(r):"0x",..._l({},s)])}return t}(n);return Bn(["0x04",Fs([vt(r),a?vt(a):"0x",u?vt(u):"0x",c?vt(c):"0x",s?vt(s):"0x",o??"0x",i?vt(i):"0x",l??"0x",f,h,..._l(e,t)])])}(e,t):function(e,t){const{chainId:n=0,gas:r,data:s,nonce:a,to:o,value:i,gasPrice:c}=e;Ll(e);let u=[a?vt(a):"0x",c?vt(c):"0x",r?vt(r):"0x",o??"0x",i?vt(i):"0x",s??"0x"];if(t){const e=(()=>{if(t.v>=35n){return(t.v-35n)/2n>0?t.v:27n+(35n===t.v?0n:1n)}if(n>0)return BigInt(2*n)+BigInt(35n+t.v-27n);const e=27n+(27n===t.v?0n:1n);if(t.v!==e)throw new Nr({v:t.v});return e})(),r=ut(t.r),s=ut(t.s);u=[...u,vt(e),"0x00"===r?"0x":r,"0x00"===s?"0x":s]}else n>0&&(u=[...u,vt(n),"0x","0x"]);return Fs(u)}(e,t)}function _l(e,t){const n=t??e,{v:r,yParity:s}=n;if(void 0===n.r)return[];if(void 0===n.s)return[];if(void 0===r&&void 0===s)return[];const a=ut(n.r),o=ut(n.s);return["number"==typeof s?s?vt(1):"0x":0n===r?"0x":1n===r?vt(1):27n===r?"0x":vt(1),"0x00"===a?"0x":a,"0x00"===o?"0x":o]}const Dl=new wn(8192);function Hl(e,t={}){return async(n,r={})=>{const{dedupe:s=!1,methods:a,retryDelay:o=150,retryCount:i=3,signal:c,uid:u}={...t,...r},{method:d}=n;if(a?.exclude?.includes(d))throw new hs(new Error("method not supported"),{method:d});if(a?.include&&!a.include.includes(d))throw new hs(new Error("method not supported"),{method:d});if(c?.aborted)throw Ur(c);return function(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(Dl.get(n))return Dl.get(n);const r=e().finally((()=>Dl.delete(n)));return Dl.set(n,r),r}((()=>Nd((async()=>{try{return await e(n,c?{signal:c}:void 0)}catch(e){if(c?.aborted)throw Ur(c);if(Gr(e))throw e;const t=e;switch(t.code){case ss.code:throw new ss(t);case as.code:throw new as(t);case os.code:throw new os(t,{method:n.method});case is.code:throw new is(t);case cs.code:throw new cs(t);case us.code:throw new us(t);case ds.code:throw new ds(t);case ls.code:throw new ls(t);case fs.code:throw new fs(t);case hs.code:throw new hs(t,{method:n.method});case ps.code:throw new ps(t);case bs.code:throw new bs(t);case ms.code:throw new ms(t);case ys.code:throw new ys(t);case gs.code:throw new gs(t);case ws.code:throw new ws(t);case vs.code:throw new vs(t);case xs.code:throw new xs(t);case Ps.code:throw new Ps(t);case Es.code:throw new Es(t);case ks.code:throw new ks(t);case Is.code:throw new Is(t);case $s.code:throw new $s(t);case As.code:throw new As(t);case Bs.code:throw new Bs(t);case 5e3:throw new ms(t);case Ts.code:throw new Ts(t);default:if(e instanceof ve)throw e;throw new Ns(t)}}}),{delay:({count:e,error:t})=>{if(t&&t instanceof Yr){const e=t?.headers?.get("Retry-After");if(e?.match(/\d/))return 1e3*Number.parseInt(e,10)}return~~(1<<e)*o},retryCount:i,signal:c,shouldRetry:({error:e})=>function(e){if(Gr(e))return!1;if("code"in e&&"number"==typeof e.code)return-1===e.code||(e.code===ps.code||(e.code===cs.code||429===e.code));if(e instanceof Yr&&e.status)return 403===e.status||(408===e.status||(413===e.status||(429===e.status||(500===e.status||(502===e.status||(503===e.status||504===e.status))))));return!0}(e)})),{enabled:s,id:s?function(e,t=0){let n=3735928559^t,r=1103547991^t;for(let t=0;t<e.length;t++){const s=e.charCodeAt(t);n=Math.imul(n^s,2654435761),r=Math.imul(r^s,1597334677)}return n=Math.imul(n^n>>>16,2246822507),n^=Math.imul(r^r>>>16,3266489909),r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(n^n>>>16,3266489909),(4294967296*(2097151&r)+(n>>>0)).toString(36)}(`${u}.${vr(n)}`):void 0})}}class Vl extends ve{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:s,urls:a}){super(t.shortMessage||"An error occurred while fetching for an offchain result.",{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?"":[],"Offchain Gateway Call:",a&&[" Gateway URL(s):",...a.map((e=>` ${_r(e)}`))],` Sender: ${s}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:"OffchainLookupError"})}}class Zl extends ve{constructor({result:e,url:t}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${_r(t)}`,`Response: ${vr(e)}`],name:"OffchainLookupResponseMalformedError"})}}class Wl extends ve{constructor({sender:e,to:t}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:"OffchainLookupSenderMismatchError"})}}const Kl="0x556f1830",Yl={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 Jl(e,{blockNumber:t,blockTag:n,data:r,requestOptions:s,to:a}){const{args:o}=wr({data:r,abi:[Yl]}),[i,c,u,d,l]=o,{ccipRead:f}=e,h=f&&"function"==typeof f?.request?f.request:Xl;try{if(!Xi(a,i))throw new Wl({sender:i,to:a});const r=c.includes(el)?await tl({data:u,ccipRequest:e=>h({...e,requestOptions:s})}):await h({data:u,requestOptions:s,sender:i,urls:c}),{data:o}=await Ju(e,{blockNumber:t,blockTag:n,data:$n([d,Mn([{type:"bytes"},{type:"bytes"}],[r,l])]),requestOptions:s,to:a});return o}catch(e){if(s?.signal?.aborted)throw Ur(s.signal);if(Gr(e))throw e;throw new Vl({callbackSelector:d,cause:e,data:r,extraData:l,sender:i,urls:c})}}async function Xl({data:e,requestOptions:t,sender:n,urls:r}){let s=new Error("An unknown error occurred.");for(let a=0;a<r.length;a++){if(t?.signal?.aborted)throw Ur(t.signal);const o=r[a],i=o.includes("{data}")?"GET":"POST",c="POST"===i?{data:e,sender:n}:void 0,u="POST"===i?{"Content-Type":"application/json"}:{};try{const r=await fetch(o.replace("{sender}",n.toLowerCase()).replace("{data}",e),{body:JSON.stringify(c),headers:u,method:i,...t?.signal?{signal:t.signal}:{}});let a;if(a=r.headers.get("Content-Type")?.startsWith("application/json")?(await r.json()).data:await r.text(),!r.ok){s=new Yr({body:c,details:a?.error?vr(a.error):r.statusText,headers:r.headers,status:r.status,url:o});continue}if(!be(a)){s=new Zl({result:a,url:o});continue}return a}catch(e){if(t?.signal?.aborted)throw Ur(t.signal);if(Gr(e))throw e;s=new Yr({body:c,details:e.message,url:o})}}throw s}var Ql=Object.freeze({__proto__:null,offchainLookupSignature:Kl,offchainLookupAbiItem:Yl,offchainLookup:Jl,ccipRequest:Xl});function ef({batchGateways:e,ccipRequest:t=Xl}){return{async request({data:n,sender:s,urls:a}){if(a.includes(el))return t({data:n,sender:s,urls:e});{const[o,i]=ic({abi:r,functionName:"query",data:await t({data:er({abi:r,functionName:"query",args:[[{sender:s,data:n,urls:a}]]}),sender:s,urls:e})});if(o[0]){let e;try{const t=wr({abi:[...r,nr],data:i[0]});if("HttpError"===t.errorName)e=new Yr({body:{message:t.args[1]},status:t.args[0],url:a.join(" | ")});else{const n=t.args[0];n&&(e=new Error(n))}}catch{}throw e??new Error("An unknown error occurred.")}return i[0]}}}}function tf(e){const t={formatters:void 0,fees:void 0,serializers:void 0,...e};return Object.assign(t,{extend:function e(t){return n=>{const r="function"==typeof n?n(t):n,s={...t,...r};return Object.assign(s,{extend:e(s)})}}(t)})}function nf(){return{}}function rf({chains:e,id:t}){return e.find((e=>e.id===t))}const sf=1024;function af(e,t="hex"){const n=cr((()=>{if("string"==typeof e){if(e.length>3&&e.length%2!=0)throw new st(e);return Bt(e)}return e})(),{recursiveReadLimit:Number.POSITIVE_INFINITY}),r=of(n,t);if(n.position<n.bytes.length)throw new it({count:n.bytes.length-n.position});return r}function of(e,t="hex",n=0){if(n>=sf)throw new at({limit:sf});if(0===e.bytes.length)return"hex"===t?wt(e.bytes):e.bytes;const r=e.readByte();if(r<128&&e.decrementPosition(1),r<192){const n=cf(e,r,128),s=e.readBytes(n);return"hex"===t?wt(s):s}return function(e,t,n,r){const s=e.position,a=[];for(;e.position-s<t;)a.push(of(e,n,r));if(e.position-s!==t)throw new ot({consumed:e.position-s,declared:t});return a}(e,cf(e,r,192),t,n+1)}function cf(e,t,n){if(128===n&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new ve("Invalid RLP prefix")}function uf(e){return be(e)&&66===e.length}const df=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),lf=(()=>Uint8Array.from(new Array(16).fill(0).map(((e,t)=>t))))(),ff=(()=>lf.map((e=>(9*e+5)%16)))(),hf=(()=>{const e=[[lf],[ff]];for(let t=0;t<4;t++)for(let n of e)n.push(n[t].map((e=>df[e])));return e})(),pf=(()=>hf[0])(),bf=(()=>hf[1])(),mf=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map((e=>Uint8Array.from(e))),yf=pf.map(((e,t)=>e.map((e=>mf[t][e])))),gf=bf.map(((e,t)=>e.map((e=>mf[t][e])))),wf=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),vf=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function xf(e,t,n,r){return 0===e?t^n^r:1===e?t&n|~t&r:2===e?(t|~n)^r:3===e?t&r|n&~r:t^(n|~r)}const Pf=new Uint32Array(16);class Ef extends xi{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){const{h0:e,h1:t,h2:n,h3:r,h4:s}=this;return[e,t,n,r,s]}set(e,t,n,r,s){this.h0=0|e,this.h1=0|t,this.h2=0|n,this.h3=0|r,this.h4=0|s}process(e,t){for(let n=0;n<16;n++,t+=4)Pf[n]=e.getUint32(t,!0);let n=0|this.h0,r=n,s=0|this.h1,a=s,o=0|this.h2,i=o,c=0|this.h3,u=c,d=0|this.h4,l=d;for(let e=0;e<5;e++){const t=4-e,f=wf[e],h=vf[e],p=pf[e],b=bf[e],m=yf[e],y=gf[e];for(let t=0;t<16;t++){const r=_t(n+xf(e,s,o,c)+Pf[p[t]]+f,m[t])+d|0;n=d,d=c,c=0|_t(o,10),o=s,s=r}for(let e=0;e<16;e++){const n=_t(r+xf(t,a,i,u)+Pf[b[e]]+h,y[e])+l|0;r=l,l=u,u=0|_t(i,10),i=a,a=n}}this.set(this.h1+o+u|0,this.h2+c+l|0,this.h3+d+r|0,this.h4+n+a|0,this.h0+s+i|0)}roundClean(){Lt(Pf)}destroy(){this.destroyed=!0,Lt(this.buffer),this.set(0,0,0,0,0)}}const kf=Zt((()=>new Ef));function If(e,t){const n=t||"hex",r=kf(be(e,{strict:!1})?kt(e):e);return"bytes"===n?r:yt(r)}function $f(e){const{source:t}=e,n=new Map,r=new wn(8192),s=new Map,a=({address:e,chainId:t})=>`${e}.${t}`,o=e=>{n.delete(e),s.delete(e)};return{async consume({address:e,chainId:n,client:s}){const o=a({address:e,chainId:n}),i=this.get({address:e,chainId:n,client:s});this.increment({address:e,chainId:n});const c=await i;return await t.set({address:e,chainId:n},c),r.set(o,c),c},async increment({address:e,chainId:t}){const r=a({address:e,chainId:t}),s=n.get(r)??0;n.set(r,s+1)},async get({address:e,chainId:i,client:c}){const u=a({address:e,chainId:i});let d=s.get(u);d||(d=(async()=>{try{const n=await t.get({address:e,chainId:i,client:c}),s=r.get(u)??0;return s>0&&n<=s?s+1:(r.delete(u),n)}finally{o(u)}})(),s.set(u,d));return(n.get(u)??0)+await d},reset({address:e,chainId:t}){const n=a({address:e,chainId:t});r.delete(n),o(n)}}}const Af=$f({source:{async get(e){const{address:t,client:n}=e;return yi(n,{address:t,blockTag:"pending"})},set(){}}});function Bf(e,{errorInstance:t=new Error("timed out"),timeout:n,signal:r}){return new Promise(((s,a)=>{(async()=>{let o;const i=new AbortController;try{n>0&&(o=setTimeout((()=>{r?i.abort():a(t)}),n)),s(await e({signal:i?.signal||null}))}catch(e){if(i?.signal.aborted&&Gr(e))return void a(t);a(e)}finally{clearTimeout(o)}})()}))}function Tf(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Nf=Tf(),Sf=10485760;function zf(e,t={}){const{url:n,headers:r}=function(e){try{const t=new URL(e),n=(()=>{if(t.username){const e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username="",t.password="",{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}(e);return{async request(e){const{body:s,fetchFn:a=t.fetchFn??fetch,maxResponseBodySize:o=t.maxResponseBodySize??Sf,onRequest:i=t.onRequest,onResponse:c=t.onResponse,timeout:u=t.timeout??1e4}=e,d={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:l,method:f,signal:h}=d;try{const e=await Bf((async({signal:e})=>{const t={...d,body:Array.isArray(s)?vr(s.map((e=>({jsonrpc:"2.0",id:e.id??Nf.take(),...e})))):vr({jsonrpc:"2.0",id:s.id??Nf.take(),...s}),headers:{...r,"Content-Type":"application/json",...l},method:f||"POST",signal:h||(u>0?e:null)},o=new Request(n,t),c=await(i?.(o,t))??{...t,url:n};return await a(c.url??n,c)}),{errorInstance:new ts({body:s,url:n}),timeout:u,signal:!0});let t;c&&await c(e);const p=await async function(e,{maxResponseBodySize:t}){if(!1===t)return e.text();const n=e.headers.get("Content-Length");if(n){const e=Number(n);if(e>t)throw new Jr({maxSize:t,size:e})}if(!e.body){const n=await e.text(),r=(new TextEncoder).encode(n).length;if(r>t)throw new Jr({maxSize:t,size:r});return n}const r=e.body.getReader(),s=new TextDecoder;let a="",o=0;try{for(;;){const{done:e,value:n}=await r.read();if(e)break;if(o+=n.byteLength,o>t)throw await r.cancel(),new Jr({maxSize:t,size:o});a+=s.decode(n,{stream:!0})}return a+=s.decode(),a}finally{r.releaseLock()}}(e,{maxResponseBodySize:o});if(e.headers.get("Content-Type")?.startsWith("application/json"))t=JSON.parse(p);else{t=p;try{t=JSON.parse(t||"{}")}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if("number"==typeof t.error?.code&&"string"==typeof t.error?.message)return t;throw new Yr({body:s,details:vr(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){if(h?.aborted)throw Ur(h);if(Gr(e))throw e;if(e instanceof Yr)throw e;if(e instanceof Jr)throw e;if(e instanceof ts)throw e;throw new Yr({body:s,cause:e,url:n})}}}}const Of=new Map;async function Cf(e,t={}){const{keepAlive:n,reconnect:r}=t;return async function(e){const{getSocket:t,keepAlive:n=!0,key:r="socket",reconnect:s=!0,url:a}=e,{interval:o=3e4}="object"==typeof n?n:{},{attempts:i=5,delay:c=2e3}="object"==typeof s?s:{},u=JSON.stringify({keepAlive:n,key:r,url:a,reconnect:s});let d=Of.get(u);if(d)return d;let l=0;const{schedule:f}=Yu({id:u,fn:async()=>{const e=new Map,r=new Map;let f,h,p,b,m=!1,y=!1;function g(){if(s&&!y&&l<i){if(m)return;m=!0,l++,h?.close(),b=setTimeout((async()=>{b=void 0,y||await w().catch(console.error),m=!1}),c)}else e.clear(),r.clear()}async function w(){const i=await t({onClose(){for(const t of e.values())t.onError?.(new es({url:a}));for(const e of r.values())e.onError?.(new es({url:a}));g()},onError(t){f=t;for(const t of e.values())t.onError?.(f);for(const e of r.values())e.onError?.(f);g()},onOpen(){f=void 0,l=0},onResponse(t){const n="eth_subscription"===t.method,s=n?t.params.subscription:t.id,a=n?r:e,o=a.get(s);o&&o.onResponse(t),n||a.delete(s)}});if(y)return i.close(),i;if(h=i,n&&(p&&clearInterval(p),p=setInterval((()=>h.ping?.()),o)),s&&r.size>0){const e=r.entries();for(const[t,{onResponse:n,body:s,onError:a}]of e)s&&(r.delete(t),d?.request({body:s,onResponse:n,onError:a}))}return i}return await w(),f=void 0,d={close(){y=!0,p&&clearInterval(p),b&&(clearTimeout(b),b=void 0,m=!1),h.close(),Of.delete(u)},get socket(){return h},request({body:t,onError:n,onResponse:s}){f&&n&&n(f);const a=t.id??Nf.take(),o=e=>{"number"==typeof e.id&&a!==e.id||("eth_subscribe"===t.method&&"string"==typeof e.result&&r.set(e.result,{onResponse:o,onError:n,body:t}),s(e))};"eth_unsubscribe"===t.method&&r.delete(t.params?.[0]),e.set(a,{onResponse:o,onError:n});try{h.request({body:{jsonrpc:"2.0",id:a,...t}})}catch(e){n?.(e)}},requestAsync({body:e,timeout:t=1e4}){return Bf((()=>new Promise(((t,n)=>this.request({body:e,onError:n,onResponse:t})))),{errorInstance:new ts({body:e,url:a}),timeout:t})},requests:e,subscriptions:r,url:a},Of.set(u,d),[d]}}),[h,[p]]=await f();return p}({async getSocket({onClose:t,onError:n,onOpen:r,onResponse:s}){const a=await import("./native-029c50f7.js").then((e=>e.WebSocket)),o=new a(e);function i(){o.removeEventListener("close",i),o.removeEventListener("message",c),o.removeEventListener("error",n),o.removeEventListener("open",r),t()}function c({data:e}){if("string"!=typeof e||0!==e.trim().length)try{const t=JSON.parse(e);s(t)}catch(e){n(e)}}o.addEventListener("close",i),o.addEventListener("message",c),o.addEventListener("error",n),o.addEventListener("open",r),o.readyState===a.CONNECTING&&await new Promise(((e,t)=>{o&&(o.onopen=e,o.onerror=t)}));const{close:u}=o;return Object.assign(o,{close(){u.bind(o)(),i()},ping(){try{if(o.readyState===o.CLOSED||o.readyState===o.CLOSING)throw new Xr({url:o.url,cause:new es({url:o.url})});const e={jsonrpc:"2.0",id:null,method:"net_version",params:[]};o.send(JSON.stringify(e))}catch(e){n(e)}},request({body:e}){if(o.readyState===o.CLOSED||o.readyState===o.CLOSING)throw new Xr({body:e,url:o.url,cause:new es({url:o.url})});return o.send(JSON.stringify(e))}})},keepAlive:n,reconnect:r,url:e})}const Rf="Ethereum Signed Message:\n";function Ff(e){const t="string"==typeof e?Pt(e):"string"==typeof e.raw?e.raw:wt(e.raw);return $n([Pt(`${Rf}${me(t)}`),t])}function Mf(e,t){return hn(Ff(e),t)}class jf extends ve{constructor({domain:e}){super(`Invalid domain "${vr(e)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class qf extends ve{constructor({primaryType:e,types:t}){super(`Invalid primary type \`${e}\` must be one of \`${JSON.stringify(Object.keys(t))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class Lf extends ve{constructor({type:e}){super(`Struct type "${e}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}class Uf extends ve{constructor({type:e}){const t=e.replace(/^(u?int)/,"$&256");super(`Type "${e}" is not a valid EIP-712 type.`,{metaMessages:[`Use "${t}" instead.`],name:"InvalidTypedDataTypeError"})}}function Gf(e){const{domain:t,message:n,primaryType:r,types:s}=e,a=(e,t)=>{const n={...t};for(const t of e){const{name:e,type:r}=t;"address"===r&&(n[e]=n[e].toLowerCase())}return n},o=s.EIP712Domain&&t?a(s.EIP712Domain,t):{},i=(()=>{if("EIP712Domain"!==r)return a(s[r],n)})();return vr({domain:o,message:i,primaryType:r,types:s})}function _f(e){const{domain:t,message:n,primaryType:r,types:s}=e,a=(e,t)=>{for(const n of e){const{name:e,type:r}=n,o=t[e],i=r.replace(/(\[[0-9]*\])+$/,"");if("int"===i||"uint"===i)throw new Uf({type:r});const c=r.match(Fn);if(c&&("number"==typeof o||"bigint"==typeof o)){const[e,t,n]=c;vt(o,{signed:"int"===t,size:Number.parseInt(n,10)/8})}if("address"===r&&"string"==typeof o&&!In(o))throw new gn({address:o});const u=r.match(Rn);if(u){const[e,t]=u;if(t&&me(o)!==Number.parseInt(t,10))throw new Le({expectedSize:Number.parseInt(t,10),givenSize:me(o)})}const d=s[r];d&&(Vf(r),a(d,o))}};if(s.EIP712Domain&&t){if("object"!=typeof t)throw new jf({domain:t});a(s.EIP712Domain,t)}if("EIP712Domain"!==r){if(!s[r])throw new qf({primaryType:r,types:s});a(s[r],n)}}function Df({domain:e}){return["string"==typeof e?.name&&{name:"name",type:"string"},e?.version&&{name:"version",type:"string"},("number"==typeof e?.chainId||"bigint"==typeof e?.chainId)&&{name:"chainId",type:"uint256"},e?.verifyingContract&&{name:"verifyingContract",type:"address"},e?.salt&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Hf({domain:e}){return Wf({domain:e,types:{EIP712Domain:Df({domain:e})}})}function Vf(e){if("address"===e||"bool"===e||"string"===e||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new Lf({type:e})}function Zf(e){const{domain:t={},message:n,primaryType:r}=e,s={EIP712Domain:Df({domain:t}),...e.types};_f({domain:t,message:n,primaryType:r,types:s});const a=["0x1901"];return t&&a.push(Wf({domain:t,types:s})),"EIP712Domain"!==r&&a.push(Kf({data:n,primaryType:r,types:s})),hn($n(a))}function Wf({domain:e,types:t}){return Kf({data:e,primaryType:"EIP712Domain",types:t})}function Kf({data:e,primaryType:t,types:n}){return hn(Yf({data:e,primaryType:t,types:n}))}function Yf({data:e,primaryType:t,types:n}){const r=[{type:"bytes32"}],s=[Jf({primaryType:t,types:n})];for(const a of n[t]){const[t,o]=Qf({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),s.push(o)}return Mn(r,s)}function Jf({primaryType:e,types:t}){const n=yt(function({primaryType:e,types:t}){let n="";const r=Xf({primaryType:e,types:t});r.delete(e);const s=[e,...Array.from(r).sort()];for(const e of s)n+=`${e}(${t[e].map((({name:e,type:t})=>`${t} ${e}`)).join(",")})`;return n}({primaryType:e,types:t}));return hn(n)}function Xf({primaryType:e,types:t},n=new Set){const r=e.match(/^\w*/u),s=r?.[0];if(n.has(s)||void 0===t[s])return n;n.add(s);for(const e of t[s])Xf({primaryType:e.type,types:t},n);return n}function Qf({types:e,name:t,type:n,value:r}){if(void 0!==e[n])return[{type:"bytes32"},hn(Yf({data:r,primaryType:n,types:e}))];if("bytes"===n)return[{type:"bytes32"},hn(r)];if("string"===n)return[{type:"bytes32"},hn(yt(r))];if(n.lastIndexOf("]")===n.length-1){const s=n.slice(0,n.lastIndexOf("[")),a=r.map((n=>Qf({name:t,type:s,types:e,value:n})));return[{type:"bytes32"},hn(Mn(a.map((([e])=>e)),a.map((([,e])=>e))))]}return[{type:n},r]}const eh="0x6492649264926492649264926492649264926492649264926492649264926492",th="0x0000000000000000000000000000000000000000000000000000000000000000";function nh(e){return On(e,-32)===eh}class rh extends Error{constructor(e,t={}){const n=t.cause instanceof rh?t.cause.details:t.cause?.message?t.cause.message:t.details,r=t.cause instanceof rh&&t.cause.docsPath||t.docsPath;super([e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...r?[`Docs: https://abitype.dev${r}`]:[],...n?[`Details: ${n}`]:[],"Version: abitype@1.3.0"].join("\n")),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"}),t.cause&&(this.cause=t.cause),this.details=n,this.docsPath=r,this.metaMessages=t.metaMessages,this.shortMessage=e}}function sh(e,t){const n=e.exec(t);return n?.groups}const ah=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,oh=/^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)?$/,ih=/^\(.+?\).*?$/,ch=/^tuple(?<array>(\[(\d*)\])*)$/;function uh(e){let t=e.type;if(ch.test(e.type)&&"components"in e){t="(";const n=e.components.length;for(let r=0;r<n;r++){t+=uh(e.components[r]),r<n-1&&(t+=", ")}const r=sh(ch,e.type);return t+=`)${r?.array||""}`,uh({...e,type:t})}return"indexed"in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function dh(e){let t="";const n=e.length;for(let r=0;r<n;r++){t+=uh(e[r]),r!==n-1&&(t+=", ")}return t}function lh(e){return"function"===e.type?`function ${e.name}(${dh(e.inputs)})${e.stateMutability&&"nonpayable"!==e.stateMutability?` ${e.stateMutability}`:""}${e.outputs?.length?` returns (${dh(e.outputs)})`:""}`:"event"===e.type?`event ${e.name}(${dh(e.inputs)})`:"error"===e.type?`error ${e.name}(${dh(e.inputs)})`:"constructor"===e.type?`constructor(${dh(e.inputs)})${"payable"===e.stateMutability?" payable":""}`:"fallback"===e.type?"fallback() external"+("payable"===e.stateMutability?" payable":""):"receive() external payable"}const fh=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const hh=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const ph=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;const bh=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function mh(e){return bh.test(e)}function yh(e){return sh(bh,e)}const gh=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;const wh=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;const vh=/^receive\(\) external payable$/;const xh=new Set(["memory","indexed","storage","calldata"]),Ph=new Set(["indexed"]),Eh=new Set(["calldata","memory","storage"]);class kh extends rh{constructor({signature:e}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify(e,null,2)})`,docsPath:"/api/human#parseabiitem-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}}class Ih extends rh{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" 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 $h extends rh{constructor({type:e}){super("Unknown type.",{metaMessages:[`Type "${e}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class Ah extends rh{constructor({params:e}){super("Failed to parse ABI parameters.",{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:"/api/human#parseabiparameters-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParametersError"})}}class Bh extends rh{constructor({param:e}){super("Invalid ABI parameter.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class Th extends rh{constructor({param:e,name:t}){super("Invalid ABI parameter.",{details:e,metaMessages:[`"${t}" 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 Nh extends rh{constructor({param:e,type:t,modifier:n}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${n}" not allowed${t?` in "${t}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class Sh extends rh{constructor({param:e,type:t,modifier:n}){super("Invalid ABI parameter.",{details:e,metaMessages:[`Modifier "${n}" not allowed${t?` in "${t}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${n}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class zh extends rh{constructor({abiParameter:e}){super("Invalid ABI parameter.",{details:JSON.stringify(e,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class Oh extends rh{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class Ch extends rh{constructor({signature:e}){super("Unknown signature.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class Rh extends rh{constructor({signature:e}){super("Invalid struct signature.",{details:e,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class Fh extends rh{constructor({type:e}){super("Circular reference detected.",{metaMessages:[`Struct "${e}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class Mh extends rh{constructor({current:e,depth:t}){super("Unbalanced parentheses.",{metaMessages:[`"${e.trim()}" has too many ${t>0?"opening":"closing"} parentheses.`],details:`Depth "${t}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}const jh=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 qh(e,t={}){if(function(e){return ph.test(e)}(e))return function(e,t={}){const n=function(e){return sh(ph,e)}(e);if(!n)throw new Oh({signature:e,type:"function"});const r=Dh(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(_h(r[e],{modifiers:Eh,structs:t,type:"function"}));const o=[];if(n.returns){const e=Dh(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(_h(e[n],{modifiers:Eh,structs:t,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:s,outputs:o}}(e,t);if(function(e){return hh.test(e)}(e))return function(e,t={}){const n=function(e){return sh(hh,e)}(e);if(!n)throw new Oh({signature:e,type:"event"});const r=Dh(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(_h(r[e],{modifiers:Ph,structs:t,type:"event"}));return{name:n.name,type:"event",inputs:s}}(e,t);if(function(e){return fh.test(e)}(e))return function(e,t={}){const n=function(e){return sh(fh,e)}(e);if(!n)throw new Oh({signature:e,type:"error"});const r=Dh(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(_h(r[e],{structs:t,type:"error"}));return{name:n.name,type:"error",inputs:s}}(e,t);if(function(e){return gh.test(e)}(e))return function(e,t={}){const n=function(e){return sh(gh,e)}(e);if(!n)throw new Oh({signature:e,type:"constructor"});const r=Dh(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(_h(r[e],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:s}}(e,t);if(function(e){return wh.test(e)}(e))return function(e){const t=function(e){return sh(wh,e)}(e);if(!t)throw new Oh({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}(e);if(function(e){return vh.test(e)}(e))return{type:"receive",stateMutability:"payable"};throw new Ch({signature:e})}const Lh=/^(?<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$_]*))?$/,Uh=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Gh=/^u?int$/;function _h(e,t){const n=function(e,t,n){let r="";if(n)for(const e of Object.entries(n)){if(!e)continue;let t="";for(const n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:""}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}(e,t?.type,t?.structs);if(jh.has(n))return jh.get(n);const r=ih.test(e),s=sh(r?Uh:Lh,e);if(!s)throw new Bh({param:e});if(s.name&&function(e){return"address"===e||"bool"===e||"function"===e||"string"===e||"tuple"===e||ah.test(e)||oh.test(e)||Vh.test(e)}(s.name))throw new Th({param:e,name:s.name});const a=s.name?{name:s.name}:{},o="indexed"===s.modifier?{indexed:!0}:{},i=t?.structs??{};let c,u={};if(r){c="tuple";const e=Dh(s.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(_h(e[r],{structs:i}));u={components:t}}else if(s.type in i)c="tuple",u={components:i[s.type]};else if(Gh.test(s.type))c=`${s.type}256`;else if("address payable"===s.type)c="address";else if(c=s.type,"struct"!==t?.type&&!Hh(c))throw new $h({type:c});if(s.modifier){if(!t?.modifiers?.has?.(s.modifier))throw new Nh({param:e,type:t?.type,modifier:s.modifier});if(Eh.has(s.modifier)&&!function(e,t){return t||"bytes"===e||"string"===e||"tuple"===e}(c,!!s.array))throw new Sh({param:e,type:t?.type,modifier:s.modifier})}const d={type:`${c}${s.array??""}`,...a,...o,...u};return jh.set(n,d),d}function Dh(e,t=[],n="",r=0){const s=e.trim().length;for(let a=0;a<s;a++){const s=e[a],o=e.slice(a+1);switch(s){case",":return 0===r?Dh(o,[...t,n.trim()]):Dh(o,t,`${n}${s}`,r);case"(":return Dh(o,t,`${n}${s}`,r+1);case")":return Dh(o,t,`${n}${s}`,r-1);default:return Dh(o,t,`${n}${s}`,r)}}if(""===n)return t;if(0!==r)throw new Mh({current:n,depth:r});return t.push(n.trim()),t}function Hh(e){return"address"===e||"bool"===e||"function"===e||"string"===e||ah.test(e)||oh.test(e)}const Vh=/^(?: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 Zh(e){const t={},n=e.length;for(let r=0;r<n;r++){const n=e[r];if(!mh(n))continue;const s=yh(n);if(!s)throw new Oh({signature:n,type:"struct"});const a=s.properties.split(";"),o=[],i=a.length;for(let e=0;e<i;e++){const t=a[e].trim();if(!t)continue;const n=_h(t,{type:"struct"});o.push(n)}if(!o.length)throw new Rh({signature:n});t[s.name]=o}const r={},s=Object.entries(t),a=s.length;for(let e=0;e<a;e++){const[n,a]=s[e];r[n]=Kh(a,t)}return r}const Wh=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function Kh(e=[],t={},n=new Set){const r=[],s=e.length;for(let a=0;a<s;a++){const s=e[a];if(ih.test(s.type))r.push(s);else{const e=sh(Wh,s.type);if(!e?.type)throw new zh({abiParameter:s});const{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Fh({type:o});r.push({...s,type:`tuple${a??""}`,components:Kh(t[o],t,new Set([...n,o]))})}else{if(!Hh(o))throw new Ih({type:o});r.push(s)}}}return r}function Yh(e){let t;if("string"==typeof e)t=qh(e);else{const n=Zh(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(!mh(r)){t=qh(r,n);break}}}if(!t)throw new kh({signature:e});return t}function Jh(e){const t=[];if("string"==typeof e){const n=Dh(e),r=n.length;for(let e=0;e<r;e++)t.push(_h(n[e],{modifiers:xh}))}else{const n=Zh(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(mh(r))continue;const a=Dh(r),o=a.length;for(let e=0;e<o;e++)t.push(_h(a[e],{modifiers:xh,structs:n}))}}if(0===t.length)throw new Ah({params:e});return t}class Xh extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const t=super.get(e);return super.has(e)&&void 0!==t&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){const e=this.keys().next().value;e&&this.delete(e)}return this}}const Qh={checksum:new Xh(8192)}.checksum;class ep extends Vt{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,function(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.createHasher");Ft(e.outputLen),Ft(e.blockLen)}(e);const n=Ht(t);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const r=this.blockLen,s=new Uint8Array(r);s.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<s.length;e++)s[e]^=54;this.iHash.update(s),this.oHash=e.create();for(let e=0;e<s.length;e++)s[e]^=106;this.oHash.update(s),Lt(s)}update(e){return jt(this),this.iHash.update(e),this}digestInto(e){jt(this),Mt(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:t,iHash:n,finished:r,destroyed:s,blockLen:a,outputLen:o}=this;return e.finished=r,e.destroyed=s,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const tp=(e,t,n)=>new ep(e,t).update(n).digest();function np(e,t={}){const{as:n=("string"==typeof e?"Hex":"Bytes")}=t,r=fn(Wc(e));return"Bytes"===n?r:bu(r)}function rp(e,t={}){const{compressed:n}=t,{prefix:r,x:s,y:a}=e;if(!1===n||"bigint"==typeof s&&"bigint"==typeof a){if(4!==r)throw new ip({prefix:r,cause:new up})}else{if(!0!==n&&("bigint"!=typeof s||void 0!==a))throw new op({publicKey:e});if(3!==r&&2!==r)throw new ip({prefix:r,cause:new cp})}}function sp(e){const t=(()=>{if(Iu(e))return ap(e);if(su(e))return function(e){return ap(bu(e))}(e);const{prefix:t,x:n,y:r}=e;return"bigint"==typeof n&&"bigint"==typeof r?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return rp(t),t}function ap(e){if(132!==e.length&&130!==e.length&&68!==e.length)throw new dp({publicKey:e});if(130===e.length){return{prefix:4,x:BigInt(vu(e,0,32)),y:BigInt(vu(e,32,64))}}if(132===e.length){return{prefix:Number(vu(e,0,1)),x:BigInt(vu(e,1,33)),y:BigInt(vu(e,33,65))}}return{prefix:Number(vu(e,0,1)),x:BigInt(vu(e,1,33))}}tp.create=(e,t)=>new ep(e,t);class op extends Mc{constructor({publicKey:e}){super(`Value \`${Hc(e)}\` is not a valid public key.`,{metaMessages:["Public key must contain:","- an `x` and `prefix` value (compressed)","- an `x`, `y`, and `prefix` value (uncompressed)"]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidError"})}}class ip extends Mc{constructor({prefix:e,cause:t}){super(`Prefix "${e}" is invalid.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class cp extends Mc{constructor(){super("Prefix must be 2 or 3 for compressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidCompressedPrefixError"})}}class up extends Mc{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}class dp extends Mc{constructor({publicKey:e}){super(`Value \`${e}\` is an invalid public key size.`,{metaMessages:["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).",`Received ${xu(hu(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}}const lp=/^0x[a-fA-F0-9]{40}$/;function fp(e,t={}){const{strict:n=!0}=t;if(!lp.test(e))throw new mp({address:e,cause:new yp});if(n){if(e.toLowerCase()===e)return;if(hp(e)!==e)throw new mp({address:e,cause:new gp})}}function hp(e){if(Qh.has(e))return Qh.get(e);fp(e,{strict:!1});const t=e.substring(2).toLowerCase(),n=np(Yc(t),{as:"Bytes"}),r=t.split("");for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(15&n[e>>1])>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());const s=`0x${r.join("")}`;return Qh.set(e,s),s}function pp(e,t={}){const n=np(`0x${function(e,t={}){rp(e);const{prefix:n,x:r,y:s}=e,{includePrefix:a=!0}=t;return fu(a?mu(n,{size:1}):"0x",mu(r,{size:32}),"bigint"==typeof s?mu(s,{size:32}):"0x")}(e).slice(4)}`).substring(26);return function(e,t={}){const{checksum:n=!1}=t;return fp(e),n?hp(e):e}(`0x${n}`,t)}function bp(e,t={}){const{strict:n=!0}=t??{};try{return fp(e,{strict:n}),!0}catch{return!1}}class mp extends Mc{constructor({address:e,cause:t}){super(`Address "${e}" is invalid.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class yp extends Mc{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 gp extends Mc{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}const wp=/^(.*)\[([0-9]*)\]$/,vp=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,xp=/^(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)?$/,Pp=2n**256n-1n;function Ep(e,t,n){const{checksumAddress:r,staticPosition:s}=n,a=Bp(t.type);if(a){const[n,o]=a;return function(e,t,n){const{checksumAddress:r,length:s,staticPosition:a}=n;if(null===s){const n=a+tu(e.readBytes(Ip)),s=n+kp;e.setPosition(n);const o=tu(e.readBytes(kp)),i=Tp(t);let c=0;const u=[];for(let n=0;n<o;++n){e.setPosition(s+(i?32*n:c));const[a,o]=Ep(e,t,{checksumAddress:r,staticPosition:s});c+=o,u.push(a),0===o&&(e.assertReadLimit(),e._touch())}return e.setPosition(a+32),[u,32]}if(Tp(t)){const n=a+tu(e.readBytes(Ip)),o=[];for(let a=0;a<s;++a){e.setPosition(n+32*a);const[s]=Ep(e,t,{checksumAddress:r,staticPosition:n});o.push(s)}return e.setPosition(a+32),[o,32]}let o=0;const i=[];for(let n=0;n<s;++n){const[n,s]=Ep(e,t,{checksumAddress:r,staticPosition:a+o});o+=s,i.push(n),0===s&&(e.assertReadLimit(),e._touch())}return[i,o]}(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:s})}if("tuple"===t.type)return function(e,t,n){const{checksumAddress:r,staticPosition:s}=n,a=0===t.components.length||t.components.some((({name:e})=>!e)),o=a?[]:{};let i=0;if(Tp(t)){const n=s+tu(e.readBytes(Ip));for(let s=0;s<t.components.length;++s){const c=t.components[s];e.setPosition(n+i);const[u,d]=Ep(e,c,{checksumAddress:r,staticPosition:n});i+=d,o[a?s:c?.name]=u}return e.setPosition(s+32),[o,32]}for(let n=0;n<t.components.length;++n){const c=t.components[n],[u,d]=Ep(e,c,{checksumAddress:r,staticPosition:s});o[a?n:c?.name]=u,i+=d}return[o,i]}(e,t,{checksumAddress:r,staticPosition:s});if("address"===t.type)return function(e,t={}){const{checksum:n=!1}=t,r=e.readBytes(32),s=e=>n?hp(e):e;return[s(bu(Xc(r,-20))),32]}(e,{checksum:r});if("bool"===t.type)return function(e){return[eu(e.readBytes(32),{size:32}),32]}(e);if(t.type.startsWith("bytes"))return function(e,t,{staticPosition:n}){const[r,s]=t.type.split("bytes");if(!s){const t=tu(e.readBytes(32));e.setPosition(n+t);const r=tu(e.readBytes(32));if(0===r)return e.setPosition(n+32),["0x",32];const s=e.readBytes(r);return e.setPosition(n+32),[bu(s),32]}const a=bu(e.readBytes(Number.parseInt(s,10),32));return[a,32]}(e,t,{staticPosition:s});if(t.type.startsWith("uint")||t.type.startsWith("int"))return function(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?Qc(s,{signed:n}):tu(s,{signed:n}),32]}(e,t);if("string"===t.type)return function(e,{staticPosition:t}){const n=tu(e.readBytes(32)),r=t+n;e.setPosition(r);const s=tu(e.readBytes(32));if(0===s)return e.setPosition(t+32),["",32];const a=e.readBytes(s,32),o=nu(ru(a));return e.setPosition(t+32),[o,32]}(e,{staticPosition:s});throw new Hp(t.type)}const kp=32,Ip=32;function $p({checksumAddress:e=!1,parameter:t,value:n}){const r=t,s=Bp(r.type);if(s){const[t,a]=s;return function(e,t){const{checksumAddress:n,length:r,parameter:s}=t,a=null===r;if(!Array.isArray(e))throw new Dp(e);if(!a&&e.length!==r)throw new Up({expectedLength:r,givenLength:e.length,type:`${s.type}[${r}]`});let o=0===e.length&&Tp(s);const i=[];for(let t=0;t<e.length;t++){const r=$p({checksumAddress:n,parameter:s,value:e[t]});r.dynamic&&(o=!0),i.push(r)}if(a||o){const e=Ap(i);if(a){const t=mu(i.length,{size:32});return{dynamic:!0,encoded:i.length>0?fu(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:fu(...i.map((({encoded:e})=>e)))}}(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if("tuple"===r.type)return function(e,t){const{checksumAddress:n,parameter:r}=t;let s=!1;const a=[];for(let t=0;t<r.components.length;t++){const o=r.components[t],i=$p({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(i),i.dynamic&&(s=!0)}return{dynamic:s,encoded:s?Ap(a):fu(...a.map((({encoded:e})=>e)))}}(n,{checksumAddress:e,parameter:r});if("address"===r.type)return function(e,t){const{checksum:n=!1}=t;return fp(e,{strict:n}),{dynamic:!1,encoded:gu(e.toLowerCase())}}(n,{checksum:e});if("bool"===r.type)return function(e){if("boolean"!=typeof e)throw new Mc(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:gu(pu(e))}}(n);if(r.type.startsWith("uint")||r.type.startsWith("int")){const e=r.type.startsWith("int"),[,,t="256"]=xp.exec(r.type)??[];return function(e,{signed:t,size:n}){if("number"==typeof n){const r=2n**(BigInt(n)-(t?1n:0n))-1n,s=t?-r-1n:0n;if(e>r||e<s)throw new $u({max:r.toString(),min:s.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:mu(e,{size:32,signed:t})}}(n,{signed:e,size:Number(t)})}if(r.type.startsWith("bytes"))return function(e,{type:t}){const[,n]=t.split("bytes"),r=xu(e);if(!n){let t=e;return r%32!=0&&(t=wu(t,32*Math.ceil((e.length-2)/2/32))),{dynamic:!0,encoded:fu(gu(mu(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Gp({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:wu(e)}}(n,{type:r.type});if("string"===r.type)return function(e){const t=yu(e),n=Math.ceil(xu(t)/32),r=[];for(let e=0;e<n;e++)r.push(wu(vu(t,32*e,32*(e+1))));return{dynamic:!0,encoded:fu(wu(mu(xu(t),{size:32})),...r)}}(n);throw new Hp(r.type)}function Ap(e){let t=0;for(let n=0;n<e.length;n++){const{dynamic:r,encoded:s}=e[n];t+=r?32:xu(s)}const n=[],r=[];let s=0;for(let a=0;a<e.length;a++){const{dynamic:o,encoded:i}=e[a];o?(n.push(mu(t+s,{size:32})),r.push(i),s+=xu(i)):n.push(i)}return fu(...n,...r)}function Bp(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Tp(e){const{type:t}=e;if("string"===t)return!0;if("bytes"===t)return!0;if(t.endsWith("[]"))return!0;if("tuple"===t)return e.components?.some(Tp);const n=Bp(e.type);return!(!n||!Tp({...e,type:n[1]}))}const Np={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 Cp({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Op({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new zp({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 zp({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,255&e),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 Sp(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(Np);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}class zp extends Mc{constructor({offset:e}){super(`Offset \`${e}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class Op extends Mc{constructor({length:e,position:t}){super(`Position \`${t}\` is out of bounds (\`0 < position < ${e}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.PositionOutOfBoundsError"})}}class Cp extends Mc{constructor({count:e,limit:t}){super(`Recursive read limit of \`${t}\` exceeded (recursive read count: \`${e}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.RecursiveReadLimitExceededError"})}}function Rp(e,t,n={}){const{as:r="Array",checksumAddress:s=!1}=n,a="string"==typeof t?Kc(t):t,o=Sp(a);if(0===Jc(a)&&e.length>0)throw new Lp;if(Jc(a)&&Jc(a)<32)throw new qp({data:"string"==typeof t?t:bu(t),parameters:e,size:Jc(a)});let i=0;const c="Array"===r?[]:{};for(let t=0;t<e.length;++t){const n=e[t];i<a.length&&o.setPosition(i);const[u,d]=Ep(o,n,{checksumAddress:s,staticPosition:0});i+=d,"Array"===r?c.push(u):c[n.name??t]=u}return c}function Fp(e,t,n){const{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new _p({expectedLength:e.length,givenLength:t.length});const s=function({checksumAddress:e,parameters:t,values:n}){const r=[];for(let s=0;s<t.length;s++)r.push($p({checksumAddress:e,parameter:t[s],value:n[s]}));return r}({checksumAddress:r,parameters:e,values:t}),a=Ap(s);return 0===a.length?"0x":a}function Mp(e,t){if(e.length!==t.length)throw new _p({expectedLength:e.length,givenLength:t.length});const n=[];for(let r=0;r<e.length;r++){const s=e[r],a=t[r];n.push(Mp.encode(s,a))}return fu(...n)}function jp(e){return Array.isArray(e)&&"string"==typeof e[0]||"string"==typeof e?Jh(e):e}!function(e){e.encode=function e(t,n,r=!1){if("address"===t){const e=n;return fp(e),gu(e.toLowerCase(),r?32:0)}if("string"===t)return yu(n);if("bytes"===t)return n;if("bool"===t)return gu(pu(n),r?32:1);const s=t.match(xp);if(s){const[e,t,a="256"]=s,o=Number.parseInt(a,10)/8;return mu(n,{size:r?32:o,signed:"int"===t})}const a=t.match(vp);if(a){const[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Gp({expectedSize:Number.parseInt(t,10),value:n});return wu(n,r?32:0)}const o=t.match(wp);if(o&&Array.isArray(n)){const[t,r]=o,s=[];for(let t=0;t<n.length;t++)s.push(e(r,n[t],!0));return 0===s.length?"0x":fu(...s)}throw new Hp(t)}}(Mp||(Mp={}));class qp extends Mc{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${dh(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.DataSizeTooSmallError"})}}class Lp extends Mc{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class Up extends Mc{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \`${n}\`. Expected: \`${e}\`. Given: \`${t}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class Gp extends Mc{constructor({expectedSize:e,value:t}){super(`Size of bytes "${t}" (bytes${xu(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class _p extends Mc{constructor({expectedLength:e,givenLength:t}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join("\n")),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class Dp extends Mc{constructor(e){super(`Value \`${e}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class Hp extends Mc{constructor(e){super(`Type \`${e}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}function Vp(e,t){const{as:n}=t,r=Zp(e),s=Sp(new Uint8Array(r.length));return r.encode(s),"Hex"===n?bu(s.bytes):s.bytes}function Zp(e){return Array.isArray(e)?function(e){const t=e.reduce(((e,t)=>e+t.length),0),n=Wp(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),1===n?r.pushUint8(t):2===n?r.pushUint16(t):3===n?r.pushUint24(t):r.pushUint32(t));for(const{encode:t}of e)t(r)}}}(e.map((e=>Zp(e)))):function(e){const t="string"==typeof e?Kc(e):e,n=Wp(t.length),r=1===t.length&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length;return{length:r,encode(e){1===t.length&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),1===n?e.pushUint8(t.length):2===n?e.pushUint16(t.length):3===n?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}(e)}function Wp(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new Mc("Length is too large.")}const Kp=BigInt(0),Yp=BigInt(1),Jp=BigInt(2),Xp=BigInt(3),Qp=BigInt(4),eb=BigInt(5),tb=BigInt(8);function nb(e,t){const n=e%t;return n>=Kp?n:t+n}function rb(e,t,n){let r=e;for(;t-- >Kp;)r*=r,r%=n;return r}function sb(e,t){if(e===Kp)throw new Error("invert: expected non-zero number");if(t<=Kp)throw new Error("invert: expected positive modulus, got "+t);let n=nb(e,t),r=t,s=Kp,a=Yp;for(;n!==Kp;){const e=r%n,t=s-a*(r/n);r=n,n=e,s=a,a=t}if(r!==Yp)throw new Error("invert: does not exist");return nb(s,t)}function ab(e,t){const n=(e.ORDER+Yp)/Qp,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw new Error("Cannot find square root");return r}function ob(e,t){const n=(e.ORDER-eb)/tb,r=e.mul(t,Jp),s=e.pow(r,n),a=e.mul(t,s),o=e.mul(e.mul(a,Jp),s),i=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(i),t))throw new Error("Cannot find square root");return i}function ib(e){return e%Qp===Xp?ab:e%tb===eb?ob:function(e){if(e<BigInt(3))throw new Error("sqrt is not defined for small field");let t=e-Yp,n=0;for(;t%Jp===Kp;)t/=Jp,n++;let r=Jp;const s=hb(e);for(;1===lb(s,r);)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(1===n)return ab;let a=s.pow(r,t);const o=(t+Yp)/Jp;return function(e,r){if(e.is0(r))return r;if(1!==lb(e,r))throw new Error("Cannot find square root");let s=n,i=e.mul(e.ONE,a),c=e.pow(r,t),u=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===s)throw new Error("Cannot find square root");const r=Yp<<BigInt(s-t-1),a=e.pow(i,r);s=t,i=e.sqr(a),c=e.mul(c,i),u=e.mul(u,a)}return u}}(e)}const cb=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ub(e){return Rc(e,cb.reduce(((e,t)=>(e[t]="function",e)),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"}))}function db(e,t,n=!1){const r=new Array(t.length).fill(n?e.ZERO:void 0),s=t.reduce(((t,n,s)=>e.is0(n)?t:(r[s]=t,e.mul(t,n))),e.ONE),a=e.inv(s);return t.reduceRight(((t,n,s)=>e.is0(n)?t:(r[s]=e.mul(t,r[s]),e.mul(t,n))),a),r}function lb(e,t){const n=(e.ORDER-Yp)/Jp,r=e.pow(t,n),s=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!s&&!a&&!o)throw new Error("invalid Legendre symbol result");return s?1:a?0:-1}function fb(e,t){void 0!==t&&Ft(t);const n=void 0!==t?t:e.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function hb(e,t,n=!1,r={}){if(e<=Kp)throw new Error("invalid field: expected ORDER > 0, got "+e);const{nBitLength:s,nByteLength:a}=fb(e,t);if(a>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let o;const i=Object.freeze({ORDER:e,isLE:n,BITS:s,BYTES:a,MASK:Sc(s),ZERO:Kp,ONE:Yp,create:t=>nb(t,e),isValid:t=>{if("bigint"!=typeof t)throw new Error("invalid field element: expected bigint, got "+typeof t);return Kp<=t&&t<e},is0:e=>e===Kp,isOdd:e=>(e&Yp)===Yp,neg:t=>nb(-t,e),eql:(e,t)=>e===t,sqr:t=>nb(t*t,e),add:(t,n)=>nb(t+n,e),sub:(t,n)=>nb(t-n,e),mul:(t,n)=>nb(t*n,e),pow:(e,t)=>function(e,t,n){if(n<Kp)throw new Error("invalid exponent, negatives unsupported");if(n===Kp)return e.ONE;if(n===Yp)return t;let r=e.ONE,s=t;for(;n>Kp;)n&Yp&&(r=e.mul(r,s)),s=e.sqr(s),n>>=Yp;return r}(i,e,t),div:(t,n)=>nb(t*sb(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>sb(t,e),sqrt:r.sqrt||(t=>(o||(o=ib(e)),o(i,t))),toBytes:e=>n?kc(e,a):Ec(e,a),fromBytes:e=>{if(e.length!==a)throw new Error("Field.fromBytes: expected "+a+" bytes, got "+e.length);return n?Pc(e):xc(e)},invertBatch:e=>db(i,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(i)}function pb(e){if("bigint"!=typeof e)throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function bb(e){const t=pb(e);return t+Math.ceil(t/2)}const mb=BigInt(0),yb=BigInt(1);function gb(e,t){const n=t.negate();return e?n:t}function wb(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function vb(e,t){wb(e,t);const n=2**e;return{windows:Math.ceil(t/e)+1,windowSize:2**(e-1),mask:Sc(e),maxNumber:n,shiftBy:BigInt(e)}}function xb(e,t,n){const{windowSize:r,mask:s,maxNumber:a,shiftBy:o}=n;let i=Number(e&s),c=e>>o;i>r&&(i-=a,c+=yb);const u=t*r;return{nextN:c,offset:u+Math.abs(i)-1,isZero:0===i,isNeg:i<0,isNegF:t%2!=0,offsetF:u}}const Pb=new WeakMap,Eb=new WeakMap;function kb(e){return Eb.get(e)||1}function Ib(e,t,n,r){!function(e,t){if(!Array.isArray(e))throw new Error("array expected");e.forEach(((e,n)=>{if(!(e instanceof t))throw new Error("invalid point at index "+n)}))}(n,e),function(e,t){if(!Array.isArray(e))throw new Error("array of scalars expected");e.forEach(((e,n)=>{if(!t.isValid(e))throw new Error("invalid scalar at index "+n)}))}(r,t);const s=n.length,a=r.length;if(s!==a)throw new Error("arrays of points and scalars must have equal length");const o=e.ZERO,i=function(e){let t;for(t=0;e>cc;e>>=uc,t+=1);return t}(BigInt(s));let c=1;i>12?c=i-3:i>4?c=i-2:i>0&&(c=2);const u=Sc(c),d=new Array(Number(u)+1).fill(o);let l=o;for(let e=Math.floor((t.BITS-1)/c)*c;e>=0;e-=c){d.fill(o);for(let t=0;t<a;t++){const s=r[t],a=Number(s>>BigInt(e)&u);d[a]=d[a].add(n[t])}let t=o;for(let e=d.length-1,n=o;e>0;e--)n=n.add(d[e]),t=t.add(n);if(l=l.add(t),0!==e)for(let e=0;e<c;e++)l=l.double()}return l}function $b(e){return ub(e.Fp),Rc(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...fb(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}function Ab(e){void 0!==e.lowS&&fc("lowS",e.lowS),void 0!==e.prehash&&fc("prehash",e.prehash)}class Bb extends Error{constructor(e=""){super(e)}}const Tb={Err:Bb,_tlv:{encode:(e,t)=>{const{Err:n}=Tb;if(e<0||e>256)throw new n("tlv.encode: wrong tag");if(1&t.length)throw new n("tlv.encode: unpadded data");const r=t.length/2,s=hc(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const a=r>127?hc(s.length/2|128):"";return hc(e)+a+s+t},decode(e,t){const{Err:n}=Tb;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++];let a=0;if(!!(128&s)){const e=127&s;if(!e)throw new n("tlv.decode(long): indefinite length not supported");if(e>4)throw new n("tlv.decode(long): byte length is too big");const o=t.subarray(r,r+e);if(o.length!==e)throw new n("tlv.decode: length bytes not complete");if(0===o[0])throw new n("tlv.decode(long): zero leftmost byte");for(const e of o)a=a<<8|e;if(r+=e,a<128)throw new n("tlv.decode(long): not minimal encoding")}else a=s;const o=t.subarray(r,r+a);if(o.length!==a)throw new n("tlv.decode: wrong value length");return{v:o,l:t.subarray(r+a)}}},_int:{encode(e){const{Err:t}=Tb;if(e<Sb)throw new t("integer: negative integers are not allowed");let n=hc(e);if(8&Number.parseInt(n[0],16)&&(n="00"+n),1&n.length)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=Tb;if(128&e[0])throw new t("invalid signature integer: negative");if(0===e[0]&&!(128&e[1]))throw new t("invalid signature integer: unnecessary leading zero");return xc(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=Tb,s=Ic("signature",e),{v:a,l:o}=r.decode(48,s);if(o.length)throw new t("invalid signature: left bytes after parsing");const{v:i,l:c}=r.decode(2,a),{v:u,l:d}=r.decode(2,c);if(d.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(i),s:n.decode(u)}},hexFromSig(e){const{_tlv:t,_int:n}=Tb,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}};function Nb(e,t){return yc(Ec(e,t))}const Sb=BigInt(0),zb=BigInt(1),Ob=BigInt(2),Cb=BigInt(3),Rb=BigInt(4);function Fb(e){const t=function(e){const t=$b(e);Rc(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("object"!=typeof n||"bigint"!=typeof n.beta||"function"!=typeof n.splitScalar)throw new Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...t})}(e),{Fp:n}=t,r=hb(t.n,t.nBitLength),s=t.toBytes||((e,t,r)=>{const s=t.toAffine();return $c(Uint8Array.from([4]),n.toBytes(s.x),n.toBytes(s.y))}),a=t.fromBytes||(e=>{const t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){const{a:r,b:s}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),s)}function i(e,t){const r=n.sqr(t),s=o(e);return n.eql(r,s)}if(!i(t.Gx,t.Gy))throw new Error("bad curve params: generator point");const c=n.mul(n.pow(t.a,Cb),Rb),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 d(e){const{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:s,n:a}=t;if(n&&"bigint"!=typeof e){if(dc(e)&&(e=yc(e)),"string"!=typeof e||!n.includes(e.length))throw new Error("invalid private key");e=e.padStart(2*r,"0")}let o;try{o="bigint"==typeof e?e:xc(Ic("private key",e,r))}catch(t){throw new Error("invalid private key, expected hex or "+r+" bytes, got "+typeof e)}return s&&(o=nb(o,a)),Nc("private key",o,zb,a),o}function l(e){if(!(e instanceof p))throw new Error("ProjectivePoint expected")}const f=Fc(((e,t)=>{const{px:r,py:s,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:s};const o=e.is0();null==t&&(t=o?n.ONE:n.inv(a));const i=n.mul(r,t),c=n.mul(s,t),u=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(u,n.ONE))throw new Error("invZ was invalid");return{x:i,y:c}})),h=Fc((e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw new Error("bad point: ZERO")}const{x:r,y:s}=e.toAffine();if(!n.isValid(r)||!n.isValid(s))throw new Error("bad point: x or y not FE");if(!i(r,s))throw new Error("bad point: equation left != right");if(!e.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0}));class p{constructor(e,t,r){if(null==e||!n.isValid(e))throw new Error("x required");if(null==t||!n.isValid(t)||n.is0(t))throw new Error("y required");if(null==r||!n.isValid(r))throw new Error("z required");this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){const{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw new Error("invalid affine point");if(e instanceof p)throw new Error("projective point not allowed");const s=e=>n.eql(e,n.ZERO);return s(t)&&s(r)?p.ZERO:new p(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const t=db(n,e.map((e=>e.pz)));return e.map(((e,n)=>e.toAffine(t[n]))).map(p.fromAffine)}static fromHex(e){const t=p.fromAffine(a(Ic("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return p.BASE.multiply(d(e))}static msm(e,t){return Ib(p,r,e,t)}_setWindowSize(e){y.setWindowSize(this,e)}assertValidity(){h(this)}hasEvenY(){const{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw new Error("Field doesn't support isOdd")}equals(e){l(e);const{px:t,py:r,pz:s}=this,{px:a,py:o,pz:i}=e,c=n.eql(n.mul(t,i),n.mul(a,s)),u=n.eql(n.mul(r,i),n.mul(o,s));return c&&u}negate(){return new p(this.px,n.neg(this.py),this.pz)}double(){const{a:e,b:r}=t,s=n.mul(r,Cb),{px:a,py:o,pz:i}=this;let c=n.ZERO,u=n.ZERO,d=n.ZERO,l=n.mul(a,a),f=n.mul(o,o),h=n.mul(i,i),b=n.mul(a,o);return b=n.add(b,b),d=n.mul(a,i),d=n.add(d,d),c=n.mul(e,d),u=n.mul(s,h),u=n.add(c,u),c=n.sub(f,u),u=n.add(f,u),u=n.mul(c,u),c=n.mul(b,c),d=n.mul(s,d),h=n.mul(e,h),b=n.sub(l,h),b=n.mul(e,b),b=n.add(b,d),d=n.add(l,l),l=n.add(d,l),l=n.add(l,h),l=n.mul(l,b),u=n.add(u,l),h=n.mul(o,i),h=n.add(h,h),l=n.mul(h,b),c=n.sub(c,l),d=n.mul(h,f),d=n.add(d,d),d=n.add(d,d),new p(c,u,d)}add(e){l(e);const{px:r,py:s,pz:a}=this,{px:o,py:i,pz:c}=e;let u=n.ZERO,d=n.ZERO,f=n.ZERO;const h=t.a,b=n.mul(t.b,Cb);let m=n.mul(r,o),y=n.mul(s,i),g=n.mul(a,c),w=n.add(r,s),v=n.add(o,i);w=n.mul(w,v),v=n.add(m,y),w=n.sub(w,v),v=n.add(r,a);let x=n.add(o,c);return v=n.mul(v,x),x=n.add(m,g),v=n.sub(v,x),x=n.add(s,a),u=n.add(i,c),x=n.mul(x,u),u=n.add(y,g),x=n.sub(x,u),f=n.mul(h,v),u=n.mul(b,g),f=n.add(u,f),u=n.sub(y,f),f=n.add(y,f),d=n.mul(u,f),y=n.add(m,m),y=n.add(y,m),g=n.mul(h,g),v=n.mul(b,v),y=n.add(y,g),g=n.sub(m,g),g=n.mul(h,g),v=n.add(v,g),m=n.mul(y,v),d=n.add(d,m),m=n.mul(x,v),u=n.mul(w,u),u=n.sub(u,m),m=n.mul(w,y),f=n.mul(x,f),f=n.add(f,m),new p(u,d,f)}subtract(e){return this.add(e.negate())}is0(){return this.equals(p.ZERO)}wNAF(e){return y.wNAFCached(this,e,p.normalizeZ)}multiplyUnsafe(e){const{endo:r,n:s}=t;Nc("scalar",e,Sb,s);const a=p.ZERO;if(e===Sb)return a;if(this.is0()||e===zb)return this;if(!r||y.hasPrecomputes(this))return y.wNAFCachedUnsafe(this,e,p.normalizeZ);let{k1neg:o,k1:i,k2neg:c,k2:u}=r.splitScalar(e),d=a,l=a,f=this;for(;i>Sb||u>Sb;)i&zb&&(d=d.add(f)),u&zb&&(l=l.add(f)),f=f.double(),i>>=zb,u>>=zb;return o&&(d=d.negate()),c&&(l=l.negate()),l=new p(n.mul(l.px,r.beta),l.py,l.pz),d.add(l)}multiply(e){const{endo:r,n:s}=t;let a,o;if(Nc("scalar",e,zb,s),r){const{k1neg:t,k1:s,k2neg:i,k2:c}=r.splitScalar(e);let{p:u,f:d}=this.wNAF(s),{p:l,f:f}=this.wNAF(c);u=y.constTimeNegate(t,u),l=y.constTimeNegate(i,l),l=new p(n.mul(l.px,r.beta),l.py,l.pz),a=u.add(l),o=d.add(f)}else{const{p:t,f:n}=this.wNAF(e);a=t,o=n}return p.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){const r=p.BASE,s=(e,t)=>t!==Sb&&t!==zb&&e.equals(r)?e.multiply(t):e.multiplyUnsafe(t),a=s(this,t).add(s(e,n));return a.is0()?void 0:a}toAffine(e){return f(this,e)}isTorsionFree(){const{h:e,isTorsionFree:n}=t;if(e===zb)return!0;if(n)return n(p,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:e,clearCofactor:n}=t;return e===zb?this:n?n(p,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return fc("isCompressed",e),this.assertValidity(),s(p,this,e)}toHex(e=!0){return fc("isCompressed",e),yc(this.toRawBytes(e))}}p.BASE=new p(t.Gx,t.Gy,n.ONE),p.ZERO=new p(n.ZERO,n.ONE,n.ZERO);const{endo:b,nBitLength:m}=t,y=(g=p,w=b?Math.ceil(m/2):m,{constTimeNegate:gb,hasPrecomputes:e=>1!==kb(e),unsafeLadder(e,t,n=g.ZERO){let r=e;for(;t>mb;)t&yb&&(n=n.add(r)),r=r.double(),t>>=yb;return n},precomputeWindow(e,t){const{windows:n,windowSize:r}=vb(t,w),s=[];let a=e,o=a;for(let e=0;e<n;e++){o=a,s.push(o);for(let e=1;e<r;e++)o=o.add(a),s.push(o);a=o.double()}return s},wNAF(e,t,n){let r=g.ZERO,s=g.BASE;const a=vb(e,w);for(let e=0;e<a.windows;e++){const{nextN:o,offset:i,isZero:c,isNeg:u,isNegF:d,offsetF:l}=xb(n,e,a);n=o,c?s=s.add(gb(d,t[l])):r=r.add(gb(u,t[i]))}return{p:r,f:s}},wNAFUnsafe(e,t,n,r=g.ZERO){const s=vb(e,w);for(let e=0;e<s.windows&&n!==mb;e++){const{nextN:a,offset:o,isZero:i,isNeg:c}=xb(n,e,s);if(n=a,!i){const e=t[o];r=r.add(c?e.negate():e)}}return r},getPrecomputes(e,t,n){let r=Pb.get(t);return r||(r=this.precomputeWindow(t,e),1!==e&&Pb.set(t,n(r))),r},wNAFCached(e,t,n){const r=kb(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){const s=kb(e);return 1===s?this.unsafeLadder(e,t,r):this.wNAFUnsafe(s,this.getPrecomputes(s,e,n),t,r)},setWindowSize(e,t){wb(t,w),Eb.set(e,t),Pb.delete(e)}});var g,w;return{CURVE:t,ProjectivePoint:p,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:function(e){return Tc(e,zb,t.n)}}}function Mb(e){const t=function(e){const t=$b(e);return Rc(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}(e),{Fp:n,n:r,nByteLength:s,nBitLength:a}=t,o=n.BYTES+1,i=2*n.BYTES+1;function c(e){return nb(e,r)}function u(e){return sb(e,r)}const{ProjectivePoint:d,normPrivateKeyToScalar:l,weierstrassEquation:f,isWithinCurveOrder:h}=Fb({...t,toBytes(e,t,r){const s=t.toAffine(),a=n.toBytes(s.x),o=$c;return fc("isCompressed",r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(s.y))},fromBytes(e){const t=e.length,r=e[0],s=e.subarray(1);if(t!==o||2!==r&&3!==r){if(t===i&&4===r){return{x:n.fromBytes(s.subarray(0,n.BYTES)),y:n.fromBytes(s.subarray(n.BYTES,2*n.BYTES))}}throw new Error("invalid Point, expected length of "+o+", or uncompressed "+i+", got "+t)}{const e=xc(s);if(!Tc(e,zb,n.ORDER))throw new Error("Point is not on curve");const t=f(e);let a;try{a=n.sqrt(t)}catch(e){const t=e instanceof Error?": "+e.message:"";throw new Error("Point is not on curve"+t)}return 1==(1&r)!==((a&zb)===zb)&&(a=n.neg(a)),{x:e,y:a}}}});function p(e){return e>r>>zb}const b=(e,t,n)=>xc(e.slice(t,n));class m{constructor(e,t,n){Nc("r",e,zb,r),Nc("s",t,zb,r),this.r=e,this.s=t,null!=n&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){const t=s;return e=Ic("compactSignature",e,2*t),new m(b(e,0,t),b(e,t,2*t))}static fromDER(e){const{r:t,s:n}=Tb.toSig(Ic("DER",e));return new m(t,n)}assertValidity(){}addRecoveryBit(e){return new m(this.r,this.s,e)}recoverPublicKey(e){const{r:r,s:s,recovery:a}=this,o=v(Ic("msgHash",e));if(null==a||![0,1,2,3].includes(a))throw new Error("recovery id invalid");const i=2===a||3===a?r+t.n:r;if(i>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const l=0==(1&a)?"02":"03",f=d.fromHex(l+Nb(i,n.BYTES)),h=u(i),p=c(-o*h),b=c(s*h),m=d.BASE.multiplyAndAddUnsafe(f,p,b);if(!m)throw new Error("point at infinify");return m.assertValidity(),m}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return vc(this.toDERHex())}toDERHex(){return Tb.hexFromSig(this)}toCompactRawBytes(){return vc(this.toCompactHex())}toCompactHex(){const e=s;return Nb(this.r,e)+Nb(this.s,e)}}const y={isValidPrivateKey(e){try{return l(e),!0}catch(e){return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const e=bb(t.n);return function(e,t,n=!1){const r=e.length,s=pb(t),a=bb(t);if(r<16||r<a||r>1024)throw new Error("expected "+a+"-1024 bytes of input, got "+r);const o=nb(n?Pc(e):xc(e),t-Yp)+Yp;return n?kc(o,s):Ec(o,s)}(t.randomBytes(e),t.n)},precompute:(e=8,t=d.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};function g(e){if("bigint"==typeof e)return!1;if(e instanceof d)return!0;const r=Ic("key",e).length,a=n.BYTES,o=a+1,i=2*a+1;return t.allowedPrivateKeyLengths||s===o?void 0:r===o||r===i}const w=t.bits2int||function(e){if(e.length>8192)throw new Error("input is too large");const t=xc(e),n=8*e.length-a;return n>0?t>>BigInt(n):t},v=t.bits2int_modN||function(e){return c(w(e))},x=Sc(a);function P(e){return Nc("num < 2^"+a,e,Sb,x),Ec(e,s)}function E(e,r,s=k){if(["recovered","canonical"].some((e=>e in s)))throw new Error("sign() legacy options not supported");const{hash:a,randomBytes:o}=t;let{lowS:i,prehash:f,extraEntropy:b}=s;null==i&&(i=!0),e=Ic("msgHash",e),Ab(s),f&&(e=Ic("prehashed msgHash",a(e)));const y=v(e),g=l(r),x=[P(g),P(y)];if(null!=b&&!1!==b){const e=!0===b?o(n.BYTES):b;x.push(Ic("extraEntropy",e))}const E=$c(...x),I=y;return{seed:E,k2sig:function(e){const t=w(e);if(!h(t))return;const n=u(t),r=d.BASE.multiply(t).toAffine(),s=c(r.x);if(s===Sb)return;const a=c(n*c(I+s*g));if(a===Sb)return;let o=(r.x===s?0:2)|Number(r.y&zb),l=a;return i&&p(a)&&(l=function(e){return p(e)?c(-e):e}(a),o^=1),new m(s,l,o)}}}const k={lowS:t.lowS,prehash:!1},I={lowS:t.lowS,prehash:!1};return d.BASE._setWindowSize(8),{CURVE:t,getPublicKey:function(e,t=!0){return d.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,n=!0){if(!0===g(e))throw new Error("first arg must be private key");if(!1===g(t))throw new Error("second arg must be public key");return d.fromHex(t).multiply(l(e)).toRawBytes(n)},sign:function(e,n,r=k){const{seed:s,k2sig:a}=E(e,n,r),o=t,i=function(e,t,n){if("number"!=typeof e||e<2)throw new Error("hashLen must be a number");if("number"!=typeof t||t<2)throw new Error("qByteLen must be a number");if("function"!=typeof n)throw new Error("hmacFn must be a function");let r=zc(e),s=zc(e),a=0;const o=()=>{r.fill(1),s.fill(0),a=0},i=(...e)=>n(s,r,...e),c=(e=zc(0))=>{s=i(Oc([0]),e),r=i(),0!==e.length&&(s=i(Oc([1]),e),r=i())},u=()=>{if(a++>=1e3)throw new Error("drbg: tried 1000 values");let e=0;const n=[];for(;e<t;){r=i();const t=r.slice();n.push(t),e+=r.length}return $c(...n)};return(e,t)=>{let n;for(o(),c(e);!(n=t(u()));)c();return o(),n}}(o.hash.outputLen,o.nByteLength,o.hmac);return i(s,a)},verify:function(e,n,r,s=I){const a=e;n=Ic("msgHash",n),r=Ic("publicKey",r);const{lowS:o,prehash:i,format:l}=s;if(Ab(s),"strict"in s)throw new Error("options.strict was renamed to lowS");if(void 0!==l&&"compact"!==l&&"der"!==l)throw new Error("format must be compact or der");const f="string"==typeof a||dc(a),h=!f&&!l&&"object"==typeof a&&null!==a&&"bigint"==typeof a.r&&"bigint"==typeof a.s;if(!f&&!h)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let p,b;try{if(h&&(p=new m(a.r,a.s)),f){try{"compact"!==l&&(p=m.fromDER(a))}catch(e){if(!(e instanceof Tb.Err))throw e}p||"der"===l||(p=m.fromCompact(a))}b=d.fromHex(r)}catch(e){return!1}if(!p)return!1;if(o&&p.hasHighS())return!1;i&&(n=t.hash(n));const{r:y,s:g}=p,w=v(n),x=u(g),P=c(w*x),E=c(y*x),k=d.BASE.multiplyAndAddUnsafe(b,P,E)?.toAffine();return!!k&&c(k.x)===y},ProjectivePoint:d,Signature:m,utils:y}}function jb(e,t){if(ub(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const n=function(e,t){const n=e.ORDER;let r=Sb;for(let e=n-zb;e%Ob===Sb;e/=Ob)r+=zb;const s=r,a=Ob<<s-zb-zb,o=a*Ob,i=(n-zb)/o,c=(i-zb)/Ob,u=o-zb,d=a,l=e.pow(t,i),f=e.pow(t,(i+zb)/Ob);let h=(t,n)=>{let r=l,a=e.pow(n,u),o=e.sqr(a);o=e.mul(o,n);let i=e.mul(t,o);i=e.pow(i,c),i=e.mul(i,a),a=e.mul(i,n),o=e.mul(i,t);let h=e.mul(o,a);i=e.pow(h,d);let p=e.eql(i,e.ONE);a=e.mul(o,f),i=e.mul(h,r),o=e.cmov(a,o,p),h=e.cmov(i,h,p);for(let t=s;t>zb;t--){let n=t-Ob;n=Ob<<n-zb;let s=e.pow(h,n);const i=e.eql(s,e.ONE);a=e.mul(o,r),r=e.mul(r,r),s=e.mul(h,r),o=e.cmov(a,o,i),h=e.cmov(s,h,i)}return{isValid:p,value:o}};if(e.ORDER%Rb===Cb){const n=(e.ORDER-Cb)/Rb,r=e.sqrt(e.neg(t));h=(t,s)=>{let a=e.sqr(s);const o=e.mul(t,s);a=e.mul(a,o);let i=e.pow(a,n);i=e.mul(i,o);const c=e.mul(i,r),u=e.mul(e.sqr(i),s),d=e.eql(u,t);return{isValid:d,value:e.cmov(c,i,d)}}}return h}(e,t.Z);if(!e.isOdd)throw new Error("Fp.isOdd is not implemented!");return r=>{let s,a,o,i,c,u,d,l;s=e.sqr(r),s=e.mul(s,t.Z),a=e.sqr(s),a=e.add(a,s),o=e.add(a,e.ONE),o=e.mul(o,t.B),i=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),i=e.mul(i,t.A),a=e.sqr(o),u=e.sqr(i),c=e.mul(u,t.A),a=e.add(a,c),a=e.mul(a,o),u=e.mul(u,i),c=e.mul(u,t.B),a=e.add(a,c),d=e.mul(s,o);const{isValid:f,value:h}=n(a,u);l=e.mul(s,r),l=e.mul(l,h),d=e.cmov(d,o,f),l=e.cmov(l,h,f);const p=e.isOdd(r)===e.isOdd(l);l=e.cmov(e.neg(l),l,p);const b=db(e,[i],!0)[0];return d=e.mul(d,b),{x:d,y:l}}}function qb(e){return{hash:e,hmac:(t,...n)=>tp(e,t,function(...e){let t=0;for(let n=0;n<e.length;n++){const r=e[n];Mt(r),t+=r.length}const n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){const s=e[t];n.set(s,r),r+=s.length}return n}(...n)),randomBytes:Wt}}const Lb=xc;function Ub(e,t){if(_b(e),_b(t),e<0||e>=1<<8*t)throw new Error("invalid I2OSP input: "+e);const n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=255&e,e>>>=8;return new Uint8Array(n)}function Gb(e,t){const n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function _b(e){if(!Number.isSafeInteger(e))throw new Error("number expected")}function Db(e,t,n){Rc(n,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});const{p:r,k:s,m:a,hash:o,expand:i,DST:c}=n;lc(e),_b(t);const u="string"==typeof c?Ac(c):c,d=r.toString(2).length,l=Math.ceil((d+s)/8),f=t*a*l;let h;if("xmd"===i)h=function(e,t,n,r){lc(e),lc(t),_b(n),t.length>255&&(t=r($c(Ac("H2C-OVERSIZE-DST-"),t)));const{outputLen:s,blockLen:a}=r,o=Math.ceil(n/s);if(n>65535||o>255)throw new Error("expand_message_xmd: invalid lenInBytes");const i=$c(t,Ub(t.length,1)),c=Ub(0,a),u=Ub(n,2),d=new Array(o),l=r($c(c,e,u,Ub(0,1),i));d[0]=r($c(l,Ub(1,1),i));for(let e=1;e<=o;e++){const t=[Gb(l,d[e-1]),Ub(e+1,1),i];d[e]=r($c(...t))}return $c(...d).slice(0,n)}(e,u,f,o);else if("xof"===i)h=function(e,t,n,r,s){if(lc(e),lc(t),_b(n),t.length>255){const e=Math.ceil(2*r/8);t=s.create({dkLen:e}).update(Ac("H2C-OVERSIZE-DST-")).update(t).digest()}if(n>65535||t.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return s.create({dkLen:n}).update(e).update(Ub(n,2)).update(t).update(Ub(t.length,1)).digest()}(e,u,f,s,o);else{if("_internal_pass"!==i)throw new Error('expand must be "xmd" or "xof"');h=e}const p=new Array(t);for(let e=0;e<t;e++){const t=new Array(a);for(let n=0;n<a;n++){const s=l*(n+e*a),o=h.subarray(s,s+l);t[n]=nb(Lb(o),r)}p[e]=t}return p}const Hb=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Vb=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Zb=BigInt(0),Wb=BigInt(1),Kb=BigInt(2),Yb=(e,t)=>(e+t/Kb)/t;function Jb(e){const t=Hb,n=BigInt(3),r=BigInt(6),s=BigInt(11),a=BigInt(22),o=BigInt(23),i=BigInt(44),c=BigInt(88),u=e*e*e%t,d=u*u*e%t,l=rb(d,n,t)*d%t,f=rb(l,n,t)*d%t,h=rb(f,Kb,t)*u%t,p=rb(h,s,t)*h%t,b=rb(p,a,t)*p%t,m=rb(b,i,t)*b%t,y=rb(m,c,t)*m%t,g=rb(y,i,t)*b%t,w=rb(g,n,t)*d%t,v=rb(w,o,t)*p%t,x=rb(v,r,t)*u%t,P=rb(x,Kb,t);if(!Xb.eql(Xb.sqr(P),e))throw new Error("Cannot find square root");return P}const Xb=hb(Hb,void 0,void 0,{sqrt:Jb}),Qb=function(e,t){const n=t=>Mb({...e,...qb(t)});return{...n(t),create:n}}({a:Zb,b:BigInt(7),Fp:Xb,n:Vb,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=Vb,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-Wb*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),a=n,o=BigInt("0x100000000000000000000000000000000"),i=Yb(a*e,t),c=Yb(-r*e,t);let u=nb(e-i*n-c*s,t),d=nb(-i*r-c*a,t);const l=u>o,f=d>o;if(l&&(u=t-u),f&&(d=t-d),u>o||d>o)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:u,k2neg:f,k2:d}}}},$i),em={};function tm(e,...t){let n=em[e];if(void 0===n){const t=$i(Uint8Array.from(e,(e=>e.charCodeAt(0))));n=$c(t,t),em[e]=n}return $i($c(n,...t))}const nm=e=>e.toRawBytes(!0).slice(1),rm=e=>Ec(e,32),sm=e=>nb(e,Hb),om=e=>nb(e,Vb),im=(()=>Qb.ProjectivePoint)(),cm=(e,t,n)=>im.BASE.multiplyAndAddUnsafe(e,t,n);function um(e){let t=Qb.utils.normPrivateKeyToScalar(e),n=im.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:om(-t),bytes:nm(n)}}function dm(e){Nc("x",e,Wb,Hb);const t=sm(e*e);let n=Jb(sm(t*e+BigInt(7)));n%Kb!==Zb&&(n=sm(-n));const r=new im(e,n,Wb);return r.assertValidity(),r}const lm=xc;function fm(...e){return om(lm(tm("BIP0340/challenge",...e)))}function hm(e){return um(e).bytes}function pm(e,t,n=Wt(32)){const r=Ic("message",e),{bytes:s,scalar:a}=um(t),o=Ic("auxRand",n,32),i=rm(a^lm(tm("BIP0340/aux",o))),c=tm("BIP0340/nonce",i,s,r),u=om(lm(c));if(u===Zb)throw new Error("sign failed: k is zero");const{bytes:d,scalar:l}=um(u),f=fm(d,s,r),h=new Uint8Array(64);if(h.set(d,0),h.set(rm(om(l+f*a)),32),!bm(h,r,s))throw new Error("sign: Invalid signature produced");return h}function bm(e,t,n){const r=Ic("signature",e,64),s=Ic("message",t),a=Ic("publicKey",n,32);try{const e=dm(lm(a)),t=lm(r.subarray(0,32));if(!Tc(t,Wb,Hb))return!1;const n=lm(r.subarray(32,64));if(!Tc(n,Wb,Vb))return!1;const o=fm(rm(t),nm(e),s),i=cm(e,n,om(-o));return!(!i||!i.hasEvenY()||i.toAffine().x!==t)}catch(e){return!1}}const mm=(()=>({getPublicKey:hm,sign:pm,verify:bm,utils:{randomPrivateKey:Qb.utils.randomPrivateKey,lift_x:dm,pointToBytes:nm,numberToBytesBE:Ec,bytesToNumberBE:xc,taggedHash:tm,mod:nb}}))(),ym=(()=>function(e,t){const n=t.map((e=>Array.from(e).reverse()));return(t,r)=>{const[s,a,o,i]=n.map((n=>n.reduce(((n,r)=>e.add(e.mul(n,t),r))))),[c,u]=db(e,[a,i],!0);return t=e.mul(s,c),r=e.mul(r,e.mul(o,u)),{x:t,y:r}}}(Xb,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map((e=>e.map((e=>BigInt(e)))))))(),gm=(()=>jb(Xb,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:Xb.create(BigInt("-11"))}))(),wm=(()=>function(e,t,n){if("function"!=typeof t)throw new Error("mapToCurve() must be defined");function r(n){return e.fromAffine(t(n))}function s(t){const n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){const a=Db(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),i=r(a[1]);return s(o.add(i))},encodeToCurve:(e,t)=>s(r(Db(e,1,{...n,DST:n.encodeDST,...t})[0])),mapToCurve(e){if(!Array.isArray(e))throw new Error("expected array of bigints");for(const t of e)if("bigint"!=typeof t)throw new Error("expected array of bigints");return s(r(e))}}}(Qb.ProjectivePoint,(e=>{const{x:t,y:n}=gm(Xb.create(e[0]));return ym(t,n)}),{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:Xb.ORDER,m:1,k:128,expand:"xmd",hash:$i}))(),vm=(()=>wm.hashToCurve)(),xm=(()=>wm.encodeToCurve)();var Pm=Object.freeze({__proto__:null,secp256k1:Qb,schnorr:mm,secp256k1_hasher:wm,hashToCurve:vm,encodeToCurve:xm});function Em(e,t={}){const{recovered:n}=t;if(void 0===e.r)throw new Nm({signature:e});if(void 0===e.s)throw new Nm({signature:e});if(n&&void 0===e.yParity)throw new Nm({signature:e});if(e.r<0n||e.r>Pp)throw new Sm({value:e.r});if(e.s<0n||e.s>Pp)throw new zm({value:e.s});if("number"==typeof e.yParity&&0!==e.yParity&&1!==e.yParity)throw new Om({value:e.yParity})}function km(e){if(130!==e.length&&132!==e.length)throw new Tm({signature:e});const t=BigInt(vu(e,0,32)),n=BigInt(vu(e,32,64)),r=(()=>{const t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return Bm(t)}catch{throw new Om({value:t})}})();return void 0===r?{r:t,s:n}:{r:t,s:n,yParity:r}}function Im(e){if(void 0!==e.r&&void 0!==e.s)return $m(e)}function $m(e){const t="string"==typeof e?km(e):e instanceof Uint8Array?function(e){return km(bu(e))}(e):"string"==typeof e.r?function(e){const t=(()=>{const t=e.v?Number(e.v):void 0;let n=e.yParity?Number(e.yParity):void 0;if("number"==typeof t&&"number"!=typeof n&&(n=Bm(t)),"number"!=typeof n)throw new Om({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}(e):e.v?function(e){return{r:e.r,s:e.s,yParity:Bm(e.v)}}(e):{r:e.r,s:e.s,...void 0!==e.yParity?{yParity:e.yParity}:{}};return Em(t),t}function Am(e){const{r:t,s:n,yParity:r}=e;return[r?"0x01":"0x",0n===t?"0x":Pu(mu(t)),0n===n?"0x":Pu(mu(n))]}function Bm(e){if(0===e||27===e)return 0;if(1===e||28===e)return 1;if(e>=35)return e%2==0?1:0;throw new Cm({value:e})}class Tm extends Mc{constructor({signature:e}){super(`Value \`${e}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${xu(hu(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class Nm extends Mc{constructor({signature:e}){super(`Signature \`${Hc(e)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class Sm extends Mc{constructor({value:e}){super(`Value \`${e}\` 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 zm extends Mc{constructor({value:e}){super(`Value \`${e}\` 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 Om extends Mc{constructor({value:e}){super(`Value \`${e}\` 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 Cm extends Mc{constructor({value:e}){super(`Value \`${e}\` 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 Rm(e,t={}){return"string"==typeof e.chainId?function(e){const{address:t,chainId:n,nonce:r}=e,s=Im(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...s}}(e):{...e,...t.signature}}function Fm(e){return function(e,t={}){const{presign:n}=t;return np(fu("0x05",function(e,t={}){const{as:n="Hex"}=t;return Vp(e,{as:n})}(function(e){const{address:t,chainId:n,nonce:r}=e,s=Im(e);return[n?mu(n):"0x",t,r?mu(r):"0x",...s?Am(s):[]]}(n?{address:e.address,chainId:e.chainId,nonce:e.nonce}:e))))}(e,{presign:!0})}function Mm(e){return pp(function(e){const{payload:t,signature:n}=e,{r:r,s:s,yParity:a}=n,o=new Qb.Signature(BigInt(r),BigInt(s)).addRecoveryBit(a);return sp(o.recoverPublicKey(hu(t).substring(2)))}(e))}Yc("ox.secp256k1.fromSeed.v1");const jm="0x8010801080108010801080108010801080108010801080108010801080108010",qm=jp("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function Lm(e){if("string"==typeof e){if(vu(e,-32)!==jm)throw new _m(e)}else Em(e.authorization)}function Um(e){Lm(e);const t=ku(vu(e,-64,-32)),n=vu(e,-t-64,-64),r=vu(e,0,-t-64),[s,a,o]=Rp(qm,n);return{authorization:Rm({address:s.delegation,chainId:Number(s.chainId),nonce:s.nonce,yParity:s.yParity,r:s.r,s:s.s}),signature:r,...o&&"0x"!==o?{data:o,to:a}:{}}}function Gm(e){try{return Lm(e),!0}catch{return!1}}class _m extends Mc{constructor(e){super(`Value \`${e}\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc8010.InvalidWrappedSignatureError"})}}function Dm(e){return Gm(e)}function Hm(e){if(!nh(e))return{signature:e};const[t,n,r]=pr([{type:"address"},{type:"bytes"},{type:"bytes"}],e);return{address:t,data:n,signature:r}}function Vm(e){if(!Dm(e))return{signature:e};const{authorization:t,to:n,...r}=Um(e);return{authorization:{address:t.address,chainId:t.chainId,nonce:Number(t.nonce),r:vt(t.r,{size:32}),s:vt(t.s,{size:32}),yParity:t.yParity},...n?{address:n}:{},...r}}async function Zm({message:e,signature:t}){return Rs({hash:Mf(e),signature:t})}async function Wm(e){const{domain:t,message:n,primaryType:r,signature:s,types:a}=e;return Rs({hash:Zf({domain:t,message:n,primaryType:r,types:a}),signature:s})}function Km(e){const{address:t,data:n,signature:r,to:s="hex"}=e,a=Bn([Mn([{type:"address"},{type:"bytes"},{type:"bytes"}],[t,n,r]),eh]);return"hex"===s?a:Bt(a)}function Ym(e){const{address:t,data:n,signature:r,to:s="hex"}=e,a=function(e){const{data:t,signature:n}=e;Lm(e);const r=Mm({payload:Fm(e.authorization),signature:$m(e.authorization)}),s=Fp(qm,[{...e.authorization,delegation:e.authorization.address,chainId:BigInt(e.authorization.chainId)},e.to??r,t??"0x"]);return fu(n,s,mu(xu(s),{size:32}),jm)}({authorization:{address:e.authorization.address,chainId:e.authorization.chainId,nonce:BigInt(e.authorization.nonce),r:BigInt(e.authorization.r),s:BigInt(e.authorization.s),yParity:e.authorization.yParity},data:n,signature:r,to:t});return"hex"===s?a:Bt(a)}async function Jm({address:e,hash:t,signature:n}){return Xi(Pn(e),await Rs({hash:t,signature:n}))}async function Xm({address:e,message:t,signature:n}){return Xi(Pn(e),await Zm({message:t,signature:n}))}async function Qm(e){const{address:t,domain:n,message:r,primaryType:s,signature:a,types:o}=e;return Xi(Pn(t),await Wm({domain:n,message:r,primaryType:s,signature:a,types:o}))}function ey(e){const t=On(e,0,1);if("0x04"===t)return"eip7702";if("0x03"===t)return"eip4844";if("0x02"===t)return"eip1559";if("0x01"===t)return"eip2930";if("0x"!==t&&pt(t)>=192)return"legacy";throw new Or({serializedType:t})}function ty(e){const t=ey(e);return"eip1559"===t?function(e){const t=ny(e),[n,r,s,a,o,i,c,u,d,l,f,h]=t;if(9!==t.length&&12!==t.length)throw new Cr({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:s,maxFeePerGas:a,gas:o,to:i,value:c,data:u,accessList:d,...t.length>9?{v:l,r:f,s:h}:{}},serializedTransaction:e,type:"eip1559"});const p={chainId:pt(n),type:"eip1559"};be(i)&&"0x"!==i&&(p.to=i);be(o)&&"0x"!==o&&(p.gas=ft(o));be(u)&&"0x"!==u&&(p.data=u);be(r)&&(p.nonce="0x"===r?0:pt(r));be(c)&&"0x"!==c&&(p.value=ft(c));be(a)&&"0x"!==a&&(p.maxFeePerGas=ft(a));be(s)&&"0x"!==s&&(p.maxPriorityFeePerGas=ft(s));0!==d.length&&"0x"!==d&&(p.accessList=ry(d));jl(p);return{...12===t.length?sy(t):void 0,...p}}(e):"eip2930"===t?function(e){const t=ny(e),[n,r,s,a,o,i,c,u,d,l,f]=t;if(8!==t.length&&11!==t.length)throw new Cr({attributes:{chainId:n,nonce:r,gasPrice:s,gas:a,to:o,value:i,data:c,accessList:u,...t.length>8?{v:d,r:l,s:f}:{}},serializedTransaction:e,type:"eip2930"});const h={chainId:pt(n),type:"eip2930"};be(o)&&"0x"!==o&&(h.to=o);be(a)&&"0x"!==a&&(h.gas=ft(a));be(c)&&"0x"!==c&&(h.data=c);be(r)&&(h.nonce="0x"===r?0:pt(r));be(i)&&"0x"!==i&&(h.value=ft(i));be(s)&&"0x"!==s&&(h.gasPrice=ft(s));0!==u.length&&"0x"!==u&&(h.accessList=ry(u));ql(h);return{...11===t.length?sy(t):void 0,...h}}(e):"eip4844"===t?function(e){const t=ny(e),n=4===t.length,r=n?t[0]:t,s=n?t.slice(1):[],[a,o,i,c,u,d,l,f,h,p,b,m,y,g]=r,[w,v,x]=s;if(11!==r.length&&14!==r.length)throw new Cr({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:i,maxFeePerGas:c,gas:u,to:d,value:l,data:f,accessList:h,...r.length>9?{v:m,r:y,s:g}:{}},serializedTransaction:e,type:"eip4844"});const P={blobVersionedHashes:b,chainId:pt(a),to:d,type:"eip4844"};be(u)&&"0x"!==u&&(P.gas=ft(u));be(f)&&"0x"!==f&&(P.data=f);be(o)&&(P.nonce="0x"===o?0:pt(o));be(l)&&"0x"!==l&&(P.value=ft(l));be(p)&&"0x"!==p&&(P.maxFeePerBlobGas=ft(p));be(c)&&"0x"!==c&&(P.maxFeePerGas=ft(c));be(i)&&"0x"!==i&&(P.maxPriorityFeePerGas=ft(i));0!==h.length&&"0x"!==h&&(P.accessList=ry(h));w&&v&&x&&(P.sidecars=Ui({blobs:w,commitments:v,proofs:x}));Ml(P);return{...14===r.length?sy(r):void 0,...P}}(e):"eip7702"===t?function(e){const t=ny(e),[n,r,s,a,o,i,c,u,d,l,f,h,p]=t;if(10!==t.length&&13!==t.length)throw new Cr({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:s,maxFeePerGas:a,gas:o,to:i,value:c,data:u,accessList:d,authorizationList:l,...t.length>9?{v:f,r:h,s:p}:{}},serializedTransaction:e,type:"eip7702"});const b={chainId:pt(n),type:"eip7702"};be(i)&&"0x"!==i&&(b.to=i);be(o)&&"0x"!==o&&(b.gas=ft(o));be(u)&&"0x"!==u&&(b.data=u);be(r)&&(b.nonce="0x"===r?0:pt(r));be(c)&&"0x"!==c&&(b.value=ft(c));be(a)&&"0x"!==a&&(b.maxFeePerGas=ft(a));be(s)&&"0x"!==s&&(b.maxPriorityFeePerGas=ft(s));0!==d.length&&"0x"!==d&&(b.accessList=ry(d));0!==l.length&&"0x"!==l&&(b.authorizationList=function(e){const t=[];for(let n=0;n<e.length;n++){const[r,s,a,o,i,c]=e[n];t.push({address:s,chainId:"0x"===r?0:pt(r),nonce:"0x"===a?0:pt(a),...sy([o,i,c])})}return t}(l));Fl(b);return{...13===t.length?sy(t):void 0,...b}}(e):function(e){const t=af(e,"hex"),[n,r,s,a,o,i,c,u,d]=t;if(6!==t.length&&9!==t.length)throw new Cr({attributes:{nonce:n,gasPrice:r,gas:s,to:a,value:o,data:i,...t.length>6?{v:c,r:u,s:d}:{}},serializedTransaction:e,type:"legacy"});const l={type:"legacy"};be(a)&&"0x"!==a&&(l.to=a);be(s)&&"0x"!==s&&(l.gas=ft(s));be(i)&&"0x"!==i&&(l.data=i);be(n)&&(l.nonce="0x"===n?0:pt(n));be(o)&&"0x"!==o&&(l.value=ft(o));be(r)&&"0x"!==r&&(l.gasPrice=ft(r));if(Ll(l),6===t.length)return l;const f=be(c)&&"0x"!==c?ft(c):0n;if("0x"===d&&"0x"===u)return f>0&&(l.chainId=Number(f)),l;const h=f,p=Number((h-35n)/2n);if(p>0)l.chainId=p;else if(27n!==h&&28n!==h)throw new Nr({v:h});return l.v=h,l.s=d,l.r=u,l.yParity=h%2n===0n?1:0,l}(e)}function ny(e){return af(`0x${e.slice(4)}`,"hex")}function ry(e){const t=[];for(let n=0;n<e.length;n++){const[r,s]=e[n];if(!In(r,{strict:!1}))throw new gn({address:r});t.push({address:r,storageKeys:s.map((e=>uf(e)?e:ut(e)))})}return t}function sy(e){const t=e.slice(-3),n="0x"===t[0]?0n:ft(t[0]);if(0n!==n&&1n!==n)throw new Sr({yParity:n});const r=0n===n?27n:28n;return{r:Qe(t[1],{size:32}),s:Qe(t[2],{size:32}),v:r,yParity:27n===r?0:1}}function ay(e,t="wei"){return c(e,t)}function oy(e,t="wei"){return u(e,t)}function iy(e,t){return d(e,t)}async function cy(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a,storageKeys:o}){const i=mi({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:a});return function(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?pt(e.nonce):void 0,storageProof:e.storageProof?(t=e.storageProof,t.map((e=>({...e,value:BigInt(e.value)})))):void 0};var t}(await e.request({method:"eth_getProof",params:[t,o,i]}))}async function uy(e,{blockHash:t,blockNumber:n,blockTag:r,hash:s,index:a,sender:o,nonce:i}){const c=r||"latest",u=void 0!==n?vt(n):void 0;let d=null;if(s?d=await e.request({method:"eth_getTransactionByHash",params:[s]},{dedupe:!0}):t?d=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,vt(a)]},{dedupe:!0}):(u||c)&&"number"==typeof a?d=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[u||c,vt(a)]},{dedupe:Boolean(u)}):o&&"number"==typeof i&&(d=await e.request({method:"eth_getTransactionBySenderAndNonce",params:[o,vt(i)]},{dedupe:!0})),!d)throw new Mr({blockHash:t,blockNumber:n,blockTag:c,hash:s,index:a});return(e.chain?.formatters?.transaction?.format||ci)(d,"getTransaction")}async function dy(e,{hash:t}){const n=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!n)throw new jr({hash:t});return(e.chain?.formatters?.transactionReceipt?.format||zd)(n,"getTransactionReceipt")}async function ly(e,t){const{account:r,authorizationList:s,allowFailure:a=!0,blockHash:o,blockNumber:i,blockOverrides:c,blockTag:u,requireCanonical:d,stateOverride:l}=t,f=t.contracts,h="object"==typeof e.batch?.multicall?e.batch.multicall:{},p=t.batchSize??h.batchSize??1024,b=t.deployless??h.deployless??!1,m=(()=>{if(t.multicallAddress)return t.multicallAddress;if(b)return null;if(e.chain)return Vu({blockNumber:i,chain:e.chain,contract:"multicall3"});throw new Error("client chain not configured. multicallAddress is required.")})(),y=[[]];let g=0,w=0;for(let e=0;e<f.length;e++){const{abi:t,address:n,args:s,functionName:o}=f[e];try{const e=er({abi:t,args:s,functionName:o});w+=(e.length-2)/2,p>0&&w>p&&y[g].length>0&&(g++,w=(e.length-2)/2,y[g]=[]),y[g]=[...y[g],{allowFailure:!0,callData:e,target:n}]}catch(e){const i=zs(e,{abi:t,address:n,args:s,docsPath:"/docs/contract/multicall",functionName:o,sender:r});if(!a)throw i;y[g]=[...y[g],{allowFailure:!0,callData:"0x",target:n}]}}const v=Boolean(e.batch?.multicall),x=v?y.flatMap((e=>e.map((e=>[e])))):y,P=await Promise.allSettled(x.map((t=>v?async function(e,t){const{batchSize:r,call:s,multicallAddress:a,...o}=t,{wait:i=0}="object"==typeof e.batch?.multicall?e.batch.multicall:{},{schedule:c}=Yu({id:vr(["multicall",e.uid,r,a,o]),wait:i,shouldSplitBatch(e){if(0===r)return!1;return e.reduce(((e,{callData:t})=>e+(t.length-2)/2),0)>r},fn:t=>fe(e,rd,"readContract")({...null===a?{code:ju}:{address:a},...o,abi:n,args:[t],functionName:"aggregate3"})}),[u]=await c(s);return u}(e,{account:r,authorizationList:s,batchSize:p,blockHash:o,blockNumber:i,blockOverrides:c,blockTag:u,call:t[0],multicallAddress:m,requireCanonical:d,stateOverride:l}).then((e=>[e])):fe(e,rd,"readContract")({...null===m?{code:ju}:{address:m},abi:n,account:r,args:[t],authorizationList:s,blockHash:o,blockNumber:i,blockOverrides:c,blockTag:u,functionName:"aggregate3",requireCanonical:d,stateOverride:l})))),E=[];for(let e=0;e<P.length;e++){const t=P[e];if("rejected"===t.status){if(!a)throw t.reason;for(let n=0;n<x[e].length;n++)E.push({status:"failure",error:t.reason,result:void 0});continue}const n=t.value;for(let t=0;t<n.length;t++){const{returnData:r,success:s}=n[t],{callData:o}=x[e][t],{abi:i,address:c,functionName:u,args:d}=f[E.length];try{if("0x"===o)throw new $e;if(!s)throw new Kr({data:r});const e=ic({abi:i,args:d,data:r,functionName:u});E.push(a?{result:e,status:"success"}:e)}catch(e){const t=zs(e,{abi:i,address:c,args:d,docsPath:"/docs/contract/multicall",functionName:u});if(!a)throw t;E.push({error:t,result:void 0,status:"failure"})}}}if(E.length!==f.length)throw new ve("multicall results mismatch");return E}async function fy(e,t){const{blockNumber:n,blockTag:r=e.experimental_blockTag??"latest",blocks:s,returnFullTransactions:a,traceTransfers:o,validation:i}=t;try{const t=[];for(const e of s){const n=e.blockOverrides?Ou(e.blockOverrides):void 0,r=e.calls.map((e=>{const t=e,n=t.account?Jn(t.account):void 0,r=t.abi?er(t):t.data,s={...t,account:n,data:t.dataSuffix?$n([r||"0x",t.dataSuffix]):r,from:t.from??n?.address};return ti(s),oa(s)})),s=e.stateOverrides?da(e.stateOverrides):void 0;t.push({blockOverrides:n,calls:r,stateOverrides:s})}const c=("bigint"==typeof n?vt(n):void 0)||r;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:t,returnFullTransactions:a,traceTransfers:o,validation:i},c]})).map(((e,t)=>({...di(e),calls:e.calls.map(((e,n)=>{const{abi:r,args:a,functionName:o,to:i}=s[t].calls[n],c=e.error?.data??e.returnData,u=BigInt(e.gasUsed),d=e.logs?.map((e=>Qi(e))),l="0x1"===e.status?"success":"failure",f=r&&"success"===l&&"0x"!==c?ic({abi:r,data:c,functionName:o}):null,h=(()=>{if("success"===l)return;let e;return"0x"===c?e=new $e:c&&(e=new Kr({data:c})),e?zs(e,{abi:r??[],address:i??"0x",args:a,functionName:o??"<unknown>"}):void 0})();return{data:c,gasUsed:u,logs:d,status:l,..."success"===l?{result:f}:{error:h}}}))})))}catch(e){const t=e,n=na(t,{});if(n instanceof ta)throw t;throw n}}function hy(e){let t=!0,n="",r=0,s="",a=!1;for(let o=0;o<e.length;o++){const i=e[o];if(["(",")",","].includes(i)&&(t=!0),"("===i&&r++,")"===i&&r--,t)if(0!==r)" "!==i?(s+=i,n+=i):","!==e[o-1]&&","!==n&&",("!==n&&(n="",t=!1);else if(" "===i&&["event","function","error",""].includes(s))s="";else if(s+=i,")"===i){a=!0;break}}if(!a)throw new Mc("Unable to normalize signature.");return s}function py(e,t){const n=typeof e,r=t.type;switch(r){case"address":return bp(e,{strict:!1});case"bool":return"boolean"===n;case"function":case"string":return"string"===n;default:return"tuple"===r&&"components"in t?Object.values(t.components).every(((t,n)=>py(Object.values(e)[n],t))):/^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)?"number"===n||"bigint"===n:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?"string"===n||e instanceof Uint8Array:!!/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)&&(Array.isArray(e)&&e.every((e=>py(e,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")}))))}}function by(e,t,n){for(const r in e){const s=e[r],a=t[r];if("tuple"===s.type&&"tuple"===a.type&&"components"in s&&"components"in a)return by(s.components,a.components,n[r]);const o=[s.type,a.type];if(!(!o.includes("address")||!o.includes("bytes20"))||(o.includes("address")&&o.includes("string")||!(!o.includes("address")||!o.includes("bytes")))&&bp(n[r],{strict:!1}))return o}}function my(e,t={}){const{prepare:n=!0}=t,r=Array.isArray(e)||"string"==typeof e?Yh(e):e;return{...r,...n?{hash:wy(r)}:{}}}function yy(e,t,n){const{args:r=[],prepare:s=!0}=n??{},a=Iu(t,{strict:!1}),o=e.filter((e=>a?"function"===e.type||"error"===e.type?gy(e)===vu(t,0,4):"event"===e.type&&wy(e)===t:"name"in e&&e.name===t));if(0===o.length)throw new xy({name:t});if(1===o.length)return{...o[0],...s?{hash:wy(o[0])}:{}};let i;for(const e of o){if(!("inputs"in e))continue;if(!r||0===r.length){if(!e.inputs||0===e.inputs.length)return{...e,...s?{hash:wy(e)}:{}};continue}if(!e.inputs)continue;if(0===e.inputs.length)continue;if(e.inputs.length!==r.length)continue;const t=r.every(((t,n)=>{const r="inputs"in e&&e.inputs[n];return!!r&&py(t,r)}));if(t){if(i&&"inputs"in i&&i.inputs){const t=by(e.inputs,i.inputs,r);if(t)throw new vy({abiItem:e,type:t[0]},{abiItem:i,type:t[1]})}i=e}}const c=(()=>{if(i)return i;const[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new xy({name:t});return{...c,...s?{hash:wy(c)}:{}}}function gy(...e){const t=(()=>{if(Array.isArray(e[0])){const[t,n]=e;return yy(t,n)}return e[0]})();return vu(wy(t),0,4)}function wy(...e){const t=(()=>{if(Array.isArray(e[0])){const[t,n]=e;return yy(t,n)}return e[0]})();return"string"!=typeof t&&"hash"in t&&t.hash?t.hash:np(yu(function(...e){const t=(()=>{if(Array.isArray(e[0])){const[t,n]=e;return yy(t,n)}return e[0]})();return hy("string"==typeof t?t:lh(t))}(t)))}class vy extends Mc{constructor(e,t){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${e.type}\` in \`${hy(lh(e.abiItem))}\`, and`,`\`${t.type}\` in \`${hy(lh(t.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 xy extends Mc{constructor({name:e,data:t,type:n="item"}){super(`ABI ${n}${e?` with name "${e}"`:t?` with data "${t}"`:""} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}function Py(e){const t=e.find((e=>"constructor"===e.type));if(!t)throw new xy({name:"constructor"});return t}function Ey(...e){const[t,n=[]]=(()=>{if(Array.isArray(e[0])){const[t,n,r]=e;return[Iy(t,n,{args:r}),r]}const[t,n]=e;return[t,n]})(),{overloads:r}=t,s=r?Iy([t,...r],t.name,{args:n}):t,a=gy(s);const o=n.length>0?Fp(s.inputs,n):void 0;return o?fu(a,o):a}function ky(e,t={}){return my(e,t)}function Iy(e,t,n){const r=yy(e,t,n);if("function"!==r.type)throw new xy({name:t,type:"function"});return r}const $y="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",Ay="0x0000000000000000000000000000000000000000",By="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033",Ty="0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063fd00430c1461002d575b5f5ffd5b6100476004803603810190610042919061012b565b610049565b005b80825f375f5f825f865afa610060573d5f5f3e3d5ffd5b3d5f5f3e3d5ff35b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61009982610070565b9050919050565b6100a98161008f565b81146100b3575f5ffd5b50565b5f813590506100c4816100a0565b92915050565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f8401126100eb576100ea6100ca565b5b8235905067ffffffffffffffff811115610108576101076100ce565b5b602083019150836001820283011115610124576101236100d2565b5b9250929050565b5f5f5f6040848603121561014257610141610068565b5b5f61014f868287016100b6565b935050602084013567ffffffffffffffff8111156101705761016f61006c565b5b61017c868287016100d6565b9250925050925092509256fea2646970667358221220635ed99185cacf3f2acba6921f23687c969cec2bbaf5f9ad599f507e6e105e6964736f6c63430008230033",Ny=0x00000000000000000000000000000000deadbeefn,Sy=wy(function(e,t={}){return my(e,t)}("event Transfer(address indexed from, address indexed to, uint256 value)"));const zy=ky("function balanceOf(address) returns (uint256)"),Oy=ky("function decimals() returns (uint256)"),Cy=ky("function tokenURI(uint256) returns (string)"),Ry=ky("function symbol() returns (string)"),Fy=ky("function query(address target, bytes data)");async function My(e,t){const{blockNumber:n,blockTag:r,calls:s,stateOverrides:a,traceAssetChanges:o,traceTransfers:i,validation:c}=t,u=t.account?Jn(t.account):void 0;if(o&&!u)throw new ve("`account` is required when `traceAssetChanges` is true");const d=u?function(...e){const[t,n]=(()=>{if(Array.isArray(e[0])){const[t,n]=e;return[Py(t),n]}return e})(),{bytecode:r,args:s}=n;return fu(r,t.inputs?.length&&s?.length?Fp(t.inputs,s):"0x")}(my("constructor(bytes, bytes)"),{bytecode:Ru,args:[By,Ey(ky("function getBalance(address)"),[u.address])]}):void 0;const l=r??e.experimental_blockTag??"latest";let f=n;if(o&&"bigint"!=typeof f&&"earliest"!==l&&"pending"!==l)if("latest"===l)f=await bd(e,{cacheTime:0});else{const t=await fi(e,{blockTag:l});if("bigint"!=typeof t.number)throw new ve(`Block tag \`${l}\` did not resolve to a number.`);f=t.number}const h="bigint"==typeof f?{blockNumber:f}:{blockTag:l},p=o?await fy(e,{...h,blocks:[{calls:s.map((e=>({...e,from:u.address}))),stateOverrides:a}],traceTransfers:i,validation:c}):void 0,b=p?[...new Set([...qy(p[0].calls.flatMap((e=>e.logs??[])),u.address),...t.calls.map((e=>e.to?.toLowerCase()))])].filter((e=>Boolean(e)&&e!==$y&&e!==Ay)):[],m=function(e){const t=new Set(e.map((e=>e.toLowerCase())));let n=Ny;for(;t.has(`0x${n.toString(16).padStart(40,"0")}`);)n++;return`0x${n.toString(16).padStart(40,"0")}`}([...u?[u.address]:[],...b,...a?.map((({address:e})=>e))??[]]),y=[{address:m,code:Ty}],[g,w]=await Promise.all([o?Promise.all([Gy(e,{account:u.address,...h,data:d,stateOverride:a}),...b.map((t=>Gy(e,{account:u.address,address:t,...h,data:Ey(zy,[u.address]),staticCallAddress:m,stateOverride:a})))]):[],fy(e,{...h,blocks:[{calls:[...s,{to:Ay}].map((e=>({...e,from:u?.address}))),stateOverrides:a},...o?[{calls:[{data:d}]},{calls:b.map((e=>({to:m,data:jy(e,Ey(zy,[u.address]))}))),stateOverrides:y},{calls:b.map((e=>({to:m,data:jy(e,Ey(Oy))}))),stateOverrides:y},{calls:b.map((e=>({to:m,data:jy(e,Ey(Cy,[0n]))}))),stateOverrides:y},{calls:b.map((e=>({to:m,data:jy(e,Ey(Ry))}))),stateOverrides:y}]:[]],traceTransfers:i,validation:c})]),v=w[0],[x,P,E,k,I]=o?w.slice(1):[],{calls:$,...A}=v,B=$.slice(0,-1),T=g.map((e=>Ly(e)?ft(e.data):null)),N=[...x?.calls??[],...P?.calls??[]].map((e=>Ly(e)?ft(e.data):null)),S=(E?.calls??[]).map((e=>Uy(e,Oy))),z=(I?.calls??[]).map((e=>Uy(e,Ry))),O=(k?.calls??[]).map((e=>Uy(e,Cy))),C=[];for(const[e,t]of N.entries()){const n=T[e],r=g[e],s="bigint"==typeof n?n:e>0&&"success"===r?.status&&"0x"===r.data?0n:null;if("bigint"!=typeof t)continue;if("bigint"!=typeof s)continue;const a=S[e-1],o=z[e-1],i=O[e-1],c=0===e?{address:$y,decimals:18,symbol:"ETH"}:{address:b[e-1],decimals:i||a?Number(a??1):void 0,symbol:o??void 0};C.push({token:c,value:{pre:s,post:t,diff:t-s}})}return{assetChanges:C,block:A,results:B}}function jy(e,t){return Ey(Fy,[e,t])}function qy(e,t){const n=Xe(t.toLowerCase(),{size:32});return e.filter((e=>e.topics[0]?.toLowerCase()===Sy&&(e.address.toLowerCase()!==$y&&(e.topics[1]?.toLowerCase()===n||e.topics[2]?.toLowerCase()===n)))).map((e=>e.address.toLowerCase()))}function Ly(e){return"success"===e.status&&/^0x[\da-f]{64}$/i.test(e.data)}function Uy(e,t){if("failure"===e.status||"0x"===e.data)return null;try{return function(...e){const[t,n,r={}]=(()=>{if(Array.isArray(e[0])){const[t,n,r,s]=e;return[Iy(t,n),r,s]}return e})(),s=Rp(t.outputs,n,r);if(!s||0!==Object.keys(s).length)return s&&1===Object.keys(s).length?Array.isArray(s)?s[0]:Object.values(s)[0]:s}(t,e.data)}catch{return null}}async function Gy(e,t){const{account:n,address:r,blockNumber:s,blockTag:a,data:o,staticCallAddress:i,stateOverride:c}=t;try{return{data:(await Ju({...e,ccipRead:!1},{account:r?Ay:n,data:r?jy(r,o):o,stateOverride:r&&i?[...c??[],{address:i,code:Ty}]:c,...r?{to:i}:{},..."bigint"==typeof s?{blockNumber:s}:{blockTag:a}})).data??"0x",status:"success"}}catch(e){if(!(e instanceof Dr&&e.cause instanceof Ds))throw e;return{data:"0x",status:"failure"}}}const _y="0x6492649264926492649264926492649264926492649264926492649264926492";function Dy(e){try{return function(e){if(vu(e,-32)!==_y)throw new Hy(e)}(e),!0}catch{return!1}}class Hy extends Mc{constructor(e){super(`Value \`${e}\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc6492.InvalidWrappedSignatureError"})}}function Vy({r:e,s:t,to:n="hex",v:r,yParity:s}){const a=(()=>{if(0===s||1===s)return s;if(r&&(27n===r||28n===r||r>=35n))return r%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),o=`0x${new Qb.Signature(ft(e),ft(t)).toCompactHex()}${0===a?"1b":"1c"}`;return"hex"===n?o:Bt(o)}async function Zy(e,t){const{address:r,chain:s=e.chain,hash:a,erc6492VerifierAddress:o=t.universalSignatureVerifierAddress??s?.contracts?.erc6492Verifier?.address,multicallAddress:i=t.multicallAddress??s?.contracts?.multicall3?.address,mode:c="auto"}=t;if(s?.verifyHash)return await s.verifyHash(e,t);const u=(()=>{const e=t.signature;return be(e)?e:"object"==typeof e&&"r"in e&&"s"in e?Vy(e):wt(e)})();try{if("eoa"===c)try{if(Xi(Pn(r),await Rs({hash:a,signature:u})))return!0}catch{}return Gm(u)?await async function(e,t){const{address:r,blockHash:s,blockNumber:a,blockTag:o,hash:i,multicallAddress:c,requireCanonical:u}=t,{authorization:d,data:f,signature:h,to:p}=Um(t.signature),b=await $l(e,{address:r,blockHash:s,blockNumber:a,blockTag:o,requireCanonical:u});if(b===Bn(["0xef0100",d.address]))return await async function(e,t){const{address:n,blockHash:r,blockNumber:s,blockTag:a,hash:o,requireCanonical:i,signature:c}=t,u=await fe(e,rd,"readContract")({address:n,abi:l,args:[o,c],blockHash:r,blockNumber:s,blockTag:a,functionName:"isValidSignature",requireCanonical:i}).catch((e=>{if(e instanceof Hr)throw new Wy;throw e}));if(u.startsWith("0x1626ba7e"))return!0;throw new Wy}(e,{...t,signature:h});const m={address:d.address,chainId:Number(d.chainId),nonce:Number(d.nonce),r:vt(d.r,{size:32}),s:vt(d.s,{size:32}),yParity:d.yParity},y=await async function({address:e,authorization:t,signature:n}){return Xi(Pn(e),await Gs({authorization:t,signature:n}))}({address:r,authorization:m});if(!y)throw new Wy;const g=await fe(e,rd,"readContract")({...c?{address:c}:{code:ju},authorizationList:[m],abi:n,blockHash:s,blockNumber:a,blockTag:"pending",functionName:"aggregate3",requireCanonical:u,args:[[...f?[{allowFailure:!0,target:p??r,callData:f}]:[],{allowFailure:!0,target:r,callData:er({abi:l,functionName:"isValidSignature",args:[i,h]})}]]}),w=g[g.length-1]?.returnData;if(w?.startsWith("0x1626ba7e"))return!0;throw new Wy}(e,{...t,multicallAddress:i,signature:u}):await async function(e,t){const{address:n,factory:r,factoryData:s,hash:a,signature:o,verifierAddress:i,...c}=t,u=await(async()=>r||s?Dy(o)?o:function(e){const{data:t,signature:n,to:r}=e;return fu(Fp(jp("address, bytes, bytes"),[r,t,n]),_y)}({data:s,signature:o,to:r}):o)(),d=i?{to:i,data:er({abi:f,functionName:"isValidSig",args:[n,a,u]}),...c}:{data:Hu({abi:f,args:[n,a,u],bytecode:Mu}),...c},{data:l}=await fe(e,Ju,"call")(d).catch((e=>{if(e instanceof Dr)throw new Wy;throw e}));if(ht(l??"0x0"))return!0;throw new Wy}(e,{...t,verifierAddress:o,signature:u})}catch(e){if("eoa"!==c)try{if(Xi(Pn(r),await Rs({hash:a,signature:u})))return!0}catch{}if(e instanceof Wy)return!1;throw e}}class Wy extends Error{}function Ky(e,{emitOnBegin:t=!1,emitMissed:n=!1,onBlockNumber:r,onError:s,poll:a,pollingInterval:o=e.pollingInterval}){let i;return(void 0!==a?a:"webSocket"!==e.transport.type&&"ipc"!==e.transport.type&&("fallback"!==e.transport.type||"webSocket"!==e.transport.transports[0].config.type&&"ipc"!==e.transport.transports[0].config.type))?cd(vr(["watchBlockNumber",e.uid,t,n,o]),{onBlockNumber:r,onError:s},(r=>dd((async()=>{try{const t=await fe(e,bd,"getBlockNumber")({cacheTime:0});if(void 0!==i){if(t===i)return;if(t-i>1&&n)for(let e=i+1n;e<t;e++)r.onBlockNumber(e,i),i=e}(void 0===i||t>i)&&(r.onBlockNumber(t,i),i=t)}catch(e){r.onError?.(e)}}),{emitOnBegin:t,interval:o}))):cd(vr(["watchBlockNumber",e.uid,t,n]),{onBlockNumber:r,onError:s},(t=>{let n=!0,r=()=>n=!1;return(async()=>{try{const s=(()=>{if("fallback"===e.transport.type){const t=e.transport.transports.find((e=>"webSocket"===e.config.type||"ipc"===e.config.type));return t?t.value:e.transport}return e.transport})(),{unsubscribe:a}=await s.subscribe({params:["newHeads"],onData(e){if(!n)return;const r=ft(e.result?.number);t.onBlockNumber(r,i),i=r},onError(e){t.onError?.(e)}});r=a,n||r()}catch(e){s?.(e)}})(),()=>r()}))}async function Yy(e,t){const{checkReplacement:n=e.chain?.supportsTransactionReplacementDetection??!0,confirmations:r=1,hash:s,onReplaced:a,retryCount:o=6,retryDelay:i=(({count:e})=>200*~~(1<<e)),timeout:c=18e4}=t,u=vr(["waitForTransactionReceipt",e.uid,s]),d=t.pollingInterval?t.pollingInterval:e.chain?.experimental_preconfirmationTime?e.chain.experimental_preconfirmationTime:e.pollingInterval;let l,f,h,p,b,m=!1;const{promise:y,resolve:g,reject:w}=Wu(),v=c?setTimeout((()=>{b?.(),p?.(),w(new Lr({hash:s}))}),c):void 0;return p=cd(u,{onReplaced:a,resolve:g,reject:w},(async t=>{if(h=await fe(e,dy,"getTransactionReceipt")({hash:s}).catch((()=>{})),h&&r<=1)return clearTimeout(v),t.resolve(h),void p?.();b=fe(e,Ky,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:d,async onBlockNumber(a){const c=e=>{clearTimeout(v),b?.(),e(),p?.()};let u=a;if(!m)try{if(h){if(r>1&&(!h.blockNumber||u-h.blockNumber+1n<r))return;return void c((()=>t.resolve(h)))}if(n&&!l&&(m=!0,await Nd((async()=>{l=await fe(e,uy,"getTransaction")({hash:s}),l.blockNumber&&(u=l.blockNumber)}),{delay:i,retryCount:o}),m=!1),h=await fe(e,dy,"getTransactionReceipt")({hash:s}),r>1&&(!h.blockNumber||u-h.blockNumber+1n<r))return;c((()=>t.resolve(h)))}catch(n){if(n instanceof Mr||n instanceof jr){if(!l)return void(m=!1);try{f=l,m=!0;const n=await Nd((()=>fe(e,fi,"getBlock")({blockNumber:u,includeTransactions:!0})),{delay:i,retryCount:o,shouldRetry:({error:e})=>e instanceof oi});m=!1;const s=n.transactions.find((({from:e,nonce:t})=>e===f.from&&t===f.nonce));if(!s)return;if(h=await fe(e,dy,"getTransactionReceipt")({hash:s.hash}),r>1&&(!h.blockNumber||u-h.blockNumber+1n<r))return;let a="replaced";s.to===f.to&&s.value===f.value&&s.input===f.input?a="repriced":s.from===s.to&&0n===s.value&&(a="cancelled"),c((()=>{t.onReplaced?.({reason:a,replacedTransaction:f,transaction:s,transactionReceipt:h}),t.resolve(h)}))}catch(e){c((()=>t.reject(e)))}}else c((()=>t.reject(n)))}}})})),y}const Jy=["size","totalDifficulty","transactions","uncles","withdrawals"];const Xy=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})$/;function Qy(e){return function(e){return!!Xy.test(e)&&!Number.isNaN(new Date(e).getTime())}(e)?new Date(e):new Date(Number.NaN)}const eg=/^(?:(?<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)?/,tg=/(?: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>.+))?/;async function ng(e,t){const{address:n,domain:r,message:s,nonce:a,scheme:o,signature:i,time:c=new Date,...u}=t,d=function(e){const{scheme:t,statement:n,...r}=e.match(eg)?.groups??{},{chainId:s,expirationTime:a,issuedAt:o,notBefore:i,requestId:c,...u}=e.match(tg)?.groups??{},d=e.split("Resources:")[1]?.split("\n- ").slice(1);return{...r,...u,...s?{chainId:Number(s)}:{},...a?{expirationTime:Qy(a)}:{},...o?{issuedAt:Qy(o)}:{},...i?{notBefore:Qy(i)}:{},...c?{requestId:c}:{},...d?{resources:d}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}(s);if(!d.address)return!1;const l=function(e){const{address:t,domain:n,message:r,nonce:s,scheme:a,time:o=new Date}=e;if(n&&r.domain!==n)return!1;if(s&&r.nonce!==s)return!1;if(a&&r.scheme!==a)return!1;if(Number.isNaN(o.getTime()))return!1;if(r.expirationTime){if(Number.isNaN(r.expirationTime.getTime()))return!1;if(o>=r.expirationTime)return!1}if(r.notBefore){if(Number.isNaN(r.notBefore.getTime()))return!1;if(o<r.notBefore)return!1}try{if(!r.address)return!1;if(!In(r.address,{strict:!1}))return!1;if(t&&!Xi(r.address,t))return!1}catch{return!1}return!0}({address:n,domain:r,message:d,nonce:a,scheme:o,time:c});if(!l)return!1;const f=Mf(s);return Zy(e,{address:d.address,hash:f,signature:i,...u})}function rg(e,t){return{amount:e,decimals:t,formatted:h(e,t)}}function sg(e,t){if("bigint"==typeof e)return e;const n=e.decimals??t;return iy(e.formatted,function(e){if(void 0===e)throw new Error("Token decimals are required. Pass `amount.decimals` or select a declared token.");return e}(n))}function ag(e,t){return"bigint"==typeof e?t:e.decimals??t}function og(e,t){const{decimals:n,token:r}=t,s=ig(e,r);if(s)return{address:s.address,decimals:n??s.decimals};if(In(r,{strict:!1}))return{address:r,decimals:n??ug(e,r)};throw new Error(`Token "${r}" is not a declared ERC-20 token on the client's \`tokens\` array (with an address for the client's chain), and is not a valid address.`)}function ig(e,t){const n=e.tokens,r=e.chain?.id;if(!n||void 0===r)return;const s=function(e,t){const n=t.toLowerCase();for(const t of e)if(t.symbol?.toLowerCase()===n)return t;return}(n,t);if(s)return cg(s,r);if(In(t,{strict:!1}))for(const e of n){const n=cg(e,r);if(n&&Xi(n.address,t))return n}}function cg(e,t){const n=e.addresses[t];if(n)return{address:n,currency:e.currency,decimals:e.decimals,name:e.name,popular:e.popular,symbol:e.symbol}}function ug(e,t){const n=e.tokens,r=e.chain?.id;if(n&&void 0!==r)for(const e of n){const n=cg(e,r);if(n&&Xi(n.address,t))return n.decimals}}async function dg(e,t){const{address:n,decimals:r}=og(e,t);return void 0!==r?{address:n,decimals:r}:{address:n,decimals:await rd(e,{abi:p,address:n,functionName:"decimals"})}}function lg(e){const{account:t,chain:n,gas:r,maxFeePerGas:s,maxPriorityFeePerGas:a,nonce:o}=e;return{account:t,chain:n,gas:r,maxFeePerGas:s,maxPriorityFeePerGas:a,nonce:o}}function fg(e){return{...e,data:er(e),to:e.address}}async function hg(e,t){return hg.inner(Id,e,t)}async function pg(e,{serializedTransaction:t,throwOnReceiptRevert:n,timeout:r}){const s=await e.request({method:"eth_sendRawTransactionSync",params:r?[t,r]:[t]},{retryCount:0}),a=(e.chain?.formatters?.transactionReceipt?.format||zd)(s);if("reverted"===a.status&&n)throw new qr({receipt:a});return a}!function(e){e.inner=async function(t,n,r){return await t(n,{...r,...e.call(n,r)})},e.call=function(e,t){return fg(function(e,t){const{amount:n,spender:r,token:s}=t,{address:a,decimals:o}=og(e,{token:s});return{abi:p,address:a,args:[r,sg(n,o)],functionName:"approve"}}(e,t))},e.estimateGas=async function(t,n){return Ji(t,{...lg(n),...e.call(t,n)})},e.simulate=async function(t,n){return sd(t,{...lg(n),...e.call(t,n)})},e.extractEvent=function(e){const[t]=rc({abi:p,logs:e,eventName:"Approval",strict:!0});if(!t)throw new Error("`Approval` event not found.");return t}}(hg||(hg={}));const bg=new wn(128);async function mg(e,t){const{account:n=e.account,assertChainId:r=!0,chain:s=e.chain,accessList:a,authorizationList:o,blobs:i,data:c,dataSuffix:u=("string"==typeof e.dataSuffix?e.dataSuffix:e.dataSuffix?.value),gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:h,maxPriorityFeePerGas:p,nonce:b,pollingInterval:m,throwOnReceiptRevert:y,type:g,value:w,...v}=t,x=t.timeout??Math.max(3*(s?.blockTime??0),5e3);if(void 0===n)throw new wd({docsPath:"/docs/actions/wallet/sendTransactionSync"});const P=n?Jn(n):null;let E;try{ti(t);const n=await(async()=>t.to?t.to:null!==t.to&&o&&o.length>0?await Gs({authorization:o[0]}).catch((()=>{throw new ve("`to` is required. Could not infer from `authorizationList`.")})):void 0)();if("json-rpc"===P?.type||null===P){let t;null!==s&&(t=await fe(e,Di,"getChainId")({}),r&&xd({currentChainId:t,chain:s}));const E=e.chain?.formatters?.transactionRequest?.format,k=(E||oa)({...ra(v,{format:E}),accessList:a,account:P,authorizationList:o,blobs:i,chainId:t,data:u?$n([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:h,maxPriorityFeePerGas:p,nonce:b,to:n,type:g,value:w},"sendTransaction"),I=bg.get(e.uid),$=I?"wallet_sendTransaction":"eth_sendTransaction",A=await(async()=>{try{return await e.request({method:$,params:[k]},{retryCount:0})}catch(t){if(!1===I)throw t;const n=t;if("InvalidInputRpcError"===n.name||"InvalidParamsRpcError"===n.name||"MethodNotFoundRpcError"===n.name||"MethodNotSupportedRpcError"===n.name)return await e.request({method:"wallet_sendTransaction",params:[k]},{retryCount:0}).then((t=>(bg.set(e.uid,!0),t))).catch((t=>{const r=t;if("MethodNotFoundRpcError"===r.name||"MethodNotSupportedRpcError"===r.name)throw bg.set(e.uid,!1),n;throw r}));throw n}})(),B=await fe(e,Yy,"waitForTransactionReceipt")({checkReplacement:!1,hash:A,pollingInterval:m,timeout:x});if(y&&"reverted"===B.status)throw new qr({receipt:B});return B}if("local"===P?.type){const r=(()=>{if(!P.nonceManager||void 0!==b)return P.nonceManager;const e=P.nonceManager;return{consume:t=>(E={address:t.address,chainId:t.chainId},e.consume(t)),get:t=>e.get(t),increment:t=>e.increment(t),reset:t=>e.reset(t)}})(),m=await fe(e,Ki,"prepareTransactionRequest")({account:P,accessList:a,authorizationList:o,blobs:i,chain:s,data:u?$n([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:h,maxPriorityFeePerGas:p,nonce:b,nonceManager:r,parameters:[...Vi,"sidecars"],type:g,value:w,...v,to:n}),x=s?.serializers?.transaction,k=await P.signTransaction(m,{serializer:x}),I=(s??e.chain)?.serializers?.transactionEnvelope,$=I?await I({serializedTransaction:k,transaction:m}):k;return await fe(e,pg,"sendRawTransactionSync")({serializedTransaction:$,throwOnReceiptRevert:y,timeout:t.timeout})}if("smart"===P?.type)throw new vd({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new vd({docsPath:"/docs/actions/wallet/sendTransactionSync",type:P?.type})}catch(e){if(e instanceof vd)throw e;throw!E||e instanceof qr||P?.nonceManager?.reset(E),_i(e,{...t,account:P,chain:t.chain||void 0})}}async function yg(e,t){return Id.internal(e,mg,"sendTransactionSync",t)}async function gg(e,t){const{amount:n,token:r,throwOnReceiptRevert:s=!0}=t,{decimals:a}=og(e,{token:r}),o=ag(n,a),i=await hg.inner(yg,e,{...t,throwOnReceiptRevert:s}),{args:c}=hg.extractEvent(i.logs);return{...c,...void 0===o?{}:{decimals:o,formatted:h(c.value,o)},receipt:i}}async function wg(e,t){const{account:n,decimals:r,spender:s,token:a,...o}=t,[i,{decimals:c}]=await Promise.all([rd(e,{...o,...wg.call(e,{account:n,spender:s,token:a})}),dg(e,{decimals:r,token:a})]);return rg(i,c)}async function vg(e,t){const{account:n=e.account,decimals:r,token:s,...a}=t;if(!n)throw new wd;const o=Jn(n).address,[i,{decimals:c}]=await Promise.all([rd(e,{...a,...vg.call(e,{account:o,token:s})}),dg(e,{decimals:r,token:s})]);return rg(i,c)}async function xg(e,t){const{token:n,...r}=t,{address:s}=og(e,{token:n}),a=ig(e,n),[o,i,c]=await Promise.all([a?.decimals??rd(e,{...r,abi:p,address:s,functionName:"decimals"}),a?.name??rd(e,{...r,abi:p,address:s,functionName:"name"}),a?.symbol??rd(e,{...r,abi:p,address:s,functionName:"symbol"})]);return{decimals:o,name:i,symbol:c}}async function Pg(e,t){const{decimals:n,token:r,...s}=t,[a,{decimals:o}]=await Promise.all([rd(e,{...s,...Pg.call(e,{token:r})}),dg(e,{decimals:n,token:r})]);return rg(a,o)}async function Eg(e,t){return Eg.inner(Id,e,t)}async function kg(e,t){const{amount:n,token:r,throwOnReceiptRevert:s=!0}=t,{decimals:a}=og(e,{token:r}),o=ag(n,a),i=await Eg.inner(yg,e,{...t,throwOnReceiptRevert:s}),{args:c}=Eg.extractEvent(i.logs);return{...c,...void 0===o?{}:{decimals:o,formatted:h(c.value,o)},receipt:i}}function Ig(e){return{call:t=>Ju(e,t),createAccessList:t=>async function(e,t){const{account:n=e.account,blockNumber:r,blockTag:s="latest",blobs:a,data:o,gas:i,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:d,maxPriorityFeePerGas:l,to:f,value:h,...p}=t,b=n?Jn(n):void 0;try{ti(t);const n=("bigint"==typeof r?vt(r):void 0)||s,m=e.chain?.formatters?.transactionRequest?.format,y=(m||oa)({...ra(p,{format:m}),account:b,blobs:a,data:o,gas:i,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:d,maxPriorityFeePerGas:l,to:f,value:h},"createAccessList"),g=await e.request({method:"eth_createAccessList",params:[y,n]});if(g.error)throw new ve(g.error,{details:g.error});return{accessList:g.accessList,gasUsed:BigInt(g.gasUsed)}}catch(n){throw Zu(n,{...t,account:b,chain:e.chain})}}(e,t),createBlockFilter:()=>async function(e){const t=Kn(e,{method:"eth_newBlockFilter"}),n=await e.request({method:"eth_newBlockFilter"});return{id:n,request:t(n),type:"block"}}(e),createContractEventFilter:t=>Yn(e,t),createEventFilter:t=>kl(e,t),createPendingTransactionFilter:()=>Il(e),estimateContractGas:t=>Ji(e,t),estimateGas:t=>Yi(e,t),getBalance:t=>async function(e,{address:t,blockHash:r,blockNumber:s,blockTag:a=e.experimental_blockTag??"latest",requireCanonical:o}){const i=mi({blockHash:r,blockNumber:s,blockTag:a,requireCanonical:o});if(e.batch?.multicall&&e.chain?.contracts?.multicall3){const i=e.chain.contracts.multicall3.address,c=er({abi:n,functionName:"getEthBalance",args:[t]}),{data:u}=await fe(e,Ju,"call")({to:i,data:c,blockHash:r,blockNumber:s,blockTag:a,requireCanonical:o});return ic({abi:n,functionName:"getEthBalance",args:[t],data:u||"0x"})}const c=await e.request({method:"eth_getBalance",params:[t,i]});return BigInt(c)}(e,t),getBlobBaseFee:()=>async function(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}(e),getBlock:t=>fi(e,t),getBlockNumber:t=>bd(e,t),getBlockReceipts:t=>async function(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest"}={}){const s=void 0!==n?vt(n):void 0,a=await e.request({method:"eth_getBlockReceipts",params:[t||s||r]},{dedupe:Boolean(t||s)});if(!a)throw new oi({blockHash:t,blockNumber:n});const o=e.chain?.formatters?.transactionReceipt?.format||zd;return a.map((e=>o(e,"getBlockReceipts")))}(e,t),getBlockTransactionCount:t=>async function(e,{blockHash:t,blockNumber:n,blockTag:r="latest"}={}){const s=void 0!==n?vt(n):void 0;let a;return a=t?await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]},{dedupe:!0}):await e.request({method:"eth_getBlockTransactionCountByNumber",params:[s||r]},{dedupe:Boolean(s)}),pt(a)}(e,t),getBytecode:t=>$l(e,t),getChainId:()=>Di(e),getCode:t=>$l(e,t),getContractEvents:t=>ac(e,t),getDelegation:t=>async function(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=await $l(e,{address:t,...void 0!==n?{blockNumber:n}:{blockTag:r}});if(s&&23===me(s)&&s.startsWith("0xef0100"))return Pn(Tn(s,3,23))}(e,t),getEip712Domain:t=>async function(e,t){const{address:n,factory:r,factoryData:s}=t;try{const[t,a,o,i,c,u,d]=await fe(e,rd,"readContract")({abi:Bl,address:n,functionName:"eip712Domain",factory:r,factoryData:s});return{domain:{name:a,version:o,chainId:Number(i),verifyingContract:c,salt:u},extensions:d,fields:t}}catch(e){const t=e;if("ContractFunctionExecutionError"===t.name&&"ContractFunctionZeroDataError"===t.cause.name)throw new Al({address:n});throw t}}(e,t),getEnsAddress:t=>cl(e,t),getEnsAvatar:t=>async function(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:s,gatewayUrls:a,strict:o,universalResolverAddress:i}){const c=await fe(e,El,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:s,universalResolverAddress:i,gatewayUrls:a,strict:o});if(!c)return null;try{return await Pl(e,{record:c,gatewayUrls:r})}catch{return null}}(e,t),getEnsName:t=>async function(e,t){const{address:n,blockNumber:r,blockTag:s,coinType:a=60n,gatewayUrls:o,strict:c}=t,{chain:u}=e,d=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!u)throw new Error("client chain not configured. universalResolverAddress is required.");return Vu({blockNumber:r,chain:u,contract:"ensUniversalResolver"})})();try{const t={address:d,abi:i,args:[n,a,o??[el]],functionName:"reverseWithGateways",blockNumber:r,blockTag:s},c=fe(e,rd,"readContract"),[u]=await c(t);return u||null}catch(e){if(c)throw e;if(Wd(e))return null;throw e}}(e,t),getEnsResolver:t=>async function(e,t){const{blockNumber:n,blockTag:r,name:s}=t,{chain:a}=e,o=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!a)throw new Error("client chain not configured. universalResolverAddress is required.");return Vu({blockNumber:n,chain:a,contract:"ensUniversalResolver"})})(),i=a?.ensTlds;if(i&&!i.some((e=>s.endsWith(e))))throw new Error(`${s} is not a valid ENS TLD (${i?.join(", ")}) for chain "${a.name}" (id: ${a.id}).`);const[c]=await fe(e,rd,"readContract")({address:o,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[yt(il(s))],blockNumber:n,blockTag:r});return c}(e,t),getEnsText:t=>El(e,t),getFeeHistory:t=>Tl(e,t),estimateFeesPerGas:t=>async function(e,t){return bi(e,t)}(e,t),getFilterChanges:e=>md(0,e),getFilterLogs:e=>async function(e,{filter:t}){const n=t.strict??!1,r=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map((e=>Qi(e)));return t.abi?rc({abi:t.abi,logs:r,strict:n}):r}(0,e),getGasPrice:()=>hi(e),getLogs:t=>sc(e,t),getProof:t=>cy(e,t),estimateMaxPriorityFeePerGas:t=>async function(e,t){return pi(e,t)}(e,t),fillTransaction:t=>Hi(e,t),getRawTransaction:t=>async function(e,{hash:t}){const n=await e.request({method:"eth_getRawTransactionByHash",params:[t]},{dedupe:!0});if(!n)throw new Mr({hash:t});return n}(e,t),getStorageAt:t=>async function(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a,slot:o}){const i=mi({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:a});return await e.request({method:"eth_getStorageAt",params:[t,o,i]})}(e,t),getTransaction:t=>uy(e,t),getTransactionConfirmations:t=>async function(e,{hash:t,transactionReceipt:n}){const[r,s]=await Promise.all([fe(e,bd,"getBlockNumber")({}),t?fe(e,uy,"getTransaction")({hash:t}):void 0]),a=n?.blockNumber||s?.blockNumber;return a?r-a+1n:0n}(e,t),getTransactionCount:t=>yi(e,t),getTransactionReceipt:t=>dy(e,t),multicall:t=>ly(e,t),prepareTransactionRequest:t=>Ki(e,t),readContract:t=>rd(e,t),sendRawTransaction:t=>Pd(e,t),sendRawTransactionSync:t=>pg(e,t),simulate:t=>fy(e,t),simulateBlocks:t=>fy(e,t),simulateCalls:t=>My(e,t),simulateContract:t=>sd(e,t),verifyHash:t=>Zy(e,t),verifyMessage:t=>async function(e,{address:t,message:n,factory:r,factoryData:s,signature:a,...o}){const i=Mf(n);return fe(e,Zy,"verifyHash")({address:t,factory:r,factoryData:s,hash:i,signature:a,...o})}(e,t),verifySiweMessage:t=>ng(e,t),verifyTypedData:t=>async function(e,t){const{address:n,factory:r,factoryData:s,signature:a,message:o,primaryType:i,types:c,domain:u,...d}=t,l=Zf({message:o,primaryType:i,types:c,domain:u});return fe(e,Zy,"verifyHash")({address:n,factory:r,factoryData:s,hash:l,signature:a,...d})}(e,t),uninstallFilter:e=>yd(0,e),waitForTransactionReceipt:t=>Yy(e,t),watchBlockHeaders:t=>function(e,{onBlockHeader:t,onError:n}){let r;return cd(vr(["watchBlockHeaders",e.uid]),{onBlockHeader:t,onError:n},(t=>{let n=!0,s=!1,a=()=>n=!1;return(async()=>{try{const o=(()=>{if("fallback"===e.transport.type){const t=e.transport.transports.find((e=>"webSocket"===e.config.type||"ipc"===e.config.type));return t?t.value:e.transport}return e.transport})(),{unsubscribe:i}=await o.subscribe({params:["newHeads"],onData(s){if(!n)return;const a=(e.chain?.formatters?.block?.format||di)(s.result,"watchBlockHeaders");for(const e of Jy)delete a[e];t.onBlockHeader(a,r),r=a},onError(e){s&&t.onError?.(e)}});s=!0,a=i,n||a()}catch(e){t.onError?.(e)}})(),()=>a()}))}(e,t),watchBlocks:t=>function(e,{blockTag:t=e.experimental_blockTag??"latest",emitMissed:n=!1,emitOnBegin:r=!1,onBlock:s,onError:a,includeTransactions:o,poll:i,pollingInterval:c=e.pollingInterval}){const u=void 0!==i?i:"webSocket"!==e.transport.type&&"ipc"!==e.transport.type&&("fallback"!==e.transport.type||"webSocket"!==e.transport.transports[0].config.type&&"ipc"!==e.transport.transports[0].config.type),d=o??!1;let l;return u?cd(vr(["watchBlocks",e.uid,t,n,r,d,c]),{onBlock:s,onError:a},(s=>dd((async()=>{try{const r=await fe(e,fi,"getBlock")({blockTag:t,includeTransactions:d});if(null!==r.number&&null!=l?.number){if(r.number===l.number)return;if(r.number-l.number>1&&n)for(let t=l?.number+1n;t<r.number;t++){const n=await fe(e,fi,"getBlock")({blockNumber:t,includeTransactions:d});s.onBlock(n,l),l=n}}(null==l?.number||"pending"===t&&null==r?.number||null!==r.number&&r.number>l.number)&&(s.onBlock(r,l),l=r)}catch(e){s.onError?.(e)}}),{emitOnBegin:r,interval:c}))):(()=>{let n=!0,o=!0,i=()=>n=!1;return(async()=>{try{r&&fe(e,fi,"getBlock")({blockTag:t,includeTransactions:d}).then((e=>{n&&o&&(s(e,void 0),o=!1)})).catch(a);const c=(()=>{if("fallback"===e.transport.type){const t=e.transport.transports.find((e=>"webSocket"===e.config.type||"ipc"===e.config.type));return t?t.value:e.transport}return e.transport})(),{unsubscribe:u}=await c.subscribe({params:["newHeads"],async onData(t){if(!n)return;const r=await fe(e,fi,"getBlock")({blockNumber:t.result?.number,includeTransactions:d}).catch((()=>{}));n&&(s(r,l),o=!1,l=r)},onError(e){a?.(e)}});i=u,n||i()}catch(e){a?.(e)}})(),()=>i()})()}(e,t),watchBlockNumber:t=>Ky(e,t),watchContractEvent:t=>gd(e,t),watchEvent:t=>function(e,{address:t,args:n,batch:r=!0,event:s,events:a,fromBlock:o,onError:i,onLogs:c,poll:u,pollingInterval:d=e.pollingInterval,strict:l}){const f=void 0!==u?u:"bigint"==typeof o||"webSocket"!==e.transport.type&&"ipc"!==e.transport.type&&("fallback"!==e.transport.type||"webSocket"!==e.transport.transports[0].config.type&&"ipc"!==e.transport.transports[0].config.type),h=l??!1;return f?cd(vr(["watchEvent",t,n,r,e.uid,s,d,o]),{onLogs:c,onError:i},(i=>{let c,u;void 0!==o&&(c=o-1n);let l=!1;const f=dd((async()=>{if(l)try{let o;if(u)o=await fe(e,md,"getFilterChanges")({filter:u});else{const r=await fe(e,bd,"getBlockNumber")({});o=c&&c!==r?await fe(e,sc,"getLogs")({address:t,args:n,event:s,events:a,fromBlock:c+1n,toBlock:r}):[],c=r}if(0===o.length)return;if(r)i.onLogs(o);else for(const e of o)i.onLogs([e])}catch(e){u&&e instanceof us&&(l=!1),i.onError?.(e)}else{try{u=await fe(e,kl,"createEventFilter")({address:t,args:n,event:s,events:a,strict:h,fromBlock:o})}catch{}l=!0}}),{emitOnBegin:!0,interval:d});return async()=>{u&&await fe(e,yd,"uninstallFilter")({filter:u}),f()}})):(()=>{let r=!0,o=()=>r=!1;return(async()=>{try{const u=(()=>{if("fallback"===e.transport.type){const t=e.transport.transports.find((e=>"webSocket"===e.config.type||"ipc"===e.config.type));return t?t.value:e.transport}return e.transport})(),d=a??(s?[s]:void 0);let f=[];if(d){const e=d.flatMap((e=>Zn({abi:[e],eventName:e.name,args:n})));f=[e],s&&(f=f[0])}const{unsubscribe:p}=await u.subscribe({params:["logs",{address:t,topics:f}],onData(e){if(!r)return;const t=e.result;try{const{eventName:e,args:n}=tc({abi:d??[],data:t.data,topics:t.topics,strict:h}),r=Qi(t,{args:n,eventName:e});c([r])}catch(e){let n,r;if(e instanceof Ue||e instanceof Ge){if(l)return;n=e.abiItem.name,r=e.abiItem.inputs?.some((e=>!("name"in e&&e.name)))}const s=Qi(t,{args:r?[]:{},eventName:n});c([s])}},onError(e){i?.(e)}});o=p,r||o()}catch(e){i?.(e)}})(),()=>o()})()}(e,t),watchPendingTransactions:t=>function(e,{batch:t=!0,onError:n,onTransactions:r,poll:s,pollingInterval:a=e.pollingInterval}){return(void 0!==s?s:"webSocket"!==e.transport.type&&"ipc"!==e.transport.type)?cd(vr(["watchPendingTransactions",e.uid,t,a]),{onTransactions:r,onError:n},(n=>{let r;const s=dd((async()=>{try{if(!r)try{return void(r=await fe(e,Il,"createPendingTransactionFilter")({}))}catch(e){throw s(),e}const a=await fe(e,md,"getFilterChanges")({filter:r});if(0===a.length)return;if(t)n.onTransactions(a);else for(const e of a)n.onTransactions([e])}catch(e){n.onError?.(e)}}),{emitOnBegin:!0,interval:a});return async()=>{r&&await fe(e,yd,"uninstallFilter")({filter:r}),s()}})):(()=>{let t=!0,s=()=>t=!1;return(async()=>{try{const{unsubscribe:a}=await e.transport.subscribe({params:["newPendingTransactions"],onData(e){if(!t)return;const n=e.result;r([n])},onError(e){n?.(e)}});s=a,t||s()}catch(e){n?.(e)}})(),()=>s()})()}(e,t),token:$g(e)}}function $g(e){return{getAllowance:Vd(e,wg),getBalance:Vd(e,vg),getMetadata:Vd(e,xg),getTotalSupply:Vd(e,Pg)}}function Ag(e){const{key:t="public",name:n="Public Client"}=e;return Dd({...e,key:t,name:n,type:"publicClient"}).extend(Ig)}function Bg({mode:e}){return t=>{const n=t.extend((()=>({mode:e})));return{dropTransaction:e=>async function(e,{hash:t}){await e.request({method:`${e.mode}_dropTransaction`,params:[t]})}(n,e),dumpState:()=>async function(e){return e.request({method:`${e.mode}_dumpState`})}(n),getAutomine:()=>async function(e){return"ganache"===e.mode?await e.request({method:"eth_mining"}):await e.request({method:`${e.mode}_getAutomine`})}(n),getTxpoolContent:()=>async function(e){return await e.request({method:"txpool_content"})}(n),getTxpoolStatus:()=>async function(e){const{pending:t,queued:n}=await e.request({method:"txpool_status"});return{pending:pt(t),queued:pt(n)}}(n),impersonateAccount:e=>async function(e,{address:t}){await e.request({method:`${e.mode}_impersonateAccount`,params:[t]})}(n,e),increaseTime:e=>async function(e,{seconds:t}){return await e.request({method:"evm_increaseTime",params:[vt(t)]})}(n,e),inspectTxpool:()=>async function(e){return await e.request({method:"txpool_inspect"})}(n),loadState:e=>async function(e,{state:t}){await e.request({method:`${e.mode}_loadState`,params:[t]})}(n,e),mine:e=>async function(e,{blocks:t,interval:n}){"ganache"===e.mode?await e.request({method:"evm_mine",params:[{blocks:vt(t)}]}):await e.request({method:`${e.mode}_mine`,params:[vt(t),vt(n||0)]})}(n,e),removeBlockTimestampInterval:()=>async function(e){await e.request({method:`${e.mode}_removeBlockTimestampInterval`})}(n),reset:e=>async function(e,{blockNumber:t,jsonRpcUrl:n}={}){await e.request({method:`${e.mode}_reset`,params:[{forking:{blockNumber:Number(t),jsonRpcUrl:n}}]})}(n,e),revert:e=>async function(e,{id:t}){await e.request({method:"evm_revert",params:[t]})}(n,e),sendUnsignedTransaction:e=>async function(e,t){const{accessList:n,data:r,from:s,gas:a,gasPrice:o,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:d,value:l,...f}=t,h=e.chain?.formatters?.transactionRequest?.format,p=(h||oa)({...ra(f,{format:h}),accessList:n,data:r,from:s,gas:a,gasPrice:o,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:d,value:l},"sendUnsignedTransaction");return await e.request({method:"eth_sendUnsignedTransaction",params:[p]})}(n,e),setAutomine:e=>async function(e,t){"ganache"===e.mode?t?await e.request({method:"miner_start"}):await e.request({method:"miner_stop"}):await e.request({method:"evm_setAutomine",params:[t]})}(n,e),setBalance:e=>async function(e,{address:t,value:n}){"ganache"===e.mode?await e.request({method:"evm_setAccountBalance",params:[t,vt(n)]}):await e.request({method:`${e.mode}_setBalance`,params:[t,vt(n)]})}(n,e),setBlockGasLimit:e=>async function(e,{gasLimit:t}){await e.request({method:"evm_setBlockGasLimit",params:[vt(t)]})}(n,e),setBlockTimestampInterval:e=>async function(e,{interval:t}){const n="hardhat"===e.mode?1e3*t:t;await e.request({method:`${e.mode}_setBlockTimestampInterval`,params:[n]})}(n,e),setCode:e=>async function(e,{address:t,bytecode:n}){"ganache"===e.mode?await e.request({method:"evm_setAccountCode",params:[t,n]}):await e.request({method:`${e.mode}_setCode`,params:[t,n]})}(n,e),setCoinbase:e=>async function(e,{address:t}){await e.request({method:`${e.mode}_setCoinbase`,params:[t]})}(n,e),setIntervalMining:e=>async function(e,{interval:t}){const n="hardhat"===e.mode?1e3*t:t;await e.request({method:"evm_setIntervalMining",params:[n]})}(n,e),setLoggingEnabled:e=>async function(e,t){await e.request({method:`${e.mode}_setLoggingEnabled`,params:[t]})}(n,e),setMinGasPrice:e=>async function(e,{gasPrice:t}){await e.request({method:`${e.mode}_setMinGasPrice`,params:[vt(t)]})}(n,e),setNextBlockBaseFeePerGas:e=>async function(e,{baseFeePerGas:t}){await e.request({method:`${e.mode}_setNextBlockBaseFeePerGas`,params:[vt(t)]})}(n,e),setNextBlockTimestamp:e=>async function(e,{timestamp:t}){await e.request({method:"evm_setNextBlockTimestamp",params:[vt(t)]})}(n,e),setNonce:e=>async function(e,{address:t,nonce:n}){await e.request({method:`${e.mode}_setNonce`,params:[t,vt(n)]})}(n,e),setRpcUrl:e=>async function(e,t){await e.request({method:`${e.mode}_setRpcUrl`,params:[t]})}(n,e),setStorageAt:e=>async function(e,{address:t,index:n,value:r}){await e.request({method:`${e.mode}_setStorageAt`,params:[t,"number"==typeof n?vt(n):n,r]})}(n,e),snapshot:()=>async function(e){return await e.request({method:"evm_snapshot"})}(n),stopImpersonatingAccount:e=>async function(e,{address:t}){await e.request({method:`${e.mode}_stopImpersonatingAccount`,params:[t]})}(n,e)}}}function Tg(e){const{key:t="test",name:n="Test Client",mode:r}=e;return Dd({...e,key:t,name:n,type:"testClient"}).extend((e=>({mode:r,...Bg({mode:r})(e)})))}async function Ng(e,t){const{account:n=e.account,chainId:r,nonce:s}=t;if(!n)throw new wd({docsPath:"/docs/eip7702/prepareAuthorization"});const a=Jn(n),o=(()=>{if(t.executor)return"self"===t.executor?t.executor:Jn(t.executor)})(),i={address:t.contractAddress??t.address,chainId:r,nonce:s};return void 0===i.chainId&&(i.chainId=e.chain?.id??await fe(e,Di,"getChainId")({})),void 0===i.nonce&&(i.nonce=await fe(e,yi,"getTransactionCount")({address:a.address,blockTag:"pending"}),("self"===o||o?.address&&Xi(o.address,a.address))&&(i.nonce+=1)),i}function Sg(e){return{addChain:t=>async function(e,{chain:t}){const{id:n,name:r,nativeCurrency:s,rpcUrls:a,blockExplorers:o}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:vt(n),chainName:r,nativeCurrency:s,rpcUrls:a.default.http,blockExplorerUrls:o?Object.values(o).map((({url:e})=>e)):void 0}]},{dedupe:!0,retryCount:0})}(e,t),deployContract:t=>function(e,t){const{abi:n,args:r,bytecode:s,...a}=t,o=Hu({abi:n,args:r,bytecode:s});return kd(e,{...a,...a.authorizationList?{to:null}:{},data:o})}(e,t),fillTransaction:t=>Hi(e,t),getAddresses:()=>async function(e){return"local"===e.account?.type?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map((e=>xn(e)))}(e),getCallsStatus:t=>Md(e,t),getCapabilities:t=>async function(e,t={}){const{account:n=e.account,chainId:r}=t,s=n?Jn(n):void 0,a=r?[s?.address,[vt(r)]]:[s?.address],o=await e.request({method:"wallet_getCapabilities",params:a}),i={};for(const[e,t]of Object.entries(o)){i[Number(e)]={};for(let[n,r]of Object.entries(t))"addSubAccount"===n&&(n="unstable_addSubAccount"),i[Number(e)][n]=r}return"number"==typeof r?i[r]:i}(e,t),getChainId:()=>Di(e),getPermissions:()=>async function(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}(e),prepareAuthorization:t=>Ng(e,t),prepareTransactionRequest:t=>Ki(e,t),requestAddresses:()=>async function(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map((e=>Pn(e)))}(e),requestPermissions:t=>async function(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}(e,t),sendCalls:t=>Fd(e,t),sendCallsSync:t=>async function(e,t){const{chain:n=e.chain}=t,r=t.timeout??Math.max(3*(n?.blockTime??0),5e3),s=await fe(e,Fd,"sendCalls")(t);return await fe(e,jd,"waitForCallsStatus")({...t,id:s.id,timeout:r})}(e,t),sendRawTransaction:t=>Pd(e,t),sendRawTransactionSync:t=>pg(e,t),sendTransaction:t=>kd(e,t),sendTransactionSync:t=>mg(e,t),showCallsStatus:t=>async function(e,t){const{id:n}=t;await e.request({method:"wallet_showCallsStatus",params:[n]})}(e,t),signAuthorization:t=>async function(e,t){const{account:n=e.account}=t;if(!n)throw new wd({docsPath:"/docs/eip7702/signAuthorization"});const r=Jn(n);if(!r.signAuthorization)throw new vd({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:r.type});const s=await Ng(e,t);return r.signAuthorization(s)}(e,t),signMessage:t=>async function(e,{account:t=e.account,message:n}){if(!t)throw new wd({docsPath:"/docs/actions/wallet/signMessage"});const r=Jn(t);if(r.signMessage)return r.signMessage({message:n});const s="string"==typeof n?Pt(n):n.raw instanceof Uint8Array?yt(n.raw):n.raw;return e.request({method:"personal_sign",params:[s,r.address]},{retryCount:0})}(e,t),signTransaction:t=>async function(e,t){const{account:n=e.account,chain:r=e.chain,...s}=t;if(!n)throw new wd({docsPath:"/docs/actions/wallet/signTransaction"});const a=Jn(n);ti({account:a,...t});const o=await fe(e,Di,"getChainId")({});null!==r&&xd({currentChainId:o,chain:r});const i=r?.formatters||e.chain?.formatters,c=i?.transactionRequest?.format||oa;return a.signTransaction?a.signTransaction({...s,account:a,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:"eth_signTransaction",params:[{...c({...s,account:a},"signTransaction"),chainId:vt(o),from:a.address}]},{retryCount:0})}(e,t),signTypedData:t=>async function(e,t){const{account:n=e.account,domain:r,message:s,primaryType:a}=t;if(!n)throw new wd({docsPath:"/docs/actions/wallet/signTypedData"});const o=Jn(n),i={EIP712Domain:Df({domain:r}),...t.types};if(_f({domain:r,message:s,primaryType:a,types:i}),o.signTypedData)return o.signTypedData({domain:r,message:s,primaryType:a,types:i});const c=Gf({domain:r,message:s,primaryType:a,types:i});return e.request({method:"eth_signTypedData_v4",params:[o.address,c]},{retryCount:0})}(e,t),switchChain:t=>async function(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:vt(t)}]},{retryCount:0})}(e,t),waitForCallsStatus:t=>jd(e,t),watchAsset:t=>async function(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}(e,t),writeContract:t=>Id(e,t),writeContractSync:t=>yg(e,t),token:{approve:Vd(e,hg),approveSync:Vd(e,gg),transfer:Vd(e,Eg),transferSync:Vd(e,kg)}}}function zg(e){const{key:t="wallet",name:n="Wallet Client",transport:r}=e;return Dd({...e,key:t,name:n,transport:r,type:"walletClient"}).extend(Sg)}function Og({key:e,methods:t,name:n,request:r,retryCount:s=3,retryDelay:a=150,timeout:o,type:i},c){return{config:{key:e,methods:t,name:n,request:r,retryCount:s,retryDelay:a,timeout:o,type:i},request:Hl(r,{methods:t,retryCount:s,retryDelay:a,uid:_d()}),value:c}}function Cg(e,t={}){const{key:n="custom",methods:r,name:s="Custom Provider",retryDelay:a}=t;return({retryCount:o})=>Og({key:n,methods:r,name:s,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:"custom"})}function Rg(e,t={}){const{key:n="fallback",name:r="Fallback",rank:s=!1,shouldThrow:a=Fg,retryCount:o,retryDelay:i}=t;return({chain:t,pollingInterval:c=4e3,timeout:u,...d})=>{let l=e,f=()=>{};const h=Og({key:n,name:r,async request({method:e,params:n}){let r;const s=async(o=0)=>{const i=l[o]({...d,chain:t,retryCount:0,timeout:u});try{const t=await i.request({method:e,params:n});return f({method:e,params:n,response:t,transport:i,status:"success"}),t}catch(c){if(f({error:c,method:e,params:n,transport:i,status:"error"}),a(c))throw c;if(o===l.length-1)throw c;if(r??=l.slice(o+1).some((n=>{const{include:r,exclude:s}=n({chain:t}).config.methods||{};return r?r.includes(e):!s||!s.includes(e)})),!r)throw c;return s(o+1)}};return s()},retryCount:o,retryDelay:i,type:"fallback"},{onResponse:e=>f=e,transports:l.map((e=>e({chain:t,retryCount:0})))});if(s){const e="object"==typeof s?s:{};!function({chain:e,interval:t=4e3,onTransports:n,ping:r,sampleCount:s=10,timeout:a=1e3,transports:o,weights:i={}}){const{stability:c=.7,latency:u=.3}=i,d=[],l=async()=>{const i=await Promise.all(o.map((async t=>{const n=t({chain:e,retryCount:0,timeout:a}),s=Date.now();let o,i;try{await(r?r({transport:n}):n.request({method:"net_listening"})),i=1}catch{i=0}finally{o=Date.now()}return{latency:o-s,success:i}})));d.push(i),d.length>s&&d.shift();const f=Math.max(...d.map((e=>Math.max(...e.map((({latency:e})=>e)))))),h=o.map(((e,t)=>{const n=d.map((e=>e[t].latency)),r=1-n.reduce(((e,t)=>e+t),0)/n.length/f,s=d.map((e=>e[t].success)),a=s.reduce(((e,t)=>e+t),0)/s.length;return 0===a?[0,t]:[u*r+c*a,t]})).sort(((e,t)=>t[0]-e[0]));n(h.map((([,e])=>o[e]))),await ud(t),l()};l()}({chain:t,interval:e.interval??c,onTransports:e=>l=e,ping:e.ping,sampleCount:e.sampleCount,timeout:e.timeout,transports:l,weights:e.weights})}return h}}function Fg(e){return!(!("code"in e)||"number"!=typeof e.code||e.code!==fs.code&&e.code!==ms.code&&e.code!==Ts.code&&!Ds.nodeMessage.test(e.message)&&5e3!==e.code)}!function(e){e.call=function(e,t){return fg({address:og(e,t).address,abi:p,functionName:"allowance",args:[t.account,t.spender]})}}(wg||(wg={})),function(e){e.call=function(e,t){const n=t.account??e.account;if(!n)throw new wd;const r=Jn(n).address;return fg({address:og(e,t).address,abi:p,functionName:"balanceOf",args:[r]})}}(vg||(vg={})),function(e){e.call=function(e,t){return fg({address:og(e,t).address,abi:p,args:[],functionName:"totalSupply"})}}(Pg||(Pg={})),function(e){e.inner=async function(t,n,r){return await t(n,{...r,...e.call(n,r)})},e.call=function(e,t){return fg(function(e,t){const{amount:n,from:r,to:s,token:a}=t,{address:o,decimals:i}=og(e,{token:a}),c=sg(n,i);return r?{abi:p,address:o,args:[r,s,c],functionName:"transferFrom"}:{abi:p,address:o,args:[s,c],functionName:"transfer"}}(e,t))},e.estimateGas=async function(t,n){return Ji(t,{...lg(n),...e.call(t,n)})},e.simulate=async function(t,n){return sd(t,{...lg(n),...e.call(t,n)})},e.extractEvent=function(e){const[t]=rc({abi:p,logs:e,eventName:"Transfer",strict:!0});if(!t)throw new Error("`Transfer` event not found.");return t}}(Eg||(Eg={}));class Mg extends ve{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}let jg=0;const qg=new WeakMap;function Lg(e){if(!e)return"default";const t=qg.get(e);if(void 0!==t)return t;const n=jg++;return qg.set(e,n),n}function Ug(e,t={}){const{batch:n,fetchFn:r,fetchOptions:s,key:a="http",maxResponseBodySize:o,methods:i,name:c="HTTP JSON-RPC",onFetchRequest:u,onFetchResponse:d,retryDelay:l,raw:f}=t;return({chain:h,retryCount:p,timeout:b})=>{const{batchSize:m=1e3,wait:y=0}="object"==typeof n?n:{},g=t.retryCount??p,w=b??t.timeout??1e4,v=e||h?.rpcUrls.default.http[0];if(!v)throw new Mg;const x=zf(v,{fetchFn:r,fetchOptions:s,maxResponseBodySize:o,onRequest:u,onResponse:d,timeout:w});return Og({key:a,methods:i,name:c,async request({method:e,params:t},r){const s={method:e,params:t},a=r?.signal?{signal:r.signal}:void 0,{schedule:o}=Yu({id:`${v}.${Lg(r?.signal)}`,wait:y,shouldSplitBatch:e=>e.length>m,fn:e=>x.request({body:e,fetchOptions:a}),sort:(e,t)=>e.id-t.id}),[{error:i,result:c}]=await(async e=>n?o(e):[await x.request({body:e,fetchOptions:a})])(s);if(f)return{error:i,result:c};if(i)throw new Qr({body:s,error:i,url:v});return c},retryCount:g,retryDelay:l,timeout:w,type:"http"},{fetchOptions:s,url:v})}}function Gg(e,t={}){const{keepAlive:n,key:r="webSocket",methods:s,name:a="WebSocket JSON-RPC",reconnect:o,retryDelay:i}=t;return({chain:c,retryCount:u,timeout:d})=>{const l=t.retryCount??u,f=d??t.timeout??1e4,h=e||c?.rpcUrls.default.webSocket?.[0],p={keepAlive:n,reconnect:o};if(!h)throw new Mg;return Og({key:r,methods:s,name:a,async request({method:e,params:t}){const n={method:e,params:t},r=await Cf(h,p),{error:s,result:a}=await r.requestAsync({body:n,timeout:f});if(s)throw new Qr({body:n,error:s,url:h});return a},retryCount:l,retryDelay:i,timeout:f,type:"webSocket"},{getSocket:()=>async function(e){const t=await Cf(e);return Object.assign(t.socket,{requests:t.requests,subscriptions:t.subscriptions})}(h),getRpcClient:()=>Cf(h,p),async subscribe({params:e,onData:t,onError:n}){const r=await Cf(h,p),{result:s}=await new Promise(((s,a)=>r.request({body:{method:"eth_subscribe",params:e},onError(e){a(e),n?.(e)},onResponse(e){if(e.error)return a(e.error),void n?.(e.error);"number"!=typeof e.id?"eth_subscription"===e.method&&t(e.params):s(e)}})));return{subscriptionId:s,unsubscribe:async()=>new Promise((e=>r.request({body:{method:"eth_unsubscribe",params:[s]},onResponse:e})))}}})}}const _g={gwei:9,wei:18},Dg={ether:-9,wei:9},Hg={ether:-18,gwei:-9};class Vg extends ve{constructor({value:e}){super(`Number \`${e}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}}class Zg extends Error{constructor(e,t){super(t),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}}const Wg="/docs/contract/decodeDeployData";function Kg(e){const{abi:t,bytecode:n,data:r}=e;if(r===n)return{bytecode:n};const s=t.find((e=>"type"in e&&"constructor"===e.type));if(!s)throw new Pe({docsPath:Wg});if(!("inputs"in s))throw new Ee({docsPath:Wg});if(!s.inputs||0===s.inputs.length)throw new Ee({docsPath:Wg});return{args:pr(s.inputs,`0x${r.replace(n,"")}`),bytecode:n}}function Yg(e){const t=e.to??("string"==typeof e.blobs[0]?"hex":"bytes"),n="string"==typeof e.blobs[0]?e.blobs.map((e=>Bt(e))):e.blobs,r=n.reduce(((e,t)=>e+t.length),0),s=cr(new Uint8Array(r));let a=!0;for(const[e,t]of n.entries()){const r=cr(t),o=e===n.length-1;for(;a&&r.position<t.length;){r.incrementPosition(1);let e=31;t.length-r.position<31&&(e=t.length-r.position);for(const t in Array.from({length:e})){const e=r.readByte();if(o&&128===e&&!r.inspectBytes(r.remaining).includes(128)){a=!1;break}s.pushByte(e)}}}const o=s.bytes.slice(0,s.position);return"hex"===t?wt(o):o}function Jg(e){const{sidecars:t,version:n}=e,r=e.to??("string"==typeof t[0].blob?"hex":"bytes"),s=[];for(const{commitment:e}of t)s.push(Ti({commitment:e,to:r,version:n}));return s}function Xg(e){if(1===e)return 60n;if(e>=2147483648||e<0)throw new hl({chainId:e});return BigInt((2147483648|e)>>>0)}function Qg({blobToKzgCommitment:e,computeBlobKzgProof:t}){return{blobToKzgCommitment:e,computeBlobKzgProof:t}}function ew(e,t){try{e.loadTrustedSetup(t)}catch(e){const t=e;if(!t.message.includes("trusted setup is already loaded"))throw t}return Qg(e)}function tw({r:e,yParityAndS:t}){const n=Bt(t),r=128&n[0]?1:0,s=n;return 1===r&&(s[0]&=127),{r:e,s:wt(s),yParity:r}}function nw(e){const{r:t,s:n}=Qb.Signature.fromCompact(e.slice(2,130));return{r:vt(t,{size:32}),yParityAndS:vt(n,{size:32})}}function rw(e){const{r:t,s:n}=Qb.Signature.fromCompact(e.slice(2,130)),r=Number(`0x${e.slice(130)}`),[s,a]=(()=>{if(0===r||1===r)return[void 0,r];if(27===r)return[BigInt(r),0];if(28===r)return[BigInt(r),1];throw new Error("Invalid yParityOrV value")})();return void 0!==s?{r:vt(t,{size:32}),s:vt(n,{size:32}),v:s,yParity:a}:{r:vt(t,{size:32}),s:vt(n,{size:32}),yParity:a}}async function sw(e){const{serializedTransaction:t,signature:n}=e,r=ty(t),s=n??{r:r.r,s:r.s,v:r.v,yParity:r.yParity},a=Gl({...r,r:void 0,s:void 0,v:void 0,yParity:void 0,sidecars:void 0});return await Rs({hash:hn(a),signature:s})}function aw({r:e,yParityAndS:t}){return`0x${new Qb.Signature(ft(e),ft(t)).toCompactHex()}`}function ow(e){const{r:t,s:n,v:r,yParity:s}=e;let a=n;if(1===Number(s??r-27n)){const e=Bt(n);e[0]|=128,a=wt(e)}return{r:t,yParityAndS:a}}export{Pe as AbiConstructorNotFoundError,Ee as AbiConstructorParamsNotFoundError,ke as AbiDecodingDataSizeInvalidError,Ie as AbiDecodingDataSizeTooSmallError,$e as AbiDecodingZeroDataError,Ae as AbiEncodingArrayLengthMismatchError,Be as AbiEncodingBytesSizeMismatchError,Te as AbiEncodingLengthMismatchError,Ne as AbiErrorInputsNotFoundError,Se as AbiErrorNotFoundError,ze as AbiErrorSignatureNotFoundError,Re as AbiEventNotFoundError,Oe as AbiEventSignatureEmptyTopicsError,Ce as AbiEventSignatureNotFoundError,Fe as AbiFunctionNotFoundError,Me as AbiFunctionOutputsNotFoundError,je as AbiFunctionSignatureNotFoundError,kr as AccountStateConflictError,As as AtomicReadyWalletRejectedUpgradeError,Bs as AtomicityNotSupportedError,ve as BaseError,ni as BaseFeeScalarError,oi as BlockNotFoundError,Td as BundleFailedError,$s as BundleTooLargeError,Le as BytesSizeMismatchError,Dr as CallExecutionError,vs as ChainDisconnectedError,qu as ChainDoesNotSupportContract,Lu as ChainMismatchError,Uu as ChainNotFoundError,W as CircularReferenceError,Gu as ClientChainNotConfiguredError,Hr as ContractFunctionExecutionError,Vr as ContractFunctionRevertedError,Zr as ContractFunctionZeroDataError,Wr as CounterfactualDeploymentFailedError,Ue as DecodeLogDataMismatch,Ge as DecodeLogTopicsMismatch,ks as DuplicateIdError,Zg as EIP1193ProviderRpcError,ri as Eip1559FeesNotSupportedError,dl as EnsAvatarInvalidNftUriError,fl as EnsAvatarUnsupportedNamespaceError,ll as EnsAvatarUriResolutionError,hl as EnsInvalidChainIdError,_s as EstimateGasExecutionError,Ds as ExecutionRevertedError,Hs as FeeCapTooHighError,Vs as FeeCapTooLowError,Br as FeeConflictError,Tr as FeePayerNonceMismatchError,We as FilterTypeNotSupportedError,Yr as HttpRequestError,Ys as InsufficientFundsError,tt as IntegerOutOfRangeError,cs as InternalRpcError,Js as IntrinsicGasTooHighError,Xs as IntrinsicGasTooLowError,De as InvalidAbiDecodingTypeError,_e as InvalidAbiEncodingTypeError,R as InvalidAbiItemError,j as InvalidAbiParameterError,q as InvalidAbiParametersError,D as InvalidAbiTypeParameterError,gn as InvalidAddressError,He as InvalidArrayError,nt as InvalidBytesBooleanError,_u as InvalidChainIdError,Vg as InvalidDecimalNumberError,Ve as InvalidDefinitionTypeError,jf as InvalidDomainError,_ as InvalidFunctionModifierError,rt as InvalidHexBooleanError,st as InvalidHexValueError,us as InvalidInputRpcError,Nr as InvalidLegacyVError,G as InvalidModifierError,L as InvalidParameterError,is as InvalidParamsRpcError,K as InvalidParenthesisError,qf as InvalidPrimaryTypeError,as as InvalidRequestRpcError,zr as InvalidSerializableTransactionError,Cr as InvalidSerializedTransactionError,Or as InvalidSerializedTransactionTypeError,H as InvalidSignatureError,Rr as InvalidStorageKeySizeError,Z as InvalidStructSignatureError,Lf as InvalidStructTypeError,Uf as InvalidTypedDataTypeError,Sr as InvalidYParityError,bs as JsonRpcVersionUnsupportedError,ps as LimitExceededRpcError,si as MaxFeePerGasTooLowError,os as MethodNotFoundRpcError,hs as MethodNotSupportedRpcError,Ks as NonceMaxValueError,Zs as NonceTooHighError,Ws as NonceTooLowError,ss as ParseRpcError,ws as ProviderDisconnectedError,rs as ProviderRpcError,Kr as RawContractError,ds as ResourceNotFoundRpcError,ls as ResourceUnavailableRpcError,Jr as ResponseBodyTooLargeError,at as RlpDepthLimitExceededError,ot as RlpListBoundaryExceededError,it as RlpTrailingBytesError,ns as RpcError,Qr as RpcRequestError,Ye as SizeExceedsPaddingSizeError,ct as SizeOverflowError,Ke as SliceOffsetOutOfBoundsError,es as SocketClosedError,U as SolidityProtectedKeywordError,Ir as StateAssignmentConflictError,xs as SwitchChainError,ts as TimeoutError,ea as TipAboveFeeCapError,Fr as TransactionExecutionError,Mr as TransactionNotFoundError,jr as TransactionReceiptNotFoundError,fs as TransactionRejectedRpcError,Qs as TransactionTypeNotSupportedError,ys as UnauthorizedProviderError,Is as UnknownBundleIdError,ta as UnknownNodeError,Ns as UnknownRpcError,V as UnknownSignatureError,F as UnknownTypeError,Es as UnsupportedChainIdError,Ps as UnsupportedNonOptionalCapabilityError,Ze as UnsupportedPackedAbiType,gs as UnsupportedProviderMethodError,Mg as UrlRequiredError,ms as UserRejectedRequestError,qd as WaitForCallsStatusTimeoutError,Lr as WaitForTransactionReceiptTimeoutError,Xr as WebSocketRequestError,xd as assertCurrentChain,ti as assertRequest,jl as assertTransactionEIP1559,ql as assertTransactionEIP2930,Ll as assertTransactionLegacy,gi as blobsToCommitments,wi as blobsToProofs,It as boolToBytes,gt as boolToHex,dr as bytesToBigInt,lr as bytesToBool,wt as bytesToHex,fr as bytesToNumber,Ms as bytesToRlp,hr as bytesToString,Xl as ccipFetch,ef as ccipReadTunnel,Xl as ccipRequest,xn as checksumAddress,Ti as commitmentToVersionedHash,Ni as commitmentsToVersionedHashes,aw as compactSignatureToHex,tw as compactSignatureToSignature,$n as concat,An as concatBytes,Bn as concatHex,Dd as createClient,$f as createNonceManager,Ag as createPublicClient,Tg as createTestClient,Og as createTransport,zg as createWalletClient,Cg as custom,pr as decodeAbiParameters,Kg as decodeDeployData,wr as decodeErrorResult,tc as decodeEventLog,Kd as decodeFunctionData,ic as decodeFunctionResult,li as defineBlock,tf as defineChain,Qg as defineKzg,ui as defineTransaction,Od as defineTransactionReceipt,ia as defineTransactionRequest,Ru as deploylessCallViaBytecodeBytecode,Fu as deploylessCallViaFactoryBytecode,Hf as domainSeparator,Mn as encodeAbiParameters,Hu as encodeDeployData,Jd as encodeErrorResult,Zn as encodeEventTopics,er as encodeFunctionData,Qd as encodeFunctionResult,Nl as encodePacked,Mu as erc6492SignatureValidatorByteCode,$y as ethAddress,_g as etherUnits,nf as extendSchema,rf as extractChain,Rg as fallback,di as formatBlock,Pr as formatEther,Er as formatGwei,Qi as formatLog,ci as formatTransaction,zd as formatTransactionReceipt,oa as formatTransactionRequest,Yg as fromBlobs,ur as fromBytes,lt as fromHex,af as fromRlp,_n as getAbiItem,Pn as getAddress,Vu as getChainContractAddress,$d as getContract,Ol as getContractAddress,zs as getContractError,Rl as getCreate2Address,Cl as getCreateAddress,yn as getEventSelector,bn as getEventSignature,Gn as getFunctionSelector,bn as getFunctionSignature,ey as getSerializedTransactionType,Gi as getTransactionType,Df as getTypesForEIP712Domain,Dg as gweiUnits,Wf as hashDomain,Mf as hashMessage,Kf as hashStruct,Zf as hashTypedData,ft as hexToBigInt,ht as hexToBool,Bt as hexToBytes,nw as hexToCompactSignature,pt as hexToNumber,js as hexToRlp,rw as hexToSignature,bt as hexToString,Ug as http,In as isAddress,Xi as isAddressEqual,zl as isBytes,nh as isErc6492Signature,Dm as isErc8010Signature,uf as isHash,be as isHex,hn as keccak256,ol as labelhash,Ea as maxInt104,ka as maxInt112,Ia as maxInt120,$a as maxInt128,Aa as maxInt136,Ba as maxInt144,Ta as maxInt152,fa as maxInt16,Na as maxInt160,Sa as maxInt168,za as maxInt176,Oa as maxInt184,Ca as maxInt192,Ra as maxInt200,Fa as maxInt208,Ma as maxInt216,ja as maxInt224,qa as maxInt232,ha as maxInt24,La as maxInt240,Ua as maxInt248,Ga as maxInt256,pa as maxInt32,ba as maxInt40,ma as maxInt48,ya as maxInt56,ga as maxInt64,wa as maxInt72,la as maxInt8,va as maxInt80,xa as maxInt88,Pa as maxInt96,Ro as maxUint104,Fo as maxUint112,Mo as maxUint120,jo as maxUint128,qo as maxUint136,Lo as maxUint144,Uo as maxUint152,ko as maxUint16,Go as maxUint160,_o as maxUint168,Do as maxUint176,Ho as maxUint184,Vo as maxUint192,Zo as maxUint200,Wo as maxUint208,Ko as maxUint216,Yo as maxUint224,Jo as maxUint232,Io as maxUint24,Xo as maxUint240,Qo as maxUint248,ei as maxUint256,$o as maxUint32,Ao as maxUint40,Bo as maxUint48,To as maxUint56,No as maxUint64,So as maxUint72,Eo as maxUint8,zo as maxUint80,Oo as maxUint88,Co as maxUint96,to as minInt104,no as minInt112,ro as minInt120,so as minInt128,oo as minInt136,io as minInt144,co as minInt152,Da as minInt16,uo as minInt160,lo as minInt168,fo as minInt176,ho as minInt184,po as minInt192,bo as minInt200,mo as minInt208,yo as minInt216,go as minInt224,wo as minInt232,Ha as minInt24,vo as minInt240,xo as minInt248,Po as minInt256,Va as minInt32,Za as minInt40,Wa as minInt48,Ka as minInt56,Ya as minInt64,Ja as minInt72,_a as minInt8,Xa as minInt80,Qa as minInt88,eo as minInt96,rl as namehash,Af as nonceManager,Tt as numberToBytes,vt as numberToHex,Jl as offchainLookup,Yl as offchainLookupAbiItem,Kl as offchainLookupSignature,Xe as pad,et as padBytes,Qe as padHex,ce as parseAbi,ue as parseAbiItem,de as parseAbiParameter,le as parseAbiParameters,nw as parseCompactSignature,Hm as parseErc6492Signature,Vm as parseErc8010Signature,ay as parseEther,rc as parseEventLogs,oy as parseGwei,rw as parseSignature,ty as parseTransaction,iy as parseUnits,Qn as prepareEncodeFunctionData,Rf as presignMessagePrefix,Ig as publicActions,Rs as recoverAddress,Zm as recoverMessageAddress,Os as recoverPublicKey,sw as recoverTransactionAddress,Wm as recoverTypedDataAddress,If as ripemd160,Zd as rpcSchema,aa as rpcTransactionType,Ul as serializeAccessList,aw as serializeCompactSignature,Km as serializeErc6492Signature,Ym as serializeErc8010Signature,Vy as serializeSignature,Gl as serializeTransaction,Gf as serializeTypedData,we as setErrorConfig,ew as setupKzg,Bi as sha256,Fg as shouldThrow,Jg as sidecarsToVersionedHashes,ow as signatureToCompactSignature,Vy as signatureToHex,me as size,Tn as slice,zn as sliceBytes,On as sliceHex,Nt as stringToBytes,Pt as stringToHex,vr as stringify,Bg as testActions,Ui as toBlobSidecars,Li as toBlobs,kt as toBytes,Xg as toCoinType,mn as toEventHash,yn as toEventSelector,bn as toEventSignature,mn as toFunctionHash,Gn as toFunctionSelector,bn as toFunctionSignature,yt as toHex,Ff as toPrefixedMessage,Fs as toRlp,ii as transactionType,ut as trim,Mu as universalSignatureValidatorByteCode,_f as validateTypedData,Jm as verifyHash,Xm as verifyMessage,Qm as verifyTypedData,Sg as walletActions,Gg as webSocket,Hg as weiUnits,hd as withCache,Nd as withRetry,Bf as withTimeout,Ay as zeroAddress,th as zeroHash};