@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
+ "use strict";var e=require("./core-78a709db.cjs");require("events"),require("./index-2e8e7a50.cjs"),require("./__tslib-a9f27ba6.cjs"),require("./index-5dac528b.cjs"),require("@ethersproject/providers"),require("zustand"),require("@ethersproject/bytes"),require("@ethersproject/properties"),require("@ethersproject/address"),require("@ethersproject/abstract-signer"),require("buffer"),require("@ethersproject/abstract-provider"),require("@ethersproject/contracts"),require("@ethersproject/constants"),require("@ethersproject/transactions");class t extends Error{constructor(e,n={}){const r=n.cause instanceof t?n.cause.details:n.cause?.message?n.cause.message:n.details,s=n.cause instanceof t&&n.cause.docsPath||n.docsPath;super([e||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...s?[`Docs: https://abitype.dev${s}`]:[],...r?[`Details: ${r}`]:[],"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"}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=s,this.metaMessages=n.metaMessages,this.shortMessage=e}}function n(e,t){const n=e.exec(t);return n?.groups}const r=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,s=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,a=/^\(.+?\).*?$/,o=/^tuple(?<array>(\[(\d*)\])*)$/;function i(e){let t=e.type;if(o.test(e.type)&&"components"in e){t="(";const r=e.components.length;for(let n=0;n<r;n++){t+=i(e.components[n]),n<r-1&&(t+=", ")}const s=n(o,e.type);return t+=`)${s?.array||""}`,i({...e,type:t})}return"indexed"in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function c(e){let t="";const n=e.length;for(let r=0;r<n;r++){t+=i(e[r]),r!==n-1&&(t+=", ")}return t}const u=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const d=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const l=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;const f=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function p(e){return f.test(e)}function h(e){return n(f,e)}const m=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;const b=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;const y=/^receive\(\) external payable$/;const g=new Set(["memory","indexed","storage","calldata"]),w=new Set(["indexed"]),x=new Set(["calldata","memory","storage"]);class v extends t{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 P extends t{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 E extends t{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 I extends t{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 k extends t{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 A extends t{constructor({param:e}){super("Invalid ABI parameter.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class $ extends t{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 T extends t{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 B extends t{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 S extends t{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 N extends t{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class z extends t{constructor({signature:e}){super("Unknown signature.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class O extends t{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 R extends t{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 C extends t{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 F=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 M(e,t={}){if(function(e){return l.test(e)}(e))return function(e,t={}){const r=function(e){return n(l,e)}(e);if(!r)throw new N({signature:e,type:"function"});const s=G(r.parameters),a=[],o=s.length;for(let e=0;e<o;e++)a.push(L(s[e],{modifiers:x,structs:t,type:"function"}));const i=[];if(r.returns){const e=G(r.returns),n=e.length;for(let r=0;r<n;r++)i.push(L(e[r],{modifiers:x,structs:t,type:"function"}))}return{name:r.name,type:"function",stateMutability:r.stateMutability??"nonpayable",inputs:a,outputs:i}}(e,t);if(function(e){return d.test(e)}(e))return function(e,t={}){const r=function(e){return n(d,e)}(e);if(!r)throw new N({signature:e,type:"event"});const s=G(r.parameters),a=[],o=s.length;for(let e=0;e<o;e++)a.push(L(s[e],{modifiers:w,structs:t,type:"event"}));return{name:r.name,type:"event",inputs:a}}(e,t);if(function(e){return u.test(e)}(e))return function(e,t={}){const r=function(e){return n(u,e)}(e);if(!r)throw new N({signature:e,type:"error"});const s=G(r.parameters),a=[],o=s.length;for(let e=0;e<o;e++)a.push(L(s[e],{structs:t,type:"error"}));return{name:r.name,type:"error",inputs:a}}(e,t);if(function(e){return m.test(e)}(e))return function(e,t={}){const r=function(e){return n(m,e)}(e);if(!r)throw new N({signature:e,type:"constructor"});const s=G(r.parameters),a=[],o=s.length;for(let e=0;e<o;e++)a.push(L(s[e],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:r.stateMutability??"nonpayable",inputs:a}}(e,t);if(function(e){return b.test(e)}(e))return function(e){const t=function(e){return n(b,e)}(e);if(!t)throw new N({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}(e);if(function(e){return y.test(e)}(e))return{type:"receive",stateMutability:"payable"};throw new z({signature:e})}const U=/^(?<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$_]*))?$/,j=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,q=/^u?int$/;function L(e,t){const o=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(F.has(o))return F.get(o);const i=a.test(e),c=n(i?j:U,e);if(!c)throw new A({param:e});if(c.name&&function(e){return"address"===e||"bool"===e||"function"===e||"string"===e||"tuple"===e||r.test(e)||s.test(e)||D.test(e)}(c.name))throw new $({param:e,name:c.name});const u=c.name?{name:c.name}:{},d="indexed"===c.modifier?{indexed:!0}:{},l=t?.structs??{};let f,p={};if(i){f="tuple";const e=G(c.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(L(e[r],{structs:l}));p={components:t}}else if(c.type in l)f="tuple",p={components:l[c.type]};else if(q.test(c.type))f=`${c.type}256`;else if("address payable"===c.type)f="address";else if(f=c.type,"struct"!==t?.type&&!_(f))throw new E({type:f});if(c.modifier){if(!t?.modifiers?.has?.(c.modifier))throw new T({param:e,type:t?.type,modifier:c.modifier});if(x.has(c.modifier)&&!function(e,t){return t||"bytes"===e||"string"===e||"tuple"===e}(f,!!c.array))throw new B({param:e,type:t?.type,modifier:c.modifier})}const h={type:`${f}${c.array??""}`,...u,...d,...p};return F.set(o,h),h}function G(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?G(o,[...t,n.trim()]):G(o,t,`${n}${s}`,r);case"(":return G(o,t,`${n}${s}`,r+1);case")":return G(o,t,`${n}${s}`,r-1);default:return G(o,t,`${n}${s}`,r)}}if(""===n)return t;if(0!==r)throw new C({current:n,depth:r});return t.push(n.trim()),t}function _(e){return"address"===e||"bool"===e||"function"===e||"string"===e||r.test(e)||s.test(e)}const D=/^(?: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 H(e){const t={},n=e.length;for(let r=0;r<n;r++){const n=e[r];if(!p(n))continue;const s=h(n);if(!s)throw new N({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=L(t,{type:"struct"});o.push(n)}if(!o.length)throw new O({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]=Z(a,t)}return r}const V=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function Z(e=[],t={},r=new Set){const s=[],o=e.length;for(let i=0;i<o;i++){const o=e[i];if(a.test(o.type))s.push(o);else{const e=n(V,o.type);if(!e?.type)throw new S({abiParameter:o});const{array:a,type:i}=e;if(i in t){if(r.has(i))throw new R({type:i});s.push({...o,type:`tuple${a??""}`,components:Z(t[i],t,new Set([...r,i]))})}else{if(!_(i))throw new P({type:i});s.push(o)}}}return s}function W(e){const t=H(e),n=[],r=e.length;for(let s=0;s<r;s++){const r=e[s];p(r)||n.push(M(r,t))}return n}function K(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 Y(e,{includeName:t=!1}={}){if("function"!==e.type&&"event"!==e.type&&"error"!==e.type)throw new $e(e.type);return`${e.name}(${J(e.inputs,{includeName:t})})`}function J(e,{includeName:t=!1}={}){return e?e.map((e=>function(e,{includeName:t}){if(e.type.startsWith("tuple"))return`(${J(e.components,{includeName:t})})${e.type.slice(5)}`;return e.type+(t&&e.name?` ${e.name}`:"")}(e,{includeName:t}))).join(t?", ":","):""}function X(e,{strict:t=!0}={}){return!!e&&("string"==typeof e&&(t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")))}function Q(e){return X(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}const ee="2.56.3";let te={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:n})=>t?`${e??"https://viem.sh"}${t}${n?`#${n}`:""}`:void 0,version:`viem@${ee}`};class ne extends Error{constructor(e,t={}){const n=t.cause instanceof ne?t.cause.details:t.cause?.message?t.cause.message:t.details,r=t.cause instanceof ne&&t.cause.docsPath||t.docsPath,s=te.getDocsUrl?.({...t,docsPath:r});super([e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...s?[`Docs: ${s}`]:[],...n?[`Details: ${n}`]:[],...te.version?[`Version: ${te.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=ee}walk(e){return re(this,e)}}function re(e,t){return t?.(e)?e:e&&"object"==typeof e&&"cause"in e&&void 0!==e.cause?re(e.cause,t):t?null:e}class se extends ne{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 ae extends ne{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 oe extends ne{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join("\n"),{metaMessages:[`Params: (${J(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 ie extends ne{constructor({cause:e}={}){super('Cannot decode zero data ("0x") with ABI parameters.',{name:"AbiDecodingZeroDataError",cause:e})}}class ce extends ne{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 ue extends ne{constructor({expectedSize:e,value:t}){super(`Size of bytes "${t}" (bytes${Q(t)}) does not match expected size (bytes${e}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class de extends ne{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 le extends ne{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 fe extends ne{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 pe extends ne{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 he extends ne{constructor({docsPath:e}){super("Cannot extract event signature from empty topics.",{docsPath:e,name:"AbiEventSignatureEmptyTopicsError"})}}class me extends ne{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 be extends ne{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 ye extends ne{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 ge extends ne{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 we extends ne{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 xe extends ne{constructor(e,t){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${e.type}\` in \`${Y(e.abiItem)}\`, and`,`\`${t.type}\` in \`${Y(t.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."],name:"AbiItemAmbiguityError"})}}class ve extends ne{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:"BytesSizeMismatchError"})}}class Pe extends ne{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: (${J(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 Ee extends ne{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` "${t.name}"`:""} on event "${Y(e,{includeName:!0})}".`].join("\n"),{name:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}}class Ie extends ne{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 ke extends ne{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 Ae extends ne{constructor(e){super([`Value "${e}" is not a valid array.`].join("\n"),{name:"InvalidArrayError"})}}class $e extends ne{constructor(e){super([`"${e}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join("\n"),{name:"InvalidDefinitionTypeError"})}}class Te extends ne{constructor(e){super(`Type "${e}" is not supported for packed encoding.`,{name:"UnsupportedPackedAbiType"})}}class Be extends ne{constructor(e){super(`Filter type "${e}" is not supported.`,{name:"FilterTypeNotSupportedError"})}}class Se extends ne{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 Ne extends ne{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 ze extends ne{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 Oe(e,{dir:t,size:n=32}={}){return"string"==typeof e?Re(e,{dir:t,size:n}):Ce(e,{dir:t,size:n})}function Re(e,{dir:t,size:n=32}={}){if(null===n)return e;const r=e.replace("0x","");if(r.length>2*n)throw new Ne({size:Math.ceil(r.length/2),targetSize:n,type:"hex"});return`0x${r["right"===t?"padEnd":"padStart"](2*n,"0")}`}function Ce(e,{dir:t,size:n=32}={}){if(null===n)return e;if(e.length>n)throw new Ne({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 Fe extends ne{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 Me extends ne{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 Ue extends ne{constructor(e){super(`Hex value "${e}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}}class je extends ne{constructor(e){super(`Hex value "${e}" is an odd length (${e.length}). It must be an even length.`,{name:"InvalidHexValueError"})}}class qe extends ne{constructor({limit:e}){super(`RLP depth limit of \`${e}\` exceeded.`,{name:"RlpDepthLimitExceededError"})}}class Le extends ne{constructor({consumed:e,declared:t}){super(`RLP list items consumed \`${e}\` bytes but the list declared a length of \`${t}\`.`,{name:"RlpListBoundaryExceededError"})}}class Ge extends ne{constructor({count:e}){super(`RLP payload encodes a single item, but \`${e}\` trailing ${1===e?"byte remains":"bytes remain"}.`,{name:"RlpTrailingBytesError"})}}class _e extends ne{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function De(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 He(e,{size:t}){if(Q(e)>t)throw new _e({givenSize:Q(e),maxSize:t})}function Ve(e,t={}){const{signed:n}=t;t.size&&He(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 Ze(e,t={}){let n=e;if(t.size&&(He(n,{size:t.size}),n=De(n)),"0x00"===De(n))return!1;if("0x01"===De(n))return!0;throw new Ue(n)}function We(e,t={}){const n=Ve(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new Fe({max:`${Number.MAX_SAFE_INTEGER}`,min:`${Number.MIN_SAFE_INTEGER}`,signed:t.signed,size:t.size,value:`${n}n`});return r}function Ke(e,t={}){let n=ct(e);return t.size&&(He(n,{size:t.size}),n=De(n,{dir:"right"})),(new TextDecoder).decode(n)}const Ye=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function Je(e,t={}){return"number"==typeof e||"bigint"==typeof e?et(e,t):"string"==typeof e?nt(e,t):"boolean"==typeof e?Xe(e,t):Qe(e,t)}function Xe(e,t={}){const n=`0x${Number(e)}`;return"number"==typeof t.size?(He(n,{size:t.size}),Oe(n,{size:t.size})):n}function Qe(e,t={}){let n="";for(let t=0;t<e.length;t++)n+=Ye[e[t]];const r=`0x${n}`;return"number"==typeof t.size?(He(r,{size:t.size}),Oe(r,{dir:"right",size:t.size})):r}function et(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 Fe({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?Oe(i,{size:r}):i}const tt=new TextEncoder;function nt(e,t={}){return Qe(tt.encode(e),t)}const rt=new TextEncoder;function st(e,t={}){return"number"==typeof e||"bigint"==typeof e?ut(e,t):"boolean"==typeof e?at(e,t):X(e)?ct(e,t):dt(e,t)}function at(e,t={}){const n=new Uint8Array(1);return n[0]=Number(e),"number"==typeof t.size?(He(n,{size:t.size}),Oe(n,{size:t.size})):n}const ot={zero:48,nine:57,A:65,F:70,a:97,f:102};function it(e){return e>=ot.zero&&e<=ot.nine?e-ot.zero:e>=ot.A&&e<=ot.F?e-(ot.A-10):e>=ot.a&&e<=ot.f?e-(ot.a-10):void 0}function ct(e,t={}){let n=e;t.size&&(He(n,{size:t.size}),n=Oe(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=it(r.charCodeAt(t++)),s=it(r.charCodeAt(t++));if(void 0===n||void 0===s)throw new ne(`Invalid byte sequence ("${r[t-2]}${r[t-1]}" in "${r}").`);a[e]=16*n+s}return a}function ut(e,t){return ct(et(e,t))}function dt(e,t={}){const n=rt.encode(e);return"number"==typeof t.size?(He(n,{size:t.size}),Oe(n,{dir:"right",size:t.size})):n}const lt=BigInt(2**32-1),ft=BigInt(32);function pt(e,t=!1){return t?{h:Number(e&lt),l:Number(e>>ft&lt)}:{h:0|Number(e>>ft&lt),l:0|Number(e&lt)}}function ht(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}=pt(e[a],t);[r[a],s[a]]=[n,o]}return[r,s]}const mt="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0;function bt(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function yt(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 gt(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 wt(e,t){yt(e);const n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function xt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function vt(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Pt(e,t){return e<<32-t|e>>>t}function Et(e,t){return e<<t|e>>>32-t>>>0}const It=(()=>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 kt(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)),yt(e),e}class At{}function $t(e){const t=t=>e().update(kt(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Tt(e=32){if(mt&&"function"==typeof mt.getRandomValues)return mt.getRandomValues(new Uint8Array(e));if(mt&&"function"==typeof mt.randomBytes)return Uint8Array.from(mt.randomBytes(e));throw new Error("crypto.getRandomValues must be defined")}const Bt=BigInt(0),St=BigInt(1),Nt=BigInt(2),zt=BigInt(7),Ot=BigInt(256),Rt=BigInt(113),Ct=[],Ft=[],Mt=[];for(let e=0,t=St,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],Ct.push(2*(5*r+n)),Ft.push((e+1)*(e+2)/2%64);let s=Bt;for(let e=0;e<7;e++)t=(t<<St^(t>>zt)*Rt)%Ot,t&Nt&&(s^=St<<(St<<BigInt(e))-St);Mt.push(s)}const Ut=ht(Mt,!0),jt=Ut[0],qt=Ut[1],Lt=(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),Gt=(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 _t extends At{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,bt(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(){It(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=Lt(a,o,1)^n[r],c=Gt(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=Ft[n],a=Lt(t,s,r),o=Gt(t,s,r),i=Ct[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]^=jt[r],e[1]^=qt[r]}xt(n)}(this.state32,this.rounds),It(this.state32),this.posOut=0,this.pos=0}update(e){gt(this),yt(e=kt(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){gt(this,!1),yt(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 bt(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(wt(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,xt(this.state)}_cloneInto(e){const{blockLen:t,suffix:n,outputLen:r,rounds:s,enableXOF:a}=this;return e||(e=new _t(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 Dt=(()=>{return e=1,t=136,n=32,$t((()=>new _t(t,e,n)));var e,t,n})();function Ht(e,t){const n=t||"hex",r=Dt(X(e,{strict:!1})?st(e):e);return"bytes"===n?r:Je(r)}const Vt=e=>Ht(st(e));const Zt=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 ne("Unable to normalize signature.");return s}("string"==typeof e?e:"function"===(t=e).type?`function ${t.name}(${c(t.inputs)})${t.stateMutability&&"nonpayable"!==t.stateMutability?` ${t.stateMutability}`:""}${t.outputs?.length?` returns (${c(t.outputs)})`:""}`:"event"===t.type?`event ${t.name}(${c(t.inputs)})`:"error"===t.type?`error ${t.name}(${c(t.inputs)})`:"constructor"===t.type?`constructor(${c(t.inputs)})${"payable"===t.stateMutability?" payable":""}`:"fallback"===t.type?"fallback() external"+("payable"===t.stateMutability?" payable":""):"receive() external payable")};function Wt(e){return t=Zt(e),Vt(t);var t}const Kt=Wt;class Yt extends ne{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 Jt 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 Xt=new Jt(8192);function Qt(e,t){if(Xt.has(`${e}.${t}`))return Xt.get(`${e}.${t}`);const n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Ht(dt(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 Xt.set(`${e}.${t}`,a),a}function en(e,t){if(!rn(e,{strict:!1}))throw new Yt({address:e});return Qt(e,t)}const tn=/^0x[a-fA-F0-9]{40}$/,nn=new Jt(8192);function rn(e,t){const{strict:n=!0}=t??{},r=`${e}.${n}`;if(nn.has(r))return nn.get(r);const s=!(!tn.test(e)||e.toLowerCase()!==e&&n&&Qt(e)!==e);return nn.set(r,s),s}function sn(e){return"string"==typeof e[0]?on(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 on(e){return`0x${e.reduce(((e,t)=>e+t.replace("0x","")),"")}`}function cn(e,t,n,{strict:r}={}){return X(e,{strict:!1})?fn(e,t,n,{strict:r}):ln(e,t,n,{strict:r})}function un(e,t){if("number"==typeof t&&t>0&&t>Q(e)-1)throw new Se({offset:t,position:"start",size:Q(e)})}function dn(e,t,n){if("number"==typeof t&&"number"==typeof n&&Q(e)!==n-t)throw new Se({offset:n,position:"end",size:Q(e)})}function ln(e,t,n,{strict:r}={}){un(e,t);const s=e.slice(t,n);return r&&dn(s,t,n),s}function fn(e,t,n,{strict:r}={}){un(e,t);const s=`0x${e.replace("0x","").slice(2*(t??0),2*(n??e.length))}`;return r&&dn(s,t,n),s}const pn=/^(.*)\[([0-9]*)\]$/,hn=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,mn=/^(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 bn(e,t){if(e.length!==t.length)throw new de({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(yn({param:e[r],value:t[r]}));return n}({params:e,values:t});return gn(n)}function yn({param:e,value:t}){const n=wn(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 Ae(e);if(!r&&e.length!==t)throw new ce({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let s=0===e.length&&xn(n);const a=[];for(let t=0;t<e.length;t++){const r=yn({param:n,value:e[t]});r.dynamic&&(s=!0),a.push(r)}if(r||s){const e=gn(a);if(r){return{dynamic:!0,encoded:on([et(a.length,{size:32}),e])}}if(s)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:on(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=yn({param:a,value:e[Array.isArray(e)?s:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?gn(r):on(r.map((({encoded:e})=>e)))}}(t,{param:e});if("address"===e.type)return function(e){if(!rn(e))throw new Yt({address:e});return{dynamic:!1,encoded:Re(e.toLowerCase())}}(t);if("bool"===e.type)return function(e){if("boolean"!=typeof e)throw new ne(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:Re(Xe(e))}}(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){const n=e.type.startsWith("int"),[,,r="256"]=mn.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 Fe({max:r.toString(),min:s.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:et(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=Q(e);if(!n){let t=e;return r%32!=0&&(t=Re(t,{dir:"right",size:32*Math.ceil((e.length-2)/2/32)})),{dynamic:!0,encoded:on([Re(et(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new ue({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Re(e,{dir:"right"})}}(t,{param:e});if("string"===e.type)return function(e){const t=nt(e),n=Math.ceil(Q(t)/32),r=[];for(let e=0;e<n;e++)r.push(Re(cn(t,32*e,32*(e+1)),{dir:"right"}));return{dynamic:!0,encoded:on([Re(et(Q(t),{size:32})),...r])}}(t);throw new Ie(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function gn(e){let t=0;for(let n=0;n<e.length;n++){const{dynamic:r,encoded:s}=e[n];t+=r?32:Q(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(et(t+s,{size:32})),r.push(i),s+=Q(i)):n.push(i)}return on([...n,...r])}function wn(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function xn(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(xn);const n=wn(t);return!!n&&xn({...e,type:n[1]})}const vn=e=>cn(Wt(e),0,4);function Pn(e){const{abi:t,args:n=[],name:r}=e,s=X(r,{strict:!1}),a=t.filter((e=>s?"function"===e.type?vn(e)===r:"event"===e.type&&Kt(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&&En(t,r)}));if(t){if(o&&"inputs"in o&&o.inputs){const t=In(e.inputs,o.inputs,n);if(t)throw new xe({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function En(e,t){const n=typeof e,r=t.type;switch(r){case"address":return rn(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&&En(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=>En(e,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")}))))}}function In(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 In(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")))&&rn(n[r],{strict:!1}))return o}}const kn="/docs/contract/encodeEventTopics";function An(e){const{abi:t,eventName:n,args:r}=e;let s=t[0];if(n){const e=Pn({abi:t,name:n});if(!e)throw new be(n,{docsPath:kn});s=e}if("event"!==s.type)throw new be(void 0,{docsPath:kn});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)=>$n({param:e,value:t[n][s]}))):void 0!==t[n]&&null!==t[n]?$n({param:e,value:t[n]}):null))??[])}if(s.anonymous)return a;const o=Y(s);return[Kt(o),...a]}function $n({param:e,value:t}){if("string"===e.type||"bytes"===e.type)return Ht(st(t));if("tuple"===e.type||e.type.match(/^(.*)\[(\d+)?\]$/))throw new Be(e.type);return bn([e],[t])}function Tn(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 Bn(e,t){const{address:n,abi:r,args:s,eventName:a,fromBlock:o,strict:i,toBlock:c}=t,u=Tn(e,{method:"eth_newFilter"}),d=a?An({abi:r,args:s,eventName:a}):void 0,l=await e.request({method:"eth_newFilter",params:[{address:n,fromBlock:"bigint"==typeof o?et(o):o,toBlock:"bigint"==typeof c?et(c):c,topics:d}]});return{abi:r,args:s,eventName:a,id:l,request:u(l),strict:Boolean(i),type:"event"}}function Sn(e){return"string"==typeof e?{address:e,type:"json-rpc"}:e}const Nn="/docs/contract/encodeFunctionData";function zn(e){const{abi:t,args:n,functionName:r}=e;let s=t[0];if(r){const e=Pn({abi:t,args:n,name:r});if(!e)throw new ye(r,{docsPath:Nn});s=e}if("function"!==s.type)throw new ye(void 0,{docsPath:Nn});return{abi:[s],functionName:vn(Y(s))}}function On(e){const{args:t}=e,{abi:n,functionName:r}=1===e.abi.length&&e.functionName?.startsWith("0x")?e:zn(e),s=n[0];return on([r,("inputs"in s&&s.inputs?bn(s.inputs,t??[]):void 0)??"0x"])}const Rn={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."},Cn={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},Fn={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};class Mn extends ne{constructor({offset:e}){super(`Offset \`${e}\` cannot be negative.`,{name:"NegativeOffsetError"})}}class Un extends ne{constructor({length:e,position:t}){super(`Position \`${t}\` is out of bounds (\`0 < position < ${e}\`).`,{name:"PositionOutOfBoundsError"})}}class jn extends ne{constructor({count:e,limit:t}){super(`Recursive read limit of \`${t}\` exceeded (recursive read count: \`${e}\`).`,{name:"RecursiveReadLimitExceededError"})}}const qn={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 jn({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Un({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Mn({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 Mn({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 Ln(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(qn);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}function Gn(e,t={}){void 0!==t.size&&He(e,{size:t.size});return Ve(Qe(e),t)}function _n(e,t={}){let n=e;if(void 0!==t.size&&(He(n,{size:t.size}),n=De(n)),n.length>1||n[0]>1)throw new Me(n);return Boolean(n[0])}function Dn(e,t={}){void 0!==t.size&&He(e,{size:t.size});return We(Qe(e),t)}function Hn(e,t={}){let n=e;return void 0!==t.size&&(He(n,{size:t.size}),n=De(n,{dir:"right"})),(new TextDecoder).decode(n)}function Vn(e,t){const n="string"==typeof t?ct(t):t,r=Ln(n);if(0===Q(n)&&e.length>0)throw new ie;if(Q(t)&&Q(t)<32)throw new oe({data:"string"==typeof t?t:Qe(t),params:e,size:Q(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]=Zn(r,o,{staticPosition:0});s+=c,a.push(i)}return a}function Zn(e,t,{staticPosition:n}){const r=wn(t.type);if(r){const[s,a]=r;return function(e,t,{length:n,staticPosition:r}){if(null===n){const n=r+Dn(e.readBytes(Kn)),s=n+Wn;e.setPosition(n);const a=Dn(e.readBytes(Wn)),o=Yn(t);let i=0;const c=[];for(let n=0;n<a;++n){e.setPosition(s+(o?32*n:i));const[r,a]=Zn(e,t,{staticPosition:s});i+=a,c.push(r),0===a&&(e.assertReadLimit(),e._touch())}return e.setPosition(r+32),[c,32]}if(Yn(t)){const s=r+Dn(e.readBytes(Kn)),a=[];for(let r=0;r<n;++r){e.setPosition(s+32*r);const[n]=Zn(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]=Zn(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(Yn(t)){const o=n+Dn(e.readBytes(Kn));for(let n=0;n<t.components.length;++n){const i=t.components[n];e.setPosition(o+a);const[c,u]=Zn(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]=Zn(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[Qt(Qe(ln(t,-20))),32]}(e);if("bool"===t.type)return function(e){return[_n(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=Dn(e.readBytes(32));e.setPosition(n+t);const r=Dn(e.readBytes(32));if(0===r)return e.setPosition(n+32),["0x",32];const s=e.readBytes(r);return e.setPosition(n+32),[Qe(s),32]}const a=Qe(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?Gn(s,{signed:n}):Dn(s,{signed:n}),32]}(e,t);if("string"===t.type)return function(e,{staticPosition:t}){const n=Dn(e.readBytes(32)),r=t+n;e.setPosition(r);const s=Dn(e.readBytes(32));if(0===s)return e.setPosition(t+32),["",32];const a=e.readBytes(s,32),o=Hn(a);return e.setPosition(t+32),[o,32]}(e,{staticPosition:n});throw new ke(t.type,{docsPath:"/docs/contract/decodeAbiParameters"})}const Wn=32,Kn=32;function Yn(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(Yn);const n=wn(e.type);return!(!n||!Yn({...e,type:n[1]}))}function Jn(e){const{abi:t,data:n,cause:r}=e,s=cn(n,0,4);if("0x"===s)throw new ie({cause:r});const a=[...t||[],Cn,Fn].find((e=>"error"===e.type&&s===vn(Y(e))));if(!a)throw new pe(s,{docsPath:"/docs/contract/decodeErrorResult",cause:r});return{abiItem:a,args:"inputs"in a&&a.inputs&&a.inputs.length>0?Vn(a.inputs,cn(n,4)):void 0,errorName:a.name}}const Xn=(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 Qn({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]?Xn(t[n]):t[n]}`)).join(", ")})`}function er(t,n="wei"){return e.formatEther(t,n)}function tr(t,n="wei"){return e.formatGwei(t,n)}class nr extends ne{constructor({address:e}){super(`State for account "${e}" is set multiple times.`,{name:"AccountStateConflictError"})}}class rr extends ne{constructor(){super("state and stateDiff are set on the same account.",{name:"StateAssignmentConflictError"})}}function sr(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 or extends ne{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 ir extends ne{constructor({v:e}){super(`Invalid \`v\` value "${e}". Expected 27 or 28.`,{name:"InvalidLegacyVError"})}}class cr extends ne{constructor({yParity:e}){super(`Invalid \`yParity\` value "${e}". Expected 0 or 1.`,{name:"InvalidYParityError"})}}class ur extends ne{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 dr extends ne{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 lr extends ne{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 fr extends ne{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 pr extends ne{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&&`${er(l)} ${r?.nativeCurrency?.symbol||"ETH"}`,data:s,gas:a,gasPrice:void 0!==o&&`${tr(o)} gwei`,maxFeePerGas:void 0!==i&&`${tr(i)} gwei`,maxPriorityFeePerGas:void 0!==c&&`${tr(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 hr extends ne{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 mr extends ne{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 br extends ne{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 yr extends ne{constructor({hash:e}){super(`Timed out while waiting for transaction with hash "${e}" to be confirmed.`,{name:"WaitForTransactionReceiptTimeoutError"})}}function gr(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 wr(e){return"object"==typeof e&&null!==e&&"name"in e&&"AbortError"===e.name}const xr=e=>{try{const t=new URL(e);return t.username||t.password?(t.username="",t.password="",t.toString()):e}catch{return e}};class vr extends ne{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 p=t?Sn(t):void 0;let h=ar({from:p?.address,to:d,value:void 0!==l&&`${er(l)} ${r?.nativeCurrency?.symbol||"ETH"}`,data:s,gas:a,gasPrice:void 0!==o&&`${tr(o)} gwei`,maxFeePerGas:void 0!==i&&`${tr(i)} gwei`,maxPriorityFeePerGas:void 0!==c&&`${tr(c)} gwei`,nonce:u});f&&(h+=`\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+=sr(n.state)),n.stateDiff&&(r+=" stateDiff:\n",r+=sr(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:",h].filter(Boolean),name:"CallExecutionError"}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}class Pr extends ne{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:s,functionName:a,sender:o}){const i=Pn({abi:t,args:n,name:a}),c=i?Qn({abiItem:i,args:n,includeFunctionName:!1,includeName:!1}):void 0,u=ar({address:r&&r,function:i?Y(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 Er extends ne{constructor({abi:e,data:t,functionName:n,message:r,cause:s}){let a,o,i,c,u;if(t&&"0x"!==t)try{o=Jn({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=Rn[e]}else{const e=n?Y(n,{includeName:!0}):void 0,t=n&&a?Qn({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 pe&&(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 Ir extends ne{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 kr extends ne{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 Ar extends ne{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 $r extends ne{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: ${xr(a)}`,e&&`Request body: ${Xn(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 Tr extends ne{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 Br extends ne{constructor({body:e,cause:t,details:n,url:r}){super("WebSocket request failed.",{cause:t,details:n,metaMessages:[`URL: ${xr(r)}`,e&&`Request body: ${Xn(e)}`].filter(Boolean),name:"WebSocketRequestError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=r}}class Sr extends ne{constructor({body:e,error:t,url:n}){super("RPC Request failed.",{cause:t,details:t.message,metaMessages:[`URL: ${xr(n)}`,`Request body: ${Xn(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 Nr extends ne{constructor({url:e}={}){super("The socket has been closed.",{metaMessages:[e&&`URL: ${xr(e)}`].filter(Boolean),name:"SocketClosedError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=e}}class zr extends ne{constructor({body:e,url:t}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${xr(t)}`,`Request body: ${Xn(e)}`],name:"TimeoutError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}class Or extends ne{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 Sr?e.code:t??-1}}class Rr extends Or{constructor(e,t){super(e,t),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}}class Cr extends Or{constructor(e){super(e,{code:Cr.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(Cr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class Fr extends Or{constructor(e){super(e,{code:Fr.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(Fr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class Mr extends Or{constructor(e,{method:t}={}){super(e,{code:Mr.code,name:"MethodNotFoundRpcError",shortMessage:`The method${t?` "${t}"`:""} does not exist / is not available.`})}}Object.defineProperty(Mr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class Ur extends Or{constructor(e){super(e,{code:Ur.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join("\n")})}}Object.defineProperty(Ur,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class jr extends Or{constructor(e){super(e,{code:jr.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(jr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class qr extends Or{constructor(e){super(e,{code:qr.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join("\n")})}}Object.defineProperty(qr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class Lr extends Or{constructor(e){super(e,{code:Lr.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(Lr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class Gr extends Or{constructor(e){super(e,{code:Gr.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(Gr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class _r extends Or{constructor(e){super(e,{code:_r.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(_r,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class Dr extends Or{constructor(e,{method:t}={}){super(e,{code:Dr.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${t?` "${t}"`:""} is not supported.`})}}Object.defineProperty(Dr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class Hr extends Or{constructor(e){super(e,{code:Hr.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(Hr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class Vr extends Or{constructor(e){super(e,{code:Vr.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(Vr,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class Zr extends Rr{constructor(e){super(e,{code:Zr.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(Zr,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class Wr extends Rr{constructor(e){super(e,{code:Wr.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(Wr,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class Kr extends Rr{constructor(e,{method:t}={}){super(e,{code:Kr.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${t?` " ${t}"`:""}.`})}}Object.defineProperty(Kr,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class Yr extends Rr{constructor(e){super(e,{code:Yr.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(Yr,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class Jr extends Rr{constructor(e){super(e,{code:Jr.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(Jr,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class Xr extends Rr{constructor(e){super(e,{code:Xr.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(Xr,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Qr extends Rr{constructor(e){super(e,{code:Qr.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}}Object.defineProperty(Qr,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});class es extends Rr{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 ts extends Rr{constructor(e){super(e,{code:ts.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}}Object.defineProperty(ts,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});class ns extends Rr{constructor(e){super(e,{code:ns.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}}Object.defineProperty(ns,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});class rs extends Rr{constructor(e){super(e,{code:rs.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}}Object.defineProperty(rs,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});class ss extends Rr{constructor(e){super(e,{code:ss.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}}Object.defineProperty(ss,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});class as extends Rr{constructor(e){super(e,{code:as.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}}Object.defineProperty(as,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});class os extends Rr{constructor(e){super(e,{code:os.code,name:"WalletConnectSessionSettlementError",shortMessage:"WalletConnect session settlement failed."})}}Object.defineProperty(os,"code",{enumerable:!0,configurable:!0,writable:!0,value:7e3});class is extends Or{constructor(e){super(e,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}const cs=3;function us(e,{abi:t,address:n,args:r,docsPath:s,functionName:a,sender:o}){const i=e instanceof Ar?e:e instanceof ne?e.walk((e=>"data"in e))||e.walk():{},{code:c,data:u,details:d,message:l,shortMessage:f}=i,p=e instanceof ie?new Ir({functionName:a,cause:e}):[cs,jr.code].includes(c)&&(u||d||l||f)||c===qr.code&&"execution reverted"===d&&u?new Er({abi:t,data:"object"==typeof u?u.data:u,functionName:a,message:i instanceof Sr?d:f??l,cause:e}):e;return new Pr(p,{abi:t,args:r,contractAddress:n,docsPath:s,functionName:a,sender:o})}async function ds({hash:e,signature:t}){const n=X(e)?e:Je(e),{secp256k1:r}=await Promise.resolve().then((function(){return Kp}));return`0x${(()=>{if("object"==typeof t&&"r"in t&&"s"in t){const{r:e,s:n,v:s,yParity:a}=t,o=ls(Number(a??s));return new r.Signature(Ve(e),Ve(n)).addRecoveryBit(o)}const e=X(t)?t:Je(t);if(65!==Q(e))throw new Error("invalid signature length");const n=ls(We(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function ls(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 fs({hash:e,signature:t}){return Qt(`0x${Ht(`0x${(await ds({hash:e,signature:t})).substring(4)}`).substring(26)}`)}function ps(e,t="hex"){const n=hs(e),r=Ln(new Uint8Array(n.length));return n.encode(r),"hex"===t?Qe(r.bytes):r.bytes}function hs(e){return Array.isArray(e)?function(e){const t=e.reduce(((e,t)=>e+t.length),0),n=ms(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=>hs(e)))):function(e){const t="string"==typeof e?ct(e):e,n=ms(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 ms(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 ne("Length is too large.")}function bs(e){const{chainId:t,nonce:n,to:r}=e,s=e.contractAddress??e.address,a=Ht(on(["0x05",ps([t?et(t):"0x",s,n?et(n):"0x"])]));return"bytes"===r?ct(a):a}async function ys(e){const{authorization:t,signature:n}=e;return fs({hash:bs(t),signature:n??t})}class gs extends ne{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&&`${er(l)} ${r?.nativeCurrency?.symbol||"ETH"}`,data:s,gas:a,gasPrice:void 0!==o&&`${tr(o)} gwei`,maxFeePerGas:void 0!==i&&`${tr(i)} gwei`,maxPriorityFeePerGas:void 0!==c&&`${tr(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 ws extends ne{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(ws,"code",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(ws,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/});class xs extends ne{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\`maxFeePerGas\`${t?` = ${tr(t)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:"FeeCapTooHighError"})}}Object.defineProperty(xs,"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 ne{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\`maxFeePerGas\`${t?` = ${tr(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 Ps extends ne{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(Ps,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class Es extends ne{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(Es,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class Is extends ne{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:""}exceeds the maximum allowed nonce.`,{cause:e,name:"NonceMaxValueError"})}}Object.defineProperty(Is,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class ks extends ne{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(ks,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class As extends ne{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(As,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class $s extends ne{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($s,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class Ts extends ne{constructor({cause:e}){super("The transaction type is not supported for this chain.",{cause:e,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(Ts,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class Bs extends ne{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${t?` = ${tr(t)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${n?` = ${tr(n)} gwei`:""}).`].join("\n"),{cause:e,name:"TipAboveFeeCapError"})}}Object.defineProperty(Bs,"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 Ss extends ne{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:"UnknownNodeError"})}}function Ns(e,t){const n=(e.details||"").toLowerCase(),r=e instanceof ne?e.walk((e=>e?.code===ws.code)):e;return r instanceof ne?new ws({cause:e,message:r.details}):ws.nodeMessage.test(n)?new ws({cause:e,message:e.details}):xs.nodeMessage.test(n)?new xs({cause:e,maxFeePerGas:t?.maxFeePerGas}):vs.nodeMessage.test(n)?new vs({cause:e,maxFeePerGas:t?.maxFeePerGas}):Ps.nodeMessage.test(n)?new Ps({cause:e,nonce:t?.nonce}):Es.nodeMessage.test(n)?new Es({cause:e,nonce:t?.nonce}):Is.nodeMessage.test(n)?new Is({cause:e,nonce:t?.nonce}):ks.nodeMessage.test(n)?new ks({cause:e}):As.nodeMessage.test(n)?new As({cause:e,gas:t?.gas}):$s.nodeMessage.test(n)?new $s({cause:e,gas:t?.gas}):Ts.nodeMessage.test(n)?new Ts({cause:e}):Bs.nodeMessage.test(n)?new Bs({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new Ss({cause:e})}function zs(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 Os(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 Rs={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3",eip7702:"0x4"};function Cs(e,t){const n={};return void 0!==e.authorizationList&&(n.authorizationList=e.authorizationList.map((e=>({address:e.address,r:e.r?et(BigInt(e.r)):e.r,s:e.s?et(BigInt(e.s)):e.s,chainId:et(e.chainId),nonce:et(e.nonce),...void 0!==e.yParity?{yParity:et(e.yParity)}:{},...void 0!==e.v&&void 0===e.yParity?{v:et(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=>Qe(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=et(e.gas)),void 0!==e.gasPrice&&(n.gasPrice=et(e.gasPrice)),void 0!==e.maxFeePerBlobGas&&(n.maxFeePerBlobGas=et(e.maxFeePerBlobGas)),void 0!==e.maxFeePerGas&&(n.maxFeePerGas=et(e.maxFeePerGas)),void 0!==e.maxPriorityFeePerGas&&(n.maxPriorityFeePerGas=et(e.maxPriorityFeePerGas)),void 0!==e.nonce&&(n.nonce=et(e.nonce)),void 0!==e.to&&(n.to=e.to),void 0!==e.type&&(n.type=Rs[e.type]),void 0!==e.value&&(n.value=et(e.value)),n}const Fs=Os("transactionRequest",Cs);function Ms(e){if(e&&0!==e.length)return e.reduce(((e,{slot:t,value:n})=>{if(66!==t.length)throw new ze({size:t.length,targetSize:66,type:"hex"});if(66!==n.length)throw new ze({size:n.length,targetSize:66,type:"hex"});return e[t]=n,e}),{})}function Us(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=et(t)),void 0!==n&&(o.nonce=et(n)),void 0!==r&&(o.state=Ms(r)),void 0!==s){if(o.state)throw new rr;o.stateDiff=Ms(s)}return o}function js(e){if(!e)return;const t={};for(const{address:n,...r}of e){if(!rn(n,{strict:!1}))throw new Yt({address:n});if(t[n])throw new nr({address:n});t[n]=Us(r)}return t}const qs=2n**256n-1n;function Ls(e){const{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:s}=e,a=t?Sn(t):void 0;if(a&&!rn(a.address))throw new Yt({address:a.address});if(s&&!rn(s))throw new Yt({address:s});if(n&&n>qs)throw new xs({maxFeePerGas:n});if(r&&n&&r>n)throw new Bs({maxFeePerGas:n,maxPriorityFeePerGas:r})}class Gs extends ne{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:"BaseFeeScalarError"})}}class _s extends ne{constructor(){super("Chain does not support EIP-1559 fees.",{name:"Eip1559FeesNotSupportedError"})}}class Ds extends ne{constructor({maxPriorityFeePerGas:e}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${tr(e)} gwei).`,{name:"MaxFeePerGasTooLowError"})}}class Hs extends ne{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 Vs={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844","0x4":"eip7702"};function Zs(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?We(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?We(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Vs[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 Ws=Os("transaction",Zs);function Ks(e,t){const n=(e.transactions??[]).map((e=>"string"==typeof e?e:Zs(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 Ys=Os("block",Ks);async function Js(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest",includeTransactions:s}={}){const a=s??!1,o=void 0!==n?et(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 Hs({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||Ks)(i,"getBlock")}async function Xs(e){const t=await e.request({method:"eth_gasPrice"});return BigInt(t)}async function Qs(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 K(e,Js,"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 Ve(await e.request({method:"eth_maxPriorityFeePerGas"}))}catch{const[t,r]=await Promise.all([n?Promise.resolve(n):K(e,Js,"getBlock")({}),K(e,Xs,"getGasPrice")({})]);if("bigint"!=typeof t.baseFeePerGas)throw new _s;const s=r-t.baseFeePerGas;return s<0n?0n:s}}async function ea(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 Gs;const i=10**(o.toString().split(".")[1]?.length??0),c=e=>e*BigInt(Math.round(o*i))/BigInt(i),u=n||await K(e,Js,"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 _s;const t="bigint"==typeof s?.maxPriorityFeePerGas?s.maxPriorityFeePerGas:await Qs(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 K(e,Xs,"getGasPrice")({}))}}function ta(e){const{blockHash:t,blockNumber:n,blockTag:r,requireCanonical:s}=e;if(void 0!==s&&!t)throw new ne("`requireCanonical` can only be provided when `blockHash` is set.");return t?s?{blockHash:t,requireCanonical:s}:{blockHash:t}:"bigint"==typeof n?et(n):r??"latest"}async function na(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a}){const o=ta({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:a});return We(await e.request({method:"eth_getTransactionCount",params:[t,o]},{dedupe:"bigint"==typeof r||void 0!==n}))}function ra(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=>ct(e))):e.blobs,s=[];for(const e of r)s.push(Uint8Array.from(t.blobToKzgCommitment(e)));return"bytes"===n?s:s.map((e=>Qe(e)))}function sa(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=>ct(e))):e.blobs,s="string"==typeof e.commitments[0]?e.commitments.map((e=>ct(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=>Qe(e)))}function aa(e,t,n){return e&t^e&n^t&n}class oa extends At{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=vt(this.buffer)}update(e){gt(this),yt(e=kt(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=vt(e);for(;r<=s-a;a+=r)this.process(t,a)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){gt(this),wt(e,this),this.finished=!0;const{buffer:t,view:n,blockLen:r,isLE:s}=this;let{pos:a}=this;t[a++]=128,xt(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=vt(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 ia=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ca=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]),ua=new Uint32Array(64);class da extends oa{constructor(e=32){super(64,e,8,!1),this.A=0|ia[0],this.B=0|ia[1],this.C=0|ia[2],this.D=0|ia[3],this.E=0|ia[4],this.F=0|ia[5],this.G=0|ia[6],this.H=0|ia[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)ua[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=ua[e-15],n=ua[e-2],r=Pt(t,7)^Pt(t,18)^t>>>3,s=Pt(n,17)^Pt(n,19)^n>>>10;ua[e]=s+ua[e-7]+r+ua[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+(Pt(o,6)^Pt(o,11)^Pt(o,25))+((d=o)&i^~d&c)+ca[e]+ua[e]|0,l=(Pt(n,2)^Pt(n,13)^Pt(n,22))+aa(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(){xt(ua)}destroy(){this.set(0,0,0,0,0,0,0,0),xt(this.buffer)}}const la=$t((()=>new da)),fa=la;function pa(e,t){const n=t||"hex",r=fa(X(e,{strict:!1})?st(e):e);return"bytes"===n?r:Je(r)}function ha(e){const{commitment:t,version:n=1}=e,r=e.to??("string"==typeof t?"hex":"bytes"),s=pa(t,"bytes");return s.set([n],0),"bytes"===r?s:Qe(s)}function ma(e){const{commitments:t,version:n}=e,r=e.to??("string"==typeof t[0]?"hex":"bytes"),s=[];for(const e of t)s.push(ha({commitment:e,to:r,version:n}));return s}const ba=32,ya=4096,ga=ba*ya,wa=6*ga-1-1*ya*6,xa=1;class va extends ne{constructor({maxSize:e,size:t}){super("Blob size is too large.",{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:"BlobSizeTooLargeError"})}}class Pa extends ne{constructor(){super("Blob data must not be empty.",{name:"EmptyBlobError"})}}class Ea extends ne{constructor({hash:e,size:t}){super(`Versioned hash "${e}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${t}`],name:"InvalidVersionedHashSizeError"})}}class Ia extends ne{constructor({hash:e,version:t}){super(`Versioned hash "${e}" version is invalid.`,{metaMessages:[`Expected: ${xa}`,`Received: ${t}`],name:"InvalidVersionedHashVersionError"})}}function ka(e){const t=e.to??("string"==typeof e.data?"hex":"bytes"),n="string"==typeof e.data?ct(e.data):e.data,r=Q(n);if(!r)throw new Pa;if(r>wa)throw new va({maxSize:wa,size:r});const s=[];let a=!0,o=0;for(;a;){const e=Ln(new Uint8Array(ga));let t=0;for(;t<ya;){const r=n.slice(o,o+(ba-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=>Qe(e.bytes)))}function Aa(e){const{data:t,kzg:n,to:r}=e,s=e.blobs??ka({data:t,to:r}),a=e.commitments??ra({blobs:s,kzg:n,to:r}),o=e.proofs??sa({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 $a(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 ur({transaction:e})}function Ta(e,{docsPath:t,...n}){const r=(()=>{const t=Ns(e,n);return t instanceof Ss?e:t})();return new pr(r,{docsPath:t,...n})}async function Ba(e){return We(await e.request({method:"eth_chainId"},{dedupe:!0}))}async function Sa(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:p,nonce:h,nonceManager:m,to:b,type:y,value:g,...w}=t,x=await(async()=>{if(!n)return h;if(!m)return h;if(void 0!==h)return h;const t=Sn(n),r=a?a.id:await K(e,Ba,"getChainId")({});return await m.consume({address:t.address,chainId:r,client:e})})();Ls(t);const v=a?.formatters?.transactionRequest?.format,P=(v||Cs)({...zs(w,{format:v}),account:n?Sn(n):void 0,accessList:r,authorizationList:s,blobs:i,blobVersionedHashes:o,data:c,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:x,to:b,type:y,value:g},"fillTransaction");try{const n=await e.request({method:"eth_fillTransaction",params:[P]}),r=(a?.formatters?.transaction?.format||Zs)(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!==x&&r.nonce!==x)throw new or({filledNonce:r.nonce,requestedNonce:x});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 K(e,Js,"getBlock")({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(n<1)throw new Gs;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 Ta(n,{...t,chain:e.chain})}}const Na=["blobVersionedHashes","chainId","fees","gas","nonce","type"],za=new Map,Oa=new Jt(128);async function Ra(e,t){let n=t;n.account??=e.account,n.parameters??=Na;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 K(e,Ba,"getChainId")({});return c=t,c}let d=r?Sn(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?Sn(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===Oa.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 K(e,Sa,"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,p="feeToken"in f?f.feeToken:void 0,h="feePayerSignature"in f&&null!==f.feePayerSignature&&void 0!==f.feePayerSignature,m=null!=p&&(!("feeToken"in n)||h);return Oa.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}:{},...m?{feeToken:p}:{},...t.capabilities?{_capabilities:t.capabilities}:{}}})).catch((t=>{const r=t;if("TransactionExecutionError"!==r.name)return n;const s=r.walk?.((e=>e instanceof or));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&&Oa.set(e.uid,!1),n})):n;l??=f.nonce,n={...f,...d?{from:d?.address}:{},...void 0!==l?{nonce:l}:{}};const{blobs:p,gas:h,kzg:m,type:b}=n;let y;async function g(){return y||(y=await K(e,Js,"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 K(e,na,"getTransactionCount")({address:d.address,blockTag:"pending"})),(o.includes("blobVersionedHashes")||o.includes("sidecars"))&&p&&m){const e=ra({blobs:p,kzg:m});if(o.includes("blobVersionedHashes")){const t=ma({commitments:e,to:"hex"});n.blobVersionedHashes=t}if(o.includes("sidecars")){const t=Aa({blobs:p,commitments:e,proofs:sa({blobs:p,commitments:e,kzg:m}),to:"hex"});n.sidecars=t}}if(o.includes("chainId")&&(n.chainId=await u()),(o.includes("fees")||o.includes("type"))&&void 0===b)try{n.type=$a(n)}catch{let t=za.get(e.uid);if(void 0===t){const n=await g();t="bigint"==typeof n?.baseFeePerGas,za.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 ea(e,{block:t,chain:s,request:n});if(void 0===n.maxPriorityFeePerGas&&n.maxFeePerGas&&n.maxFeePerGas<a)throw new Ds({maxPriorityFeePerGas:a});n.maxPriorityFeePerGas=a,n.maxFeePerGas=r}}else{if(void 0!==n.maxFeePerGas||void 0!==n.maxPriorityFeePerGas)throw new _s;if(void 0===n.gasPrice){const t=await g(),{gasPrice:r}=await ea(e,{block:t,chain:s,request:n,type:"legacy"});n.gasPrice=r}}return o.includes("gas")&&void 0===h&&(n.gas=await K(e,Ca,"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"})),Ls(n),delete n.parameters,n}async function Ca(e,t){const{account:n=e.account,prepare:r=!0}=t,s=n?Sn(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 ys({authorization:t.authorizationList[0]}).catch((()=>{throw new ne("`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:p,gasPrice:h,maxFeePerBlobGas:m,maxFeePerGas:b,maxPriorityFeePerGas:y,nonce:g,value:w,stateOverride:x,...v}=r?await Ra(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;const P=("bigint"==typeof d?et(d):void 0)||l,E=js(x);Ls(t);const I=e.chain?.formatters?.transactionRequest?.format,k=(I||Cs)({...zs(v,{format:I}),account:s,accessList:o,authorizationList:i,blobs:c,blobVersionedHashes:u,data:f,gasPrice:h,maxFeePerBlobGas:m,maxFeePerGas:b,maxPriorityFeePerGas:y,nonce:g,to:n,value:w},"estimateGas");return BigInt(await e.request({method:"eth_estimateGas",params:E?[k,P??e.experimental_blockTag??"latest",E]:P?[k,P]:[k]}))}catch(n){throw function(e,{docsPath:t,...n}){const r=(()=>{const t=Ns(e,n);return t instanceof Ss?e:t})();return new gs(r,{docsPath:t,...n})}(n,{...t,account:s,chain:e.chain})}}async function Fa(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=On({abi:n,args:s,functionName:a});try{return await K(e,Ca,"estimateGas")({data:`${c}${o?o.replace("0x",""):""}`,to:r,...i})}catch(e){const t=i.account?Sn(i.account):void 0;throw us(e,{abi:n,address:r,args:s,docsPath:"/docs/contract/estimateContractGas",functionName:a,sender:t?.address})}}function Ma(e,t){if(!rn(e,{strict:!1}))throw new Yt({address:e});if(!rn(t,{strict:!1}))throw new Yt({address:t});return e.toLowerCase()===t.toLowerCase()}function Ua(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 ja="/docs/contract/decodeEventLog";function qa(e){const{abi:t,data:n,strict:r,topics:s}=e,a=r??!0,[o,...i]=s;if(!o)throw new he({docsPath:ja});const c=t.find((e=>"event"===e.type&&o===Kt(Y(e))));if(!c||!("name"in c)||"event"!==c.type)throw new me(o,{docsPath:ja});const{name:u,inputs:d}=c,l=d?.some((e=>!("name"in e&&e.name))),f=l?[]:{},p=d.map(((e,t)=>[e,t])).filter((([e])=>"indexed"in e&&e.indexed)),h=[];for(let e=0;e<p.length;e++){const[t,n]=p[e],r=i[e];if(r)f[l?n:t.name||n]=La({param:t,value:r});else{if(a)throw new Ee({abiItem:c,param:t});h.push([t,n])}}const m=d.filter((e=>!("indexed"in e&&e.indexed))),b=a?m:[...h.map((([e])=>e)),...m];if(b.length>0)if(n&&"0x"!==n)try{const e=Vn(b,n);if(e){let t=0;if(!a)for(const[n,r]of h)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<m.length;n++)f[m[n].name]=e[t++]}}catch(e){if(a){if(e instanceof oe||e instanceof Un)throw new Pe({abiItem:c,data:n,params:b,size:Q(n)});throw e}}else if(a)throw new Pe({abiItem:c,data:"0x",params:b,size:0});return{eventName:u,args:Object.values(f).length>0?f:void 0}}function La({param:e,value:t}){if("string"===e.type||"bytes"===e.type||"tuple"===e.type||e.type.match(/^(.*)\[(\d+)?\]$/))return t;return(Vn([e],t)||[])[0]}function Ga(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:Kt(e)})));return r.map((e=>{const t="string"==typeof e.blockNumber?Ua(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=qa({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!i&&!s){c=r[0];try{i=qa({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?Ma(t,n):"string"===e.type||"bytes"===e.type?Ht(st(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 _a(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=>An({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?et(r):r,toBlock:"bigint"==typeof s?et(s):s}]});const p=l.map((e=>Ua(e)));return d?Ga({abi:d,args:i,logs:p,strict:u}):p}async function Da(e,t){const{abi:n,address:r,args:s,blockHash:a,eventName:o,fromBlock:i,toBlock:c,strict:u}=t,d=o?Pn({abi:n,name:o}):void 0,l=d?void 0:n.filter((e=>"event"===e.type));return K(e,_a,"getLogs")({address:r,args:s,blockHash:a,event:d,events:l,fromBlock:i,toBlock:c,strict:u})}const Ha="/docs/contract/decodeFunctionResult";function Va(e){const{abi:t,args:n,functionName:r,data:s}=e;let a=t[0];if(r){const e=Pn({abi:t,args:n,name:r});if(!e)throw new ye(r,{docsPath:Ha});a=e}if("function"!==a.type)throw new ye(void 0,{docsPath:Ha});if(!a.outputs)throw new ge(a.name,{docsPath:Ha});const o=Vn(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 Za=BigInt(0),Wa=BigInt(1);function Ka(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function Ya(e){if(!Ka(e))throw new Error("Uint8Array expected")}function Ja(e,t){if("boolean"!=typeof t)throw new Error(e+" boolean expected, got "+t)}function Xa(e){const t=e.toString(16);return 1&t.length?"0"+t:t}function Qa(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);return""===e?Za:BigInt("0x"+e)}const eo="function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex,to=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function no(e){if(Ya(e),eo)return e.toHex();let t="";for(let n=0;n<e.length;n++)t+=to[e[n]];return t}const ro={_0:48,_9:57,A:65,F:70,a:97,f:102};function so(e){return e>=ro._0&&e<=ro._9?e-ro._0:e>=ro.A&&e<=ro.F?e-(ro.A-10):e>=ro.a&&e<=ro.f?e-(ro.a-10):void 0}function ao(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);if(eo)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=so(e.charCodeAt(s)),a=so(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 oo(e){return Qa(no(e))}function io(e){return Ya(e),Qa(no(Uint8Array.from(e).reverse()))}function co(e,t){return ao(e.toString(16).padStart(2*t,"0"))}function uo(e,t){return co(e,t).reverse()}function lo(e,t,n){let r;if("string"==typeof t)try{r=ao(t)}catch(t){throw new Error(e+" must be hex string or Uint8Array, cause: "+t)}else{if(!Ka(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 fo(...e){let t=0;for(let n=0;n<e.length;n++){const r=e[n];Ya(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 po(e){if("string"!=typeof e)throw new Error("string expected");return new Uint8Array((new TextEncoder).encode(e))}const ho=e=>"bigint"==typeof e&&Za<=e;function mo(e,t,n){return ho(e)&&ho(t)&&ho(n)&&t<=e&&e<n}function bo(e,t,n,r){if(!mo(t,n,r))throw new Error("expected valid "+e+": "+n+" <= n < "+r+", got "+t)}const yo=e=>(Wa<<BigInt(e))-Wa,go=e=>new Uint8Array(e),wo=e=>Uint8Array.from(e);const xo={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||Ka(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 vo(e,t,n={}){const r=(t,n,r)=>{const s=xo[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 Po(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 Eo extends Error{static setStaticOptions(e){Eo.prototype.docsOrigin=e.docsOrigin,Eo.prototype.showVersion=e.showVersion,Eo.prototype.version=e.version}constructor(e,t={}){const n=(()=>{if(t.cause instanceof Eo){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 Eo&&t.cause.docsPath||t.docsPath,s=t.docsOrigin??Eo.prototype.docsOrigin,a=`${s}${r??""}`,o=Boolean(t.version??Eo.prototype.showVersion),i=t.version??Eo.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 Io(this,e)}}function Io(e,t){return t?.(e)?e:e&&"object"==typeof e&&"cause"in e&&e.cause?Io(e.cause,t):t?null:e}function ko(e,t){if(Mo(e)>t)throw new Zo({givenSize:Mo(e),maxSize:t})}Object.defineProperty(Eo,"defaultStaticOptions",{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:"https://oxlib.sh",showVersion:!1,version:"ox@0.1.1"}}),Eo.setStaticOptions(Eo.defaultStaticOptions);const Ao={zero:48,nine:57,A:65,F:70,a:97,f:102};function $o(e){return e>=Ao.zero&&e<=Ao.nine?e-Ao.zero:e>=Ao.A&&e<=Ao.F?e-(Ao.A-10):e>=Ao.a&&e<=Ao.f?e-(Ao.a-10):void 0}function To(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 Bo(e,t){if(ii(e)>t)throw new mi({givenSize:ii(e),maxSize:t})}function So(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 yi({size:Math.ceil(s.length/2),targetSize:r,type:"Hex"});return`0x${s["right"===n?"padEnd":"padStart"](2*r,"0")}`}function No(e,t,n){return JSON.stringify(e,((e,n)=>"function"==typeof t?t(e,n):"bigint"==typeof n?n.toString()+"#__bigint":n),n)}const zo=new TextDecoder,Oo=new TextEncoder;function Ro(e){return e instanceof Uint8Array?e:"string"==typeof e?Co(e):function(e){return e instanceof Uint8Array?e:new Uint8Array(e)}(e)}function Co(e,t={}){const{size:n}=t;let r=e;n&&(Bo(e,n),r=ai(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=$o(s.charCodeAt(t++)),r=$o(s.charCodeAt(t++));if(void 0===n||void 0===r)throw new Eo(`Invalid byte sequence ("${s[t-2]}${s[t-1]}" in "${s}").`);o[e]=n<<4|r}return o}function Fo(e,t={}){const{size:n}=t,r=Oo.encode(e);return"number"==typeof n?(ko(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 Ko({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 Mo(e){return e.length}function Uo(e,t,n,r={}){const{strict:s}=r;!function(e,t){if("number"==typeof t&&t>0&&t>Mo(e)-1)throw new Wo({offset:t,position:"start",size:Mo(e)})}(e,t);const a=e.slice(t,n);return s&&function(e,t,n){if("number"==typeof t&&"number"==typeof n&&Mo(e)!==n-t)throw new Wo({offset:n,position:"end",size:Mo(e)})}(a,t,n),a}function jo(e,t={}){const{size:n}=t;void 0!==n&&ko(e,n);return ui(ti(e,t),t)}function qo(e,t={}){const{size:n}=t;let r=e;if(void 0!==n&&(ko(r,n),r=_o(r)),r.length>1||r[0]>1)throw new Ho(r);return Boolean(r[0])}function Lo(e,t={}){const{size:n}=t;void 0!==n&&ko(e,n);return di(ti(e,t),t)}function Go(e,t={}){const{size:n}=t;let r=e;return void 0!==n&&(ko(r,n),r=To(r,{dir:"right"})),zo.decode(r)}function _o(e){return To(e,{dir:"left"})}function Do(e){try{return function(e){if(!(e instanceof Uint8Array)){if(!e)throw new Vo(e);if("object"!=typeof e)throw new Vo(e);if(!("BYTES_PER_ELEMENT"in e))throw new Vo(e);if(1!==e.BYTES_PER_ELEMENT||"Uint8Array"!==e.constructor.name)throw new Vo(e)}}(e),!0}catch{return!1}}class Ho extends Eo{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 Vo extends Eo{constructor(e){super(`Value \`${"object"==typeof e?No(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 Zo extends Eo{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 Wo extends Eo{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 Ko extends Eo{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 Yo=new TextEncoder,Jo=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function Xo(...e){return`0x${e.reduce(((e,t)=>e+t.replace("0x","")),"")}`}function Qo(e){return e instanceof Uint8Array?ti(e):Array.isArray(e)?ti(new Uint8Array(e)):e}function ei(e,t={}){const n=`0x${Number(e)}`;return"number"==typeof t.size?(Bo(n,t.size),si(n,t.size)):n}function ti(e,t={}){let n="";for(let t=0;t<e.length;t++)n+=Jo[e[t]];const r=`0x${n}`;return"number"==typeof t.size?(Bo(r,t.size),ai(r,t.size)):r}function ni(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 fi({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?si(i,r):i}function ri(e,t={}){return ti(Yo.encode(e),t)}function si(e,t){return So(e,{dir:"left",size:t})}function ai(e,t){return So(e,{dir:"right",size:t})}function oi(e,t,n,r={}){const{strict:s}=r;!function(e,t){if("number"==typeof t&&t>0&&t>ii(e)-1)throw new bi({offset:t,position:"start",size:ii(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&&ii(e)!==n-t)throw new bi({offset:n,position:"end",size:ii(e)})}(a,t,n),a}function ii(e){return Math.ceil((e.length-2)/2)}function ci(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 ui(e,t={}){const{signed:n}=t;t.size&&Bo(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 di(e,t={}){const{signed:n,size:r}=t;return Number(n||r?ui(e,t):e)}function li(e,t={}){const{strict:n=!1}=t;try{return function(e,t={}){const{strict:n=!1}=t;if(!e)throw new pi(e);if("string"!=typeof e)throw new pi(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e))throw new hi(e);if(!e.startsWith("0x"))throw new hi(e)}(e,{strict:n}),!0}catch{return!1}}class fi extends Eo{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 pi extends Eo{constructor(e){super(`Value \`${"object"==typeof e?No(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 hi extends Eo{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 mi extends Eo{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 bi extends Eo{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 yi extends Eo{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 gi(e){return{address:e.address,amount:ni(e.amount),index:ni(e.index),validatorIndex:ni(e.validatorIndex)}}function wi(e){return{..."bigint"==typeof e.baseFeePerGas&&{baseFeePerGas:ni(e.baseFeePerGas)},..."bigint"==typeof e.blobBaseFee&&{blobBaseFee:ni(e.blobBaseFee)},..."string"==typeof e.feeRecipient&&{feeRecipient:e.feeRecipient},..."bigint"==typeof e.gasLimit&&{gasLimit:ni(e.gasLimit)},..."bigint"==typeof e.number&&{number:ni(e.number)},..."bigint"==typeof e.prevRandao&&{prevRandao:ni(e.prevRandao)},..."bigint"==typeof e.time&&{time:ni(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(gi)}}}const xi="0x82ad56cb",vi="0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe",Pi="0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe",Ei="0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572",Ii="0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033";class ki extends ne{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 Ai extends ne{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 $i extends ne{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 Ti extends ne{constructor(){super("No chain was provided to the Client.",{name:"ClientChainNotConfiguredError"})}}class Bi extends ne{constructor({chainId:e}){super("number"==typeof e?`Chain ID "${e}" is invalid.`:"Chain ID is invalid.",{name:"InvalidChainIdError"})}}const Si="/docs/contract/encodeDeployData";function Ni(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 se({docsPath:Si});if(!("inputs"in s))throw new ae({docsPath:Si});if(!s.inputs||0===s.inputs.length)throw new ae({docsPath:Si});return on([r,bn(s.inputs,n)])}function zi({blockNumber:e,chain:t,contract:n}){const r=t?.contracts?.[n];if(!r)throw new ki({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new ki({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}function Oi(e,{docsPath:t,...n}){const r=(()=>{const t=Ns(e,n);return t instanceof Ss?e:t})();return new vr(r,{docsPath:t,...n})}function Ri(){let e=()=>{},t=()=>{};return{promise:new Promise(((n,r)=>{e=n,t=r})),resolve:e,reject:t}}const Ci=new Map;function Fi({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=()=>Ci.delete(t),i=()=>Ci.get(t)||[],c=e=>Ci.set(t,[...i(),e]);return{flush:o,async schedule(e){const{promise:t,resolve:s,reject:o}=Ri(),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 Mi(t,n){const{account:r=t.account,authorizationList:s,batch:a=Boolean(t.batch?.multicall),blockHash:o,blockNumber:i,blockTag:c=t.experimental_blockTag??"latest",requireCanonical:u,accessList:d,blobs:l,blockOverrides:f,code:p,data:h,factory:m,factoryData:b,gas:y,gasPrice:g,maxFeePerBlobGas:w,maxFeePerGas:x,maxPriorityFeePerGas:v,nonce:P,requestOptions:E,to:I,value:k,stateOverride:A,...$}=n,T=r?Sn(r):void 0;if(p&&(m||b))throw new ne("Cannot provide both `code` & `factory`/`factoryData` as parameters.");if(p&&I)throw new ne("Cannot provide both `code` & `to` as parameters.");const B=p&&h,S=m&&b&&I&&h,N=B||S,z=B?Gi({code:p,data:h}):S?function(e){const{data:t,factory:n,factoryData:r,to:s}=e;return Ni({abi:W(["constructor(address, bytes, address, bytes)"]),bytecode:Pi,args:[s,t,n,r]})}({data:h,factory:m,factoryData:b,to:I}):h;try{Ls(n);const r=ta({blockHash:o,blockNumber:i,blockTag:c,requireCanonical:u}),p=f?wi(f):void 0,h=js(A),m=t.chain?.formatters?.transactionRequest?.format,b=(m||Cs)({...zs($,{format:m}),accessList:d,account:T,authorizationList:s,blobs:l,data:z,gas:y,gasPrice:g,maxFeePerBlobGas:w,maxFeePerGas:x,maxPriorityFeePerGas:v,nonce:P,to:N?void 0:I,value:k},"call");if(a&&function({request:e}){const{data:t,to:n,...r}=e;return!!t&&(!t.startsWith(xi)&&(!!n&&!(Object.values(r).filter((e=>void 0!==e)).length>0)))}({request:b})&&!p&&void 0===o)try{const{deployless:n=!1}="object"==typeof t.batch?.multicall?t.batch.multicall:{},r=Li(t,{blockNumber:i,deployless:n});if(!r||!function(e,t){return!!e&&Object.keys(e).some((e=>Ma(e,t)))}(h,r))return await async function(t,n){const{batchSize:r=1024,deployless:s=!1,wait:a=0}="object"==typeof t.batch?.multicall?t.batch.multicall:{},{blockHash:o,blockNumber:i,blockTag:c=t.experimental_blockTag??"latest",requireCanonical:u,data:d,multicallAddress:l,requestOptions:f,rpcStateOverride:p,to:h}=n,m=void 0!==l?l:Li(t,{blockNumber:i,deployless:s}),b=ta({blockHash:o,blockNumber:i,blockTag:c,requireCanonical:u}),y="string"==typeof b?b:JSON.stringify(b),g=p?`.${JSON.stringify(p)}`:"",{schedule:w}=Fi({id:`${t.uid}.${y}.${qi(f)}${g}`,wait:a,shouldSplitBatch(e){const t=e.reduce(((e,{data:t})=>e+(t.length-2)),0);return t>2*r},fn:async n=>{const r=n.map((e=>({allowFailure:!0,callData:e.data,target:e.to}))),s=On({abi:e.multicall3Abi,args:[r],functionName:"aggregate3"}),a={...null===m?{data:Gi({code:Ii,data:s})}:{to:m,data:s}},o=await t.request({method:"eth_call",params:p?[a,b,p]:[a,b]},f);return Va({abi:e.multicall3Abi,args:[r],functionName:"aggregate3",data:o||"0x"})}}),[{returnData:x,success:v}]=await w({data:d,to:h});if(!v)throw new Ar({data:x});return"0x"===x?{data:void 0}:{data:x}}(t,{...b,blockHash:o,blockNumber:i,blockTag:c,multicallAddress:r,requestOptions:E,requireCanonical:u,rpcStateOverride:h})}catch(e){if(!(e instanceof Ti||e instanceof ki))throw e}const B=(()=>{const e=[b,r];return h&&p?[...e,h,p]:h?[...e,h]:p?[...e,{},p]:e})(),S=await t.request({method:"eth_call",params:B},E);return"0x"===S?{data:void 0}:{data:S}}catch(e){if(E?.signal?.aborted)throw gr(E.signal);if(wr(e))throw e;const r=function(e){if(!(e instanceof ne))return;const t=e.walk();return"object"==typeof t?.data?t.data?.data:t.data}(e),{offchainLookup:s,offchainLookupSignature:a}=await Promise.resolve().then((function(){return Ru}));if(!1!==t.ccipRead&&r?.slice(0,10)===a&&I)return{data:await s(t,{data:r,requestOptions:E,to:I})};if(N&&"0x101bb98d"===r?.slice(0,10))throw new kr({factory:m});throw Oi(e,{...n,account:T,chain:t.chain})}}let Ui=0;const ji=new WeakMap;function qi(e){if(!e)return"default";const t=ji.get(e);if(void 0!==t)return t;const n=Ui++;return ji.set(e,n),n}function Li(e,t){const{blockNumber:n,deployless:r}=t;if(r)return null;if(e.chain)return zi({blockNumber:n,chain:e.chain,contract:"multicall3"});throw new Ti}function Gi(e){const{code:t,data:n}=e;return Ni({abi:W(["constructor(bytes, bytes)"]),bytecode:vi,args:[t,n]})}async function _i(e,t){const{abi:n,address:r,args:s,functionName:a,...o}=t,i=On({abi:n,args:s,functionName:a});try{const{data:t}=await K(e,Mi,"call")({...o,data:i,to:r});return Va({abi:n,args:s,functionName:a,data:t||"0x"})}catch(e){throw us(e,{abi:n,address:r,args:s,docsPath:"/docs/contract/readContract",functionName:a})}}async function Di(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?Sn(i.account):e.account,u=On({abi:n,args:s,functionName:a});try{const{data:d}=await K(e,Mi,"call")({batch:!1,data:`${u}${o?o.replace("0x",""):""}`,to:r,...i,account:c}),l=Va({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 us(e,{abi:n,address:r,args:s,docsPath:"/docs/contract/simulateContract",functionName:a,sender:c?.address})}}const Hi=new Map,Vi=new Map;let Zi=0;function Wi(e,t,n){const r=++Zi,s=()=>Hi.get(e)||[],a=()=>{const t=s();if(!t.some((e=>e.id===r)))return;const n=Vi.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 Hi.delete(e),void Vi.delete(e);Hi.set(e,t)})()},o=s();if(Hi.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&&Vi.set(e,c),a}async function Ki(e,{signal:t}={}){return new Promise(((n,r)=>{if(t?.aborted)return void r(gr(t));const s=()=>t?.removeEventListener("abort",o),a=setTimeout((()=>{s(),n()}),e),o=()=>{clearTimeout(a),s(),r(gr(t))};t?.addEventListener("abort",o,{once:!0})}))}function Yi(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 Ki(i);const c=async()=>{s&&(await e({unpoll:a}),await Ki(r),c())};c()})(),a}const Ji=new Map,Xi=new Map;async function Qi(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,Ji),r=t(e,Xi);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 ec=e=>`blockNumber.${e}`;async function tc(e,{cacheTime:t=e.cacheTime}={}){const n=await Qi((()=>e.request({method:"eth_blockNumber"})),{cacheKey:ec(e.uid),cacheTime:t});return BigInt(n)}async function nc(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=>Ua(e)));return"abi"in t&&t.abi?Ga({abi:t.abi,logs:s,strict:n}):s}async function rc(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function sc(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 Wi(Xn(["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 p=Yi((async()=>{if(f)try{let i;if(d)i=await K(e,nc,"getFilterChanges")({filter:d});else{const a=await K(e,tc,"getBlockNumber")({});i=u&&u<a?await K(e,Da,"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 qr&&(f=!1),c.onError?.(e)}else{try{d=await K(e,Bn,"createContractEventFilter")({abi:n,address:r,args:s,eventName:o,strict:t,fromBlock:i})}catch{}f=!0}}),{emitOnBegin:!0,interval:l});return async()=>{d&&await K(e,rc,"uninstallFilter")({filter:d}),p()}}))})():(()=>{const t=f??!1,i=Xn(["watchContractEvent",r,s,a,e.uid,o,l,t]);let d=!0,p=()=>d=!1;return Wi(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?An({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}=qa({abi:n,data:r.data,topics:r.topics,strict:f}),a=Ua(r,{args:s,eventName:e});t.onLogs([a])}catch(e){let n,s;if(e instanceof Pe||e instanceof Ee){if(f)return;n=e.abiItem.name,s=e.abiItem.inputs?.some((e=>!("name"in e&&e.name)))}const a=Ua(r,{args:s?[]:{},eventName:n});t.onLogs([a])}},onError(e){t.onError?.(e)}});p=c,d||p()}catch(e){c?.(e)}})(),()=>p())))})()}class ac extends ne{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 oc extends ne{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type "${n}" is not supported.`,{docsPath:e,metaMessages:t,name:"AccountTypeNotSupportedError"})}}function ic({chain:e,currentChainId:t}){if(!e)throw new $i;if(t!==e.id)throw new Ai({chain:e,currentChainId:t})}async function cc(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}const uc=new Jt(128);async function dc(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:p,maxPriorityFeePerGas:h,nonce:m,type:b,value:y,...g}=t;if(void 0===n)throw new ac({docsPath:"/docs/actions/wallet/sendTransaction"});const w=n?Sn(n):null;let x;try{Ls(t);const n=await(async()=>t.to?t.to:null!==t.to&&o&&o.length>0?await ys({authorization:o[0]}).catch((()=>{throw new ne("`to` is required. Could not infer from `authorizationList`.")})):void 0)();if("json-rpc"===w?.type||null===w){let t;null!==s&&(t=await K(e,Ba,"getChainId")({}),r&&ic({currentChainId:t,chain:s}));const x=e.chain?.formatters?.transactionRequest?.format,v=(x||Cs)({...zs(g,{format:x}),accessList:a,account:w,authorizationList:o,blobs:i,chainId:t,data:u?sn([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:m,to:n,type:b,value:y},"sendTransaction"),P=uc.get(e.uid),E=P?"wallet_sendTransaction":"eth_sendTransaction";try{return await e.request({method:E,params:[v]},{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:[v]},{retryCount:0}).then((t=>(uc.set(e.uid,!0),t))).catch((t=>{const r=t;if("MethodNotFoundRpcError"===r.name||"MethodNotSupportedRpcError"===r.name)throw uc.set(e.uid,!1),n;throw r}));throw n}}if("local"===w?.type){const t=(()=>{if(!w.nonceManager||void 0!==m)return w.nonceManager;const e=w.nonceManager;return{consume:t=>(x={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 K(e,Ra,"prepareTransactionRequest")({account:w,accessList:a,authorizationList:o,blobs:i,chain:s,data:u?sn([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:m,nonceManager:t,parameters:[...Na,"sidecars"],type:b,value:y,...g,to:n}),v=s?.serializers?.transaction,P=await w.signTransaction(r,{serializer:v}),E=(s??e.chain)?.serializers?.transactionEnvelope,I=E?await E({serializedTransaction:P,transaction:r}):P;return await K(e,cc,"sendRawTransaction")({serializedTransaction:I})}if("smart"===w?.type)throw new oc({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new oc({docsPath:"/docs/actions/wallet/sendTransaction",type:w?.type})}catch(e){if(e instanceof oc)throw e;throw x&&w?.nonceManager?.reset(x),Ta(e,{...t,account:w,chain:t.chain||void 0})}}async function lc(e,t){return lc.internal(e,dc,"sendTransaction",t)}function fc(e){const t=e.length&&Array.isArray(e[0]);return{args:t?e[0]:[],options:(t?e[1]:e[0])??{}}}function pc(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 ac({docsPath:"/docs/contract/writeContract"});const d=a?Sn(a):null,l=On({abi:s,args:i,functionName:c});try{return await K(e,t,n)({data:l,to:o,account:d,...u})}catch(e){throw us(e,{abi:s,address:o,args:i,docsPath:"/docs/contract/writeContract",functionName:c,sender:d?.address})}}}(lc||(lc={}));class hc extends ne{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 mc(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(gr(s));try{const t=await e();a(t)}catch(e){if(s?.aborted)return void o(gr(s));if(wr(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 Ki(n,{signal:s})}catch(e){return void o(e)}return i({count:c+1})})({error:e});o(e)}};i().catch(o)}))}const bc={"0x0":"reverted","0x1":"success"};function yc(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=>Ua(e))):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?We(e.transactionIndex):null,status:e.status?bc[e.status]:null,type:e.type?Vs[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}const gc=Os("transactionReceipt",yc),wc="0x5792579257925792579257925792579257925792579257925792579257925792",xc=et(0,{size:32});async function vc(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?Sn(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?On({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?sn([n,t.dataSuffix]):n,to:t.to,value:t.value?et(t.value):void 0}}));try{const t=await e.request({method:"wallet_sendCalls",params:[{atomicRequired:o,calls:l,capabilities:d,chainId:et(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 Qr(new ne(e,{details:e}))}}if(o&&l.length>1){const e="`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";throw new as(new ne(e,{details:e}))}const t=[];for(const n of l){try{const s=await dc(e,{account:u,chain:r,data:n.data,to:n.to,value:n.value?Ve(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:sn([...t.map((e=>"fulfilled"===e.status?e.value:xc)),et(r.id,{size:32}),wc])}}throw Ta(n,{...t,account:u,chain:t.chain})}}async function Pc(e,t){const{atomic:n=!1,chainId:r,receipts:s,version:a="2.0.0",...o}=await async function(t){if(t.endsWith(wc.slice(2))){const n=De(fn(t,-64,-32)),r=fn(t,0,-64).slice(2).match(/.{1,64}/g),s=await Promise.all(r.map((t=>xc.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:We(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?We(r):void 0,receipts:s?.map((e=>({...e,blockNumber:Ve(e.blockNumber),gasUsed:Ve(e.gasUsed),status:bc[e.status]})))??[],statusCode:c,status:i,version:a}}async function Ec(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=Xn(["waitForCallsStatus",e.uid,n]),{promise:d,resolve:l,reject:f}=Ri();let p;const h=Wi(u,{resolve:l,reject:f},(t=>{const i=Yi((async()=>{const r=e=>{clearTimeout(p),i(),e(),h()};try{const i=await mc((async()=>{const t=await K(e,Pc,"getCallsStatus")({id:n});if(c&&"failure"===t.status)throw new hc(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 p=i?setTimeout((()=>{h(),clearTimeout(p),f(new Ic({id:n}))}),i):void 0,await d}class Ic extends ne{constructor({id:e}){super(`Timed out while waiting for call bundle with id "${e}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}const kc=256;let Ac,$c=kc;function Tc(e=11){if(!Ac||$c+e>2*kc){Ac="",$c=0;for(let e=0;e<kc;e++)Ac+=(256+256*Math.random()|0).toString(16).substring(1)}return Ac.substring($c,$c+++e)}function Bc(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,p=e.cacheTime??f,h=e.account?Sn(e.account):void 0,{config:m,request:b,value:y}=e.transport({account:h,chain:n,pollingInterval:f}),g={account:h,batch:t,cacheTime:p,ccipRead:r,chain:n,dataSuffix:s,key:a,name:o,pollingInterval:f,request:b,tokens:i,transport:{...m,...y},type:c,uid:Tc(),...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];Sc(n)&&Sc(a)&&(s[e]={...n,...a})}return Object.assign(s,{extend:e(s)})}}(g)})}function Sc(e){if("object"!=typeof e||null===e)return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function Nc(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 zc(e){if(!(e instanceof ne))return!1;const t=e.walk((e=>e instanceof Er));return t instanceof Er&&("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 Oc(e){const{abi:t,data:n}=e,r=cn(n,0,4),s=t.find((e=>"function"===e.type&&r===vn(Y(e))));if(!s)throw new we(r,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:s.name,args:"inputs"in s&&s.inputs&&s.inputs.length>0?Vn(s.inputs,cn(n,4)):void 0}}const Rc="/docs/contract/encodeErrorResult";function Cc(e){const{abi:t,errorName:n,args:r}=e;let s=t[0];if(n){const e=Pn({abi:t,args:r,name:n});if(!e)throw new fe(n,{docsPath:Rc});s=e}if("error"!==s.type)throw new fe(void 0,{docsPath:Rc});const a=Y(s),o=vn(a);let i="0x";if(r&&r.length>0){if(!s.inputs)throw new le(s.name,{docsPath:Rc});i=bn(s.inputs,r)}return on([o,i])}const Fc="/docs/contract/encodeFunctionResult";function Mc(e){const{abi:t,functionName:n,result:r}=e;let s=t[0];if(n){const e=Pn({abi:t,name:n});if(!e)throw new ye(n,{docsPath:Fc});s=e}if("function"!==s.type)throw new ye(void 0,{docsPath:Fc});if(!s.outputs)throw new ge(s.name,{docsPath:Fc});const a=(()=>{if(0===s.outputs.length)return[];if(1===s.outputs.length)return[r];if(Array.isArray(r))return r;throw new Ae(r)})();return bn(s.outputs,a)}const Uc="x-batch-gateway:true";async function jc(t){const{data:n,ccipRequest:r}=t,{args:[s]}=Oc({abi:e.batchGatewayAbi,data:n}),a=[],o=[];return await Promise.all(s.map((async(t,n)=>{try{o[n]=t.urls.includes(Uc)?await jc({data:t.data,ccipRequest:r}):await r(t),a[n]=!1}catch(t){a[n]=!0,o[n]="HttpRequestError"===(s=t).name&&s.status?Cc({abi:e.batchGatewayAbi,errorName:"HttpError",args:[s.status,s.shortMessage]}):Cc({abi:[Cn],errorName:"Error",args:["shortMessage"in s?s.shortMessage:s.message]})}var s}))),Mc({abi:e.batchGatewayAbi,functionName:"query",result:[a,o]})}function qc(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 X(t)?t:null}function Lc(e){let t=new Uint8Array(32).fill(0);if(!e)return Qe(t);const n=e.split(".");for(let e=n.length-1;e>=0;e-=1){const r=qc(n[e]),s=r?st(r):Ht(dt(n[e]),"bytes");t=Ht(sn([t,s]),"bytes")}return Qe(t)}function Gc(e){return`[${e.slice(2)}]`}function _c(e){const t=new Uint8Array(32).fill(0);return e?qc(e)||Ht(dt(e)):Qe(t)}function Dc(e){const t=e.replace(/^\.|\.$/gm,"");if(0===t.length)return new Uint8Array(1);const n=new Uint8Array(dt(t).byteLength+2);let r=0;const s=t.split(".");for(let e=0;e<s.length;e++){let t=dt(s[e]);t.byteLength>255&&(t=dt(Gc(_c(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 Hc(t,n){const{blockNumber:r,blockTag:s,coinType:a,name:o,gatewayUrls:i,strict:c}=n,{chain:u}=t,d=(()=>{if(n.universalResolverAddress)return n.universalResolverAddress;if(!u)throw new Error("client chain not configured. universalResolverAddress is required.");return zi({blockNumber:r,chain:u,contract:"ensUniversalResolver"})})(),l=u?.ensTlds;if(l&&!l.some((e=>o.endsWith(e))))return null;const f=null!=a?[Lc(o),BigInt(a)]:[Lc(o)];try{const n=On({abi:e.addressResolverAbi,functionName:"addr",args:f}),c={address:d,abi:e.universalResolverResolveAbi,functionName:"resolveWithGateways",args:[Je(Dc(o)),n,i??[Uc]],blockNumber:r,blockTag:s},u=K(t,_i,"readContract"),l=await u(c);if("0x"===l[0])return null;const p=function({coinType:t,data:n,args:r}){try{return Va({abi:e.addressResolverAbi,args:r,functionName:"addr",data:n})}catch(e){if(null==t)throw e;const r=De(n);if(20===Q(r))return en(r);throw e}}({coinType:a,data:l[0],args:f});return"0x"===p||"0x00"===De(p)?null:p}catch(e){if(c)throw e;if(zc(e))return null;throw e}}class Vc extends ne{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 Zc extends ne{constructor({reason:e}){super(`ENS NFT avatar URI is invalid. ${e}`,{name:"EnsAvatarInvalidNftUriError"})}}class Wc extends ne{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 Kc extends ne{constructor({namespace:e}){super(`ENS NFT avatar namespace "${e}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}class Yc extends ne{constructor({chainId:e}){super(`Invalid ENSIP-11 chainId: ${e}. Must be between 0 and 0x7fffffff, or 1.`,{name:"EnsInvalidChainIdError"})}}const Jc=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,Xc=/^(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>\/.*)?$/,Qc=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,eu=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;function tu(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function nu({uri:e,gatewayUrls:t}){const n=Qc.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=tu(t?.ipfs,"https://ipfs.io"),s=tu(t?.arweave,"https://arweave.net"),a=e.match(Jc),{protocol:o,subpath:i,target:c,subtarget:u=""}=a?.groups||{},d="ipns:/"===o||"ipns/"===i,l="ipfs:/"===o||"ipfs/"===i||Xc.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(eu,"");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 Wc({uri:e})}function ru(e){if("object"!=typeof e||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new Vc({data:e});return e.image||e.image_url||e.image_data}async function su({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=nu({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 Wc({uri:t})}async function au(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 Zc({reason:"Only EIP-155 supported"});if(!o)throw new Zc({reason:"Chain ID not found"});if(!c)throw new Zc({reason:"Contract address not found"});if(!s)throw new Zc({reason:"Token ID not found"});if(!i)throw new Zc({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 _i(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 _i(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 Kc({namespace:t.namespace})}(e,{nft:r}),{uri:a,isOnChain:o,isEncoded:i}=nu({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 su({uri:ru(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 su({gatewayUrls:e,uri:ru(n)})}catch{throw new Wc({uri:t})}}({gatewayUrls:t,uri:a.replace(/(?:0x)?{id}/,c)})}(e,{gatewayUrls:t,record:n}):su({uri:n,gatewayUrls:t})}async function ou(t,n){const{blockNumber:r,blockTag:s,key:a,name:o,gatewayUrls:i,strict:c}=n,{chain:u}=t,d=(()=>{if(n.universalResolverAddress)return n.universalResolverAddress;if(!u)throw new Error("client chain not configured. universalResolverAddress is required.");return zi({blockNumber:r,chain:u,contract:"ensUniversalResolver"})})(),l=u?.ensTlds;if(l&&!l.some((e=>o.endsWith(e))))return null;try{const n={address:d,abi:e.universalResolverResolveAbi,args:[Je(Dc(o)),On({abi:e.textResolverAbi,functionName:"text",args:[Lc(o),a]}),i??[Uc]],functionName:"resolveWithGateways",blockNumber:r,blockTag:s},c=K(t,_i,"readContract"),u=await c(n);if("0x"===u[0])return null;const l=Va({abi:e.textResolverAbi,functionName:"text",data:u[0]});return""===l?null:l}catch(e){if(c)throw e;if(zc(e))return null;throw e}}async function iu(e,{address:t,args:n,event:r,events:s,fromBlock:a,strict:o,toBlock:i}={}){const c=s??(r?[r]:void 0),u=Tn(e,{method:"eth_newFilter"});let d=[];if(c){const e=c.flatMap((e=>An({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?et(a):a,toBlock:"bigint"==typeof i?et(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 cu(e){const t=Tn(e,{method:"eth_newPendingTransactionFilter"}),n=await e.request({method:"eth_newPendingTransactionFilter"});return{id:n,request:t(n),type:"transaction"}}async function uu(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a}){const o=ta({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 du extends ne{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 lu=[{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 fu(e,{blockCount:t,blockNumber:n,blockTag:r="latest",rewardPercentiles:s}){const a="bigint"==typeof n?et(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:[et(t),a||r,s]},{dedupe:Boolean(a)}))}function pu(e,t,n=!1){if("address"===e){const e=t;if(!rn(e))throw new Yt({address:e});return Oe(e.toLowerCase(),{size:n?32:null})}if("string"===e)return nt(t);if("bytes"===e)return t;if("bool"===e)return Oe(Xe(t),{size:n?32:1});const r=e.match(mn);if(r){const[e,s,a="256"]=r,o=Number.parseInt(a,10)/8;return et(t,{size:n?32:o,signed:"int"===s})}const s=e.match(hn);if(s){const[e,r]=s;if(Number.parseInt(r,10)!==(t.length-2)/2)throw new ve({expectedSize:Number.parseInt(r,10),givenSize:(t.length-2)/2});return Oe(t,{dir:"right",size:n?32:null})}const a=e.match(pn);if(a&&Array.isArray(t)){const[e,n]=a,r=[];for(let e=0;e<t.length;e++)r.push(pu(n,t[e],!0));return 0===r.length?"0x":on(r)}throw new Te(e)}function hu(e){return!!e&&("object"==typeof e&&("BYTES_PER_ELEMENT"in e&&(1===e.BYTES_PER_ELEMENT&&"Uint8Array"===e.constructor.name)))}function mu(e){const t=st(en(e.from));let n=st(e.nonce);return 0===n[0]&&(n=new Uint8Array([])),en(`0x${Ht(ps([t,n],"bytes")).slice(26)}`)}function bu(e){const t=st(en(e.from)),n=Oe(hu(e.salt)?e.salt:st(e.salt),{size:32}),r="bytecodeHash"in e?hu(e.bytecodeHash)?e.bytecodeHash:st(e.bytecodeHash):Ht(e.bytecode,"bytes");return en(cn(Ht(sn([st("0xff"),t,n,r])),12))}function yu(e){const{authorizationList:t}=e;if(t)for(const e of t){const{chainId:t}=e,n=e.address;if(!rn(n))throw new Yt({address:n});if(t<0)throw new Bi({chainId:t})}wu(e)}function gu(e){const{blobVersionedHashes:t}=e;if(t){if(0===t.length)throw new Pa;for(const e of t){const t=Q(e),n=We(cn(e,0,1));if(32!==t)throw new Ea({hash:e,size:t});if(n!==xa)throw new Ia({hash:e,version:n})}}wu(e)}function wu(e){const{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:s}=e;if(t<=0)throw new Bi({chainId:t});if(s&&!rn(s))throw new Yt({address:s});if(r&&r>qs)throw new xs({maxFeePerGas:r});if(n&&r&&n>r)throw new Bs({maxFeePerGas:r,maxPriorityFeePerGas:n})}function xu(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:s,to:a}=e;if(t<=0)throw new Bi({chainId:t});if(a&&!rn(a))throw new Yt({address:a});if(n||s)throw new ne("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(r&&r>qs)throw new xs({maxFeePerGas:r})}function vu(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:s,to:a}=e;if(a&&!rn(a))throw new Yt({address:a});if(void 0!==t&&t<=0)throw new Bi({chainId:t});if(n||s)throw new ne("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(r&&r>qs)throw new xs({maxFeePerGas:r})}function Pu(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 fr({storageKey:s[e]});if(!rn(r,{strict:!1}))throw new Yt({address:r});t.push([r,s])}return t}function Eu(e,t){const n=$a(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;wu(e);const l=Pu(u),f=[et(n),s?et(s):"0x",c?et(c):"0x",i?et(i):"0x",r?et(r):"0x",a??"0x",o?et(o):"0x",d??"0x",l,...Iu(e,t)];return on(["0x02",ps(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;xu(e);const d=Pu(c),l=[et(n),a?et(a):"0x",u?et(u):"0x",r?et(r):"0x",o??"0x",i?et(i):"0x",s??"0x",d,...Iu(e,t)];return on(["0x01",ps(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;gu(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(void 0===f||void 0===p)){const t="string"==typeof e.blobs[0]?e.blobs:e.blobs.map((e=>Qe(e))),n=e.kzg,r=ra({blobs:t,kzg:n});if(void 0===f&&(f=ma({commitments:r})),void 0===p){p=Aa({blobs:t,commitments:r,proofs:sa({blobs:t,commitments:r,kzg:n})})}}const h=Pu(d),m=[et(n),s?et(s):"0x",u?et(u):"0x",c?et(c):"0x",r?et(r):"0x",a??"0x",o?et(o):"0x",l??"0x",h,i?et(i):"0x",f??[],...Iu(e,t)],b=[],y=[],g=[];if(p)for(let e=0;e<p.length;e++){const{blob:t,commitment:n,proof:r}=p[e];b.push(t),y.push(n),g.push(r)}return on(["0x03",ps(p?[m,b,y,g]:m)])}(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;yu(e);const f=Pu(d),p=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?Je(e):"0x",a,r?Je(r):"0x",...Iu({},s)])}return t}(n);return on(["0x04",ps([et(r),a?et(a):"0x",u?et(u):"0x",c?et(c):"0x",s?et(s):"0x",o??"0x",i?et(i):"0x",l??"0x",f,p,...Iu(e,t)])])}(e,t):function(e,t){const{chainId:n=0,gas:r,data:s,nonce:a,to:o,value:i,gasPrice:c}=e;vu(e);let u=[a?et(a):"0x",c?et(c):"0x",r?et(r):"0x",o??"0x",i?et(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 ir({v:t.v});return e})(),r=De(t.r),s=De(t.s);u=[...u,et(e),"0x00"===r?"0x":r,"0x00"===s?"0x":s]}else n>0&&(u=[...u,et(n),"0x","0x"]);return ps(u)}(e,t)}function Iu(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=De(n.r),o=De(n.s);return["number"==typeof s?s?et(1):"0x":0n===r?"0x":1n===r?et(1):27n===r?"0x":et(1),"0x00"===a?"0x":a,"0x00"===o?"0x":o]}const ku=new Jt(8192);function Au(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 Dr(new Error("method not supported"),{method:d});if(a?.include&&!a.include.includes(d))throw new Dr(new Error("method not supported"),{method:d});if(c?.aborted)throw gr(c);return function(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(ku.get(n))return ku.get(n);const r=e().finally((()=>ku.delete(n)));return ku.set(n,r),r}((()=>mc((async()=>{try{return await e(n,c?{signal:c}:void 0)}catch(e){if(c?.aborted)throw gr(c);if(wr(e))throw e;const t=e;switch(t.code){case Cr.code:throw new Cr(t);case Fr.code:throw new Fr(t);case Mr.code:throw new Mr(t,{method:n.method});case Ur.code:throw new Ur(t);case jr.code:throw new jr(t);case qr.code:throw new qr(t);case Lr.code:throw new Lr(t);case Gr.code:throw new Gr(t);case _r.code:throw new _r(t);case Dr.code:throw new Dr(t,{method:n.method});case Hr.code:throw new Hr(t);case Vr.code:throw new Vr(t);case Zr.code:throw new Zr(t);case Wr.code:throw new Wr(t);case Kr.code:throw new Kr(t);case Yr.code:throw new Yr(t);case Jr.code:throw new Jr(t);case Xr.code:throw new Xr(t);case Qr.code:throw new Qr(t);case es.code:throw new es(t);case ts.code:throw new ts(t);case ns.code:throw new ns(t);case rs.code:throw new rs(t);case ss.code:throw new ss(t);case as.code:throw new as(t);case 5e3:throw new Zr(t);case os.code:throw new os(t);default:if(e instanceof ne)throw e;throw new is(t)}}}),{delay:({count:e,error:t})=>{if(t&&t instanceof $r){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(wr(e))return!1;if("code"in e&&"number"==typeof e.code)return-1===e.code||(e.code===Hr.code||(e.code===jr.code||429===e.code));if(e instanceof $r&&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}.${Xn(n)}`):void 0})}}class $u extends ne{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=>` ${xr(e)}`))],` Sender: ${s}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:"OffchainLookupError"})}}class Tu extends ne{constructor({result:e,url:t}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${xr(t)}`,`Response: ${Xn(e)}`],name:"OffchainLookupResponseMalformedError"})}}class Bu extends ne{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 Su="0x556f1830",Nu={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 zu(e,{blockNumber:t,blockTag:n,data:r,requestOptions:s,to:a}){const{args:o}=Jn({data:r,abi:[Nu]}),[i,c,u,d,l]=o,{ccipRead:f}=e,p=f&&"function"==typeof f?.request?f.request:Ou;try{if(!Ma(a,i))throw new Bu({sender:i,to:a});const r=c.includes(Uc)?await jc({data:u,ccipRequest:e=>p({...e,requestOptions:s})}):await p({data:u,requestOptions:s,sender:i,urls:c}),{data:o}=await Mi(e,{blockNumber:t,blockTag:n,data:sn([d,bn([{type:"bytes"},{type:"bytes"}],[r,l])]),requestOptions:s,to:a});return o}catch(e){if(s?.signal?.aborted)throw gr(s.signal);if(wr(e))throw e;throw new $u({callbackSelector:d,cause:e,data:r,extraData:l,sender:i,urls:c})}}async function Ou({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 gr(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 $r({body:c,details:a?.error?Xn(a.error):r.statusText,headers:r.headers,status:r.status,url:o});continue}if(!X(a)){s=new Tu({result:a,url:o});continue}return a}catch(e){if(t?.signal?.aborted)throw gr(t.signal);if(wr(e))throw e;s=new $r({body:c,details:e.message,url:o})}}throw s}var Ru=Object.freeze({__proto__:null,offchainLookupSignature:Su,offchainLookupAbiItem:Nu,offchainLookup:zu,ccipRequest:Ou});const Cu=1024;function Fu(e,t="hex"){const n=Ln((()=>{if("string"==typeof e){if(e.length>3&&e.length%2!=0)throw new je(e);return ct(e)}return e})(),{recursiveReadLimit:Number.POSITIVE_INFINITY}),r=Mu(n,t);if(n.position<n.bytes.length)throw new Ge({count:n.bytes.length-n.position});return r}function Mu(e,t="hex",n=0){if(n>=Cu)throw new qe({limit:Cu});if(0===e.bytes.length)return"hex"===t?Qe(e.bytes):e.bytes;const r=e.readByte();if(r<128&&e.decrementPosition(1),r<192){const n=Uu(e,r,128),s=e.readBytes(n);return"hex"===t?Qe(s):s}return function(e,t,n,r){const s=e.position,a=[];for(;e.position-s<t;)a.push(Mu(e,n,r));if(e.position-s!==t)throw new Le({consumed:e.position-s,declared:t});return a}(e,Uu(e,r,192),t,n+1)}function Uu(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 ne("Invalid RLP prefix")}function ju(e){return X(e)&&66===e.length}const qu=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),Lu=(()=>Uint8Array.from(new Array(16).fill(0).map(((e,t)=>t))))(),Gu=(()=>Lu.map((e=>(9*e+5)%16)))(),_u=(()=>{const e=[[Lu],[Gu]];for(let t=0;t<4;t++)for(let n of e)n.push(n[t].map((e=>qu[e])));return e})(),Du=(()=>_u[0])(),Hu=(()=>_u[1])(),Vu=[[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))),Zu=Du.map(((e,t)=>e.map((e=>Vu[t][e])))),Wu=Hu.map(((e,t)=>e.map((e=>Vu[t][e])))),Ku=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),Yu=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function Ju(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 Xu=new Uint32Array(16);class Qu extends oa{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)Xu[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=Ku[e],p=Yu[e],h=Du[e],m=Hu[e],b=Zu[e],y=Wu[e];for(let t=0;t<16;t++){const r=Et(n+Ju(e,s,o,c)+Xu[h[t]]+f,b[t])+d|0;n=d,d=c,c=0|Et(o,10),o=s,s=r}for(let e=0;e<16;e++){const n=Et(r+Ju(t,a,i,u)+Xu[m[e]]+p,y[e])+l|0;r=l,l=u,u=0|Et(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(){xt(Xu)}destroy(){this.destroyed=!0,xt(this.buffer),this.set(0,0,0,0,0)}}const ed=$t((()=>new Qu));function td(e){const{source:t}=e,n=new Map,r=new Jt(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 nd=td({source:{async get(e){const{address:t,client:n}=e;return na(n,{address:t,blockTag:"pending"})},set(){}}});function rd(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&&wr(e))return void a(t);a(e)}finally{clearTimeout(o)}})()}))}function sd(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const ad=sd(),od=10485760;function id(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??od,onRequest:i=t.onRequest,onResponse:c=t.onResponse,timeout:u=t.timeout??1e4}=e,d={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:l,method:f,signal:p}=d;try{const e=await rd((async({signal:e})=>{const t={...d,body:Array.isArray(s)?Xn(s.map((e=>({jsonrpc:"2.0",id:e.id??ad.take(),...e})))):Xn({jsonrpc:"2.0",id:s.id??ad.take(),...s}),headers:{...r,"Content-Type":"application/json",...l},method:f||"POST",signal:p||(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 zr({body:s,url:n}),timeout:u,signal:!0});let t;c&&await c(e);const h=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 Tr({maxSize:t,size:e})}if(!e.body){const n=await e.text(),r=(new TextEncoder).encode(n).length;if(r>t)throw new Tr({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 Tr({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(h);else{t=h;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 $r({body:s,details:Xn(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){if(p?.aborted)throw gr(p);if(wr(e))throw e;if(e instanceof $r)throw e;if(e instanceof Tr)throw e;if(e instanceof zr)throw e;throw new $r({body:s,cause:e,url:n})}}}}const cd=new Map;async function ud(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=cd.get(u);if(d)return d;let l=0;const{schedule:f}=Fi({id:u,fn:async()=>{const e=new Map,r=new Map;let f,p,h,m,b=!1,y=!1;function g(){if(s&&!y&&l<i){if(b)return;b=!0,l++,p?.close(),m=setTimeout((async()=>{m=void 0,y||await w().catch(console.error),b=!1}),c)}else e.clear(),r.clear()}async function w(){const i=await t({onClose(){for(const t of e.values())t.onError?.(new Nr({url:a}));for(const e of r.values())e.onError?.(new Nr({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(p=i,n&&(h&&clearInterval(h),h=setInterval((()=>p.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,h&&clearInterval(h),m&&(clearTimeout(m),m=void 0,b=!1),p.close(),cd.delete(u)},get socket(){return p},request({body:t,onError:n,onResponse:s}){f&&n&&n(f);const a=t.id??ad.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{p.request({body:{jsonrpc:"2.0",id:a,...t}})}catch(e){n?.(e)}},requestAsync({body:e,timeout:t=1e4}){return rd((()=>new Promise(((t,n)=>this.request({body:e,onError:n,onResponse:t})))),{errorInstance:new zr({body:e,url:a}),timeout:t})},requests:e,subscriptions:r,url:a},cd.set(u,d),[d]}}),[p,[h]]=await f();return h}({async getSocket({onClose:t,onError:n,onOpen:r,onResponse:s}){const a=await Promise.resolve().then((function(){return require("./native-55bb141d.cjs")})).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 Br({url:o.url,cause:new Nr({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 Br({body:e,url:o.url,cause:new Nr({url:o.url})});return o.send(JSON.stringify(e))}})},keepAlive:n,reconnect:r,url:e})}const dd="Ethereum Signed Message:\n";function ld(e){const t="string"==typeof e?nt(e):"string"==typeof e.raw?e.raw:Qe(e.raw);return sn([nt(`${dd}${Q(t)}`),t])}function fd(e,t){return Ht(ld(e),t)}class pd extends ne{constructor({domain:e}){super(`Invalid domain "${Xn(e)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class hd extends ne{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 md extends ne{constructor({type:e}){super(`Struct type "${e}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}class bd extends ne{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 yd(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 Xn({domain:o,message:i,primaryType:r,types:s})}function gd(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 bd({type:r});const c=r.match(mn);if(c&&("number"==typeof o||"bigint"==typeof o)){const[e,t,n]=c;et(o,{signed:"int"===t,size:Number.parseInt(n,10)/8})}if("address"===r&&"string"==typeof o&&!rn(o))throw new Yt({address:o});const u=r.match(hn);if(u){const[e,t]=u;if(t&&Q(o)!==Number.parseInt(t,10))throw new ve({expectedSize:Number.parseInt(t,10),givenSize:Q(o)})}const d=s[r];d&&(xd(r),a(d,o))}};if(s.EIP712Domain&&t){if("object"!=typeof t)throw new pd({domain:t});a(s.EIP712Domain,t)}if("EIP712Domain"!==r){if(!s[r])throw new hd({primaryType:r,types:s});a(s[r],n)}}function wd({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 xd(e){if("address"===e||"bool"===e||"string"===e||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new md({type:e})}function vd(e){const{domain:t={},message:n,primaryType:r}=e,s={EIP712Domain:wd({domain:t}),...e.types};gd({domain:t,message:n,primaryType:r,types:s});const a=["0x1901"];return t&&a.push(Pd({domain:t,types:s})),"EIP712Domain"!==r&&a.push(Ed({data:n,primaryType:r,types:s})),Ht(sn(a))}function Pd({domain:e,types:t}){return Ed({data:e,primaryType:"EIP712Domain",types:t})}function Ed({data:e,primaryType:t,types:n}){return Ht(Id({data:e,primaryType:t,types:n}))}function Id({data:e,primaryType:t,types:n}){const r=[{type:"bytes32"}],s=[kd({primaryType:t,types:n})];for(const a of n[t]){const[t,o]=$d({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),s.push(o)}return bn(r,s)}function kd({primaryType:e,types:t}){const n=Je(function({primaryType:e,types:t}){let n="";const r=Ad({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 Ht(n)}function Ad({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])Ad({primaryType:e.type,types:t},n);return n}function $d({types:e,name:t,type:n,value:r}){if(void 0!==e[n])return[{type:"bytes32"},Ht(Id({data:r,primaryType:n,types:e}))];if("bytes"===n)return[{type:"bytes32"},Ht(r)];if("string"===n)return[{type:"bytes32"},Ht(Je(r))];if(n.lastIndexOf("]")===n.length-1){const s=n.slice(0,n.lastIndexOf("[")),a=r.map((n=>$d({name:t,type:s,types:e,value:n})));return[{type:"bytes32"},Ht(bn(a.map((([e])=>e)),a.map((([,e])=>e))))]}return[{type:n},r]}const Td="0x6492649264926492649264926492649264926492649264926492649264926492";function Bd(e){return fn(e,-32)===Td}class Sd extends Error{constructor(e,t={}){const n=t.cause instanceof Sd?t.cause.details:t.cause?.message?t.cause.message:t.details,r=t.cause instanceof Sd&&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 Nd(e,t){const n=e.exec(t);return n?.groups}const zd=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Od=/^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)?$/,Rd=/^\(.+?\).*?$/,Cd=/^tuple(?<array>(\[(\d*)\])*)$/;function Fd(e){let t=e.type;if(Cd.test(e.type)&&"components"in e){t="(";const n=e.components.length;for(let r=0;r<n;r++){t+=Fd(e.components[r]),r<n-1&&(t+=", ")}const r=Nd(Cd,e.type);return t+=`)${r?.array||""}`,Fd({...e,type:t})}return"indexed"in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function Md(e){let t="";const n=e.length;for(let r=0;r<n;r++){t+=Fd(e[r]),r!==n-1&&(t+=", ")}return t}function Ud(e){return"function"===e.type?`function ${e.name}(${Md(e.inputs)})${e.stateMutability&&"nonpayable"!==e.stateMutability?` ${e.stateMutability}`:""}${e.outputs?.length?` returns (${Md(e.outputs)})`:""}`:"event"===e.type?`event ${e.name}(${Md(e.inputs)})`:"error"===e.type?`error ${e.name}(${Md(e.inputs)})`:"constructor"===e.type?`constructor(${Md(e.inputs)})${"payable"===e.stateMutability?" payable":""}`:"fallback"===e.type?"fallback() external"+("payable"===e.stateMutability?" payable":""):"receive() external payable"}const jd=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const qd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;const Ld=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;const Gd=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function _d(e){return Gd.test(e)}function Dd(e){return Nd(Gd,e)}const Hd=/^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;const Vd=/^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;const Zd=/^receive\(\) external payable$/;const Wd=new Set(["memory","indexed","storage","calldata"]),Kd=new Set(["indexed"]),Yd=new Set(["calldata","memory","storage"]);class Jd extends Sd{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 Xd extends Sd{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 Qd extends Sd{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 el extends Sd{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 tl extends Sd{constructor({param:e}){super("Invalid ABI parameter.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class nl extends Sd{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 rl extends Sd{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 sl extends Sd{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 al extends Sd{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 ol extends Sd{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class il extends Sd{constructor({signature:e}){super("Unknown signature.",{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class cl extends Sd{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 ul extends Sd{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 dl extends Sd{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 ll=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 fl(e,t={}){if(function(e){return Ld.test(e)}(e))return function(e,t={}){const n=function(e){return Nd(Ld,e)}(e);if(!n)throw new ol({signature:e,type:"function"});const r=yl(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(bl(r[e],{modifiers:Yd,structs:t,type:"function"}));const o=[];if(n.returns){const e=yl(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(bl(e[n],{modifiers:Yd,structs:t,type:"function"}))}return{name:n.name,type:"function",stateMutability:n.stateMutability??"nonpayable",inputs:s,outputs:o}}(e,t);if(function(e){return qd.test(e)}(e))return function(e,t={}){const n=function(e){return Nd(qd,e)}(e);if(!n)throw new ol({signature:e,type:"event"});const r=yl(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(bl(r[e],{modifiers:Kd,structs:t,type:"event"}));return{name:n.name,type:"event",inputs:s}}(e,t);if(function(e){return jd.test(e)}(e))return function(e,t={}){const n=function(e){return Nd(jd,e)}(e);if(!n)throw new ol({signature:e,type:"error"});const r=yl(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(bl(r[e],{structs:t,type:"error"}));return{name:n.name,type:"error",inputs:s}}(e,t);if(function(e){return Hd.test(e)}(e))return function(e,t={}){const n=function(e){return Nd(Hd,e)}(e);if(!n)throw new ol({signature:e,type:"constructor"});const r=yl(n.parameters),s=[],a=r.length;for(let e=0;e<a;e++)s.push(bl(r[e],{structs:t,type:"constructor"}));return{type:"constructor",stateMutability:n.stateMutability??"nonpayable",inputs:s}}(e,t);if(function(e){return Vd.test(e)}(e))return function(e){const t=function(e){return Nd(Vd,e)}(e);if(!t)throw new ol({signature:e,type:"fallback"});return{type:"fallback",stateMutability:t.stateMutability??"nonpayable"}}(e);if(function(e){return Zd.test(e)}(e))return{type:"receive",stateMutability:"payable"};throw new il({signature:e})}const pl=/^(?<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$_]*))?$/,hl=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,ml=/^u?int$/;function bl(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(ll.has(n))return ll.get(n);const r=Rd.test(e),s=Nd(r?hl:pl,e);if(!s)throw new tl({param:e});if(s.name&&function(e){return"address"===e||"bool"===e||"function"===e||"string"===e||"tuple"===e||zd.test(e)||Od.test(e)||wl.test(e)}(s.name))throw new nl({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=yl(s.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(bl(e[r],{structs:i}));u={components:t}}else if(s.type in i)c="tuple",u={components:i[s.type]};else if(ml.test(s.type))c=`${s.type}256`;else if("address payable"===s.type)c="address";else if(c=s.type,"struct"!==t?.type&&!gl(c))throw new Qd({type:c});if(s.modifier){if(!t?.modifiers?.has?.(s.modifier))throw new rl({param:e,type:t?.type,modifier:s.modifier});if(Yd.has(s.modifier)&&!function(e,t){return t||"bytes"===e||"string"===e||"tuple"===e}(c,!!s.array))throw new sl({param:e,type:t?.type,modifier:s.modifier})}const d={type:`${c}${s.array??""}`,...a,...o,...u};return ll.set(n,d),d}function yl(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?yl(o,[...t,n.trim()]):yl(o,t,`${n}${s}`,r);case"(":return yl(o,t,`${n}${s}`,r+1);case")":return yl(o,t,`${n}${s}`,r-1);default:return yl(o,t,`${n}${s}`,r)}}if(""===n)return t;if(0!==r)throw new dl({current:n,depth:r});return t.push(n.trim()),t}function gl(e){return"address"===e||"bool"===e||"function"===e||"string"===e||zd.test(e)||Od.test(e)}const wl=/^(?: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 xl(e){const t={},n=e.length;for(let r=0;r<n;r++){const n=e[r];if(!_d(n))continue;const s=Dd(n);if(!s)throw new ol({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=bl(t,{type:"struct"});o.push(n)}if(!o.length)throw new cl({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]=Pl(a,t)}return r}const vl=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function Pl(e=[],t={},n=new Set){const r=[],s=e.length;for(let a=0;a<s;a++){const s=e[a];if(Rd.test(s.type))r.push(s);else{const e=Nd(vl,s.type);if(!e?.type)throw new al({abiParameter:s});const{array:a,type:o}=e;if(o in t){if(n.has(o))throw new ul({type:o});r.push({...s,type:`tuple${a??""}`,components:Pl(t[o],t,new Set([...n,o]))})}else{if(!gl(o))throw new Xd({type:o});r.push(s)}}}return r}function El(e){let t;if("string"==typeof e)t=fl(e);else{const n=xl(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(!_d(r)){t=fl(r,n);break}}}if(!t)throw new Jd({signature:e});return t}function Il(e){const t=[];if("string"==typeof e){const n=yl(e),r=n.length;for(let e=0;e<r;e++)t.push(bl(n[e],{modifiers:Wd}))}else{const n=xl(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(_d(r))continue;const a=yl(r),o=a.length;for(let e=0;e<o;e++)t.push(bl(a[e],{modifiers:Wd,structs:n}))}}if(0===t.length)throw new el({params:e});return t}class kl 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 Al={checksum:new kl(8192)}.checksum;class $l extends At{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");bt(e.outputLen),bt(e.blockLen)}(e);const n=kt(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),xt(s)}update(e){return gt(this),this.iHash.update(e),this}digestInto(e){gt(this),yt(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 Tl=(e,t,n)=>new $l(e,t).update(n).digest();function Bl(e,t={}){const{as:n=("string"==typeof e?"Hex":"Bytes")}=t,r=Dt(Ro(e));return"Bytes"===n?r:ti(r)}function Sl(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 Rl({prefix:r,cause:new Fl})}else{if(!0!==n&&("bigint"!=typeof s||void 0!==a))throw new Ol({publicKey:e});if(3!==r&&2!==r)throw new Rl({prefix:r,cause:new Cl})}}function Nl(e){const t=(()=>{if(li(e))return zl(e);if(Do(e))return function(e){return zl(ti(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 Sl(t),t}function zl(e){if(132!==e.length&&130!==e.length&&68!==e.length)throw new Ml({publicKey:e});if(130===e.length){return{prefix:4,x:BigInt(oi(e,0,32)),y:BigInt(oi(e,32,64))}}if(132===e.length){return{prefix:Number(oi(e,0,1)),x:BigInt(oi(e,1,33)),y:BigInt(oi(e,33,65))}}return{prefix:Number(oi(e,0,1)),x:BigInt(oi(e,1,33))}}Tl.create=(e,t)=>new $l(e,t);class Ol extends Eo{constructor({publicKey:e}){super(`Value \`${No(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 Rl extends Eo{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 Cl extends Eo{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 Fl extends Eo{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}class Ml extends Eo{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 ${ii(Qo(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}}const Ul=/^0x[a-fA-F0-9]{40}$/;function jl(e,t={}){const{strict:n=!0}=t;if(!Ul.test(e))throw new _l({address:e,cause:new Dl});if(n){if(e.toLowerCase()===e)return;if(ql(e)!==e)throw new _l({address:e,cause:new Hl})}}function ql(e){if(Al.has(e))return Al.get(e);jl(e,{strict:!1});const t=e.substring(2).toLowerCase(),n=Bl(Fo(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 Al.set(e,s),s}function Ll(e,t={}){const n=Bl(`0x${function(e,t={}){Sl(e);const{prefix:n,x:r,y:s}=e,{includePrefix:a=!0}=t;return Xo(a?ni(n,{size:1}):"0x",ni(r,{size:32}),"bigint"==typeof s?ni(s,{size:32}):"0x")}(e).slice(4)}`).substring(26);return function(e,t={}){const{checksum:n=!1}=t;return jl(e),n?ql(e):e}(`0x${n}`,t)}function Gl(e,t={}){const{strict:n=!0}=t??{};try{return jl(e,{strict:n}),!0}catch{return!1}}class _l extends Eo{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 Dl extends Eo{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 Hl extends Eo{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}const Vl=/^(.*)\[([0-9]*)\]$/,Zl=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Wl=/^(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)?$/,Kl=2n**256n-1n;function Yl(e,t,n){const{checksumAddress:r,staticPosition:s}=n,a=tf(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+Lo(e.readBytes(Xl)),s=n+Jl;e.setPosition(n);const o=Lo(e.readBytes(Jl)),i=nf(t);let c=0;const u=[];for(let n=0;n<o;++n){e.setPosition(s+(i?32*n:c));const[a,o]=Yl(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(nf(t)){const n=a+Lo(e.readBytes(Xl)),o=[];for(let a=0;a<s;++a){e.setPosition(n+32*a);const[s]=Yl(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]=Yl(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(nf(t)){const n=s+Lo(e.readBytes(Xl));for(let s=0;s<t.components.length;++s){const c=t.components[s];e.setPosition(n+i);const[u,d]=Yl(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]=Yl(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?ql(e):e;return[s(ti(Uo(r,-20))),32]}(e,{checksum:r});if("bool"===t.type)return function(e){return[qo(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=Lo(e.readBytes(32));e.setPosition(n+t);const r=Lo(e.readBytes(32));if(0===r)return e.setPosition(n+32),["0x",32];const s=e.readBytes(r);return e.setPosition(n+32),[ti(s),32]}const a=ti(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?jo(s,{signed:n}):Lo(s,{signed:n}),32]}(e,t);if("string"===t.type)return function(e,{staticPosition:t}){const n=Lo(e.readBytes(32)),r=t+n;e.setPosition(r);const s=Lo(e.readBytes(32));if(0===s)return e.setPosition(t+32),["",32];const a=e.readBytes(s,32),o=Go(_o(a));return e.setPosition(t+32),[o,32]}(e,{staticPosition:s});throw new wf(t.type)}const Jl=32,Xl=32;function Ql({checksumAddress:e=!1,parameter:t,value:n}){const r=t,s=tf(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 gf(e);if(!a&&e.length!==r)throw new mf({expectedLength:r,givenLength:e.length,type:`${s.type}[${r}]`});let o=0===e.length&&nf(s);const i=[];for(let t=0;t<e.length;t++){const r=Ql({checksumAddress:n,parameter:s,value:e[t]});r.dynamic&&(o=!0),i.push(r)}if(a||o){const e=ef(i);if(a){const t=ni(i.length,{size:32});return{dynamic:!0,encoded:i.length>0?Xo(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Xo(...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=Ql({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(i),i.dynamic&&(s=!0)}return{dynamic:s,encoded:s?ef(a):Xo(...a.map((({encoded:e})=>e)))}}(n,{checksumAddress:e,parameter:r});if("address"===r.type)return function(e,t){const{checksum:n=!1}=t;return jl(e,{strict:n}),{dynamic:!1,encoded:si(e.toLowerCase())}}(n,{checksum:e});if("bool"===r.type)return function(e){if("boolean"!=typeof e)throw new Eo(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:si(ei(e))}}(n);if(r.type.startsWith("uint")||r.type.startsWith("int")){const e=r.type.startsWith("int"),[,,t="256"]=Wl.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 fi({max:r.toString(),min:s.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:ni(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=ii(e);if(!n){let t=e;return r%32!=0&&(t=ai(t,32*Math.ceil((e.length-2)/2/32))),{dynamic:!0,encoded:Xo(si(ni(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new bf({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ai(e)}}(n,{type:r.type});if("string"===r.type)return function(e){const t=ri(e),n=Math.ceil(ii(t)/32),r=[];for(let e=0;e<n;e++)r.push(ai(oi(t,32*e,32*(e+1))));return{dynamic:!0,encoded:Xo(ai(ni(ii(t),{size:32})),...r)}}(n);throw new wf(r.type)}function ef(e){let t=0;for(let n=0;n<e.length;n++){const{dynamic:r,encoded:s}=e[n];t+=r?32:ii(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(ni(t+s,{size:32})),r.push(i),s+=ii(i)):n.push(i)}return Xo(...n,...r)}function tf(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function nf(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(nf);const n=tf(e.type);return!(!n||!nf({...e,type:n[1]}))}const rf={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 cf({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new of({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new af({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 af({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 sf(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(rf);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}class af extends Eo{constructor({offset:e}){super(`Offset \`${e}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class of extends Eo{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 cf extends Eo{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 uf(e,t,n={}){const{as:r="Array",checksumAddress:s=!1}=n,a="string"==typeof t?Co(t):t,o=sf(a);if(0===Mo(a)&&e.length>0)throw new hf;if(Mo(a)&&Mo(a)<32)throw new pf({data:"string"==typeof t?t:ti(t),parameters:e,size:Mo(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]=Yl(o,n,{checksumAddress:s,staticPosition:0});i+=d,"Array"===r?c.push(u):c[n.name??t]=u}return c}function df(e,t,n){const{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new yf({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(Ql({checksumAddress:e,parameter:t[s],value:n[s]}));return r}({checksumAddress:r,parameters:e,values:t}),a=ef(s);return 0===a.length?"0x":a}function lf(e,t){if(e.length!==t.length)throw new yf({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(lf.encode(s,a))}return Xo(...n)}function ff(e){return Array.isArray(e)&&"string"==typeof e[0]||"string"==typeof e?Il(e):e}!function(e){e.encode=function e(t,n,r=!1){if("address"===t){const e=n;return jl(e),si(e.toLowerCase(),r?32:0)}if("string"===t)return ri(n);if("bytes"===t)return n;if("bool"===t)return si(ei(n),r?32:1);const s=t.match(Wl);if(s){const[e,t,a="256"]=s,o=Number.parseInt(a,10)/8;return ni(n,{size:r?32:o,signed:"int"===t})}const a=t.match(Zl);if(a){const[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new bf({expectedSize:Number.parseInt(t,10),value:n});return ai(n,r?32:0)}const o=t.match(Vl);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":Xo(...s)}throw new wf(t)}}(lf||(lf={}));class pf extends Eo{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${Md(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.DataSizeTooSmallError"})}}class hf extends Eo{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class mf extends Eo{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 bf extends Eo{constructor({expectedSize:e,value:t}){super(`Size of bytes "${t}" (bytes${ii(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class yf extends Eo{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 gf extends Eo{constructor(e){super(`Value \`${e}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class wf extends Eo{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 xf(e,t){const{as:n}=t,r=vf(e),s=sf(new Uint8Array(r.length));return r.encode(s),"Hex"===n?ti(s.bytes):s.bytes}function vf(e){return Array.isArray(e)?function(e){const t=e.reduce(((e,t)=>e+t.length),0),n=Pf(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=>vf(e)))):function(e){const t="string"==typeof e?Co(e):e,n=Pf(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 Pf(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new Eo("Length is too large.")}const Ef=BigInt(0),If=BigInt(1),kf=BigInt(2),Af=BigInt(3),$f=BigInt(4),Tf=BigInt(5),Bf=BigInt(8);function Sf(e,t){const n=e%t;return n>=Ef?n:t+n}function Nf(e,t,n){let r=e;for(;t-- >Ef;)r*=r,r%=n;return r}function zf(e,t){if(e===Ef)throw new Error("invert: expected non-zero number");if(t<=Ef)throw new Error("invert: expected positive modulus, got "+t);let n=Sf(e,t),r=t,s=Ef,a=If;for(;n!==Ef;){const e=r%n,t=s-a*(r/n);r=n,n=e,s=a,a=t}if(r!==If)throw new Error("invert: does not exist");return Sf(s,t)}function Of(e,t){const n=(e.ORDER+If)/$f,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw new Error("Cannot find square root");return r}function Rf(e,t){const n=(e.ORDER-Tf)/Bf,r=e.mul(t,kf),s=e.pow(r,n),a=e.mul(t,s),o=e.mul(e.mul(a,kf),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 Cf(e){return e%$f===Af?Of:e%Bf===Tf?Rf:function(e){if(e<BigInt(3))throw new Error("sqrt is not defined for small field");let t=e-If,n=0;for(;t%kf===Ef;)t/=kf,n++;let r=kf;const s=Lf(e);for(;1===jf(s,r);)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(1===n)return Of;let a=s.pow(r,t);const o=(t+If)/kf;return function(e,r){if(e.is0(r))return r;if(1!==jf(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=If<<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 Ff=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Mf(e){return vo(e,Ff.reduce(((e,t)=>(e[t]="function",e)),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"}))}function Uf(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 jf(e,t){const n=(e.ORDER-If)/kf,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 qf(e,t){void 0!==t&&bt(t);const n=void 0!==t?t:e.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function Lf(e,t,n=!1,r={}){if(e<=Ef)throw new Error("invalid field: expected ORDER > 0, got "+e);const{nBitLength:s,nByteLength:a}=qf(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:yo(s),ZERO:Ef,ONE:If,create:t=>Sf(t,e),isValid:t=>{if("bigint"!=typeof t)throw new Error("invalid field element: expected bigint, got "+typeof t);return Ef<=t&&t<e},is0:e=>e===Ef,isOdd:e=>(e&If)===If,neg:t=>Sf(-t,e),eql:(e,t)=>e===t,sqr:t=>Sf(t*t,e),add:(t,n)=>Sf(t+n,e),sub:(t,n)=>Sf(t-n,e),mul:(t,n)=>Sf(t*n,e),pow:(e,t)=>function(e,t,n){if(n<Ef)throw new Error("invalid exponent, negatives unsupported");if(n===Ef)return e.ONE;if(n===If)return t;let r=e.ONE,s=t;for(;n>Ef;)n&If&&(r=e.mul(r,s)),s=e.sqr(s),n>>=If;return r}(i,e,t),div:(t,n)=>Sf(t*zf(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>zf(t,e),sqrt:r.sqrt||(t=>(o||(o=Cf(e)),o(i,t))),toBytes:e=>n?uo(e,a):co(e,a),fromBytes:e=>{if(e.length!==a)throw new Error("Field.fromBytes: expected "+a+" bytes, got "+e.length);return n?io(e):oo(e)},invertBatch:e=>Uf(i,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(i)}function Gf(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 _f(e){const t=Gf(e);return t+Math.ceil(t/2)}const Df=BigInt(0),Hf=BigInt(1);function Vf(e,t){const n=t.negate();return e?n:t}function Zf(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function Wf(e,t){Zf(e,t);const n=2**e;return{windows:Math.ceil(t/e)+1,windowSize:2**(e-1),mask:yo(e),maxNumber:n,shiftBy:BigInt(e)}}function Kf(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+=Hf);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 Yf=new WeakMap,Jf=new WeakMap;function Xf(e){return Jf.get(e)||1}function Qf(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>Za;e>>=Wa,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=yo(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 ep(e){return Mf(e.Fp),vo(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...qf(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}function tp(e){void 0!==e.lowS&&Ja("lowS",e.lowS),void 0!==e.prehash&&Ja("prehash",e.prehash)}class np extends Error{constructor(e=""){super(e)}}const rp={Err:np,_tlv:{encode:(e,t)=>{const{Err:n}=rp;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=Xa(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const a=r>127?Xa(s.length/2|128):"";return Xa(e)+a+s+t},decode(e,t){const{Err:n}=rp;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}=rp;if(e<ap)throw new t("integer: negative integers are not allowed");let n=Xa(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}=rp;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 oo(e)}},toSig(e){const{Err:t,_int:n,_tlv:r}=rp,s=lo("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}=rp,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}};function sp(e,t){return no(co(e,t))}const ap=BigInt(0),op=BigInt(1),ip=BigInt(2),cp=BigInt(3),up=BigInt(4);function dp(e){const t=function(e){const t=ep(e);vo(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=Lf(t.n,t.nBitLength),s=t.toBytes||((e,t,r)=>{const s=t.toAffine();return fo(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,cp),up),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(Ka(e)&&(e=no(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:oo(lo("private key",e,r))}catch(t){throw new Error("invalid private key, expected hex or "+r+" bytes, got "+typeof e)}return s&&(o=Sf(o,a)),bo("private key",o,op,a),o}function l(e){if(!(e instanceof h))throw new Error("ProjectivePoint expected")}const f=Po(((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}})),p=Po((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 h{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 h)throw new Error("projective point not allowed");const s=e=>n.eql(e,n.ZERO);return s(t)&&s(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const t=Uf(n,e.map((e=>e.pz)));return e.map(((e,n)=>e.toAffine(t[n]))).map(h.fromAffine)}static fromHex(e){const t=h.fromAffine(a(lo("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Qf(h,r,e,t)}_setWindowSize(e){y.setWindowSize(this,e)}assertValidity(){p(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 h(this.px,n.neg(this.py),this.pz)}double(){const{a:e,b:r}=t,s=n.mul(r,cp),{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),p=n.mul(i,i),m=n.mul(a,o);return m=n.add(m,m),d=n.mul(a,i),d=n.add(d,d),c=n.mul(e,d),u=n.mul(s,p),u=n.add(c,u),c=n.sub(f,u),u=n.add(f,u),u=n.mul(c,u),c=n.mul(m,c),d=n.mul(s,d),p=n.mul(e,p),m=n.sub(l,p),m=n.mul(e,m),m=n.add(m,d),d=n.add(l,l),l=n.add(d,l),l=n.add(l,p),l=n.mul(l,m),u=n.add(u,l),p=n.mul(o,i),p=n.add(p,p),l=n.mul(p,m),c=n.sub(c,l),d=n.mul(p,f),d=n.add(d,d),d=n.add(d,d),new h(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 p=t.a,m=n.mul(t.b,cp);let b=n.mul(r,o),y=n.mul(s,i),g=n.mul(a,c),w=n.add(r,s),x=n.add(o,i);w=n.mul(w,x),x=n.add(b,y),w=n.sub(w,x),x=n.add(r,a);let v=n.add(o,c);return x=n.mul(x,v),v=n.add(b,g),x=n.sub(x,v),v=n.add(s,a),u=n.add(i,c),v=n.mul(v,u),u=n.add(y,g),v=n.sub(v,u),f=n.mul(p,x),u=n.mul(m,g),f=n.add(u,f),u=n.sub(y,f),f=n.add(y,f),d=n.mul(u,f),y=n.add(b,b),y=n.add(y,b),g=n.mul(p,g),x=n.mul(m,x),y=n.add(y,g),g=n.sub(b,g),g=n.mul(p,g),x=n.add(x,g),b=n.mul(y,x),d=n.add(d,b),b=n.mul(v,x),u=n.mul(w,u),u=n.sub(u,b),b=n.mul(w,y),f=n.mul(v,f),f=n.add(f,b),new h(u,d,f)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return y.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){const{endo:r,n:s}=t;bo("scalar",e,ap,s);const a=h.ZERO;if(e===ap)return a;if(this.is0()||e===op)return this;if(!r||y.hasPrecomputes(this))return y.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:i,k2neg:c,k2:u}=r.splitScalar(e),d=a,l=a,f=this;for(;i>ap||u>ap;)i&op&&(d=d.add(f)),u&op&&(l=l.add(f)),f=f.double(),i>>=op,u>>=op;return o&&(d=d.negate()),c&&(l=l.negate()),l=new h(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(bo("scalar",e,op,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 h(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 h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){const r=h.BASE,s=(e,t)=>t!==ap&&t!==op&&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===op)return!0;if(n)return n(h,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:e,clearCofactor:n}=t;return e===op?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Ja("isCompressed",e),this.assertValidity(),s(h,this,e)}toHex(e=!0){return Ja("isCompressed",e),no(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);const{endo:m,nBitLength:b}=t,y=(g=h,w=m?Math.ceil(b/2):b,{constTimeNegate:Vf,hasPrecomputes:e=>1!==Xf(e),unsafeLadder(e,t,n=g.ZERO){let r=e;for(;t>Df;)t&Hf&&(n=n.add(r)),r=r.double(),t>>=Hf;return n},precomputeWindow(e,t){const{windows:n,windowSize:r}=Wf(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=Wf(e,w);for(let e=0;e<a.windows;e++){const{nextN:o,offset:i,isZero:c,isNeg:u,isNegF:d,offsetF:l}=Kf(n,e,a);n=o,c?s=s.add(Vf(d,t[l])):r=r.add(Vf(u,t[i]))}return{p:r,f:s}},wNAFUnsafe(e,t,n,r=g.ZERO){const s=Wf(e,w);for(let e=0;e<s.windows&&n!==Df;e++){const{nextN:a,offset:o,isZero:i,isNeg:c}=Kf(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=Yf.get(t);return r||(r=this.precomputeWindow(t,e),1!==e&&Yf.set(t,n(r))),r},wNAFCached(e,t,n){const r=Xf(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){const s=Xf(e);return 1===s?this.unsafeLadder(e,t,r):this.wNAFUnsafe(s,this.getPrecomputes(s,e,n),t,r)},setWindowSize(e,t){Zf(t,w),Jf.set(e,t),Yf.delete(e)}});var g,w;return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:function(e){return mo(e,op,t.n)}}}function lp(e){const t=function(e){const t=ep(e);return vo(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 Sf(e,r)}function u(e){return zf(e,r)}const{ProjectivePoint:d,normPrivateKeyToScalar:l,weierstrassEquation:f,isWithinCurveOrder:p}=dp({...t,toBytes(e,t,r){const s=t.toAffine(),a=n.toBytes(s.x),o=fo;return Ja("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=oo(s);if(!mo(e,op,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&op)===op)&&(a=n.neg(a)),{x:e,y:a}}}});function h(e){return e>r>>op}const m=(e,t,n)=>oo(e.slice(t,n));class b{constructor(e,t,n){bo("r",e,op,r),bo("s",t,op,r),this.r=e,this.s=t,null!=n&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){const t=s;return e=lo("compactSignature",e,2*t),new b(m(e,0,t),m(e,t,2*t))}static fromDER(e){const{r:t,s:n}=rp.toSig(lo("DER",e));return new b(t,n)}assertValidity(){}addRecoveryBit(e){return new b(this.r,this.s,e)}recoverPublicKey(e){const{r:r,s:s,recovery:a}=this,o=x(lo("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+sp(i,n.BYTES)),p=u(i),h=c(-o*p),m=c(s*p),b=d.BASE.multiplyAndAddUnsafe(f,h,m);if(!b)throw new Error("point at infinify");return b.assertValidity(),b}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return ao(this.toDERHex())}toDERHex(){return rp.hexFromSig(this)}toCompactRawBytes(){return ao(this.toCompactHex())}toCompactHex(){const e=s;return sp(this.r,e)+sp(this.s,e)}}const y={isValidPrivateKey(e){try{return l(e),!0}catch(e){return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const e=_f(t.n);return function(e,t,n=!1){const r=e.length,s=Gf(t),a=_f(t);if(r<16||r<a||r>1024)throw new Error("expected "+a+"-1024 bytes of input, got "+r);const o=Sf(n?io(e):oo(e),t-If)+If;return n?uo(o,s):co(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=lo("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=oo(e),n=8*e.length-a;return n>0?t>>BigInt(n):t},x=t.bits2int_modN||function(e){return c(w(e))},v=yo(a);function P(e){return bo("num < 2^"+a,e,ap,v),co(e,s)}function E(e,r,s=I){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:m}=s;null==i&&(i=!0),e=lo("msgHash",e),tp(s),f&&(e=lo("prehashed msgHash",a(e)));const y=x(e),g=l(r),v=[P(g),P(y)];if(null!=m&&!1!==m){const e=!0===m?o(n.BYTES):m;v.push(lo("extraEntropy",e))}const E=fo(...v),k=y;return{seed:E,k2sig:function(e){const t=w(e);if(!p(t))return;const n=u(t),r=d.BASE.multiply(t).toAffine(),s=c(r.x);if(s===ap)return;const a=c(n*c(k+s*g));if(a===ap)return;let o=(r.x===s?0:2)|Number(r.y&op),l=a;return i&&h(a)&&(l=function(e){return h(e)?c(-e):e}(a),o^=1),new b(s,l,o)}}}const I={lowS:t.lowS,prehash:!1},k={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=I){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=go(e),s=go(e),a=0;const o=()=>{r.fill(1),s.fill(0),a=0},i=(...e)=>n(s,r,...e),c=(e=go(0))=>{s=i(wo([0]),e),r=i(),0!==e.length&&(s=i(wo([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 fo(...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=k){const a=e;n=lo("msgHash",n),r=lo("publicKey",r);const{lowS:o,prehash:i,format:l}=s;if(tp(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||Ka(a),p=!f&&!l&&"object"==typeof a&&null!==a&&"bigint"==typeof a.r&&"bigint"==typeof a.s;if(!f&&!p)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let h,m;try{if(p&&(h=new b(a.r,a.s)),f){try{"compact"!==l&&(h=b.fromDER(a))}catch(e){if(!(e instanceof rp.Err))throw e}h||"der"===l||(h=b.fromCompact(a))}m=d.fromHex(r)}catch(e){return!1}if(!h)return!1;if(o&&h.hasHighS())return!1;i&&(n=t.hash(n));const{r:y,s:g}=h,w=x(n),v=u(g),P=c(w*v),E=c(y*v),I=d.BASE.multiplyAndAddUnsafe(m,P,E)?.toAffine();return!!I&&c(I.x)===y},ProjectivePoint:d,Signature:b,utils:y}}function fp(e,t){if(Mf(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=ap;for(let e=n-op;e%ip===ap;e/=ip)r+=op;const s=r,a=ip<<s-op-op,o=a*ip,i=(n-op)/o,c=(i-op)/ip,u=o-op,d=a,l=e.pow(t,i),f=e.pow(t,(i+op)/ip);let p=(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 p=e.mul(o,a);i=e.pow(p,d);let h=e.eql(i,e.ONE);a=e.mul(o,f),i=e.mul(p,r),o=e.cmov(a,o,h),p=e.cmov(i,p,h);for(let t=s;t>op;t--){let n=t-ip;n=ip<<n-op;let s=e.pow(p,n);const i=e.eql(s,e.ONE);a=e.mul(o,r),r=e.mul(r,r),s=e.mul(p,r),o=e.cmov(a,o,i),p=e.cmov(s,p,i)}return{isValid:h,value:o}};if(e.ORDER%up===cp){const n=(e.ORDER-cp)/up,r=e.sqrt(e.neg(t));p=(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 p}(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:p}=n(a,u);l=e.mul(s,r),l=e.mul(l,p),d=e.cmov(d,o,f),l=e.cmov(l,p,f);const h=e.isOdd(r)===e.isOdd(l);l=e.cmov(e.neg(l),l,h);const m=Uf(e,[i],!0)[0];return d=e.mul(d,m),{x:d,y:l}}}function pp(e){return{hash:e,hmac:(t,...n)=>Tl(e,t,function(...e){let t=0;for(let n=0;n<e.length;n++){const r=e[n];yt(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:Tt}}const hp=oo;function mp(e,t){if(yp(e),yp(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 bp(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 yp(e){if(!Number.isSafeInteger(e))throw new Error("number expected")}function gp(e,t,n){vo(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;Ya(e),yp(t);const u="string"==typeof c?po(c):c,d=r.toString(2).length,l=Math.ceil((d+s)/8),f=t*a*l;let p;if("xmd"===i)p=function(e,t,n,r){Ya(e),Ya(t),yp(n),t.length>255&&(t=r(fo(po("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=fo(t,mp(t.length,1)),c=mp(0,a),u=mp(n,2),d=new Array(o),l=r(fo(c,e,u,mp(0,1),i));d[0]=r(fo(l,mp(1,1),i));for(let e=1;e<=o;e++){const t=[bp(l,d[e-1]),mp(e+1,1),i];d[e]=r(fo(...t))}return fo(...d).slice(0,n)}(e,u,f,o);else if("xof"===i)p=function(e,t,n,r,s){if(Ya(e),Ya(t),yp(n),t.length>255){const e=Math.ceil(2*r/8);t=s.create({dkLen:e}).update(po("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(mp(n,2)).update(t).update(mp(t.length,1)).digest()}(e,u,f,s,o);else{if("_internal_pass"!==i)throw new Error('expand must be "xmd" or "xof"');p=e}const h=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=p.subarray(s,s+l);t[n]=Sf(hp(o),r)}h[e]=t}return h}const wp=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),xp=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),vp=BigInt(0),Pp=BigInt(1),Ep=BigInt(2),Ip=(e,t)=>(e+t/Ep)/t;function kp(e){const t=wp,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=Nf(d,n,t)*d%t,f=Nf(l,n,t)*d%t,p=Nf(f,Ep,t)*u%t,h=Nf(p,s,t)*p%t,m=Nf(h,a,t)*h%t,b=Nf(m,i,t)*m%t,y=Nf(b,c,t)*b%t,g=Nf(y,i,t)*m%t,w=Nf(g,n,t)*d%t,x=Nf(w,o,t)*h%t,v=Nf(x,r,t)*u%t,P=Nf(v,Ep,t);if(!Ap.eql(Ap.sqr(P),e))throw new Error("Cannot find square root");return P}const Ap=Lf(wp,void 0,void 0,{sqrt:kp}),$p=function(e,t){const n=t=>lp({...e,...pp(t)});return{...n(t),create:n}}({a:vp,b:BigInt(7),Fp:Ap,n:xp,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=xp,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-Pp*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),a=n,o=BigInt("0x100000000000000000000000000000000"),i=Ip(a*e,t),c=Ip(-r*e,t);let u=Sf(e-i*n-c*s,t),d=Sf(-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}}}},la),Tp={};function Bp(e,...t){let n=Tp[e];if(void 0===n){const t=la(Uint8Array.from(e,(e=>e.charCodeAt(0))));n=fo(t,t),Tp[e]=n}return la(fo(n,...t))}const Sp=e=>e.toRawBytes(!0).slice(1),Np=e=>co(e,32),zp=e=>Sf(e,wp),Op=e=>Sf(e,xp),Rp=(()=>$p.ProjectivePoint)(),Cp=(e,t,n)=>Rp.BASE.multiplyAndAddUnsafe(e,t,n);function Fp(e){let t=$p.utils.normPrivateKeyToScalar(e),n=Rp.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:Op(-t),bytes:Sp(n)}}function Mp(e){bo("x",e,Pp,wp);const t=zp(e*e);let n=kp(zp(t*e+BigInt(7)));n%Ep!==vp&&(n=zp(-n));const r=new Rp(e,n,Pp);return r.assertValidity(),r}const Up=oo;function jp(...e){return Op(Up(Bp("BIP0340/challenge",...e)))}function qp(e){return Fp(e).bytes}function Lp(e,t,n=Tt(32)){const r=lo("message",e),{bytes:s,scalar:a}=Fp(t),o=lo("auxRand",n,32),i=Np(a^Up(Bp("BIP0340/aux",o))),c=Bp("BIP0340/nonce",i,s,r),u=Op(Up(c));if(u===vp)throw new Error("sign failed: k is zero");const{bytes:d,scalar:l}=Fp(u),f=jp(d,s,r),p=new Uint8Array(64);if(p.set(d,0),p.set(Np(Op(l+f*a)),32),!Gp(p,r,s))throw new Error("sign: Invalid signature produced");return p}function Gp(e,t,n){const r=lo("signature",e,64),s=lo("message",t),a=lo("publicKey",n,32);try{const e=Mp(Up(a)),t=Up(r.subarray(0,32));if(!mo(t,Pp,wp))return!1;const n=Up(r.subarray(32,64));if(!mo(n,Pp,xp))return!1;const o=jp(Np(t),Sp(e),s),i=Cp(e,n,Op(-o));return!(!i||!i.hasEvenY()||i.toAffine().x!==t)}catch(e){return!1}}const _p=(()=>({getPublicKey:qp,sign:Lp,verify:Gp,utils:{randomPrivateKey:$p.utils.randomPrivateKey,lift_x:Mp,pointToBytes:Sp,numberToBytesBE:co,bytesToNumberBE:oo,taggedHash:Bp,mod:Sf}}))(),Dp=(()=>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]=Uf(e,[a,i],!0);return t=e.mul(s,c),r=e.mul(r,e.mul(o,u)),{x:t,y:r}}}(Ap,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map((e=>e.map((e=>BigInt(e)))))))(),Hp=(()=>fp(Ap,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:Ap.create(BigInt("-11"))}))(),Vp=(()=>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=gp(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(gp(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))}}}($p.ProjectivePoint,(e=>{const{x:t,y:n}=Hp(Ap.create(e[0]));return Dp(t,n)}),{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:Ap.ORDER,m:1,k:128,expand:"xmd",hash:la}))(),Zp=(()=>Vp.hashToCurve)(),Wp=(()=>Vp.encodeToCurve)();var Kp=Object.freeze({__proto__:null,secp256k1:$p,schnorr:_p,secp256k1_hasher:Vp,hashToCurve:Zp,encodeToCurve:Wp});function Yp(e,t={}){const{recovered:n}=t;if(void 0===e.r)throw new rh({signature:e});if(void 0===e.s)throw new rh({signature:e});if(n&&void 0===e.yParity)throw new rh({signature:e});if(e.r<0n||e.r>Kl)throw new sh({value:e.r});if(e.s<0n||e.s>Kl)throw new ah({value:e.s});if("number"==typeof e.yParity&&0!==e.yParity&&1!==e.yParity)throw new oh({value:e.yParity})}function Jp(e){if(130!==e.length&&132!==e.length)throw new nh({signature:e});const t=BigInt(oi(e,0,32)),n=BigInt(oi(e,32,64)),r=(()=>{const t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return th(t)}catch{throw new oh({value:t})}})();return void 0===r?{r:t,s:n}:{r:t,s:n,yParity:r}}function Xp(e){if(void 0!==e.r&&void 0!==e.s)return Qp(e)}function Qp(e){const t="string"==typeof e?Jp(e):e instanceof Uint8Array?function(e){return Jp(ti(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=th(t)),"number"!=typeof n)throw new oh({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:th(e.v)}}(e):{r:e.r,s:e.s,...void 0!==e.yParity?{yParity:e.yParity}:{}};return Yp(t),t}function eh(e){const{r:t,s:n,yParity:r}=e;return[r?"0x01":"0x",0n===t?"0x":ci(ni(t)),0n===n?"0x":ci(ni(n))]}function th(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 ih({value:e})}class nh extends Eo{constructor({signature:e}){super(`Value \`${e}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${ii(Qo(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class rh extends Eo{constructor({signature:e}){super(`Signature \`${No(e)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class sh extends Eo{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 ah extends Eo{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 oh extends Eo{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 ih extends Eo{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 ch(e,t={}){return"string"==typeof e.chainId?function(e){const{address:t,chainId:n,nonce:r}=e,s=Xp(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...s}}(e):{...e,...t.signature}}function uh(e){return function(e,t={}){const{presign:n}=t;return Bl(Xo("0x05",function(e,t={}){const{as:n="Hex"}=t;return xf(e,{as:n})}(function(e){const{address:t,chainId:n,nonce:r}=e,s=Xp(e);return[n?ni(n):"0x",t,r?ni(r):"0x",...s?eh(s):[]]}(n?{address:e.address,chainId:e.chainId,nonce:e.nonce}:e))))}(e,{presign:!0})}function dh(e){return Ll(function(e){const{payload:t,signature:n}=e,{r:r,s:s,yParity:a}=n,o=new $p.Signature(BigInt(r),BigInt(s)).addRecoveryBit(a);return Nl(o.recoverPublicKey(Qo(t).substring(2)))}(e))}Fo("ox.secp256k1.fromSeed.v1");const lh="0x8010801080108010801080108010801080108010801080108010801080108010",fh=ff("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function ph(e){if("string"==typeof e){if(oi(e,-32)!==lh)throw new bh(e)}else Yp(e.authorization)}function hh(e){ph(e);const t=di(oi(e,-64,-32)),n=oi(e,-t-64,-64),r=oi(e,0,-t-64),[s,a,o]=uf(fh,n);return{authorization:ch({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 mh(e){try{return ph(e),!0}catch{return!1}}class bh extends Eo{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 yh(e){return mh(e)}async function gh({message:e,signature:t}){return fs({hash:fd(e),signature:t})}async function wh(e){const{domain:t,message:n,primaryType:r,signature:s,types:a}=e;return fs({hash:vd({domain:t,message:n,primaryType:r,types:a}),signature:s})}function xh(e){const t=fn(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&&We(t)>=192)return"legacy";throw new dr({serializedType:t})}function vh(e){const t=xh(e);return"eip1559"===t?function(e){const t=Ph(e),[n,r,s,a,o,i,c,u,d,l,f,p]=t;if(9!==t.length&&12!==t.length)throw new lr({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:p}:{}},serializedTransaction:e,type:"eip1559"});const h={chainId:We(n),type:"eip1559"};X(i)&&"0x"!==i&&(h.to=i);X(o)&&"0x"!==o&&(h.gas=Ve(o));X(u)&&"0x"!==u&&(h.data=u);X(r)&&(h.nonce="0x"===r?0:We(r));X(c)&&"0x"!==c&&(h.value=Ve(c));X(a)&&"0x"!==a&&(h.maxFeePerGas=Ve(a));X(s)&&"0x"!==s&&(h.maxPriorityFeePerGas=Ve(s));0!==d.length&&"0x"!==d&&(h.accessList=Eh(d));wu(h);return{...12===t.length?Ih(t):void 0,...h}}(e):"eip2930"===t?function(e){const t=Ph(e),[n,r,s,a,o,i,c,u,d,l,f]=t;if(8!==t.length&&11!==t.length)throw new lr({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 p={chainId:We(n),type:"eip2930"};X(o)&&"0x"!==o&&(p.to=o);X(a)&&"0x"!==a&&(p.gas=Ve(a));X(c)&&"0x"!==c&&(p.data=c);X(r)&&(p.nonce="0x"===r?0:We(r));X(i)&&"0x"!==i&&(p.value=Ve(i));X(s)&&"0x"!==s&&(p.gasPrice=Ve(s));0!==u.length&&"0x"!==u&&(p.accessList=Eh(u));xu(p);return{...11===t.length?Ih(t):void 0,...p}}(e):"eip4844"===t?function(e){const t=Ph(e),n=4===t.length,r=n?t[0]:t,s=n?t.slice(1):[],[a,o,i,c,u,d,l,f,p,h,m,b,y,g]=r,[w,x,v]=s;if(11!==r.length&&14!==r.length)throw new lr({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:i,maxFeePerGas:c,gas:u,to:d,value:l,data:f,accessList:p,...r.length>9?{v:b,r:y,s:g}:{}},serializedTransaction:e,type:"eip4844"});const P={blobVersionedHashes:m,chainId:We(a),to:d,type:"eip4844"};X(u)&&"0x"!==u&&(P.gas=Ve(u));X(f)&&"0x"!==f&&(P.data=f);X(o)&&(P.nonce="0x"===o?0:We(o));X(l)&&"0x"!==l&&(P.value=Ve(l));X(h)&&"0x"!==h&&(P.maxFeePerBlobGas=Ve(h));X(c)&&"0x"!==c&&(P.maxFeePerGas=Ve(c));X(i)&&"0x"!==i&&(P.maxPriorityFeePerGas=Ve(i));0!==p.length&&"0x"!==p&&(P.accessList=Eh(p));w&&x&&v&&(P.sidecars=Aa({blobs:w,commitments:x,proofs:v}));gu(P);return{...14===r.length?Ih(r):void 0,...P}}(e):"eip7702"===t?function(e){const t=Ph(e),[n,r,s,a,o,i,c,u,d,l,f,p,h]=t;if(10!==t.length&&13!==t.length)throw new lr({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:p,s:h}:{}},serializedTransaction:e,type:"eip7702"});const m={chainId:We(n),type:"eip7702"};X(i)&&"0x"!==i&&(m.to=i);X(o)&&"0x"!==o&&(m.gas=Ve(o));X(u)&&"0x"!==u&&(m.data=u);X(r)&&(m.nonce="0x"===r?0:We(r));X(c)&&"0x"!==c&&(m.value=Ve(c));X(a)&&"0x"!==a&&(m.maxFeePerGas=Ve(a));X(s)&&"0x"!==s&&(m.maxPriorityFeePerGas=Ve(s));0!==d.length&&"0x"!==d&&(m.accessList=Eh(d));0!==l.length&&"0x"!==l&&(m.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:We(r),nonce:"0x"===a?0:We(a),...Ih([o,i,c])})}return t}(l));yu(m);return{...13===t.length?Ih(t):void 0,...m}}(e):function(e){const t=Fu(e,"hex"),[n,r,s,a,o,i,c,u,d]=t;if(6!==t.length&&9!==t.length)throw new lr({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"};X(a)&&"0x"!==a&&(l.to=a);X(s)&&"0x"!==s&&(l.gas=Ve(s));X(i)&&"0x"!==i&&(l.data=i);X(n)&&(l.nonce="0x"===n?0:We(n));X(o)&&"0x"!==o&&(l.value=Ve(o));X(r)&&"0x"!==r&&(l.gasPrice=Ve(r));if(vu(l),6===t.length)return l;const f=X(c)&&"0x"!==c?Ve(c):0n;if("0x"===d&&"0x"===u)return f>0&&(l.chainId=Number(f)),l;const p=f,h=Number((p-35n)/2n);if(h>0)l.chainId=h;else if(27n!==p&&28n!==p)throw new ir({v:p});return l.v=p,l.s=d,l.r=u,l.yParity=p%2n===0n?1:0,l}(e)}function Ph(e){return Fu(`0x${e.slice(4)}`,"hex")}function Eh(e){const t=[];for(let n=0;n<e.length;n++){const[r,s]=e[n];if(!rn(r,{strict:!1}))throw new Yt({address:r});t.push({address:r,storageKeys:s.map((e=>ju(e)?e:De(e)))})}return t}function Ih(e){const t=e.slice(-3),n="0x"===t[0]?0n:Ve(t[0]);if(0n!==n&&1n!==n)throw new cr({yParity:n});const r=0n===n?27n:28n;return{r:Re(t[1],{size:32}),s:Re(t[2],{size:32}),v:r,yParity:27n===r?0:1}}function kh(t,n){return e.from(t,n)}async function Ah(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a,storageKeys:o}){const i=ta({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:a});return function(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?We(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 $h(e,{blockHash:t,blockNumber:n,blockTag:r,hash:s,index:a,sender:o,nonce:i}){const c=r||"latest",u=void 0!==n?et(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,et(a)]},{dedupe:!0}):(u||c)&&"number"==typeof a?d=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[u||c,et(a)]},{dedupe:Boolean(u)}):o&&"number"==typeof i&&(d=await e.request({method:"eth_getTransactionBySenderAndNonce",params:[o,et(i)]},{dedupe:!0})),!d)throw new hr({blockHash:t,blockNumber:n,blockTag:c,hash:s,index:a});return(e.chain?.formatters?.transaction?.format||Zs)(d,"getTransaction")}async function Th(e,{hash:t}){const n=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!n)throw new mr({hash:t});return(e.chain?.formatters?.transactionReceipt?.format||yc)(n,"getTransactionReceipt")}async function Bh(t,n){const{account:r,authorizationList:s,allowFailure:a=!0,blockHash:o,blockNumber:i,blockOverrides:c,blockTag:u,requireCanonical:d,stateOverride:l}=n,f=n.contracts,p="object"==typeof t.batch?.multicall?t.batch.multicall:{},h=n.batchSize??p.batchSize??1024,m=n.deployless??p.deployless??!1,b=(()=>{if(n.multicallAddress)return n.multicallAddress;if(m)return null;if(t.chain)return zi({blockNumber:i,chain:t.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=On({abi:t,args:s,functionName:o});w+=(e.length-2)/2,h>0&&w>h&&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=us(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 x=Boolean(t.batch?.multicall),v=x?y.flatMap((e=>e.map((e=>[e])))):y,P=await Promise.allSettled(v.map((n=>x?async function(t,n){const{batchSize:r,call:s,multicallAddress:a,...o}=n,{wait:i=0}="object"==typeof t.batch?.multicall?t.batch.multicall:{},{schedule:c}=Fi({id:Xn(["multicall",t.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:n=>K(t,_i,"readContract")({...null===a?{code:Ii}:{address:a},...o,abi:e.multicall3Abi,args:[n],functionName:"aggregate3"})}),[u]=await c(s);return u}(t,{account:r,authorizationList:s,batchSize:h,blockHash:o,blockNumber:i,blockOverrides:c,blockTag:u,call:n[0],multicallAddress:b,requireCanonical:d,stateOverride:l}).then((e=>[e])):K(t,_i,"readContract")({...null===b?{code:Ii}:{address:b},abi:e.multicall3Abi,account:r,args:[n],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<v[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}=v[e][t],{abi:i,address:c,functionName:u,args:d}=f[E.length];try{if("0x"===o)throw new ie;if(!s)throw new Ar({data:r});const e=Va({abi:i,args:d,data:r,functionName:u});E.push(a?{result:e,status:"success"}:e)}catch(e){const t=us(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 ne("multicall results mismatch");return E}async function Sh(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?wi(e.blockOverrides):void 0,r=e.calls.map((e=>{const t=e,n=t.account?Sn(t.account):void 0,r=t.abi?On(t):t.data,s={...t,account:n,data:t.dataSuffix?sn([r||"0x",t.dataSuffix]):r,from:t.from??n?.address};return Ls(s),Cs(s)})),s=e.stateOverrides?js(e.stateOverrides):void 0;t.push({blockOverrides:n,calls:r,stateOverrides:s})}const c=("bigint"==typeof n?et(n):void 0)||r;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:t,returnFullTransactions:a,traceTransfers:o,validation:i},c]})).map(((e,t)=>({...Ks(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=>Ua(e))),l="0x1"===e.status?"success":"failure",f=r&&"success"===l&&"0x"!==c?Va({abi:r,data:c,functionName:o}):null,p=(()=>{if("success"===l)return;let e;return"0x"===c?e=new ie:c&&(e=new Ar({data:c})),e?us(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:p}}}))})))}catch(e){const t=e,n=Ns(t,{});if(n instanceof Ss)throw t;throw n}}function Nh(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 Eo("Unable to normalize signature.");return s}function zh(e,t){const n=typeof e,r=t.type;switch(r){case"address":return Gl(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)=>zh(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=>zh(e,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")}))))}}function Oh(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 Oh(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")))&&Gl(n[r],{strict:!1}))return o}}function Rh(e,t={}){const{prepare:n=!0}=t,r=Array.isArray(e)||"string"==typeof e?El(e):e;return{...r,...n?{hash:Mh(r)}:{}}}function Ch(e,t,n){const{args:r=[],prepare:s=!0}=n??{},a=li(t,{strict:!1}),o=e.filter((e=>a?"function"===e.type||"error"===e.type?Fh(e)===oi(t,0,4):"event"===e.type&&Mh(e)===t:"name"in e&&e.name===t));if(0===o.length)throw new jh({name:t});if(1===o.length)return{...o[0],...s?{hash:Mh(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:Mh(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&&zh(t,r)}));if(t){if(i&&"inputs"in i&&i.inputs){const t=Oh(e.inputs,i.inputs,r);if(t)throw new Uh({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 jh({name:t});return{...c,...s?{hash:Mh(c)}:{}}}function Fh(...e){const t=(()=>{if(Array.isArray(e[0])){const[t,n]=e;return Ch(t,n)}return e[0]})();return oi(Mh(t),0,4)}function Mh(...e){const t=(()=>{if(Array.isArray(e[0])){const[t,n]=e;return Ch(t,n)}return e[0]})();return"string"!=typeof t&&"hash"in t&&t.hash?t.hash:Bl(ri(function(...e){const t=(()=>{if(Array.isArray(e[0])){const[t,n]=e;return Ch(t,n)}return e[0]})();return Nh("string"==typeof t?t:Ud(t))}(t)))}class Uh extends Eo{constructor(e,t){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${e.type}\` in \`${Nh(Ud(e.abiItem))}\`, and`,`\`${t.type}\` in \`${Nh(Ud(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 jh extends Eo{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 qh(e){const t=e.find((e=>"constructor"===e.type));if(!t)throw new jh({name:"constructor"});return t}function Lh(...e){const[t,n=[]]=(()=>{if(Array.isArray(e[0])){const[t,n,r]=e;return[_h(t,n,{args:r}),r]}const[t,n]=e;return[t,n]})(),{overloads:r}=t,s=r?_h([t,...r],t.name,{args:n}):t,a=Fh(s);const o=n.length>0?df(s.inputs,n):void 0;return o?Xo(a,o):a}function Gh(e,t={}){return Rh(e,t)}function _h(e,t,n){const r=Ch(e,t,n);if("function"!==r.type)throw new jh({name:t,type:"function"});return r}const Dh="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",Hh="0x0000000000000000000000000000000000000000",Vh="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033",Zh="0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063fd00430c1461002d575b5f5ffd5b6100476004803603810190610042919061012b565b610049565b005b80825f375f5f825f865afa610060573d5f5f3e3d5ffd5b3d5f5f3e3d5ff35b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61009982610070565b9050919050565b6100a98161008f565b81146100b3575f5ffd5b50565b5f813590506100c4816100a0565b92915050565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f8401126100eb576100ea6100ca565b5b8235905067ffffffffffffffff811115610108576101076100ce565b5b602083019150836001820283011115610124576101236100d2565b5b9250929050565b5f5f5f6040848603121561014257610141610068565b5b5f61014f868287016100b6565b935050602084013567ffffffffffffffff8111156101705761016f61006c565b5b61017c868287016100d6565b9250925050925092509256fea2646970667358221220635ed99185cacf3f2acba6921f23687c969cec2bbaf5f9ad599f507e6e105e6964736f6c63430008230033",Wh=0x00000000000000000000000000000000deadbeefn,Kh=Mh(function(e,t={}){return Rh(e,t)}("event Transfer(address indexed from, address indexed to, uint256 value)"));const Yh=Gh("function balanceOf(address) returns (uint256)"),Jh=Gh("function decimals() returns (uint256)"),Xh=Gh("function tokenURI(uint256) returns (string)"),Qh=Gh("function symbol() returns (string)"),em=Gh("function query(address target, bytes data)");async function tm(e,t){const{blockNumber:n,blockTag:r,calls:s,stateOverrides:a,traceAssetChanges:o,traceTransfers:i,validation:c}=t,u=t.account?Sn(t.account):void 0;if(o&&!u)throw new ne("`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[qh(t),n]}return e})(),{bytecode:r,args:s}=n;return Xo(r,t.inputs?.length&&s?.length?df(t.inputs,s):"0x")}(Rh("constructor(bytes, bytes)"),{bytecode:vi,args:[Vh,Lh(Gh("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 tc(e,{cacheTime:0});else{const t=await Js(e,{blockTag:l});if("bigint"!=typeof t.number)throw new ne(`Block tag \`${l}\` did not resolve to a number.`);f=t.number}const p="bigint"==typeof f?{blockNumber:f}:{blockTag:l},h=o?await Sh(e,{...p,blocks:[{calls:s.map((e=>({...e,from:u.address}))),stateOverrides:a}],traceTransfers:i,validation:c}):void 0,m=h?[...new Set([...rm(h[0].calls.flatMap((e=>e.logs??[])),u.address),...t.calls.map((e=>e.to?.toLowerCase()))])].filter((e=>Boolean(e)&&e!==Dh&&e!==Hh)):[],b=function(e){const t=new Set(e.map((e=>e.toLowerCase())));let n=Wh;for(;t.has(`0x${n.toString(16).padStart(40,"0")}`);)n++;return`0x${n.toString(16).padStart(40,"0")}`}([...u?[u.address]:[],...m,...a?.map((({address:e})=>e))??[]]),y=[{address:b,code:Zh}],[g,w]=await Promise.all([o?Promise.all([om(e,{account:u.address,...p,data:d,stateOverride:a}),...m.map((t=>om(e,{account:u.address,address:t,...p,data:Lh(Yh,[u.address]),staticCallAddress:b,stateOverride:a})))]):[],Sh(e,{...p,blocks:[{calls:[...s,{to:Hh}].map((e=>({...e,from:u?.address}))),stateOverrides:a},...o?[{calls:[{data:d}]},{calls:m.map((e=>({to:b,data:nm(e,Lh(Yh,[u.address]))}))),stateOverrides:y},{calls:m.map((e=>({to:b,data:nm(e,Lh(Jh))}))),stateOverrides:y},{calls:m.map((e=>({to:b,data:nm(e,Lh(Xh,[0n]))}))),stateOverrides:y},{calls:m.map((e=>({to:b,data:nm(e,Lh(Qh))}))),stateOverrides:y}]:[]],traceTransfers:i,validation:c})]),x=w[0],[v,P,E,I,k]=o?w.slice(1):[],{calls:A,...$}=x,T=A.slice(0,-1),B=g.map((e=>sm(e)?Ve(e.data):null)),S=[...v?.calls??[],...P?.calls??[]].map((e=>sm(e)?Ve(e.data):null)),N=(E?.calls??[]).map((e=>am(e,Jh))),z=(k?.calls??[]).map((e=>am(e,Qh))),O=(I?.calls??[]).map((e=>am(e,Xh))),R=[];for(const[e,t]of S.entries()){const n=B[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=N[e-1],o=z[e-1],i=O[e-1],c=0===e?{address:Dh,decimals:18,symbol:"ETH"}:{address:m[e-1],decimals:i||a?Number(a??1):void 0,symbol:o??void 0};R.push({token:c,value:{pre:s,post:t,diff:t-s}})}return{assetChanges:R,block:$,results:T}}function nm(e,t){return Lh(em,[e,t])}function rm(e,t){const n=Oe(t.toLowerCase(),{size:32});return e.filter((e=>e.topics[0]?.toLowerCase()===Kh&&(e.address.toLowerCase()!==Dh&&(e.topics[1]?.toLowerCase()===n||e.topics[2]?.toLowerCase()===n)))).map((e=>e.address.toLowerCase()))}function sm(e){return"success"===e.status&&/^0x[\da-f]{64}$/i.test(e.data)}function am(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[_h(t,n),r,s]}return e})(),s=uf(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 om(e,t){const{account:n,address:r,blockNumber:s,blockTag:a,data:o,staticCallAddress:i,stateOverride:c}=t;try{return{data:(await Mi({...e,ccipRead:!1},{account:r?Hh:n,data:r?nm(r,o):o,stateOverride:r&&i?[...c??[],{address:i,code:Zh}]:c,...r?{to:i}:{},..."bigint"==typeof s?{blockNumber:s}:{blockTag:a}})).data??"0x",status:"success"}}catch(e){if(!(e instanceof vr&&e.cause instanceof ws))throw e;return{data:"0x",status:"failure"}}}const im="0x6492649264926492649264926492649264926492649264926492649264926492";function cm(e){try{return function(e){if(oi(e,-32)!==im)throw new um(e)}(e),!0}catch{return!1}}class um extends Eo{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 dm({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 $p.Signature(Ve(e),Ve(t)).toCompactHex()}${0===a?"1b":"1c"}`;return"hex"===n?o:ct(o)}async function lm(t,n){const{address:r,chain:s=t.chain,hash:a,erc6492VerifierAddress:o=n.universalSignatureVerifierAddress??s?.contracts?.erc6492Verifier?.address,multicallAddress:i=n.multicallAddress??s?.contracts?.multicall3?.address,mode:c="auto"}=n;if(s?.verifyHash)return await s.verifyHash(t,n);const u=(()=>{const e=n.signature;return X(e)?e:"object"==typeof e&&"r"in e&&"s"in e?dm(e):Qe(e)})();try{if("eoa"===c)try{if(Ma(en(r),await fs({hash:a,signature:u})))return!0}catch{}return mh(u)?await async function(t,n){const{address:r,blockHash:s,blockNumber:a,blockTag:o,hash:i,multicallAddress:c,requireCanonical:u}=n,{authorization:d,data:l,signature:f,to:p}=hh(n.signature),h=await uu(t,{address:r,blockHash:s,blockNumber:a,blockTag:o,requireCanonical:u});if(h===on(["0xef0100",d.address]))return await async function(t,n){const{address:r,blockHash:s,blockNumber:a,blockTag:o,hash:i,requireCanonical:c,signature:u}=n,d=await K(t,_i,"readContract")({address:r,abi:e.erc1271Abi,args:[i,u],blockHash:s,blockNumber:a,blockTag:o,functionName:"isValidSignature",requireCanonical:c}).catch((e=>{if(e instanceof Pr)throw new fm;throw e}));if(d.startsWith("0x1626ba7e"))return!0;throw new fm}(t,{...n,signature:f});const m={address:d.address,chainId:Number(d.chainId),nonce:Number(d.nonce),r:et(d.r,{size:32}),s:et(d.s,{size:32}),yParity:d.yParity},b=await async function({address:e,authorization:t,signature:n}){return Ma(en(e),await ys({authorization:t,signature:n}))}({address:r,authorization:m});if(!b)throw new fm;const y=await K(t,_i,"readContract")({...c?{address:c}:{code:Ii},authorizationList:[m],abi:e.multicall3Abi,blockHash:s,blockNumber:a,blockTag:"pending",functionName:"aggregate3",requireCanonical:u,args:[[...l?[{allowFailure:!0,target:p??r,callData:l}]:[],{allowFailure:!0,target:r,callData:On({abi:e.erc1271Abi,functionName:"isValidSignature",args:[i,f]})}]]}),g=y[y.length-1]?.returnData;if(g?.startsWith("0x1626ba7e"))return!0;throw new fm}(t,{...n,multicallAddress:i,signature:u}):await async function(t,n){const{address:r,factory:s,factoryData:a,hash:o,signature:i,verifierAddress:c,...u}=n,d=await(async()=>s||a?cm(i)?i:function(e){const{data:t,signature:n,to:r}=e;return Xo(df(ff("address, bytes, bytes"),[r,t,n]),im)}({data:a,signature:i,to:s}):i)(),l=c?{to:c,data:On({abi:e.erc6492SignatureValidatorAbi,functionName:"isValidSig",args:[r,o,d]}),...u}:{data:Ni({abi:e.erc6492SignatureValidatorAbi,args:[r,o,d],bytecode:Ei}),...u},{data:f}=await K(t,Mi,"call")(l).catch((e=>{if(e instanceof vr)throw new fm;throw e}));if(Ze(f??"0x0"))return!0;throw new fm}(t,{...n,verifierAddress:o,signature:u})}catch(e){if("eoa"!==c)try{if(Ma(en(r),await fs({hash:a,signature:u})))return!0}catch{}if(e instanceof fm)return!1;throw e}}class fm extends Error{}function pm(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))?Wi(Xn(["watchBlockNumber",e.uid,t,n,o]),{onBlockNumber:r,onError:s},(r=>Yi((async()=>{try{const t=await K(e,tc,"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}))):Wi(Xn(["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=Ve(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 hm(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=Xn(["waitForTransactionReceipt",e.uid,s]),d=t.pollingInterval?t.pollingInterval:e.chain?.experimental_preconfirmationTime?e.chain.experimental_preconfirmationTime:e.pollingInterval;let l,f,p,h,m,b=!1;const{promise:y,resolve:g,reject:w}=Ri(),x=c?setTimeout((()=>{m?.(),h?.(),w(new yr({hash:s}))}),c):void 0;return h=Wi(u,{onReplaced:a,resolve:g,reject:w},(async t=>{if(p=await K(e,Th,"getTransactionReceipt")({hash:s}).catch((()=>{})),p&&r<=1)return clearTimeout(x),t.resolve(p),void h?.();m=K(e,pm,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:d,async onBlockNumber(a){const c=e=>{clearTimeout(x),m?.(),e(),h?.()};let u=a;if(!b)try{if(p){if(r>1&&(!p.blockNumber||u-p.blockNumber+1n<r))return;return void c((()=>t.resolve(p)))}if(n&&!l&&(b=!0,await mc((async()=>{l=await K(e,$h,"getTransaction")({hash:s}),l.blockNumber&&(u=l.blockNumber)}),{delay:i,retryCount:o}),b=!1),p=await K(e,Th,"getTransactionReceipt")({hash:s}),r>1&&(!p.blockNumber||u-p.blockNumber+1n<r))return;c((()=>t.resolve(p)))}catch(n){if(n instanceof hr||n instanceof mr){if(!l)return void(b=!1);try{f=l,b=!0;const n=await mc((()=>K(e,Js,"getBlock")({blockNumber:u,includeTransactions:!0})),{delay:i,retryCount:o,shouldRetry:({error:e})=>e instanceof Hs});b=!1;const s=n.transactions.find((({from:e,nonce:t})=>e===f.from&&t===f.nonce));if(!s)return;if(p=await K(e,Th,"getTransactionReceipt")({hash:s.hash}),r>1&&(!p.blockNumber||u-p.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:p}),t.resolve(p)}))}catch(e){c((()=>t.reject(e)))}}else c((()=>t.reject(n)))}}})})),y}const mm=["size","totalDifficulty","transactions","uncles","withdrawals"];const bm=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})$/;function ym(e){return function(e){return!!bm.test(e)&&!Number.isNaN(new Date(e).getTime())}(e)?new Date(e):new Date(Number.NaN)}const gm=/^(?:(?<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)?/,wm=/(?: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 xm(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(gm)?.groups??{},{chainId:s,expirationTime:a,issuedAt:o,notBefore:i,requestId:c,...u}=e.match(wm)?.groups??{},d=e.split("Resources:")[1]?.split("\n- ").slice(1);return{...r,...u,...s?{chainId:Number(s)}:{},...a?{expirationTime:ym(a)}:{},...o?{issuedAt:ym(o)}:{},...i?{notBefore:ym(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(!rn(r.address,{strict:!1}))return!1;if(t&&!Ma(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=fd(s);return lm(e,{address:d.address,hash:f,signature:i,...u})}function vm(t,n){return{amount:t,decimals:n,formatted:e.formatUnits(t,n)}}function Pm(e,t){if("bigint"==typeof e)return e;const n=e.decimals??t;return kh(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 Em(e,t){return"bigint"==typeof e?t:e.decimals??t}function Im(e,t){const{decimals:n,token:r}=t,s=km(e,r);if(s)return{address:s.address,decimals:n??s.decimals};if(rn(r,{strict:!1}))return{address:r,decimals:n??$m(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 km(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 Am(s,r);if(rn(t,{strict:!1}))for(const e of n){const n=Am(e,r);if(n&&Ma(n.address,t))return n}}function Am(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 $m(e,t){const n=e.tokens,r=e.chain?.id;if(n&&void 0!==r)for(const e of n){const n=Am(e,r);if(n&&Ma(n.address,t))return n.decimals}}async function Tm(t,n){const{address:r,decimals:s}=Im(t,n);return void 0!==s?{address:r,decimals:s}:{address:r,decimals:await _i(t,{abi:e.erc20Abi,address:r,functionName:"decimals"})}}function Bm(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 Sm(e){return{...e,data:On(e),to:e.address}}async function Nm(e,t){return Nm.inner(lc,e,t)}async function zm(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||yc)(s);if("reverted"===a.status&&n)throw new br({receipt:a});return a}!function(t){t.inner=async function(e,n,r){return await e(n,{...r,...t.call(n,r)})},t.call=function(t,n){return Sm(function(t,n){const{amount:r,spender:s,token:a}=n,{address:o,decimals:i}=Im(t,{token:a});return{abi:e.erc20Abi,address:o,args:[s,Pm(r,i)],functionName:"approve"}}(t,n))},t.estimateGas=async function(e,n){return Fa(e,{...Bm(n),...t.call(e,n)})},t.simulate=async function(e,n){return Di(e,{...Bm(n),...t.call(e,n)})},t.extractEvent=function(t){const[n]=Ga({abi:e.erc20Abi,logs:t,eventName:"Approval",strict:!0});if(!n)throw new Error("`Approval` event not found.");return n}}(Nm||(Nm={}));const Om=new Jt(128);async function Rm(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:p,maxPriorityFeePerGas:h,nonce:m,pollingInterval:b,throwOnReceiptRevert:y,type:g,value:w,...x}=t,v=t.timeout??Math.max(3*(s?.blockTime??0),5e3);if(void 0===n)throw new ac({docsPath:"/docs/actions/wallet/sendTransactionSync"});const P=n?Sn(n):null;let E;try{Ls(t);const n=await(async()=>t.to?t.to:null!==t.to&&o&&o.length>0?await ys({authorization:o[0]}).catch((()=>{throw new ne("`to` is required. Could not infer from `authorizationList`.")})):void 0)();if("json-rpc"===P?.type||null===P){let t;null!==s&&(t=await K(e,Ba,"getChainId")({}),r&&ic({currentChainId:t,chain:s}));const E=e.chain?.formatters?.transactionRequest?.format,I=(E||Cs)({...zs(x,{format:E}),accessList:a,account:P,authorizationList:o,blobs:i,chainId:t,data:u?sn([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:m,to:n,type:g,value:w},"sendTransaction"),k=Om.get(e.uid),A=k?"wallet_sendTransaction":"eth_sendTransaction",$=await(async()=>{try{return await e.request({method:A,params:[I]},{retryCount:0})}catch(t){if(!1===k)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:[I]},{retryCount:0}).then((t=>(Om.set(e.uid,!0),t))).catch((t=>{const r=t;if("MethodNotFoundRpcError"===r.name||"MethodNotSupportedRpcError"===r.name)throw Om.set(e.uid,!1),n;throw r}));throw n}})(),T=await K(e,hm,"waitForTransactionReceipt")({checkReplacement:!1,hash:$,pollingInterval:b,timeout:v});if(y&&"reverted"===T.status)throw new br({receipt:T});return T}if("local"===P?.type){const r=(()=>{if(!P.nonceManager||void 0!==m)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)}})(),b=await K(e,Ra,"prepareTransactionRequest")({account:P,accessList:a,authorizationList:o,blobs:i,chain:s,data:u?sn([c??"0x",u]):c,gas:d,gasPrice:l,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:h,nonce:m,nonceManager:r,parameters:[...Na,"sidecars"],type:g,value:w,...x,to:n}),v=s?.serializers?.transaction,I=await P.signTransaction(b,{serializer:v}),k=(s??e.chain)?.serializers?.transactionEnvelope,A=k?await k({serializedTransaction:I,transaction:b}):I;return await K(e,zm,"sendRawTransactionSync")({serializedTransaction:A,throwOnReceiptRevert:y,timeout:t.timeout})}if("smart"===P?.type)throw new oc({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"});throw new oc({docsPath:"/docs/actions/wallet/sendTransactionSync",type:P?.type})}catch(e){if(e instanceof oc)throw e;throw!E||e instanceof br||P?.nonceManager?.reset(E),Ta(e,{...t,account:P,chain:t.chain||void 0})}}async function Cm(e,t){return lc.internal(e,Rm,"sendTransactionSync",t)}async function Fm(t,n){const{amount:r,token:s,throwOnReceiptRevert:a=!0}=n,{decimals:o}=Im(t,{token:s}),i=Em(r,o),c=await Nm.inner(Cm,t,{...n,throwOnReceiptRevert:a}),{args:u}=Nm.extractEvent(c.logs);return{...u,...void 0===i?{}:{decimals:i,formatted:e.formatUnits(u.value,i)},receipt:c}}async function Mm(e,t){const{account:n,decimals:r,spender:s,token:a,...o}=t,[i,{decimals:c}]=await Promise.all([_i(e,{...o,...Mm.call(e,{account:n,spender:s,token:a})}),Tm(e,{decimals:r,token:a})]);return vm(i,c)}async function Um(e,t){const{account:n=e.account,decimals:r,token:s,...a}=t;if(!n)throw new ac;const o=Sn(n).address,[i,{decimals:c}]=await Promise.all([_i(e,{...a,...Um.call(e,{account:o,token:s})}),Tm(e,{decimals:r,token:s})]);return vm(i,c)}async function jm(t,n){const{token:r,...s}=n,{address:a}=Im(t,{token:r}),o=km(t,r),[i,c,u]=await Promise.all([o?.decimals??_i(t,{...s,abi:e.erc20Abi,address:a,functionName:"decimals"}),o?.name??_i(t,{...s,abi:e.erc20Abi,address:a,functionName:"name"}),o?.symbol??_i(t,{...s,abi:e.erc20Abi,address:a,functionName:"symbol"})]);return{decimals:i,name:c,symbol:u}}async function qm(e,t){const{decimals:n,token:r,...s}=t,[a,{decimals:o}]=await Promise.all([_i(e,{...s,...qm.call(e,{token:r})}),Tm(e,{decimals:n,token:r})]);return vm(a,o)}async function Lm(e,t){return Lm.inner(lc,e,t)}async function Gm(t,n){const{amount:r,token:s,throwOnReceiptRevert:a=!0}=n,{decimals:o}=Im(t,{token:s}),i=Em(r,o),c=await Lm.inner(Cm,t,{...n,throwOnReceiptRevert:a}),{args:u}=Lm.extractEvent(c.logs);return{...u,...void 0===i?{}:{decimals:i,formatted:e.formatUnits(u.value,i)},receipt:c}}function _m(t){return{call:e=>Mi(t,e),createAccessList:e=>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:p,...h}=t,m=n?Sn(n):void 0;try{Ls(t);const n=("bigint"==typeof r?et(r):void 0)||s,b=e.chain?.formatters?.transactionRequest?.format,y=(b||Cs)({...zs(h,{format:b}),account:m,blobs:a,data:o,gas:i,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:d,maxPriorityFeePerGas:l,to:f,value:p},"createAccessList"),g=await e.request({method:"eth_createAccessList",params:[y,n]});if(g.error)throw new ne(g.error,{details:g.error});return{accessList:g.accessList,gasUsed:BigInt(g.gasUsed)}}catch(n){throw Oi(n,{...t,account:m,chain:e.chain})}}(t,e),createBlockFilter:()=>async function(e){const t=Tn(e,{method:"eth_newBlockFilter"}),n=await e.request({method:"eth_newBlockFilter"});return{id:n,request:t(n),type:"block"}}(t),createContractEventFilter:e=>Bn(t,e),createEventFilter:e=>iu(t,e),createPendingTransactionFilter:()=>cu(t),estimateContractGas:e=>Fa(t,e),estimateGas:e=>Ca(t,e),getBalance:n=>async function(t,{address:n,blockHash:r,blockNumber:s,blockTag:a=t.experimental_blockTag??"latest",requireCanonical:o}){const i=ta({blockHash:r,blockNumber:s,blockTag:a,requireCanonical:o});if(t.batch?.multicall&&t.chain?.contracts?.multicall3){const i=t.chain.contracts.multicall3.address,c=On({abi:e.multicall3Abi,functionName:"getEthBalance",args:[n]}),{data:u}=await K(t,Mi,"call")({to:i,data:c,blockHash:r,blockNumber:s,blockTag:a,requireCanonical:o});return Va({abi:e.multicall3Abi,functionName:"getEthBalance",args:[n],data:u||"0x"})}const c=await t.request({method:"eth_getBalance",params:[n,i]});return BigInt(c)}(t,n),getBlobBaseFee:()=>async function(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}(t),getBlock:e=>Js(t,e),getBlockNumber:e=>tc(t,e),getBlockReceipts:e=>async function(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??"latest"}={}){const s=void 0!==n?et(n):void 0,a=await e.request({method:"eth_getBlockReceipts",params:[t||s||r]},{dedupe:Boolean(t||s)});if(!a)throw new Hs({blockHash:t,blockNumber:n});const o=e.chain?.formatters?.transactionReceipt?.format||yc;return a.map((e=>o(e,"getBlockReceipts")))}(t,e),getBlockTransactionCount:e=>async function(e,{blockHash:t,blockNumber:n,blockTag:r="latest"}={}){const s=void 0!==n?et(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)}),We(a)}(t,e),getBytecode:e=>uu(t,e),getChainId:()=>Ba(t),getCode:e=>uu(t,e),getContractEvents:e=>Da(t,e),getDelegation:e=>async function(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=await uu(e,{address:t,...void 0!==n?{blockNumber:n}:{blockTag:r}});if(s&&23===Q(s)&&s.startsWith("0xef0100"))return en(cn(s,3,23))}(t,e),getEip712Domain:e=>async function(e,t){const{address:n,factory:r,factoryData:s}=t;try{const[t,a,o,i,c,u,d]=await K(e,_i,"readContract")({abi:lu,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 du({address:n});throw t}}(t,e),getEnsAddress:e=>Hc(t,e),getEnsAvatar:e=>async function(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:s,gatewayUrls:a,strict:o,universalResolverAddress:i}){const c=await K(e,ou,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:s,universalResolverAddress:i,gatewayUrls:a,strict:o});if(!c)return null;try{return await au(e,{record:c,gatewayUrls:r})}catch{return null}}(t,e),getEnsName:n=>async function(t,n){const{address:r,blockNumber:s,blockTag:a,coinType:o=60n,gatewayUrls:i,strict:c}=n,{chain:u}=t,d=(()=>{if(n.universalResolverAddress)return n.universalResolverAddress;if(!u)throw new Error("client chain not configured. universalResolverAddress is required.");return zi({blockNumber:s,chain:u,contract:"ensUniversalResolver"})})();try{const n={address:d,abi:e.universalResolverReverseAbi,args:[r,o,i??[Uc]],functionName:"reverseWithGateways",blockNumber:s,blockTag:a},c=K(t,_i,"readContract"),[u]=await c(n);return u||null}catch(e){if(c)throw e;if(zc(e))return null;throw e}}(t,n),getEnsResolver:e=>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 zi({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 K(e,_i,"readContract")({address:o,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[Je(Dc(s))],blockNumber:n,blockTag:r});return c}(t,e),getEnsText:e=>ou(t,e),getFeeHistory:e=>fu(t,e),estimateFeesPerGas:e=>async function(e,t){return ea(e,t)}(t,e),getFilterChanges:e=>nc(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=>Ua(e)));return t.abi?Ga({abi:t.abi,logs:r,strict:n}):r}(0,e),getGasPrice:()=>Xs(t),getLogs:e=>_a(t,e),getProof:e=>Ah(t,e),estimateMaxPriorityFeePerGas:e=>async function(e,t){return Qs(e,t)}(t,e),fillTransaction:e=>Sa(t,e),getRawTransaction:e=>async function(e,{hash:t}){const n=await e.request({method:"eth_getRawTransactionByHash",params:[t]},{dedupe:!0});if(!n)throw new hr({hash:t});return n}(t,e),getStorageAt:e=>async function(e,{address:t,blockHash:n,blockNumber:r,blockTag:s="latest",requireCanonical:a,slot:o}){const i=ta({blockHash:n,blockNumber:r,blockTag:s,requireCanonical:a});return await e.request({method:"eth_getStorageAt",params:[t,o,i]})}(t,e),getTransaction:e=>$h(t,e),getTransactionConfirmations:e=>async function(e,{hash:t,transactionReceipt:n}){const[r,s]=await Promise.all([K(e,tc,"getBlockNumber")({}),t?K(e,$h,"getTransaction")({hash:t}):void 0]),a=n?.blockNumber||s?.blockNumber;return a?r-a+1n:0n}(t,e),getTransactionCount:e=>na(t,e),getTransactionReceipt:e=>Th(t,e),multicall:e=>Bh(t,e),prepareTransactionRequest:e=>Ra(t,e),readContract:e=>_i(t,e),sendRawTransaction:e=>cc(t,e),sendRawTransactionSync:e=>zm(t,e),simulate:e=>Sh(t,e),simulateBlocks:e=>Sh(t,e),simulateCalls:e=>tm(t,e),simulateContract:e=>Di(t,e),verifyHash:e=>lm(t,e),verifyMessage:e=>async function(e,{address:t,message:n,factory:r,factoryData:s,signature:a,...o}){const i=fd(n);return K(e,lm,"verifyHash")({address:t,factory:r,factoryData:s,hash:i,signature:a,...o})}(t,e),verifySiweMessage:e=>xm(t,e),verifyTypedData:e=>async function(e,t){const{address:n,factory:r,factoryData:s,signature:a,message:o,primaryType:i,types:c,domain:u,...d}=t,l=vd({message:o,primaryType:i,types:c,domain:u});return K(e,lm,"verifyHash")({address:n,factory:r,factoryData:s,hash:l,signature:a,...d})}(t,e),uninstallFilter:e=>rc(0,e),waitForTransactionReceipt:e=>hm(t,e),watchBlockHeaders:e=>function(e,{onBlockHeader:t,onError:n}){let r;return Wi(Xn(["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||Ks)(s.result,"watchBlockHeaders");for(const e of mm)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()}))}(t,e),watchBlocks:e=>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?Wi(Xn(["watchBlocks",e.uid,t,n,r,d,c]),{onBlock:s,onError:a},(s=>Yi((async()=>{try{const r=await K(e,Js,"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 K(e,Js,"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&&K(e,Js,"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 K(e,Js,"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()})()}(t,e),watchBlockNumber:e=>pm(t,e),watchContractEvent:e=>sc(t,e),watchEvent:e=>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),p=l??!1;return f?Wi(Xn(["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=Yi((async()=>{if(l)try{let o;if(u)o=await K(e,nc,"getFilterChanges")({filter:u});else{const r=await K(e,tc,"getBlockNumber")({});o=c&&c!==r?await K(e,_a,"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 qr&&(l=!1),i.onError?.(e)}else{try{u=await K(e,iu,"createEventFilter")({address:t,args:n,event:s,events:a,strict:p,fromBlock:o})}catch{}l=!0}}),{emitOnBegin:!0,interval:d});return async()=>{u&&await K(e,rc,"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=>An({abi:[e],eventName:e.name,args:n})));f=[e],s&&(f=f[0])}const{unsubscribe:h}=await u.subscribe({params:["logs",{address:t,topics:f}],onData(e){if(!r)return;const t=e.result;try{const{eventName:e,args:n}=qa({abi:d??[],data:t.data,topics:t.topics,strict:p}),r=Ua(t,{args:n,eventName:e});c([r])}catch(e){let n,r;if(e instanceof Pe||e instanceof Ee){if(l)return;n=e.abiItem.name,r=e.abiItem.inputs?.some((e=>!("name"in e&&e.name)))}const s=Ua(t,{args:r?[]:{},eventName:n});c([s])}},onError(e){i?.(e)}});o=h,r||o()}catch(e){i?.(e)}})(),()=>o()})()}(t,e),watchPendingTransactions:e=>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)?Wi(Xn(["watchPendingTransactions",e.uid,t,a]),{onTransactions:r,onError:n},(n=>{let r;const s=Yi((async()=>{try{if(!r)try{return void(r=await K(e,cu,"createPendingTransactionFilter")({}))}catch(e){throw s(),e}const a=await K(e,nc,"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 K(e,rc,"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()})()}(t,e),token:Dm(t)}}function Dm(e){return{getAllowance:Nc(e,Mm),getBalance:Nc(e,Um),getMetadata:Nc(e,jm),getTotalSupply:Nc(e,qm)}}function Hm({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:We(t),queued:We(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:[et(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:et(t)}]}):await e.request({method:`${e.mode}_mine`,params:[et(t),et(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,p=e.chain?.formatters?.transactionRequest?.format,h=(p||Cs)({...zs(f,{format:p}),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:[h]})}(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,et(n)]}):await e.request({method:`${e.mode}_setBalance`,params:[t,et(n)]})}(n,e),setBlockGasLimit:e=>async function(e,{gasLimit:t}){await e.request({method:"evm_setBlockGasLimit",params:[et(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:[et(t)]})}(n,e),setNextBlockBaseFeePerGas:e=>async function(e,{baseFeePerGas:t}){await e.request({method:`${e.mode}_setNextBlockBaseFeePerGas`,params:[et(t)]})}(n,e),setNextBlockTimestamp:e=>async function(e,{timestamp:t}){await e.request({method:"evm_setNextBlockTimestamp",params:[et(t)]})}(n,e),setNonce:e=>async function(e,{address:t,nonce:n}){await e.request({method:`${e.mode}_setNonce`,params:[t,et(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?et(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)}}}async function Vm(e,t){const{account:n=e.account,chainId:r,nonce:s}=t;if(!n)throw new ac({docsPath:"/docs/eip7702/prepareAuthorization"});const a=Sn(n),o=(()=>{if(t.executor)return"self"===t.executor?t.executor:Sn(t.executor)})(),i={address:t.contractAddress??t.address,chainId:r,nonce:s};return void 0===i.chainId&&(i.chainId=e.chain?.id??await K(e,Ba,"getChainId")({})),void 0===i.nonce&&(i.nonce=await K(e,na,"getTransactionCount")({address:a.address,blockTag:"pending"}),("self"===o||o?.address&&Ma(o.address,a.address))&&(i.nonce+=1)),i}function Zm(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:et(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=Ni({abi:n,args:r,bytecode:s});return dc(e,{...a,...a.authorizationList?{to:null}:{},data:o})}(e,t),fillTransaction:t=>Sa(e,t),getAddresses:()=>async function(e){return"local"===e.account?.type?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map((e=>Qt(e)))}(e),getCallsStatus:t=>Pc(e,t),getCapabilities:t=>async function(e,t={}){const{account:n=e.account,chainId:r}=t,s=n?Sn(n):void 0,a=r?[s?.address,[et(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:()=>Ba(e),getPermissions:()=>async function(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}(e),prepareAuthorization:t=>Vm(e,t),prepareTransactionRequest:t=>Ra(e,t),requestAddresses:()=>async function(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map((e=>en(e)))}(e),requestPermissions:t=>async function(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}(e,t),sendCalls:t=>vc(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 K(e,vc,"sendCalls")(t);return await K(e,Ec,"waitForCallsStatus")({...t,id:s.id,timeout:r})}(e,t),sendRawTransaction:t=>cc(e,t),sendRawTransactionSync:t=>zm(e,t),sendTransaction:t=>dc(e,t),sendTransactionSync:t=>Rm(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 ac({docsPath:"/docs/eip7702/signAuthorization"});const r=Sn(n);if(!r.signAuthorization)throw new oc({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:r.type});const s=await Vm(e,t);return r.signAuthorization(s)}(e,t),signMessage:t=>async function(e,{account:t=e.account,message:n}){if(!t)throw new ac({docsPath:"/docs/actions/wallet/signMessage"});const r=Sn(t);if(r.signMessage)return r.signMessage({message:n});const s="string"==typeof n?nt(n):n.raw instanceof Uint8Array?Je(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 ac({docsPath:"/docs/actions/wallet/signTransaction"});const a=Sn(n);Ls({account:a,...t});const o=await K(e,Ba,"getChainId")({});null!==r&&ic({currentChainId:o,chain:r});const i=r?.formatters||e.chain?.formatters,c=i?.transactionRequest?.format||Cs;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:et(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 ac({docsPath:"/docs/actions/wallet/signTypedData"});const o=Sn(n),i={EIP712Domain:wd({domain:r}),...t.types};if(gd({domain:r,message:s,primaryType:a,types:i}),o.signTypedData)return o.signTypedData({domain:r,message:s,primaryType:a,types:i});const c=yd({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:et(t)}]},{retryCount:0})}(e,t),waitForCallsStatus:t=>Ec(e,t),watchAsset:t=>async function(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}(e,t),writeContract:t=>lc(e,t),writeContractSync:t=>Cm(e,t),token:{approve:Nc(e,Nm),approveSync:Nc(e,Fm),transfer:Nc(e,Lm),transferSync:Nc(e,Gm)}}}function Wm({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:Au(r,{methods:t,retryCount:s,retryDelay:a,uid:Tc()}),value:c}}function Km(e){return!(!("code"in e)||"number"!=typeof e.code||e.code!==_r.code&&e.code!==Zr.code&&e.code!==os.code&&!ws.nodeMessage.test(e.message)&&5e3!==e.code)}!function(t){t.call=function(t,n){return Sm({address:Im(t,n).address,abi:e.erc20Abi,functionName:"allowance",args:[n.account,n.spender]})}}(Mm||(Mm={})),function(t){t.call=function(t,n){const r=n.account??t.account;if(!r)throw new ac;const s=Sn(r).address;return Sm({address:Im(t,n).address,abi:e.erc20Abi,functionName:"balanceOf",args:[s]})}}(Um||(Um={})),function(t){t.call=function(t,n){return Sm({address:Im(t,n).address,abi:e.erc20Abi,args:[],functionName:"totalSupply"})}}(qm||(qm={})),function(t){t.inner=async function(e,n,r){return await e(n,{...r,...t.call(n,r)})},t.call=function(t,n){return Sm(function(t,n){const{amount:r,from:s,to:a,token:o}=n,{address:i,decimals:c}=Im(t,{token:o}),u=Pm(r,c);return s?{abi:e.erc20Abi,address:i,args:[s,a,u],functionName:"transferFrom"}:{abi:e.erc20Abi,address:i,args:[a,u],functionName:"transfer"}}(t,n))},t.estimateGas=async function(e,n){return Fa(e,{...Bm(n),...t.call(e,n)})},t.simulate=async function(e,n){return Di(e,{...Bm(n),...t.call(e,n)})},t.extractEvent=function(t){const[n]=Ga({abi:e.erc20Abi,logs:t,eventName:"Transfer",strict:!0});if(!n)throw new Error("`Transfer` event not found.");return n}}(Lm||(Lm={}));class Ym extends ne{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 Jm=0;const Xm=new WeakMap;function Qm(e){if(!e)return"default";const t=Xm.get(e);if(void 0!==t)return t;const n=Jm++;return Xm.set(e,n),n}class eb 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 tb="/docs/contract/decodeDeployData";function nb({blobToKzgCommitment:e,computeBlobKzgProof:t}){return{blobToKzgCommitment:e,computeBlobKzgProof:t}}function rb(e){const{r:t,s:n}=$p.Signature.fromCompact(e.slice(2,130));return{r:et(t,{size:32}),yParityAndS:et(n,{size:32})}}function sb(e){const{r:t,s:n}=$p.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:et(t,{size:32}),s:et(n,{size:32}),v:s,yParity:a}:{r:et(t,{size:32}),s:et(n,{size:32}),yParity:a}}function ab({r:e,yParityAndS:t}){return`0x${new $p.Signature(Ve(e),Ve(t)).toCompactHex()}`}exports.erc1155Abi=e.erc1155Abi,exports.erc20Abi=e.erc20Abi,exports.erc20Abi_bytes32=e.erc20Abi_bytes32,exports.erc4626Abi=e.erc4626Abi,exports.erc6492SignatureValidatorAbi=e.erc6492SignatureValidatorAbi,exports.erc721Abi=e.erc721Abi,exports.formatUnits=e.formatUnits,exports.multicall3Abi=e.multicall3Abi,exports.universalSignatureValidatorAbi=e.erc6492SignatureValidatorAbi,exports.AbiConstructorNotFoundError=se,exports.AbiConstructorParamsNotFoundError=ae,exports.AbiDecodingDataSizeInvalidError=class extends ne{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"})}},exports.AbiDecodingDataSizeTooSmallError=oe,exports.AbiDecodingZeroDataError=ie,exports.AbiEncodingArrayLengthMismatchError=ce,exports.AbiEncodingBytesSizeMismatchError=ue,exports.AbiEncodingLengthMismatchError=de,exports.AbiErrorInputsNotFoundError=le,exports.AbiErrorNotFoundError=fe,exports.AbiErrorSignatureNotFoundError=pe,exports.AbiEventNotFoundError=be,exports.AbiEventSignatureEmptyTopicsError=he,exports.AbiEventSignatureNotFoundError=me,exports.AbiFunctionNotFoundError=ye,exports.AbiFunctionOutputsNotFoundError=ge,exports.AbiFunctionSignatureNotFoundError=we,exports.AccountStateConflictError=nr,exports.AtomicReadyWalletRejectedUpgradeError=ss,exports.AtomicityNotSupportedError=as,exports.BaseError=ne,exports.BaseFeeScalarError=Gs,exports.BlockNotFoundError=Hs,exports.BundleFailedError=hc,exports.BundleTooLargeError=rs,exports.BytesSizeMismatchError=ve,exports.CallExecutionError=vr,exports.ChainDisconnectedError=Jr,exports.ChainDoesNotSupportContract=ki,exports.ChainMismatchError=Ai,exports.ChainNotFoundError=$i,exports.CircularReferenceError=R,exports.ClientChainNotConfiguredError=Ti,exports.ContractFunctionExecutionError=Pr,exports.ContractFunctionRevertedError=Er,exports.ContractFunctionZeroDataError=Ir,exports.CounterfactualDeploymentFailedError=kr,exports.DecodeLogDataMismatch=Pe,exports.DecodeLogTopicsMismatch=Ee,exports.DuplicateIdError=ts,exports.EIP1193ProviderRpcError=eb,exports.Eip1559FeesNotSupportedError=_s,exports.EnsAvatarInvalidNftUriError=Zc,exports.EnsAvatarUnsupportedNamespaceError=Kc,exports.EnsAvatarUriResolutionError=Wc,exports.EnsInvalidChainIdError=Yc,exports.EstimateGasExecutionError=gs,exports.ExecutionRevertedError=ws,exports.FeeCapTooHighError=xs,exports.FeeCapTooLowError=vs,exports.FeeConflictError=class extends ne{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"})}},exports.FeePayerNonceMismatchError=or,exports.FilterTypeNotSupportedError=Be,exports.HttpRequestError=$r,exports.InsufficientFundsError=ks,exports.IntegerOutOfRangeError=Fe,exports.InternalRpcError=jr,exports.IntrinsicGasTooHighError=As,exports.IntrinsicGasTooLowError=$s,exports.InvalidAbiDecodingTypeError=ke,exports.InvalidAbiEncodingTypeError=Ie,exports.InvalidAbiItemError=v,exports.InvalidAbiParameterError=I,exports.InvalidAbiParametersError=k,exports.InvalidAbiTypeParameterError=S,exports.InvalidAddressError=Yt,exports.InvalidArrayError=Ae,exports.InvalidBytesBooleanError=Me,exports.InvalidChainIdError=Bi,exports.InvalidDecimalNumberError=class extends ne{constructor({value:e}){super(`Number \`${e}\` is not a valid decimal number.`,{name:"InvalidDecimalNumberError"})}},exports.InvalidDefinitionTypeError=$e,exports.InvalidDomainError=pd,exports.InvalidFunctionModifierError=B,exports.InvalidHexBooleanError=Ue,exports.InvalidHexValueError=je,exports.InvalidInputRpcError=qr,exports.InvalidLegacyVError=ir,exports.InvalidModifierError=T,exports.InvalidParameterError=A,exports.InvalidParamsRpcError=Ur,exports.InvalidParenthesisError=C,exports.InvalidPrimaryTypeError=hd,exports.InvalidRequestRpcError=Fr,exports.InvalidSerializableTransactionError=ur,exports.InvalidSerializedTransactionError=lr,exports.InvalidSerializedTransactionTypeError=dr,exports.InvalidSignatureError=N,exports.InvalidStorageKeySizeError=fr,exports.InvalidStructSignatureError=O,exports.InvalidStructTypeError=md,exports.InvalidTypedDataTypeError=bd,exports.InvalidYParityError=cr,exports.JsonRpcVersionUnsupportedError=Vr,exports.LimitExceededRpcError=Hr,exports.MaxFeePerGasTooLowError=Ds,exports.MethodNotFoundRpcError=Mr,exports.MethodNotSupportedRpcError=Dr,exports.NonceMaxValueError=Is,exports.NonceTooHighError=Ps,exports.NonceTooLowError=Es,exports.ParseRpcError=Cr,exports.ProviderDisconnectedError=Yr,exports.ProviderRpcError=Rr,exports.RawContractError=Ar,exports.ResourceNotFoundRpcError=Lr,exports.ResourceUnavailableRpcError=Gr,exports.ResponseBodyTooLargeError=Tr,exports.RlpDepthLimitExceededError=qe,exports.RlpListBoundaryExceededError=Le,exports.RlpTrailingBytesError=Ge,exports.RpcError=Or,exports.RpcRequestError=Sr,exports.SizeExceedsPaddingSizeError=Ne,exports.SizeOverflowError=_e,exports.SliceOffsetOutOfBoundsError=Se,exports.SocketClosedError=Nr,exports.SolidityProtectedKeywordError=$,exports.StateAssignmentConflictError=rr,exports.SwitchChainError=Xr,exports.TimeoutError=zr,exports.TipAboveFeeCapError=Bs,exports.TransactionExecutionError=pr,exports.TransactionNotFoundError=hr,exports.TransactionReceiptNotFoundError=mr,exports.TransactionRejectedRpcError=_r,exports.TransactionTypeNotSupportedError=Ts,exports.UnauthorizedProviderError=Wr,exports.UnknownBundleIdError=ns,exports.UnknownNodeError=Ss,exports.UnknownRpcError=is,exports.UnknownSignatureError=z,exports.UnknownTypeError=P,exports.UnsupportedChainIdError=es,exports.UnsupportedNonOptionalCapabilityError=Qr,exports.UnsupportedPackedAbiType=Te,exports.UnsupportedProviderMethodError=Kr,exports.UrlRequiredError=Ym,exports.UserRejectedRequestError=Zr,exports.WaitForCallsStatusTimeoutError=Ic,exports.WaitForTransactionReceiptTimeoutError=yr,exports.WebSocketRequestError=Br,exports.assertCurrentChain=ic,exports.assertRequest=Ls,exports.assertTransactionEIP1559=wu,exports.assertTransactionEIP2930=xu,exports.assertTransactionLegacy=vu,exports.blobsToCommitments=ra,exports.blobsToProofs=sa,exports.boolToBytes=at,exports.boolToHex=Xe,exports.bytesToBigInt=Gn,exports.bytesToBool=_n,exports.bytesToHex=Qe,exports.bytesToNumber=Dn,exports.bytesToRlp=function(e,t="bytes"){return ps(e,t)},exports.bytesToString=Hn,exports.ccipFetch=Ou,exports.ccipReadTunnel=function({batchGateways:t,ccipRequest:n=Ou}){return{async request({data:r,sender:s,urls:a}){if(a.includes(Uc))return n({data:r,sender:s,urls:t});{const[o,i]=Va({abi:e.batchGatewayAbi,functionName:"query",data:await n({data:On({abi:e.batchGatewayAbi,functionName:"query",args:[[{sender:s,data:r,urls:a}]]}),sender:s,urls:t})});if(o[0]){let t;try{const n=Jn({abi:[...e.batchGatewayAbi,Cn],data:i[0]});if("HttpError"===n.errorName)t=new $r({body:{message:n.args[1]},status:n.args[0],url:a.join(" | ")});else{const e=n.args[0];e&&(t=new Error(e))}}catch{}throw t??new Error("An unknown error occurred.")}return i[0]}}}},exports.ccipRequest=Ou,exports.checksumAddress=Qt,exports.commitmentToVersionedHash=ha,exports.commitmentsToVersionedHashes=ma,exports.compactSignatureToHex=ab,exports.compactSignatureToSignature=function({r:e,yParityAndS:t}){const n=ct(t),r=128&n[0]?1:0,s=n;return 1===r&&(s[0]&=127),{r:e,s:Qe(s),yParity:r}},exports.concat=sn,exports.concatBytes=an,exports.concatHex=on,exports.createClient=Bc,exports.createNonceManager=td,exports.createPublicClient=function(e){const{key:t="public",name:n="Public Client"}=e;return Bc({...e,key:t,name:n,type:"publicClient"}).extend(_m)},exports.createTestClient=function(e){const{key:t="test",name:n="Test Client",mode:r}=e;return Bc({...e,key:t,name:n,type:"testClient"}).extend((e=>({mode:r,...Hm({mode:r})(e)})))},exports.createTransport=Wm,exports.createWalletClient=function(e){const{key:t="wallet",name:n="Wallet Client",transport:r}=e;return Bc({...e,key:t,name:n,transport:r,type:"walletClient"}).extend(Zm)},exports.custom=function(e,t={}){const{key:n="custom",methods:r,name:s="Custom Provider",retryDelay:a}=t;return({retryCount:o})=>Wm({key:n,methods:r,name:s,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:"custom"})},exports.decodeAbiParameters=Vn,exports.decodeDeployData=function(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 se({docsPath:tb});if(!("inputs"in s))throw new ae({docsPath:tb});if(!s.inputs||0===s.inputs.length)throw new ae({docsPath:tb});return{args:Vn(s.inputs,`0x${r.replace(n,"")}`),bytecode:n}},exports.decodeErrorResult=Jn,exports.decodeEventLog=qa,exports.decodeFunctionData=Oc,exports.decodeFunctionResult=Va,exports.defineBlock=Ys,exports.defineChain=function(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)})},exports.defineKzg=nb,exports.defineTransaction=Ws,exports.defineTransactionReceipt=gc,exports.defineTransactionRequest=Fs,exports.deploylessCallViaBytecodeBytecode=vi,exports.deploylessCallViaFactoryBytecode=Pi,exports.domainSeparator=function({domain:e}){return Pd({domain:e,types:{EIP712Domain:wd({domain:e})}})},exports.encodeAbiParameters=bn,exports.encodeDeployData=Ni,exports.encodeErrorResult=Cc,exports.encodeEventTopics=An,exports.encodeFunctionData=On,exports.encodeFunctionResult=Mc,exports.encodePacked=function(e,t){if(e.length!==t.length)throw new de({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(pu(s,a))}return on(n)},exports.erc6492SignatureValidatorByteCode=Ei,exports.ethAddress=Dh,exports.etherUnits={gwei:9,wei:18},exports.extendSchema=function(){return{}},exports.extractChain=function({chains:e,id:t}){return e.find((e=>e.id===t))},exports.fallback=function(e,t={}){const{key:n="fallback",name:r="Fallback",rank:s=!1,shouldThrow:a=Km,retryCount:o,retryDelay:i}=t;return({chain:t,pollingInterval:c=4e3,timeout:u,...d})=>{let l=e,f=()=>{};const p=Wm({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)))))),p=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(p.map((([,e])=>o[e]))),await Ki(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 p}},exports.formatBlock=Ks,exports.formatEther=er,exports.formatGwei=tr,exports.formatLog=Ua,exports.formatTransaction=Zs,exports.formatTransactionReceipt=yc,exports.formatTransactionRequest=Cs,exports.fromBlobs=function(e){const t=e.to??("string"==typeof e.blobs[0]?"hex":"bytes"),n="string"==typeof e.blobs[0]?e.blobs.map((e=>ct(e))):e.blobs,r=n.reduce(((e,t)=>e+t.length),0),s=Ln(new Uint8Array(r));let a=!0;for(const[e,t]of n.entries()){const r=Ln(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?Qe(o):o},exports.fromBytes=function(e,t){const n="string"==typeof t?{to:t}:t,r=n.to;return"number"===r?Dn(e,n):"bigint"===r?Gn(e,n):"boolean"===r?_n(e,n):"string"===r?Hn(e,n):Qe(e,n)},exports.fromHex=function(e,t){const n="string"==typeof t?{to:t}:t,r=n.to;return"number"===r?We(e,n):"bigint"===r?Ve(e,n):"string"===r?Ke(e,n):"boolean"===r?Ze(e,n):ct(e,n)},exports.fromRlp=Fu,exports.getAbiItem=Pn,exports.getAddress=en,exports.getChainContractAddress=zi,exports.getContract=function({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}=fc(n);return K(s,_i,"readContract")({abi:e,address:t,functionName:r,args:a,...o})}})),d&&(c.simulate=new Proxy({},{get:(n,r)=>(...n)=>{const{args:a,options:o}=fc(n);return K(s,Di,"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}=pc(n,a);return K(s,Bn,"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}=pc(n,a);return K(s,Da,"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}=pc(n,a);return K(s,sc,"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}=fc(n);return K(a,lc,"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}=fc(n);return K(s??a,Fa,"estimateContractGas")({abi:e,address:t,functionName:r,args:o,...i,account:i.account??a.account})}})),c.address=t,c.abi=e,c},exports.getContractAddress=function(e){return"CREATE2"===e.opcode?bu(e):mu(e)},exports.getContractError=us,exports.getCreate2Address=bu,exports.getCreateAddress=mu,exports.getEventSelector=Kt,exports.getEventSignature=Zt,exports.getFunctionSelector=vn,exports.getFunctionSignature=Zt,exports.getSerializedTransactionType=xh,exports.getTransactionType=$a,exports.getTypesForEIP712Domain=wd,exports.gweiUnits={ether:-9,wei:9},exports.hashDomain=Pd,exports.hashMessage=fd,exports.hashStruct=Ed,exports.hashTypedData=vd,exports.hexToBigInt=Ve,exports.hexToBool=Ze,exports.hexToBytes=ct,exports.hexToCompactSignature=rb,exports.hexToNumber=We,exports.hexToRlp=function(e,t="hex"){return ps(e,t)},exports.hexToSignature=sb,exports.hexToString=Ke,exports.http=function(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:p,retryCount:h,timeout:m})=>{const{batchSize:b=1e3,wait:y=0}="object"==typeof n?n:{},g=t.retryCount??h,w=m??t.timeout??1e4,x=e||p?.rpcUrls.default.http[0];if(!x)throw new Ym;const v=id(x,{fetchFn:r,fetchOptions:s,maxResponseBodySize:o,onRequest:u,onResponse:d,timeout:w});return Wm({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}=Fi({id:`${x}.${Qm(r?.signal)}`,wait:y,shouldSplitBatch:e=>e.length>b,fn:e=>v.request({body:e,fetchOptions:a}),sort:(e,t)=>e.id-t.id}),[{error:i,result:c}]=await(async e=>n?o(e):[await v.request({body:e,fetchOptions:a})])(s);if(f)return{error:i,result:c};if(i)throw new Sr({body:s,error:i,url:x});return c},retryCount:g,retryDelay:l,timeout:w,type:"http"},{fetchOptions:s,url:x})}},exports.isAddress=rn,exports.isAddressEqual=Ma,exports.isBytes=hu,exports.isErc6492Signature=Bd,exports.isErc8010Signature=yh,exports.isHash=ju,exports.isHex=X,exports.keccak256=Ht,exports.labelhash=_c,exports.maxInt104=2n**(104n-1n)-1n,exports.maxInt112=2n**(112n-1n)-1n,exports.maxInt120=2n**(120n-1n)-1n,exports.maxInt128=2n**(128n-1n)-1n,exports.maxInt136=2n**(136n-1n)-1n,exports.maxInt144=2n**(144n-1n)-1n,exports.maxInt152=2n**(152n-1n)-1n,exports.maxInt16=2n**(16n-1n)-1n,exports.maxInt160=2n**(160n-1n)-1n,exports.maxInt168=2n**(168n-1n)-1n,exports.maxInt176=2n**(176n-1n)-1n,exports.maxInt184=2n**(184n-1n)-1n,exports.maxInt192=2n**(192n-1n)-1n,exports.maxInt200=2n**(200n-1n)-1n,exports.maxInt208=2n**(208n-1n)-1n,exports.maxInt216=2n**(216n-1n)-1n,exports.maxInt224=2n**(224n-1n)-1n,exports.maxInt232=2n**(232n-1n)-1n,exports.maxInt24=2n**(24n-1n)-1n,exports.maxInt240=2n**(240n-1n)-1n,exports.maxInt248=2n**(248n-1n)-1n,exports.maxInt256=2n**(256n-1n)-1n,exports.maxInt32=2n**(32n-1n)-1n,exports.maxInt40=2n**(40n-1n)-1n,exports.maxInt48=2n**(48n-1n)-1n,exports.maxInt56=2n**(56n-1n)-1n,exports.maxInt64=2n**(64n-1n)-1n,exports.maxInt72=2n**(72n-1n)-1n,exports.maxInt8=2n**(8n-1n)-1n,exports.maxInt80=2n**(80n-1n)-1n,exports.maxInt88=2n**(88n-1n)-1n,exports.maxInt96=2n**(96n-1n)-1n,exports.maxUint104=2n**104n-1n,exports.maxUint112=2n**112n-1n,exports.maxUint120=2n**120n-1n,exports.maxUint128=2n**128n-1n,exports.maxUint136=2n**136n-1n,exports.maxUint144=2n**144n-1n,exports.maxUint152=2n**152n-1n,exports.maxUint16=2n**16n-1n,exports.maxUint160=2n**160n-1n,exports.maxUint168=2n**168n-1n,exports.maxUint176=2n**176n-1n,exports.maxUint184=2n**184n-1n,exports.maxUint192=2n**192n-1n,exports.maxUint200=2n**200n-1n,exports.maxUint208=2n**208n-1n,exports.maxUint216=2n**216n-1n,exports.maxUint224=2n**224n-1n,exports.maxUint232=2n**232n-1n,exports.maxUint24=2n**24n-1n,exports.maxUint240=2n**240n-1n,exports.maxUint248=2n**248n-1n,exports.maxUint256=qs,exports.maxUint32=2n**32n-1n,exports.maxUint40=2n**40n-1n,exports.maxUint48=2n**48n-1n,exports.maxUint56=2n**56n-1n,exports.maxUint64=2n**64n-1n,exports.maxUint72=2n**72n-1n,exports.maxUint8=2n**8n-1n,exports.maxUint80=2n**80n-1n,exports.maxUint88=2n**88n-1n,exports.maxUint96=2n**96n-1n,exports.minInt104=-(2n**(104n-1n)),exports.minInt112=-(2n**(112n-1n)),exports.minInt120=-(2n**(120n-1n)),exports.minInt128=-(2n**(128n-1n)),exports.minInt136=-(2n**(136n-1n)),exports.minInt144=-(2n**(144n-1n)),exports.minInt152=-(2n**(152n-1n)),exports.minInt16=-(2n**(16n-1n)),exports.minInt160=-(2n**(160n-1n)),exports.minInt168=-(2n**(168n-1n)),exports.minInt176=-(2n**(176n-1n)),exports.minInt184=-(2n**(184n-1n)),exports.minInt192=-(2n**(192n-1n)),exports.minInt200=-(2n**(200n-1n)),exports.minInt208=-(2n**(208n-1n)),exports.minInt216=-(2n**(216n-1n)),exports.minInt224=-(2n**(224n-1n)),exports.minInt232=-(2n**(232n-1n)),exports.minInt24=-(2n**(24n-1n)),exports.minInt240=-(2n**(240n-1n)),exports.minInt248=-(2n**(248n-1n)),exports.minInt256=-(2n**(256n-1n)),exports.minInt32=-(2n**(32n-1n)),exports.minInt40=-(2n**(40n-1n)),exports.minInt48=-(2n**(48n-1n)),exports.minInt56=-(2n**(56n-1n)),exports.minInt64=-(2n**(64n-1n)),exports.minInt72=-(2n**(72n-1n)),exports.minInt8=-(2n**(8n-1n)),exports.minInt80=-(2n**(80n-1n)),exports.minInt88=-(2n**(88n-1n)),exports.minInt96=-(2n**(96n-1n)),exports.namehash=Lc,exports.nonceManager=nd,exports.numberToBytes=ut,exports.numberToHex=et,exports.offchainLookup=zu,exports.offchainLookupAbiItem=Nu,exports.offchainLookupSignature=Su,exports.pad=Oe,exports.padBytes=Ce,exports.padHex=Re,exports.parseAbi=W,exports.parseAbiItem=function(e){let t;if("string"==typeof e)t=M(e);else{const n=H(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(!p(r)){t=M(r,n);break}}}if(!t)throw new v({signature:e});return t},exports.parseAbiParameter=function(e){let t;if("string"==typeof e)t=L(e,{modifiers:g});else{const n=H(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(!p(r)){t=L(r,{modifiers:g,structs:n});break}}}if(!t)throw new I({param:e});return t},exports.parseAbiParameters=function(e){const t=[];if("string"==typeof e){const n=G(e),r=n.length;for(let e=0;e<r;e++)t.push(L(n[e],{modifiers:g}))}else{const n=H(e),r=e.length;for(let s=0;s<r;s++){const r=e[s];if(p(r))continue;const a=G(r),o=a.length;for(let e=0;e<o;e++)t.push(L(a[e],{modifiers:g,structs:n}))}}if(0===t.length)throw new k({params:e});return t},exports.parseCompactSignature=rb,exports.parseErc6492Signature=function(e){if(!Bd(e))return{signature:e};const[t,n,r]=Vn([{type:"address"},{type:"bytes"},{type:"bytes"}],e);return{address:t,data:n,signature:r}},exports.parseErc8010Signature=function(e){if(!yh(e))return{signature:e};const{authorization:t,to:n,...r}=hh(e);return{authorization:{address:t.address,chainId:t.chainId,nonce:Number(t.nonce),r:et(t.r,{size:32}),s:et(t.s,{size:32}),yParity:t.yParity},...n?{address:n}:{},...r}},exports.parseEther=function(t,n="wei"){return e.fromEther(t,n)},exports.parseEventLogs=Ga,exports.parseGwei=function(t,n="wei"){return e.fromGwei(t,n)},exports.parseSignature=sb,exports.parseTransaction=vh,exports.parseUnits=kh,exports.prepareEncodeFunctionData=zn,exports.presignMessagePrefix=dd,exports.publicActions=_m,exports.recoverAddress=fs,exports.recoverMessageAddress=gh,exports.recoverPublicKey=ds,exports.recoverTransactionAddress=async function(e){const{serializedTransaction:t,signature:n}=e,r=vh(t),s=n??{r:r.r,s:r.s,v:r.v,yParity:r.yParity},a=Eu({...r,r:void 0,s:void 0,v:void 0,yParity:void 0,sidecars:void 0});return await fs({hash:Ht(a),signature:s})},exports.recoverTypedDataAddress=wh,exports.ripemd160=function(e,t){const n=t||"hex",r=ed(X(e,{strict:!1})?st(e):e);return"bytes"===n?r:Je(r)},exports.rpcSchema=function(){return null},exports.rpcTransactionType=Rs,exports.serializeAccessList=Pu,exports.serializeCompactSignature=ab,exports.serializeErc6492Signature=function(e){const{address:t,data:n,signature:r,to:s="hex"}=e,a=on([bn([{type:"address"},{type:"bytes"},{type:"bytes"}],[t,n,r]),Td]);return"hex"===s?a:ct(a)},exports.serializeErc8010Signature=function(e){const{address:t,data:n,signature:r,to:s="hex"}=e,a=function(e){const{data:t,signature:n}=e;ph(e);const r=dh({payload:uh(e.authorization),signature:Qp(e.authorization)}),s=df(fh,[{...e.authorization,delegation:e.authorization.address,chainId:BigInt(e.authorization.chainId)},e.to??r,t??"0x"]);return Xo(n,s,ni(ii(s),{size:32}),lh)}({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:ct(a)},exports.serializeSignature=dm,exports.serializeTransaction=Eu,exports.serializeTypedData=yd,exports.setErrorConfig=function(e){te=e},exports.setupKzg=function(e,t){try{e.loadTrustedSetup(t)}catch(e){const t=e;if(!t.message.includes("trusted setup is already loaded"))throw t}return nb(e)},exports.sha256=pa,exports.shouldThrow=Km,exports.sidecarsToVersionedHashes=function(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(ha({commitment:e,to:r,version:n}));return s},exports.signatureToCompactSignature=function(e){const{r:t,s:n,v:r,yParity:s}=e;let a=n;if(1===Number(s??r-27n)){const e=ct(n);e[0]|=128,a=Qe(e)}return{r:t,yParityAndS:a}},exports.signatureToHex=dm,exports.size=Q,exports.slice=cn,exports.sliceBytes=ln,exports.sliceHex=fn,exports.stringToBytes=dt,exports.stringToHex=nt,exports.stringify=Xn,exports.testActions=Hm,exports.toBlobSidecars=Aa,exports.toBlobs=ka,exports.toBytes=st,exports.toCoinType=function(e){if(1===e)return 60n;if(e>=2147483648||e<0)throw new Yc({chainId:e});return BigInt((2147483648|e)>>>0)},exports.toEventHash=Wt,exports.toEventSelector=Kt,exports.toEventSignature=Zt,exports.toFunctionHash=Wt,exports.toFunctionSelector=vn,exports.toFunctionSignature=Zt,exports.toHex=Je,exports.toPrefixedMessage=ld,exports.toRlp=ps,exports.transactionType=Vs,exports.trim=De,exports.universalSignatureValidatorByteCode=Ei,exports.validateTypedData=gd,exports.verifyHash=async function({address:e,hash:t,signature:n}){return Ma(en(e),await fs({hash:t,signature:n}))},exports.verifyMessage=async function({address:e,message:t,signature:n}){return Ma(en(e),await gh({message:t,signature:n}))},exports.verifyTypedData=async function(e){const{address:t,domain:n,message:r,primaryType:s,signature:a,types:o}=e;return Ma(en(t),await wh({domain:n,message:r,primaryType:s,signature:a,types:o}))},exports.walletActions=Zm,exports.webSocket=function(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,p=e||c?.rpcUrls.default.webSocket?.[0],h={keepAlive:n,reconnect:o};if(!p)throw new Ym;return Wm({key:r,methods:s,name:a,async request({method:e,params:t}){const n={method:e,params:t},r=await ud(p,h),{error:s,result:a}=await r.requestAsync({body:n,timeout:f});if(s)throw new Sr({body:n,error:s,url:p});return a},retryCount:l,retryDelay:i,timeout:f,type:"webSocket"},{getSocket:()=>async function(e){const t=await ud(e);return Object.assign(t.socket,{requests:t.requests,subscriptions:t.subscriptions})}(p),getRpcClient:()=>ud(p,h),async subscribe({params:e,onData:t,onError:n}){const r=await ud(p,h),{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})))}}})}},exports.weiUnits={ether:-18,gwei:-9},exports.withCache=Qi,exports.withRetry=mc,exports.withTimeout=rd,exports.zeroAddress=Hh,exports.zeroHash="0x0000000000000000000000000000000000000000000000000000000000000000";