@pufferfinance/puffer-sdk 1.28.1 → 1.28.3

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 (258) hide show
  1. package/dist/api/puffer-client-helpers.cjs +1 -1
  2. package/dist/api/puffer-client-helpers.cjs.map +1 -1
  3. package/dist/api/puffer-client-helpers.js +7 -7
  4. package/dist/api/puffer-client-helpers.js.map +1 -1
  5. package/dist/api/puffer-client.cjs +1 -1
  6. package/dist/api/puffer-client.cjs.map +1 -1
  7. package/dist/api/puffer-client.js +119 -122
  8. package/dist/api/puffer-client.js.map +1 -1
  9. package/dist/ccip-78YM988s.js +150 -0
  10. package/dist/{ccip-C76-YhQK.js.map → ccip-78YM988s.js.map} +1 -1
  11. package/dist/ccip-LIGR3N1A.cjs +2 -0
  12. package/dist/{ccip-CEodLZ4s.cjs.map → ccip-LIGR3N1A.cjs.map} +1 -1
  13. package/dist/chains/constants.cjs +1 -1
  14. package/dist/chains/constants.js +1 -1
  15. package/dist/constants-6kuRTsbU.cjs +9 -0
  16. package/dist/{constants-CxSgz27h.cjs.map → constants-6kuRTsbU.cjs.map} +1 -1
  17. package/dist/{constants-C9YZ6Ewc.js → constants-CuIEh_ZS.js} +605 -656
  18. package/dist/{constants-C9YZ6Ewc.js.map → constants-CuIEh_ZS.js.map} +1 -1
  19. package/dist/contracts/abis/mainnet/Accountant.cjs.map +1 -1
  20. package/dist/contracts/abis/mainnet/Accountant.js.map +1 -1
  21. package/dist/contracts/abis/mainnet/AtomicQueue.cjs.map +1 -1
  22. package/dist/contracts/abis/mainnet/AtomicQueue.js.map +1 -1
  23. package/dist/contracts/abis/mainnet/BoringVault.cjs.map +1 -1
  24. package/dist/contracts/abis/mainnet/BoringVault.js.map +1 -1
  25. package/dist/contracts/abis/mainnet/CarrotStaker.cjs.map +1 -1
  26. package/dist/contracts/abis/mainnet/CarrotStaker.js.map +1 -1
  27. package/dist/contracts/abis/mainnet/CarrotVesting.cjs +1 -1
  28. package/dist/contracts/abis/mainnet/CarrotVesting.cjs.map +1 -1
  29. package/dist/contracts/abis/mainnet/CarrotVesting.d.ts +84 -92
  30. package/dist/contracts/abis/mainnet/CarrotVesting.js +56 -62
  31. package/dist/contracts/abis/mainnet/CarrotVesting.js.map +1 -1
  32. package/dist/contracts/abis/mainnet/ConcreteMultiStrategyVault.cjs.map +1 -1
  33. package/dist/contracts/abis/mainnet/ConcreteMultiStrategyVault.js.map +1 -1
  34. package/dist/contracts/abis/mainnet/Distributor.cjs.map +1 -1
  35. package/dist/contracts/abis/mainnet/Distributor.js.map +1 -1
  36. package/dist/contracts/abis/mainnet/ERC20Permit.cjs.map +1 -1
  37. package/dist/contracts/abis/mainnet/ERC20Permit.js.map +1 -1
  38. package/dist/contracts/abis/mainnet/GaugeRegistry.cjs.map +1 -1
  39. package/dist/contracts/abis/mainnet/GaugeRegistry.js.map +1 -1
  40. package/dist/contracts/abis/mainnet/GuardianModule.cjs.map +1 -1
  41. package/dist/contracts/abis/mainnet/GuardianModule.js.map +1 -1
  42. package/dist/contracts/abis/mainnet/InstitutionalAccessManager.cjs.map +1 -1
  43. package/dist/contracts/abis/mainnet/InstitutionalAccessManager.js.map +1 -1
  44. package/dist/contracts/abis/mainnet/InstitutionalVault.cjs.map +1 -1
  45. package/dist/contracts/abis/mainnet/InstitutionalVault.js.map +1 -1
  46. package/dist/contracts/abis/mainnet/L1RewardManager.cjs.map +1 -1
  47. package/dist/contracts/abis/mainnet/L1RewardManager.js.map +1 -1
  48. package/dist/contracts/abis/mainnet/L2RewardManager.cjs.map +1 -1
  49. package/dist/contracts/abis/mainnet/L2RewardManager.js.map +1 -1
  50. package/dist/contracts/abis/mainnet/LagoonVault.cjs.map +1 -1
  51. package/dist/contracts/abis/mainnet/LagoonVault.js.map +1 -1
  52. package/dist/contracts/abis/mainnet/PufLocker.cjs.map +1 -1
  53. package/dist/contracts/abis/mainnet/PufLocker.js.map +1 -1
  54. package/dist/contracts/abis/mainnet/PufferDepositor.cjs.map +1 -1
  55. package/dist/contracts/abis/mainnet/PufferDepositor.js.map +1 -1
  56. package/dist/contracts/abis/mainnet/PufferL2Depositor.cjs.map +1 -1
  57. package/dist/contracts/abis/mainnet/PufferL2Depositor.js.map +1 -1
  58. package/dist/contracts/abis/mainnet/PufferOracleV2.cjs.map +1 -1
  59. package/dist/contracts/abis/mainnet/PufferOracleV2.js.map +1 -1
  60. package/dist/contracts/abis/mainnet/PufferProtocol.cjs.map +1 -1
  61. package/dist/contracts/abis/mainnet/PufferProtocol.js.map +1 -1
  62. package/dist/contracts/abis/mainnet/PufferVaultV5.cjs.map +1 -1
  63. package/dist/contracts/abis/mainnet/PufferVaultV5.js.map +1 -1
  64. package/dist/contracts/abis/mainnet/PufferWithdrawalManager.cjs.map +1 -1
  65. package/dist/contracts/abis/mainnet/PufferWithdrawalManager.js.map +1 -1
  66. package/dist/contracts/abis/mainnet/Teller.cjs.map +1 -1
  67. package/dist/contracts/abis/mainnet/Teller.js.map +1 -1
  68. package/dist/contracts/abis/mainnet/ValidatorTicket.cjs.map +1 -1
  69. package/dist/contracts/abis/mainnet/ValidatorTicket.js.map +1 -1
  70. package/dist/contracts/abis/mainnet/mtwCARROT.cjs.map +1 -1
  71. package/dist/contracts/abis/mainnet/mtwCARROT.js.map +1 -1
  72. package/dist/contracts/abis/mainnet/vlPUFFER.cjs.map +1 -1
  73. package/dist/contracts/abis/mainnet/vlPUFFER.js.map +1 -1
  74. package/dist/contracts/addresses.cjs +1 -1
  75. package/dist/contracts/addresses.cjs.map +1 -1
  76. package/dist/contracts/addresses.js +5 -5
  77. package/dist/contracts/addresses.js.map +1 -1
  78. package/dist/contracts/handlers/carrot-staking-handler.cjs +1 -1
  79. package/dist/contracts/handlers/carrot-staking-handler.cjs.map +1 -1
  80. package/dist/contracts/handlers/carrot-staking-handler.d.ts +96 -6599
  81. package/dist/contracts/handlers/carrot-staking-handler.js +13 -16
  82. package/dist/contracts/handlers/carrot-staking-handler.js.map +1 -1
  83. package/dist/contracts/handlers/carrot-vesting-handler.cjs +1 -1
  84. package/dist/contracts/handlers/carrot-vesting-handler.cjs.map +1 -1
  85. package/dist/contracts/handlers/carrot-vesting-handler.d.ts +102 -6605
  86. package/dist/contracts/handlers/carrot-vesting-handler.js +25 -39
  87. package/dist/contracts/handlers/carrot-vesting-handler.js.map +1 -1
  88. package/dist/contracts/handlers/concrete-vault-handler.cjs +1 -1
  89. package/dist/contracts/handlers/concrete-vault-handler.cjs.map +1 -1
  90. package/dist/contracts/handlers/concrete-vault-handler.d.ts +96 -6599
  91. package/dist/contracts/handlers/concrete-vault-handler.js +15 -18
  92. package/dist/contracts/handlers/concrete-vault-handler.js.map +1 -1
  93. package/dist/contracts/handlers/distributor-handler.cjs +1 -1
  94. package/dist/contracts/handlers/distributor-handler.cjs.map +1 -1
  95. package/dist/contracts/handlers/distributor-handler.d.ts +96 -6599
  96. package/dist/contracts/handlers/distributor-handler.js +15 -18
  97. package/dist/contracts/handlers/distributor-handler.js.map +1 -1
  98. package/dist/contracts/handlers/erc20-permit-handler.cjs +1 -1
  99. package/dist/contracts/handlers/erc20-permit-handler.cjs.map +1 -1
  100. package/dist/contracts/handlers/erc20-permit-handler.d.ts +96 -6599
  101. package/dist/contracts/handlers/erc20-permit-handler.js +34 -38
  102. package/dist/contracts/handlers/erc20-permit-handler.js.map +1 -1
  103. package/dist/contracts/handlers/gauge-registry-handler.cjs +1 -1
  104. package/dist/contracts/handlers/gauge-registry-handler.cjs.map +1 -1
  105. package/dist/contracts/handlers/gauge-registry-handler.d.ts +96 -6599
  106. package/dist/contracts/handlers/gauge-registry-handler.js +11 -14
  107. package/dist/contracts/handlers/gauge-registry-handler.js.map +1 -1
  108. package/dist/contracts/handlers/guardian-module-handler.cjs +1 -1
  109. package/dist/contracts/handlers/guardian-module-handler.cjs.map +1 -1
  110. package/dist/contracts/handlers/guardian-module-handler.d.ts +96 -6599
  111. package/dist/contracts/handlers/guardian-module-handler.js +11 -14
  112. package/dist/contracts/handlers/guardian-module-handler.js.map +1 -1
  113. package/dist/contracts/handlers/institutional-access-manager-handler.cjs +1 -1
  114. package/dist/contracts/handlers/institutional-access-manager-handler.cjs.map +1 -1
  115. package/dist/contracts/handlers/institutional-access-manager-handler.d.ts +96 -6599
  116. package/dist/contracts/handlers/institutional-access-manager-handler.js +45 -50
  117. package/dist/contracts/handlers/institutional-access-manager-handler.js.map +1 -1
  118. package/dist/contracts/handlers/institutional-vault-handler.cjs +1 -1
  119. package/dist/contracts/handlers/institutional-vault-handler.cjs.map +1 -1
  120. package/dist/contracts/handlers/institutional-vault-handler.d.ts +96 -6599
  121. package/dist/contracts/handlers/institutional-vault-handler.js +16 -19
  122. package/dist/contracts/handlers/institutional-vault-handler.js.map +1 -1
  123. package/dist/contracts/handlers/l1-reward-manager-handler.cjs +1 -1
  124. package/dist/contracts/handlers/l1-reward-manager-handler.cjs.map +1 -1
  125. package/dist/contracts/handlers/l1-reward-manager-handler.d.ts +96 -6599
  126. package/dist/contracts/handlers/l1-reward-manager-handler.js +14 -17
  127. package/dist/contracts/handlers/l1-reward-manager-handler.js.map +1 -1
  128. package/dist/contracts/handlers/l2-reward-manager-handler.cjs +1 -1
  129. package/dist/contracts/handlers/l2-reward-manager-handler.cjs.map +1 -1
  130. package/dist/contracts/handlers/l2-reward-manager-handler.d.ts +96 -6599
  131. package/dist/contracts/handlers/l2-reward-manager-handler.js +13 -16
  132. package/dist/contracts/handlers/l2-reward-manager-handler.js.map +1 -1
  133. package/dist/contracts/handlers/lagoon-vault-handler.cjs +1 -1
  134. package/dist/contracts/handlers/lagoon-vault-handler.cjs.map +1 -1
  135. package/dist/contracts/handlers/lagoon-vault-handler.d.ts +96 -6599
  136. package/dist/contracts/handlers/lagoon-vault-handler.js +11 -14
  137. package/dist/contracts/handlers/lagoon-vault-handler.js.map +1 -1
  138. package/dist/contracts/handlers/mtw-carrot-handler.cjs +1 -1
  139. package/dist/contracts/handlers/mtw-carrot-handler.cjs.map +1 -1
  140. package/dist/contracts/handlers/mtw-carrot-handler.d.ts +96 -6599
  141. package/dist/contracts/handlers/mtw-carrot-handler.js +12 -15
  142. package/dist/contracts/handlers/mtw-carrot-handler.js.map +1 -1
  143. package/dist/contracts/handlers/nucleus-accountant-handler.cjs +1 -1
  144. package/dist/contracts/handlers/nucleus-accountant-handler.cjs.map +1 -1
  145. package/dist/contracts/handlers/nucleus-accountant-handler.d.ts +96 -6599
  146. package/dist/contracts/handlers/nucleus-accountant-handler.js +13 -16
  147. package/dist/contracts/handlers/nucleus-accountant-handler.js.map +1 -1
  148. package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs +1 -1
  149. package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs.map +1 -1
  150. package/dist/contracts/handlers/nucleus-atomic-queue-handler.d.ts +96 -6599
  151. package/dist/contracts/handlers/nucleus-atomic-queue-handler.js +14 -17
  152. package/dist/contracts/handlers/nucleus-atomic-queue-handler.js.map +1 -1
  153. package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs +1 -1
  154. package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs.map +1 -1
  155. package/dist/contracts/handlers/nucleus-boring-vault-handler.d.ts +96 -6599
  156. package/dist/contracts/handlers/nucleus-boring-vault-handler.js +18 -21
  157. package/dist/contracts/handlers/nucleus-boring-vault-handler.js.map +1 -1
  158. package/dist/contracts/handlers/nucleus-teller-handler.cjs +1 -1
  159. package/dist/contracts/handlers/nucleus-teller-handler.cjs.map +1 -1
  160. package/dist/contracts/handlers/nucleus-teller-handler.d.ts +96 -6599
  161. package/dist/contracts/handlers/nucleus-teller-handler.js +35 -38
  162. package/dist/contracts/handlers/nucleus-teller-handler.js.map +1 -1
  163. package/dist/contracts/handlers/puf-locker-handler.cjs +1 -1
  164. package/dist/contracts/handlers/puf-locker-handler.cjs.map +1 -1
  165. package/dist/contracts/handlers/puf-locker-handler.d.ts +96 -6599
  166. package/dist/contracts/handlers/puf-locker-handler.js +51 -54
  167. package/dist/contracts/handlers/puf-locker-handler.js.map +1 -1
  168. package/dist/contracts/handlers/puffer-depositor-handler.cjs +1 -1
  169. package/dist/contracts/handlers/puffer-depositor-handler.cjs.map +1 -1
  170. package/dist/contracts/handlers/puffer-depositor-handler.d.ts +96 -6599
  171. package/dist/contracts/handlers/puffer-depositor-handler.js +28 -31
  172. package/dist/contracts/handlers/puffer-depositor-handler.js.map +1 -1
  173. package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs +1 -1
  174. package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs.map +1 -1
  175. package/dist/contracts/handlers/puffer-l2-depositor-handler.d.ts +96 -6599
  176. package/dist/contracts/handlers/puffer-l2-depositor-handler.js +42 -45
  177. package/dist/contracts/handlers/puffer-l2-depositor-handler.js.map +1 -1
  178. package/dist/contracts/handlers/puffer-oracle-v2-handler.cjs +1 -1
  179. package/dist/contracts/handlers/puffer-oracle-v2-handler.cjs.map +1 -1
  180. package/dist/contracts/handlers/puffer-oracle-v2-handler.d.ts +96 -6599
  181. package/dist/contracts/handlers/puffer-oracle-v2-handler.js +13 -16
  182. package/dist/contracts/handlers/puffer-oracle-v2-handler.js.map +1 -1
  183. package/dist/contracts/handlers/puffer-protocol-handler.cjs +1 -1
  184. package/dist/contracts/handlers/puffer-protocol-handler.cjs.map +1 -1
  185. package/dist/contracts/handlers/puffer-protocol-handler.d.ts +96 -6599
  186. package/dist/contracts/handlers/puffer-protocol-handler.js +12 -15
  187. package/dist/contracts/handlers/puffer-protocol-handler.js.map +1 -1
  188. package/dist/contracts/handlers/puffer-vault-handler.cjs +1 -1
  189. package/dist/contracts/handlers/puffer-vault-handler.cjs.map +1 -1
  190. package/dist/contracts/handlers/puffer-vault-handler.d.ts +96 -6599
  191. package/dist/contracts/handlers/puffer-vault-handler.js +12 -15
  192. package/dist/contracts/handlers/puffer-vault-handler.js.map +1 -1
  193. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs +1 -1
  194. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs.map +1 -1
  195. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.d.ts +96 -6599
  196. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js +15 -18
  197. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js.map +1 -1
  198. package/dist/contracts/handlers/validator-ticket-handler.cjs +1 -1
  199. package/dist/contracts/handlers/validator-ticket-handler.cjs.map +1 -1
  200. package/dist/contracts/handlers/validator-ticket-handler.d.ts +96 -6599
  201. package/dist/contracts/handlers/validator-ticket-handler.js +12 -15
  202. package/dist/contracts/handlers/validator-ticket-handler.js.map +1 -1
  203. package/dist/contracts/handlers/vl-puffer-handler.cjs +1 -1
  204. package/dist/contracts/handlers/vl-puffer-handler.cjs.map +1 -1
  205. package/dist/contracts/handlers/vl-puffer-handler.d.ts +96 -6599
  206. package/dist/contracts/handlers/vl-puffer-handler.js +19 -22
  207. package/dist/contracts/handlers/vl-puffer-handler.js.map +1 -1
  208. package/dist/contracts/tokens.cjs +1 -1
  209. package/dist/contracts/tokens.cjs.map +1 -1
  210. package/dist/contracts/tokens.js +1 -1
  211. package/dist/contracts/tokens.js.map +1 -1
  212. package/dist/contracts/vaults-addresses.cjs +1 -1
  213. package/dist/contracts/vaults-addresses.cjs.map +1 -1
  214. package/dist/contracts/vaults-addresses.js +1 -1
  215. package/dist/contracts/vaults-addresses.js.map +1 -1
  216. package/dist/errors/base-error.cjs.map +1 -1
  217. package/dist/errors/base-error.js.map +1 -1
  218. package/dist/{getContract-DUA3M2pm.cjs → getContract-D4_SEfqa.cjs} +2 -2
  219. package/dist/{getContract-DUA3M2pm.cjs.map → getContract-D4_SEfqa.cjs.map} +1 -1
  220. package/dist/{getContract-DEPNMZxg.js → getContract-DQN7VDBo.js} +2 -2
  221. package/dist/{getContract-DEPNMZxg.js.map → getContract-DQN7VDBo.js.map} +1 -1
  222. package/dist/http-CajzXkt4.js +4005 -0
  223. package/dist/http-CajzXkt4.js.map +1 -0
  224. package/dist/http-qhIDc8Dn.cjs +5 -0
  225. package/dist/http-qhIDc8Dn.cjs.map +1 -0
  226. package/dist/{localBatchGatewayRequest-CKLnLqib.cjs → localBatchGatewayRequest-C7zYTS2c.cjs} +2 -2
  227. package/dist/{localBatchGatewayRequest-CKLnLqib.cjs.map → localBatchGatewayRequest-C7zYTS2c.cjs.map} +1 -1
  228. package/dist/{localBatchGatewayRequest-C0QtijkB.js → localBatchGatewayRequest-DtOvBmA9.js} +3 -3
  229. package/dist/{localBatchGatewayRequest-C0QtijkB.js.map → localBatchGatewayRequest-DtOvBmA9.js.map} +1 -1
  230. package/dist/main.cjs +1 -1
  231. package/dist/main.js +1 -1
  232. package/dist/secp256k1-CMP_u7qb.cjs +2 -0
  233. package/dist/secp256k1-CMP_u7qb.cjs.map +1 -0
  234. package/dist/secp256k1-DCMgMsfV.js +1297 -0
  235. package/dist/secp256k1-DCMgMsfV.js.map +1 -0
  236. package/dist/utils/time.cjs.map +1 -1
  237. package/dist/utils/time.js.map +1 -1
  238. package/dist/utils/version.cjs +1 -1
  239. package/dist/utils/version.js +1 -1
  240. package/dist/writeContract-BnmmOPwy.cjs +36 -0
  241. package/dist/writeContract-BnmmOPwy.cjs.map +1 -0
  242. package/dist/{writeContract-DkC9wV5p.js → writeContract-DYAfDrRz.js} +1788 -1712
  243. package/dist/writeContract-DYAfDrRz.js.map +1 -0
  244. package/package.json +8 -8
  245. package/dist/ccip-C76-YhQK.js +0 -152
  246. package/dist/ccip-CEodLZ4s.cjs +0 -2
  247. package/dist/constants-CxSgz27h.cjs +0 -9
  248. package/dist/createWalletClient-Cct6ojqI.cjs +0 -5
  249. package/dist/createWalletClient-Cct6ojqI.cjs.map +0 -1
  250. package/dist/createWalletClient-DAuQCrLq.js +0 -3262
  251. package/dist/createWalletClient-DAuQCrLq.js.map +0 -1
  252. package/dist/secp256k1-ClOw2ksU.js +0 -1291
  253. package/dist/secp256k1-ClOw2ksU.js.map +0 -1
  254. package/dist/secp256k1-YUzyTLhP.cjs +0 -2
  255. package/dist/secp256k1-YUzyTLhP.cjs.map +0 -1
  256. package/dist/writeContract-BfAYISeL.cjs +0 -36
  257. package/dist/writeContract-BfAYISeL.cjs.map +0 -1
  258. package/dist/writeContract-DkC9wV5p.js.map +0 -1
@@ -0,0 +1,5 @@
1
+ "use strict";const s=require("./writeContract-BnmmOPwy.cjs"),m=require("./constants-6kuRTsbU.cjs"),pe=require("./localBatchGatewayRequest-C7zYTS2c.cjs"),Pt=require("./secp256k1-CMP_u7qb.cjs");function ke(e){let t;if(typeof e=="string")t=s.parseSignature(e);else{const r=s.parseStructs(e),n=e.length;for(let o=0;o<n;o++){const a=e[o];if(!s.isStructSignature(a)){t=s.parseSignature(a,r);break}}}if(!t)throw new s.InvalidAbiItemError({signature:e});return t}function Ce(e){const t=[];if(typeof e=="string"){const r=s.splitParameters(e),n=r.length;for(let o=0;o<n;o++)t.push(s.parseAbiParameter(r[o],{modifiers:s.modifiers}))}else{const r=s.parseStructs(e),n=e.length;for(let o=0;o<n;o++){const a=e[o];if(s.isStructSignature(a))continue;const i=s.splitParameters(a),c=i.length;for(let u=0;u<c;u++)t.push(s.parseAbiParameter(i[u],{modifiers:s.modifiers,structs:r}))}}if(t.length===0)throw new s.InvalidAbiParametersError({params:e});return t}function W(e,t){if(O(e)>t)throw new Ot({givenSize:O(e),maxSize:t})}const F={zero:48,nine:57,A:65,F:70,a:97,f:102};function Ie(e){if(e>=F.zero&&e<=F.nine)return e-F.zero;if(e>=F.A&&e<=F.F)return e-(F.A-10);if(e>=F.a&&e<=F.f)return e-(F.a-10)}function Bt(e,t={}){const{dir:r,size:n=32}=t;if(n===0)return e;if(e.length>n)throw new Lt({size:e.length,targetSize:n,type:"Bytes"});const o=new Uint8Array(n);for(let a=0;a<n;a++){const i=r==="right";o[i?a:n-a-1]=e[i?a:e.length-a-1]}return o}function Ue(e,t={}){const{dir:r="left"}=t;let n=e,o=0;for(let a=0;a<n.length-1&&n[r==="left"?a:n.length-a-1].toString()==="0";a++)o++;return n=r==="left"?n.slice(o):n.slice(0,n.length-o),n}const kt=new TextDecoder,Ct=new TextEncoder;function It(e){return e instanceof Uint8Array?e:typeof e=="string"?De(e):Nt(e)}function Nt(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function De(e,t={}){const{size:r}=t;let n=e;r&&(s.assertSize(e,r),n=s.padRight(e,r));let o=n.slice(2);o.length%2&&(o=`0${o}`);const a=o.length/2,i=new Uint8Array(a);for(let c=0,u=0;c<a;c++){const d=Ie(o.charCodeAt(u++)),l=Ie(o.charCodeAt(u++));if(d===void 0||l===void 0)throw new s.BaseError(`Invalid byte sequence ("${o[u-2]}${o[u-1]}" in "${o}").`);i[c]=d*16+l}return i}function St(e,t={}){const{size:r}=t,n=Ct.encode(e);return typeof r=="number"?(W(n,r),zt(n,r)):n}function zt(e,t){return Bt(e,{dir:"right",size:t})}function O(e){return e.length}function $t(e,t,r,n={}){const{strict:o}=n;return e.slice(t,r)}function Ft(e,t={}){const{size:r}=t;typeof r<"u"&&W(e,r);const n=s.fromBytes(e,t);return s.toBigInt(n,t)}function _t(e,t={}){const{size:r}=t;let n=e;if(typeof r<"u"&&(W(n,r),n=qe(n)),n.length>1||n[0]>1)throw new qt(n);return!!n[0]}function _(e,t={}){const{size:r}=t;typeof r<"u"&&W(e,r);const n=s.fromBytes(e,t);return s.toNumber(n,t)}function Ut(e,t={}){const{size:r}=t;let n=e;return typeof r<"u"&&(W(n,r),n=Dt(n)),kt.decode(n)}function qe(e){return Ue(e,{dir:"left"})}function Dt(e){return Ue(e,{dir:"right"})}class qt extends s.BaseError{constructor(t){super(`Bytes value \`${t}\` is not a valid boolean.`,{metaMessages:["The bytes array must contain a single byte of either a `0` or `1` value."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesBooleanError"})}}class Ot extends s.BaseError{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed \`${r}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}}class Lt extends s.BaseError{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}}class Mt extends m.BaseError{constructor(t){super(`Call bundle failed with status: ${t.statusCode}`,{name:"BundleFailedError"}),Object.defineProperty(this,"result",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=t}}function Q(e,{delay:t=100,retryCount:r=2,shouldRetry:n=()=>!0}={}){return new Promise((o,a)=>{const i=async({count:c=0}={})=>{const u=async({error:d})=>{const l=typeof t=="function"?t({count:c,error:d}):t;l&&await s.wait(l),i({count:c+1})};try{const d=await e();o(d)}catch(d){if(c<r&&await n({count:c,error:d}))return u({error:d});a(d)}};i()})}const Oe="0x5792579257925792579257925792579257925792579257925792579257925792",Le=m.numberToHex(0,{size:32});async function Ht(e,t){const{account:r=e.account,capabilities:n,chain:o=e.chain,experimental_fallback:a,experimental_fallbackDelay:i=32,forceAtomic:c=!1,id:u,version:d="2.0.0"}=t,l=r?s.parseAccount(r):null,h=t.calls.map(f=>{const p=f,g=p.abi?s.encodeFunctionData({abi:p.abi,functionName:p.functionName,args:p.args}):p.data;return{data:p.dataSuffix&&g?m.concat([g,p.dataSuffix]):g,to:p.to,value:p.value?m.numberToHex(p.value):void 0}});try{const f=await e.request({method:"wallet_sendCalls",params:[{atomicRequired:c,calls:h,capabilities:n,chainId:m.numberToHex(o.id),from:l?.address,id:u,version:d}]},{retryCount:0});return typeof f=="string"?{id:f}:f}catch(f){const p=f;if(a&&(p.name==="MethodNotFoundRpcError"||p.name==="MethodNotSupportedRpcError"||p.name==="UnknownRpcError"||p.details.toLowerCase().includes("does not exist / is not available")||p.details.toLowerCase().includes("missing or invalid. request()")||p.details.toLowerCase().includes("did not match any variant of untagged enum")||p.details.toLowerCase().includes("account upgraded to unsupported contract")||p.details.toLowerCase().includes("eip-7702 not supported")||p.details.toLowerCase().includes("unsupported wc_ method")||p.details.toLowerCase().includes("feature toggled misconfigured"))){if(n&&Object.values(n).some(w=>!w.optional)){const w="non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";throw new s.UnsupportedNonOptionalCapabilityError(new m.BaseError(w,{details:w}))}if(c&&h.length>1){const y="`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";throw new s.AtomicityNotSupportedError(new m.BaseError(y,{details:y}))}const g=[];for(const y of h){const w=s.sendTransaction(e,{account:l,chain:o,data:y.data,to:y.to,value:y.value?m.hexToBigInt(y.value):void 0});g.push(w),i>0&&await new Promise(E=>setTimeout(E,i))}const v=await Promise.allSettled(g);if(v.every(y=>y.status==="rejected"))throw v[0].reason;const b=v.map(y=>y.status==="fulfilled"?y.value:Le);return{id:m.concat([...b,m.numberToHex(o.id,{size:32}),Oe])}}throw s.getTransactionError(f,{...t,account:l,chain:t.chain})}}async function Me(e,t){async function r(l){if(l.endsWith(Oe.slice(2))){const f=m.trim(m.sliceHex(l,-64,-32)),p=m.sliceHex(l,0,-64).slice(2).match(/.{1,64}/g),g=await Promise.all(p.map(b=>Le.slice(2)!==b?e.request({method:"eth_getTransactionReceipt",params:[`0x${b}`]},{dedupe:!0}):void 0)),v=g.some(b=>b===null)?100:g.every(b=>b?.status==="0x1")?200:g.every(b=>b?.status==="0x0")?500:600;return{atomic:!1,chainId:m.hexToNumber(f),receipts:g.filter(Boolean),status:v,version:"2.0.0"}}return e.request({method:"wallet_getCallsStatus",params:[l]})}const{atomic:n=!1,chainId:o,receipts:a,version:i="2.0.0",...c}=await r(t.id),[u,d]=(()=>{const l=c.status;return l>=100&&l<200?["pending",l]:l>=200&&l<300?["success",l]:l>=300&&l<700?["failure",l]:l==="CONFIRMED"?["success",200]:l==="PENDING"?["pending",100]:[void 0,l]})();return{...c,atomic:n,chainId:o?m.hexToNumber(o):void 0,receipts:a?.map(l=>({...l,blockNumber:m.hexToBigInt(l.blockNumber),gasUsed:m.hexToBigInt(l.gasUsed),status:m.receiptStatuses[l.status]}))??[],statusCode:d,status:u,version:i}}async function jt(e,t){const{id:r,pollingInterval:n=e.pollingInterval,status:o=({statusCode:v})=>v===200||v>=300,retryCount:a=4,retryDelay:i=({count:v})=>~~(1<<v)*200,timeout:c=6e4,throwOnFailure:u=!1}=t,d=s.stringify(["waitForCallsStatus",e.uid,r]),{promise:l,resolve:h,reject:f}=s.withResolvers();let p;const g=s.observe(d,{resolve:h,reject:f},v=>{const b=s.poll(async()=>{const y=w=>{clearTimeout(p),b(),w(),g()};try{const w=await Q(async()=>{const E=await s.getAction(e,Me,"getCallsStatus")({id:r});if(u&&E.status==="failure")throw new Mt(E);return E},{retryCount:a,delay:i});if(!o(w))return;y(()=>v.resolve(w))}catch(w){y(()=>v.reject(w))}},{interval:n,emitOnBegin:!0});return b});return p=c?setTimeout(()=>{g(),clearTimeout(p),f(new Vt({id:r}))},c):void 0,await l}class Vt extends m.BaseError{constructor({id:t}){super(`Timed out while waiting for call bundle with id "${t}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}const se=256;let Z=se,J;function He(e=11){if(!J||Z+e>se*2){J="",Z=0;for(let t=0;t<se;t++)J+=(256+Math.random()*256|0).toString(16).substring(1)}return J.substring(Z,Z+++e)}function je(e){const{batch:t,chain:r,ccipRead:n,key:o="base",name:a="Base Client",type:i="base"}=e,c=e.experimental_blockTag??(typeof r?.experimental_preconfirmationTime=="number"?"pending":void 0),u=r?.blockTime??12e3,d=Math.min(Math.max(Math.floor(u/2),500),4e3),l=e.pollingInterval??d,h=e.cacheTime??l,f=e.account?s.parseAccount(e.account):void 0,{config:p,request:g,value:v}=e.transport({chain:r,pollingInterval:l}),b={...p,...v},y={account:f,batch:t,cacheTime:h,ccipRead:n,chain:r,key:o,name:a,pollingInterval:l,request:g,transport:b,type:i,uid:He(),...c?{experimental_blockTag:c}:{}};function w(E){return T=>{const R=T(E);for(const A in y)delete R[A];const P={...E,...R};return Object.assign(P,{extend:w(P)})}}return Object.assign(y,{extend:w(y)})}function me(e){if(!(e instanceof m.BaseError))return!1;const t=e.walk(r=>r instanceof s.ContractFunctionRevertedError);return t instanceof s.ContractFunctionRevertedError?t.data?.errorName==="HttpError"||t.data?.errorName==="ResolverError"||t.data?.errorName==="ResolverNotContract"||t.data?.errorName==="ResolverNotFound"||t.data?.errorName==="ReverseAddressMismatch"||t.data?.errorName==="UnsupportedResolverProfile":!1}function Ve(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return m.isHex(t)?t:null}function oe(e){let t=new Uint8Array(32).fill(0);if(!e)return m.bytesToHex(t);const r=e.split(".");for(let n=r.length-1;n>=0;n-=1){const o=Ve(r[n]),a=o?m.toBytes(o):m.keccak256(m.stringToBytes(r[n]),"bytes");t=m.keccak256(m.concat([t,a]),"bytes")}return m.bytesToHex(t)}function Wt(e){return`[${e.slice(2)}]`}function Gt(e){const t=new Uint8Array(32).fill(0);return e?Ve(e)||m.keccak256(m.stringToBytes(e)):m.bytesToHex(t)}function ge(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const r=new Uint8Array(m.stringToBytes(t).byteLength+2);let n=0;const o=t.split(".");for(let a=0;a<o.length;a++){let i=m.stringToBytes(o[a]);i.byteLength>255&&(i=m.stringToBytes(Wt(Gt(o[a])))),r[n]=i.length,r.set(i,n+1),n+=i.length+1}return r.byteLength!==n+1?r.slice(0,n+1):r}async function Zt(e,t){const{blockNumber:r,blockTag:n,coinType:o,name:a,gatewayUrls:i,strict:c}=t,{chain:u}=e,d=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!u)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:r,chain:u,contract:"ensUniversalResolver"})})(),l=u?.ensTlds;if(l&&!l.some(f=>a.endsWith(f)))return null;const h=o!=null?[oe(a),BigInt(o)]:[oe(a)];try{const f=s.encodeFunctionData({abi:s.addressResolverAbi,functionName:"addr",args:h}),p={address:d,abi:s.universalResolverResolveAbi,functionName:"resolveWithGateways",args:[m.toHex(ge(a)),f,i??[pe.localBatchGatewayUrl]],blockNumber:r,blockTag:n},v=await s.getAction(e,s.readContract,"readContract")(p);if(v[0]==="0x")return null;const b=s.decodeFunctionResult({abi:s.addressResolverAbi,args:h,functionName:"addr",data:v[0]});return b==="0x"||m.trim(b)==="0x00"?null:b}catch(f){if(c)throw f;if(me(f))return null;throw f}}class Jt extends m.BaseError{constructor({data:t}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(t)}`],name:"EnsAvatarInvalidMetadataError"})}}class j extends m.BaseError{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class ye extends m.BaseError{constructor({uri:t}){super(`Unable to resolve ENS avatar URI "${t}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class Yt extends m.BaseError{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const Kt=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,Qt=/^(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>\/.*)?$/,Xt=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,er=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function tr(e){try{const t=await fetch(e,{method:"HEAD"});return t.status===200?t.headers.get("content-type")?.startsWith("image/"):!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!Object.hasOwn(globalThis,"Image")?!1:new Promise(r=>{const n=new Image;n.onload=()=>{r(!0)},n.onerror=()=>{r(!1)},n.src=e})}}function Ne(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function We({uri:e,gatewayUrls:t}){const r=Xt.test(e);if(r)return{uri:e,isOnChain:!0,isEncoded:r};const n=Ne(t?.ipfs,"https://ipfs.io"),o=Ne(t?.arweave,"https://arweave.net"),a=e.match(Kt),{protocol:i,subpath:c,target:u,subtarget:d=""}=a?.groups||{},l=i==="ipns:/"||c==="ipns/",h=i==="ipfs:/"||c==="ipfs/"||Qt.test(e);if(e.startsWith("http")&&!l&&!h){let p=e;return t?.arweave&&(p=e.replace(/https:\/\/arweave.net/g,t?.arweave)),{uri:p,isOnChain:!1,isEncoded:!1}}if((l||h)&&u)return{uri:`${n}/${l?"ipns":"ipfs"}/${u}${d}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&u)return{uri:`${o}/${u}${d||""}`,isOnChain:!1,isEncoded:!1};let f=e.replace(er,"");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 ye({uri:e})}function Ge(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new Jt({data:e});return e.image||e.image_url||e.image_data}async function rr({gatewayUrls:e,uri:t}){try{const r=await fetch(t).then(o=>o.json());return await be({gatewayUrls:e,uri:Ge(r)})}catch{throw new ye({uri:t})}}async function be({gatewayUrls:e,uri:t}){const{uri:r,isOnChain:n}=We({uri:t,gatewayUrls:e});if(n||await tr(r))return r;throw new ye({uri:t})}function nr(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[r,n,o]=t.split("/"),[a,i]=r.split(":"),[c,u]=n.split(":");if(!a||a.toLowerCase()!=="eip155")throw new j({reason:"Only EIP-155 supported"});if(!i)throw new j({reason:"Chain ID not found"});if(!u)throw new j({reason:"Contract address not found"});if(!o)throw new j({reason:"Token ID not found"});if(!c)throw new j({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i,10),namespace:c.toLowerCase(),contractAddress:u,tokenID:o}}async function sr(e,{nft:t}){if(t.namespace==="erc721")return s.readContract(e,{address:t.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(t.tokenID)]});if(t.namespace==="erc1155")return s.readContract(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 Yt({namespace:t.namespace})}async function or(e,{gatewayUrls:t,record:r}){return/eip155:/i.test(r)?ar(e,{gatewayUrls:t,record:r}):be({uri:r,gatewayUrls:t})}async function ar(e,{gatewayUrls:t,record:r}){const n=nr(r),o=await sr(e,{nft:n}),{uri:a,isOnChain:i,isEncoded:c}=We({uri:o,gatewayUrls:t});if(i&&(a.includes("data:application/json;base64,")||a.startsWith("{"))){const d=c?atob(a.replace("data:application/json;base64,","")):a,l=JSON.parse(d);return be({uri:Ge(l),gatewayUrls:t})}let u=n.tokenID;return n.namespace==="erc1155"&&(u=u.replace("0x","").padStart(64,"0")),rr({gatewayUrls:t,uri:a.replace(/(?:0x)?{id}/,u)})}async function Ze(e,t){const{blockNumber:r,blockTag:n,key:o,name:a,gatewayUrls:i,strict:c}=t,{chain:u}=e,d=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!u)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:r,chain:u,contract:"ensUniversalResolver"})})(),l=u?.ensTlds;if(l&&!l.some(h=>a.endsWith(h)))return null;try{const h={address:d,abi:s.universalResolverResolveAbi,args:[m.toHex(ge(a)),s.encodeFunctionData({abi:s.textResolverAbi,functionName:"text",args:[oe(a),o]}),i??[pe.localBatchGatewayUrl]],functionName:"resolveWithGateways",blockNumber:r,blockTag:n},p=await s.getAction(e,s.readContract,"readContract")(h);if(p[0]==="0x")return null;const g=s.decodeFunctionResult({abi:s.textResolverAbi,functionName:"text",data:p[0]});return g===""?null:g}catch(h){if(c)throw h;if(me(h))return null;throw h}}async function ir(e,{blockNumber:t,blockTag:r,assetGatewayUrls:n,name:o,gatewayUrls:a,strict:i,universalResolverAddress:c}){const u=await s.getAction(e,Ze,"getEnsText")({blockNumber:t,blockTag:r,key:"avatar",name:o,universalResolverAddress:c,gatewayUrls:a,strict:i});if(!u)return null;try{return await or(e,{record:u,gatewayUrls:n})}catch{return null}}async function cr(e,t){const{address:r,blockNumber:n,blockTag:o,coinType:a=60n,gatewayUrls:i,strict:c}=t,{chain:u}=e,d=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!u)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:n,chain:u,contract:"ensUniversalResolver"})})();try{const l={address:d,abi:s.universalResolverReverseAbi,args:[r,a,i??[pe.localBatchGatewayUrl]],functionName:"reverseWithGateways",blockNumber:n,blockTag:o},h=s.getAction(e,s.readContract,"readContract"),[f]=await h(l);return f||null}catch(l){if(c)throw l;if(me(l))return null;throw l}}async function ur(e,t){const{blockNumber:r,blockTag:n,name:o}=t,{chain:a}=e,i=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!a)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:r,chain:a,contract:"ensUniversalResolver"})})(),c=a?.ensTlds;if(c&&!c.some(d=>o.endsWith(d)))throw new Error(`${o} is not a valid ENS TLD (${c?.join(", ")}) for chain "${a.name}" (id: ${a.id}).`);const[u]=await s.getAction(e,s.readContract,"readContract")({address:i,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[m.toHex(ge(o))],blockNumber:r,blockTag:n});return u}async function Je(e,t){const{account:r=e.account,blockNumber:n,blockTag:o="latest",blobs:a,data:i,gas:c,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:l,maxPriorityFeePerGas:h,to:f,value:p,...g}=t,v=r?s.parseAccount(r):void 0;try{s.assertRequest(t);const y=(typeof n=="bigint"?m.numberToHex(n):void 0)||o,w=e.chain?.formatters?.transactionRequest?.format,T=(w||s.formatTransactionRequest)({...s.extract(g,{format:w}),from:v?.address,blobs:a,data:i,gas:c,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:l,maxPriorityFeePerGas:h,to:f,value:p}),R=await e.request({method:"eth_createAccessList",params:[T,y]});return{accessList:R.accessList,gasUsed:BigInt(R.gasUsed)}}catch(b){throw s.getCallError(b,{...t,account:v,chain:e.chain})}}async function dr(e){const t=s.createFilterRequestScope(e,{method:"eth_newBlockFilter"}),r=await e.request({method:"eth_newBlockFilter"});return{id:r,request:t(r),type:"block"}}async function Ye(e,{address:t,args:r,event:n,events:o,fromBlock:a,strict:i,toBlock:c}={}){const u=o??(n?[n]:void 0),d=s.createFilterRequestScope(e,{method:"eth_newFilter"});let l=[];u&&(l=[u.flatMap(p=>s.encodeEventTopics({abi:[p],eventName:p.name,args:r}))],n&&(l=l[0]));const h=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof a=="bigint"?m.numberToHex(a):a,toBlock:typeof c=="bigint"?m.numberToHex(c):c,...l.length?{topics:l}:{}}]});return{abi:u,args:r,eventName:n?n.name:void 0,fromBlock:a,id:h,request:d(h),strict:!!i,toBlock:c,type:"event"}}async function Ke(e){const t=s.createFilterRequestScope(e,{method:"eth_newPendingTransactionFilter"}),r=await e.request({method:"eth_newPendingTransactionFilter"});return{id:r,request:t(r),type:"transaction"}}async function lr(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function fr(e,{blockHash:t,blockNumber:r,blockTag:n="latest"}={}){const o=r!==void 0?m.numberToHex(r):void 0;let a;return t?a=await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]},{dedupe:!0}):a=await e.request({method:"eth_getBlockTransactionCountByNumber",params:[o||n]},{dedupe:!!o}),m.hexToNumber(a)}async function ae(e,{address:t,blockNumber:r,blockTag:n="latest"}){const o=r!==void 0?m.numberToHex(r):void 0,a=await e.request({method:"eth_getCode",params:[t,o||n]},{dedupe:!!o});if(a!=="0x")return a}class hr extends m.BaseError{constructor({address:t}){super(`No EIP-712 domain found on contract "${t}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${t}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function pr(e,t){const{address:r,factory:n,factoryData:o}=t;try{const[a,i,c,u,d,l,h]=await s.getAction(e,s.readContract,"readContract")({abi:mr,address:r,functionName:"eip712Domain",factory:n,factoryData:o});return{domain:{name:i,version:c,chainId:Number(u),verifyingContract:d,salt:l},extensions:h,fields:a}}catch(a){const i=a;throw i.name==="ContractFunctionExecutionError"&&i.cause.name==="ContractFunctionZeroDataError"?new hr({address:r}):i}}const mr=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];function gr(e){return{baseFeePerGas:e.baseFeePerGas.map(t=>BigInt(t)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:e.reward?.map(t=>t.map(r=>BigInt(r)))}}async function yr(e,{blockCount:t,blockNumber:r,blockTag:n="latest",rewardPercentiles:o}){const a=typeof r=="bigint"?m.numberToHex(r):void 0,i=await e.request({method:"eth_feeHistory",params:[m.numberToHex(t),a||n,o]},{dedupe:!!a});return gr(i)}async function br(e,{filter:t}){const r=t.strict??!1,o=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(a=>m.formatLog(a));return t.abi?s.parseEventLogs({abi:t.abi,logs:o,strict:r}):o}async function wr({address:e,authorization:t,signature:r}){return s.isAddressEqual(m.getAddress(e),await s.recoverAuthorizationAddress({authorization:t,signature:r}))}const Y=new m.LruMap(8192);function vr(e,{enabled:t=!0,id:r}){if(!t||!r)return e();if(Y.get(r))return Y.get(r);const n=e().finally(()=>Y.delete(r));return Y.set(r,n),n}function Er(e,t={}){return async(r,n={})=>{const{dedupe:o=!1,methods:a,retryDelay:i=150,retryCount:c=3,uid:u}={...t,...n},{method:d}=r;if(a?.exclude?.includes(d))throw new s.MethodNotSupportedRpcError(new Error("method not supported"),{method:d});if(a?.include&&!a.include.includes(d))throw new s.MethodNotSupportedRpcError(new Error("method not supported"),{method:d});const l=o?m.stringToHex(`${u}.${s.stringify(r)}`):void 0;return vr(()=>Q(async()=>{try{return await e(r)}catch(h){const f=h;switch(f.code){case s.ParseRpcError.code:throw new s.ParseRpcError(f);case s.InvalidRequestRpcError.code:throw new s.InvalidRequestRpcError(f);case s.MethodNotFoundRpcError.code:throw new s.MethodNotFoundRpcError(f,{method:r.method});case s.InvalidParamsRpcError.code:throw new s.InvalidParamsRpcError(f);case s.InternalRpcError.code:throw new s.InternalRpcError(f);case s.InvalidInputRpcError.code:throw new s.InvalidInputRpcError(f);case s.ResourceNotFoundRpcError.code:throw new s.ResourceNotFoundRpcError(f);case s.ResourceUnavailableRpcError.code:throw new s.ResourceUnavailableRpcError(f);case s.TransactionRejectedRpcError.code:throw new s.TransactionRejectedRpcError(f);case s.MethodNotSupportedRpcError.code:throw new s.MethodNotSupportedRpcError(f,{method:r.method});case s.LimitExceededRpcError.code:throw new s.LimitExceededRpcError(f);case s.JsonRpcVersionUnsupportedError.code:throw new s.JsonRpcVersionUnsupportedError(f);case s.UserRejectedRequestError.code:throw new s.UserRejectedRequestError(f);case s.UnauthorizedProviderError.code:throw new s.UnauthorizedProviderError(f);case s.UnsupportedProviderMethodError.code:throw new s.UnsupportedProviderMethodError(f);case s.ProviderDisconnectedError.code:throw new s.ProviderDisconnectedError(f);case s.ChainDisconnectedError.code:throw new s.ChainDisconnectedError(f);case s.SwitchChainError.code:throw new s.SwitchChainError(f);case s.UnsupportedNonOptionalCapabilityError.code:throw new s.UnsupportedNonOptionalCapabilityError(f);case s.UnsupportedChainIdError.code:throw new s.UnsupportedChainIdError(f);case s.DuplicateIdError.code:throw new s.DuplicateIdError(f);case s.UnknownBundleIdError.code:throw new s.UnknownBundleIdError(f);case s.BundleTooLargeError.code:throw new s.BundleTooLargeError(f);case s.AtomicReadyWalletRejectedUpgradeError.code:throw new s.AtomicReadyWalletRejectedUpgradeError(f);case s.AtomicityNotSupportedError.code:throw new s.AtomicityNotSupportedError(f);case 5e3:throw new s.UserRejectedRequestError(f);default:throw h instanceof m.BaseError?h:new s.UnknownRpcError(f)}}},{delay:({count:h,error:f})=>{if(f&&f instanceof s.HttpRequestError){const p=f?.headers?.get("Retry-After");if(p?.match(/\d/))return Number.parseInt(p,10)*1e3}return~~(1<<h)*i},retryCount:c,shouldRetry:({error:h})=>Ar(h)}),{enabled:o,id:l})}}function Ar(e){return"code"in e&&typeof e.code=="number"?e.code===-1||e.code===s.LimitExceededRpcError.code||e.code===s.InternalRpcError.code:e instanceof s.HttpRequestError&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function xr(e,{errorInstance:t=new Error("timed out"),timeout:r,signal:n}){return new Promise((o,a)=>{(async()=>{let i;try{const c=new AbortController;r>0&&(i=setTimeout(()=>{n&&c.abort()},r)),o(await e({signal:c?.signal||null}))}catch(c){c?.name==="AbortError"&&a(t),a(c)}finally{clearTimeout(i)}})()})}function Tr(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const Se=Tr();function Rr(e,t={}){return{async request(r){const{body:n,fetchFn:o=t.fetchFn??fetch,onRequest:a=t.onRequest,onResponse:i=t.onResponse,timeout:c=t.timeout??1e4}=r,u={...t.fetchOptions??{},...r.fetchOptions??{}},{headers:d,method:l,signal:h}=u;try{const f=await xr(async({signal:g})=>{const v={...u,body:Array.isArray(n)?s.stringify(n.map(E=>({jsonrpc:"2.0",id:E.id??Se.take(),...E}))):s.stringify({jsonrpc:"2.0",id:n.id??Se.take(),...n}),headers:{"Content-Type":"application/json",...d},method:l||"POST",signal:h||(c>0?g:null)},b=new Request(e,v),y=await a?.(b,v)??{...v,url:e};return await o(y.url??e,y)},{errorInstance:new s.TimeoutError({body:n,url:e}),timeout:c,signal:!0});i&&await i(f);let p;if(f.headers.get("Content-Type")?.startsWith("application/json"))p=await f.json();else{p=await f.text();try{p=JSON.parse(p||"{}")}catch(g){if(f.ok)throw g;p={error:p}}}if(!f.ok)throw new s.HttpRequestError({body:n,details:s.stringify(p.error)||f.statusText,headers:f.headers,status:f.status,url:e});return p}catch(f){throw f instanceof s.HttpRequestError||f instanceof s.TimeoutError?f:new s.HttpRequestError({body:n,cause:f,url:e})}}}}const Pr=`Ethereum Signed Message:
2
+ `;function Br(e){const t=typeof e=="string"?m.stringToHex(e):typeof e.raw=="string"?e.raw:m.bytesToHex(e.raw),r=m.stringToHex(`${Pr}${m.size(t)}`);return m.concat([r,t])}function Qe(e,t){return m.keccak256(Br(e),t)}class kr extends m.BaseError{constructor({domain:t}){super(`Invalid domain "${s.stringify(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class Cr extends m.BaseError{constructor({primaryType:t,types:r}){super(`Invalid primary type \`${t}\` must be one of \`${JSON.stringify(Object.keys(r))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class Ir extends m.BaseError{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function Nr(e){const{domain:t,message:r,primaryType:n,types:o}=e,a=(u,d)=>{const l={...d};for(const h of u){const{name:f,type:p}=h;p==="address"&&(l[f]=l[f].toLowerCase())}return l},i=o.EIP712Domain?t?a(o.EIP712Domain,t):{}:{},c=(()=>{if(n!=="EIP712Domain")return a(o[n],r)})();return s.stringify({domain:i,message:c,primaryType:n,types:o})}function Xe(e){const{domain:t,message:r,primaryType:n,types:o}=e,a=(i,c)=>{for(const u of i){const{name:d,type:l}=u,h=c[d],f=l.match(s.integerRegex);if(f&&(typeof h=="number"||typeof h=="bigint")){const[v,b,y]=f;m.numberToHex(h,{signed:b==="int",size:Number.parseInt(y,10)/8})}if(l==="address"&&typeof h=="string"&&!m.isAddress(h))throw new m.InvalidAddressError({address:h});const p=l.match(s.bytesRegex);if(p){const[v,b]=p;if(b&&m.size(h)!==Number.parseInt(b,10))throw new s.BytesSizeMismatchError({expectedSize:Number.parseInt(b,10),givenSize:m.size(h)})}const g=o[l];g&&(Sr(l),a(g,h))}};if(o.EIP712Domain&&t){if(typeof t!="object")throw new kr({domain:t});a(o.EIP712Domain,t)}if(n!=="EIP712Domain")if(o[n])a(o[n],r);else throw new Cr({primaryType:n,types:o})}function et({domain:e}){return[typeof e?.name=="string"&&{name:"name",type:"string"},e?.version&&{name:"version",type:"string"},(typeof e?.chainId=="number"||typeof e?.chainId=="bigint")&&{name:"chainId",type:"uint256"},e?.verifyingContract&&{name:"verifyingContract",type:"address"},e?.salt&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Sr(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new Ir({type:e})}function zr(e){const{domain:t={},message:r,primaryType:n}=e,o={EIP712Domain:et({domain:t}),...e.types};Xe({domain:t,message:r,primaryType:n,types:o});const a=["0x1901"];return t&&a.push($r({domain:t,types:o})),n!=="EIP712Domain"&&a.push(tt({data:r,primaryType:n,types:o})),m.keccak256(m.concat(a))}function $r({domain:e,types:t}){return tt({data:e,primaryType:"EIP712Domain",types:t})}function tt({data:e,primaryType:t,types:r}){const n=rt({data:e,primaryType:t,types:r});return m.keccak256(n)}function rt({data:e,primaryType:t,types:r}){const n=[{type:"bytes32"}],o=[Fr({primaryType:t,types:r})];for(const a of r[t]){const[i,c]=st({types:r,name:a.name,type:a.type,value:e[a.name]});n.push(i),o.push(c)}return s.encodeAbiParameters(n,o)}function Fr({primaryType:e,types:t}){const r=m.toHex(_r({primaryType:e,types:t}));return m.keccak256(r)}function _r({primaryType:e,types:t}){let r="";const n=nt({primaryType:e,types:t});n.delete(e);const o=[e,...Array.from(n).sort()];for(const a of o)r+=`${a}(${t[a].map(({name:i,type:c})=>`${c} ${i}`).join(",")})`;return r}function nt({primaryType:e,types:t},r=new Set){const o=e.match(/^\w*/u)?.[0];if(r.has(o)||t[o]===void 0)return r;r.add(o);for(const a of t[o])nt({primaryType:a.type,types:t},r);return r}function st({types:e,name:t,type:r,value:n}){if(e[r]!==void 0)return[{type:"bytes32"},m.keccak256(rt({data:n,primaryType:r,types:e}))];if(r==="bytes")return n=`0x${(n.length%2?"0":"")+n.slice(2)}`,[{type:"bytes32"},m.keccak256(n)];if(r==="string")return[{type:"bytes32"},m.keccak256(m.toHex(n))];if(r.lastIndexOf("]")===r.length-1){const o=r.slice(0,r.lastIndexOf("[")),a=n.map(i=>st({name:t,type:o,types:e,value:i}));return[{type:"bytes32"},m.keccak256(s.encodeAbiParameters(a.map(([i])=>i),a.map(([,i])=>i)))]}return[{type:r},n]}class Ur extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){const r=super.get(t);return super.has(t)&&r!==void 0&&(this.delete(t),super.set(t,r)),r}set(t,r){if(super.set(t,r),this.maxSize&&this.size>this.maxSize){const n=this.keys().next().value;n&&this.delete(n)}return this}}const Dr={checksum:new Ur(8192)},re=Dr.checksum;function ot(e,t={}){const{as:r=typeof e=="string"?"Hex":"Bytes"}=t,n=m.keccak_256(It(e));return r==="Bytes"?n:s.fromBytes(n)}const qr=/^0x[a-fA-F0-9]{40}$/;function X(e,t={}){const{strict:r=!0}=t;if(!qr.test(e))throw new ze({address:e,cause:new Or});if(r){if(e.toLowerCase()===e)return;if(at(e)!==e)throw new ze({address:e,cause:new Lr})}}function at(e){if(re.has(e))return re.get(e);X(e,{strict:!1});const t=e.substring(2).toLowerCase(),r=ot(St(t),{as:"Bytes"}),n=t.split("");for(let a=0;a<40;a+=2)r[a>>1]>>4>=8&&n[a]&&(n[a]=n[a].toUpperCase()),(r[a>>1]&15)>=8&&n[a+1]&&(n[a+1]=n[a+1].toUpperCase());const o=`0x${n.join("")}`;return re.set(e,o),o}function ie(e,t={}){const{strict:r=!0}=t??{};try{return X(e,{strict:r}),!0}catch{return!1}}class ze extends s.BaseError{constructor({address:t,cause:r}){super(`Address "${t}" is invalid.`,{cause:r}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class Or extends s.BaseError{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 Lr extends s.BaseError{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}const Mr=/^(.*)\[([0-9]*)\]$/,Hr=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,it=/^(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)?$/,$e=2n**256n-1n;function M(e,t,r){const{checksumAddress:n,staticPosition:o}=r,a=Ee(t.type);if(a){const[i,c]=a;return Vr(e,{...t,type:c},{checksumAddress:n,length:i,staticPosition:o})}if(t.type==="tuple")return Jr(e,t,{checksumAddress:n,staticPosition:o});if(t.type==="address")return jr(e,{checksum:n});if(t.type==="bool")return Wr(e);if(t.type.startsWith("bytes"))return Gr(e,t,{staticPosition:o});if(t.type.startsWith("uint")||t.type.startsWith("int"))return Zr(e,t);if(t.type==="string")return Yr(e,{staticPosition:o});throw new xe(t.type)}const Fe=32,ce=32;function jr(e,t={}){const{checksum:r=!1}=t,n=e.readBytes(32);return[(a=>r?at(a):a)(s.fromBytes($t(n,-20))),32]}function Vr(e,t,r){const{checksumAddress:n,length:o,staticPosition:a}=r;if(!o){const u=_(e.readBytes(ce)),d=a+u,l=d+Fe;e.setPosition(d);const h=_(e.readBytes(Fe)),f=V(t);let p=0;const g=[];for(let v=0;v<h;++v){e.setPosition(l+(f?v*32:p));const[b,y]=M(e,t,{checksumAddress:n,staticPosition:l});p+=y,g.push(b)}return e.setPosition(a+32),[g,32]}if(V(t)){const u=_(e.readBytes(ce)),d=a+u,l=[];for(let h=0;h<o;++h){e.setPosition(d+h*32);const[f]=M(e,t,{checksumAddress:n,staticPosition:d});l.push(f)}return e.setPosition(a+32),[l,32]}let i=0;const c=[];for(let u=0;u<o;++u){const[d,l]=M(e,t,{checksumAddress:n,staticPosition:a+i});i+=l,c.push(d)}return[c,i]}function Wr(e){return[_t(e.readBytes(32),{size:32}),32]}function Gr(e,t,{staticPosition:r}){const[n,o]=t.type.split("bytes");if(!o){const i=_(e.readBytes(32));e.setPosition(r+i);const c=_(e.readBytes(32));if(c===0)return e.setPosition(r+32),["0x",32];const u=e.readBytes(c);return e.setPosition(r+32),[s.fromBytes(u),32]}return[s.fromBytes(e.readBytes(Number.parseInt(o,10),32)),32]}function Zr(e,t){const r=t.type.startsWith("int"),n=Number.parseInt(t.type.split("int")[1]||"256",10),o=e.readBytes(32);return[n>48?Ft(o,{signed:r}):_(o,{signed:r}),32]}function Jr(e,t,r){const{checksumAddress:n,staticPosition:o}=r,a=t.components.length===0||t.components.some(({name:u})=>!u),i=a?[]:{};let c=0;if(V(t)){const u=_(e.readBytes(ce)),d=o+u;for(let l=0;l<t.components.length;++l){const h=t.components[l];e.setPosition(d+c);const[f,p]=M(e,h,{checksumAddress:n,staticPosition:d});c+=p,i[a?l:h?.name]=f}return e.setPosition(o+32),[i,32]}for(let u=0;u<t.components.length;++u){const d=t.components[u],[l,h]=M(e,d,{checksumAddress:n,staticPosition:o});i[a?u:d?.name]=l,c+=h}return[i,c]}function Yr(e,{staticPosition:t}){const r=_(e.readBytes(32)),n=t+r;e.setPosition(n);const o=_(e.readBytes(32));if(o===0)return e.setPosition(t+32),["",32];const a=e.readBytes(o,32),i=Ut(qe(a));return e.setPosition(t+32),[i,32]}function Kr({checksumAddress:e,parameters:t,values:r}){const n=[];for(let o=0;o<t.length;o++)n.push(we({checksumAddress:e,parameter:t[o],value:r[o]}));return n}function we({checksumAddress:e=!1,parameter:t,value:r}){const n=t,o=Ee(n.type);if(o){const[a,i]=o;return Xr(r,{checksumAddress:e,length:a,parameter:{...n,type:i}})}if(n.type==="tuple")return sn(r,{checksumAddress:e,parameter:n});if(n.type==="address")return Qr(r,{checksum:e});if(n.type==="bool")return tn(r);if(n.type.startsWith("uint")||n.type.startsWith("int")){const a=n.type.startsWith("int"),[,,i="256"]=it.exec(n.type)??[];return rn(r,{signed:a,size:Number(i)})}if(n.type.startsWith("bytes"))return en(r,{type:n.type});if(n.type==="string")return nn(r);throw new xe(n.type)}function ve(e){let t=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:c}=e[a];i?t+=32:t+=s.size(c)}const r=[],n=[];let o=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:c}=e[a];i?(r.push(s.fromNumber(t+o,{size:32})),n.push(c),o+=s.size(c)):r.push(c)}return s.concat(...r,...n)}function Qr(e,t){const{checksum:r=!1}=t;return X(e,{strict:r}),{dynamic:!1,encoded:s.padLeft(e.toLowerCase())}}function Xr(e,t){const{checksumAddress:r,length:n,parameter:o}=t,a=n===null;if(!Array.isArray(e))throw new pn(e);if(!a&&e.length!==n)throw new hn({expectedLength:n,givenLength:e.length,type:`${o.type}[${n}]`});let i=!1;const c=[];for(let u=0;u<e.length;u++){const d=we({checksumAddress:r,parameter:o,value:e[u]});d.dynamic&&(i=!0),c.push(d)}if(a||i){const u=ve(c);if(a){const d=s.fromNumber(c.length,{size:32});return{dynamic:!0,encoded:c.length>0?s.concat(d,u):d}}if(i)return{dynamic:!0,encoded:u}}return{dynamic:!1,encoded:s.concat(...c.map(({encoded:u})=>u))}}function en(e,{type:t}){const[,r]=t.split("bytes"),n=s.size(e);if(!r){let o=e;return n%32!==0&&(o=s.padRight(o,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:s.concat(s.padLeft(s.fromNumber(n,{size:32})),o)}}if(n!==Number.parseInt(r,10))throw new ut({expectedSize:Number.parseInt(r,10),value:e});return{dynamic:!1,encoded:s.padRight(e)}}function tn(e){if(typeof e!="boolean")throw new s.BaseError(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:s.padLeft(s.fromBoolean(e))}}function rn(e,{signed:t,size:r}){if(typeof r=="number"){const n=2n**(BigInt(r)-(t?1n:0n))-1n,o=t?-n-1n:0n;if(e>n||e<o)throw new s.IntegerOutOfRangeError({max:n.toString(),min:o.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:s.fromNumber(e,{size:32,signed:t})}}function nn(e){const t=s.fromString(e),r=Math.ceil(s.size(t)/32),n=[];for(let o=0;o<r;o++)n.push(s.padRight(s.slice(t,o*32,(o+1)*32)));return{dynamic:!0,encoded:s.concat(s.padRight(s.fromNumber(s.size(t),{size:32})),...n)}}function sn(e,t){const{checksumAddress:r,parameter:n}=t;let o=!1;const a=[];for(let i=0;i<n.components.length;i++){const c=n.components[i],u=Array.isArray(e)?i:c.name,d=we({checksumAddress:r,parameter:c,value:e[u]});a.push(d),d.dynamic&&(o=!0)}return{dynamic:o,encoded:o?ve(a):s.concat(...a.map(({encoded:i})=>i))}}function Ee(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function V(e){const{type:t}=e;if(t==="string"||t==="bytes"||t.endsWith("[]"))return!0;if(t==="tuple")return e.components?.some(V);const r=Ee(e.type);return!!(r&&V({...e,type:r[1]}))}const on={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 un({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new cn({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new _e({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 _e({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 r=t??this.position;return this.assertPosition(r+e-1),this.bytes.subarray(r,r+e)},inspectUint8(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){const t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){const t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){const t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();const e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();const r=this.inspectBytes(e);return this.position+=t??e,r},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 an(e,{recursiveReadLimit:t=8192}={}){const r=Object.create(on);return r.bytes=e,r.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),r.positionReadCount=new Map,r.recursiveReadLimit=t,r}class _e extends s.BaseError{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class cn extends s.BaseError{constructor({length:t,position:r}){super(`Position \`${r}\` is out of bounds (\`0 < position < ${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.PositionOutOfBoundsError"})}}class un extends s.BaseError{constructor({count:t,limit:r}){super(`Recursive read limit of \`${r}\` exceeded (recursive read count: \`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.RecursiveReadLimitExceededError"})}}function dn(e,t,r={}){const{as:n="Array",checksumAddress:o=!1}=r,a=typeof t=="string"?De(t):t,i=an(a);if(O(a)===0&&e.length>0)throw new fn;if(O(a)&&O(a)<32)throw new ln({data:typeof t=="string"?t:s.fromBytes(t),parameters:e,size:O(a)});let c=0;const u=n==="Array"?[]:{};for(let d=0;d<e.length;++d){const l=e[d];i.setPosition(c);const[h,f]=M(i,l,{checksumAddress:o,staticPosition:0});c+=f,n==="Array"?u.push(h):u[l.name??d]=h}return u}function Ae(e,t,r){const{checksumAddress:n=!1}={};if(e.length!==t.length)throw new dt({expectedLength:e.length,givenLength:t.length});const o=Kr({checksumAddress:n,parameters:e,values:t}),a=ve(o);return a.length===0?"0x":a}function ue(e,t){if(e.length!==t.length)throw new dt({expectedLength:e.length,givenLength:t.length});const r=[];for(let n=0;n<e.length;n++){const o=e[n],a=t[n];r.push(ue.encode(o,a))}return s.concat(...r)}(function(e){function t(r,n,o=!1){if(r==="address"){const u=n;return X(u),s.padLeft(u.toLowerCase(),o?32:0)}if(r==="string")return s.fromString(n);if(r==="bytes")return n;if(r==="bool")return s.padLeft(s.fromBoolean(n),o?32:1);const a=r.match(it);if(a){const[u,d,l="256"]=a,h=Number.parseInt(l,10)/8;return s.fromNumber(n,{size:o?32:h,signed:d==="int"})}const i=r.match(Hr);if(i){const[u,d]=i;if(Number.parseInt(d,10)!==(n.length-2)/2)throw new ut({expectedSize:Number.parseInt(d,10),value:n});return s.padRight(n,o?32:0)}const c=r.match(Mr);if(c&&Array.isArray(n)){const[u,d]=c,l=[];for(let h=0;h<n.length;h++)l.push(t(d,n[h],!0));return l.length===0?"0x":s.concat(...l)}throw new xe(r)}e.encode=t})(ue||(ue={}));function ct(e){return Array.isArray(e)&&typeof e[0]=="string"||typeof e=="string"?Ce(e):e}class ln extends s.BaseError{constructor({data:t,parameters:r,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${s.formatAbiParameters(r)})`,`Data: ${t} (${n} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.DataSizeTooSmallError"})}}class fn extends s.BaseError{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class hn extends s.BaseError{constructor({expectedLength:t,givenLength:r,type:n}){super(`Array length mismatch for type \`${n}\`. Expected: \`${t}\`. Given: \`${r}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class ut extends s.BaseError{constructor({expectedSize:t,value:r}){super(`Size of bytes "${r}" (bytes${s.size(r)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class dt extends s.BaseError{constructor({expectedLength:t,givenLength:r}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${t}`,`Given length (values): ${r}`].join(`
3
+ `)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class pn extends s.BaseError{constructor(t){super(`Value \`${t}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class xe extends s.BaseError{constructor(t){super(`Type \`${t}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}function lt(e,t={}){const{recovered:r}=t;if(typeof e.r>"u")throw new ne({signature:e});if(typeof e.s>"u")throw new ne({signature:e});if(r&&typeof e.yParity>"u")throw new ne({signature:e});if(e.r<0n||e.r>$e)throw new En({value:e.r});if(e.s<0n||e.s>$e)throw new An({value:e.s});if(typeof e.yParity=="number"&&e.yParity!==0&&e.yParity!==1)throw new Re({value:e.yParity})}function mn(e){return ft(s.fromBytes(e))}function ft(e){if(e.length!==130&&e.length!==132)throw new vn({signature:e});const t=BigInt(s.slice(e,0,32)),r=BigInt(s.slice(e,32,64)),n=(()=>{const o=+`0x${e.slice(130)}`;if(!Number.isNaN(o))try{return Te(o)}catch{throw new Re({value:o})}})();return typeof n>"u"?{r:t,s:r}:{r:t,s:r,yParity:n}}function gn(e){if(!(typeof e.r>"u")&&!(typeof e.s>"u"))return yn(e)}function yn(e){const t=typeof e=="string"?ft(e):e instanceof Uint8Array?mn(e):typeof e.r=="string"?wn(e):e.v?bn(e):{r:e.r,s:e.s,...typeof e.yParity<"u"?{yParity:e.yParity}:{}};return lt(t),t}function bn(e){return{r:e.r,s:e.s,yParity:Te(e.v)}}function wn(e){const t=(()=>{const r=e.v?Number(e.v):void 0;let n=e.yParity?Number(e.yParity):void 0;if(typeof r=="number"&&typeof n!="number"&&(n=Te(r)),typeof n!="number")throw new Re({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function Te(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return e%2===0?1:0;throw new xn({value:e})}class vn extends s.BaseError{constructor({signature:t}){super(`Value \`${t}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${s.size(s.from(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class ne extends s.BaseError{constructor({signature:t}){super(`Signature \`${s.stringify$1(t)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class En extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class An extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class Re extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class xn extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}function Tn(e,t={}){return typeof e.chainId=="string"?Rn(e):{...e,...t.signature}}function Rn(e){const{address:t,chainId:r,nonce:n}=e,o=gn(e);return{address:t,chainId:Number(r),nonce:BigInt(n),...o}}const Pn="0x8010801080108010801080108010801080108010801080108010801080108010",Bn=ct("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function ht(e){if(typeof e=="string"){if(s.slice(e,-32)!==Pn)throw new In(e)}else lt(e.authorization)}function kn(e){ht(e);const t=s.toNumber(s.slice(e,-64,-32)),r=s.slice(e,-t-64,-64),n=s.slice(e,0,-t-64),[o,a,i]=dn(Bn,r);return{authorization:Tn({address:o.delegation,chainId:Number(o.chainId),nonce:o.nonce,yParity:o.yParity,r:o.r,s:o.s}),signature:n,...i&&i!=="0x"?{data:i,to:a}:{}}}function Cn(e){try{return ht(e),!0}catch{return!1}}let In=class extends s.BaseError{constructor(t){super(`Value \`${t}\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc8010.InvalidWrappedSignatureError"})}};function Nn(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function Sn(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?m.hexToNumber(e.nonce):void 0,storageProof:e.storageProof?Nn(e.storageProof):void 0}}async function zn(e,{address:t,blockNumber:r,blockTag:n,storageKeys:o}){const a=n??"latest",i=r!==void 0?m.numberToHex(r):void 0,c=await e.request({method:"eth_getProof",params:[t,o,i||a]});return Sn(c)}async function $n(e,{address:t,blockNumber:r,blockTag:n="latest",slot:o}){const a=r!==void 0?m.numberToHex(r):void 0;return await e.request({method:"eth_getStorageAt",params:[t,o,a||n]})}async function Pe(e,{blockHash:t,blockNumber:r,blockTag:n,hash:o,index:a}){const i=n||"latest",c=r!==void 0?m.numberToHex(r):void 0;let u=null;if(o?u=await e.request({method:"eth_getTransactionByHash",params:[o]},{dedupe:!0}):t?u=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,m.numberToHex(a)]},{dedupe:!0}):u=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[c||i,m.numberToHex(a)]},{dedupe:!!c}),!u)throw new m.TransactionNotFoundError({blockHash:t,blockNumber:r,blockTag:i,hash:o,index:a});return(e.chain?.formatters?.transaction?.format||m.formatTransaction)(u)}async function Fn(e,{hash:t,transactionReceipt:r}){const[n,o]=await Promise.all([s.getAction(e,s.getBlockNumber,"getBlockNumber")({}),t?s.getAction(e,Pe,"getTransaction")({hash:t}):void 0]),a=r?.blockNumber||o?.blockNumber;return a?n-a+1n:0n}async function K(e,{hash:t}){const r=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!r)throw new m.TransactionReceiptNotFoundError({hash:t});return(e.chain?.formatters?.transactionReceipt?.format||m.formatTransactionReceipt)(r)}async function _n(e,t){const{account:r,authorizationList:n,allowFailure:o=!0,blockNumber:a,blockOverrides:i,blockTag:c,stateOverride:u}=t,d=t.contracts,{batchSize:l=t.batchSize??1024,deployless:h=t.deployless??!1}=typeof e.batch?.multicall=="object"?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(h)return null;if(e.chain)return s.getChainContractAddress({blockNumber:a,chain:e.chain,contract:"multicall3"});throw new Error("client chain not configured. multicallAddress is required.")})(),p=[[]];let g=0,v=0;for(let w=0;w<d.length;w++){const{abi:E,address:T,args:R,functionName:P}=d[w];try{const A=s.encodeFunctionData({abi:E,args:R,functionName:P});v+=(A.length-2)/2,l>0&&v>l&&p[g].length>0&&(g++,v=(A.length-2)/2,p[g]=[]),p[g]=[...p[g],{allowFailure:!0,callData:A,target:T}]}catch(A){const k=s.getContractError(A,{abi:E,address:T,args:R,docsPath:"/docs/contract/multicall",functionName:P,sender:r});if(!o)throw k;p[g]=[...p[g],{allowFailure:!0,callData:"0x",target:T}]}}const b=await Promise.allSettled(p.map(w=>s.getAction(e,s.readContract,"readContract")({...f===null?{code:s.multicall3Bytecode}:{address:f},abi:s.multicall3Abi,account:r,args:[w],authorizationList:n,blockNumber:a,blockOverrides:i,blockTag:c,functionName:"aggregate3",stateOverride:u}))),y=[];for(let w=0;w<b.length;w++){const E=b[w];if(E.status==="rejected"){if(!o)throw E.reason;for(let R=0;R<p[w].length;R++)y.push({status:"failure",error:E.reason,result:void 0});continue}const T=E.value;for(let R=0;R<T.length;R++){const{returnData:P,success:A}=T[R],{callData:k}=p[w][R],{abi:I,address:B,functionName:N,args:C}=d[y.length];try{if(k==="0x")throw new s.AbiDecodingZeroDataError;if(!A)throw new s.RawContractError({data:P});const z=s.decodeFunctionResult({abi:I,args:C,data:P,functionName:N});y.push(o?{result:z,status:"success"}:z)}catch(z){const D=s.getContractError(z,{abi:I,address:B,args:C,docsPath:"/docs/contract/multicall",functionName:N});if(!o)throw D;y.push({error:D,result:void 0,status:"failure"})}}}if(y.length!==d.length)throw new m.BaseError("multicall results mismatch");return y}async function de(e,t){const{blockNumber:r,blockTag:n=e.experimental_blockTag??"latest",blocks:o,returnFullTransactions:a,traceTransfers:i,validation:c}=t;try{const u=[];for(const f of o){const p=f.blockOverrides?s.toRpc(f.blockOverrides):void 0,g=f.calls.map(b=>{const y=b,w=y.account?s.parseAccount(y.account):void 0,E=y.abi?s.encodeFunctionData(y):y.data,T={...y,data:y.dataSuffix?m.concat([E||"0x",y.dataSuffix]):E,from:y.from??w?.address};return s.assertRequest(T),s.formatTransactionRequest(T)}),v=f.stateOverrides?s.serializeStateOverride(f.stateOverrides):void 0;u.push({blockOverrides:p,calls:g,stateOverrides:v})}const l=(typeof r=="bigint"?m.numberToHex(r):void 0)||n;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:u,returnFullTransactions:a,traceTransfers:i,validation:c},l]})).map((f,p)=>({...m.formatBlock(f),calls:f.calls.map((g,v)=>{const{abi:b,args:y,functionName:w,to:E}=o[p].calls[v],T=g.error?.data??g.returnData,R=BigInt(g.gasUsed),P=g.logs?.map(B=>m.formatLog(B)),A=g.status==="0x1"?"success":"failure",k=b&&A==="success"&&T!=="0x"?s.decodeFunctionResult({abi:b,data:T,functionName:w}):null,I=(()=>{if(A==="success")return;let B;if(g.error?.data==="0x"?B=new s.AbiDecodingZeroDataError:g.error&&(B=new s.RawContractError(g.error)),!!B)return s.getContractError(B,{abi:b??[],address:E??"0x",args:y,functionName:w??"<unknown>"})})();return{data:T,gasUsed:R,logs:P,status:A,...A==="success"?{result:k}:{error:I}}})}))}catch(u){const d=u,l=s.getNodeError(d,{});throw l instanceof m.UnknownNodeError?d:l}}function le(e){let t=!0,r="",n=0,o="",a=!1;for(let i=0;i<e.length;i++){const c=e[i];if(["(",")",","].includes(c)&&(t=!0),c==="("&&n++,c===")"&&n--,!!t){if(n===0){if(c===" "&&["event","function","error",""].includes(o))o="";else if(o+=c,c===")"){a=!0;break}continue}if(c===" "){e[i-1]!==","&&r!==","&&r!==",("&&(r="",t=!1);continue}o+=c,r+=c}}if(!a)throw new s.BaseError("Unable to normalize signature.");return o}function fe(e,t){const r=typeof e,n=t.type;switch(n){case"address":return ie(e,{strict:!1});case"bool":return r==="boolean";case"function":return r==="string";case"string":return r==="string";default:return n==="tuple"&&"components"in t?Object.values(t.components).every((o,a)=>fe(Object.values(e)[a],o)):/^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(n)?r==="number"||r==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(n)?r==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(n)?Array.isArray(e)&&e.every(o=>fe(o,{...t,type:n.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function pt(e,t,r){for(const n in e){const o=e[n],a=t[n];if(o.type==="tuple"&&a.type==="tuple"&&"components"in o&&"components"in a)return pt(o.components,a.components,r[n]);const i=[o.type,a.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?ie(r[n],{strict:!1}):i.includes("address")&&i.includes("bytes")?ie(r[n],{strict:!1}):!1)return i}}function mt(e,t={}){const{prepare:r=!0}=t,n=Array.isArray(e)||typeof e=="string"?ke(e):e;return{...n,...r?{hash:L(n)}:{}}}function Un(e,t,r){const{args:n=[],prepare:o=!0}=r??{},a=s.validate(t,{strict:!1}),i=e.filter(d=>a?d.type==="function"||d.type==="error"?gt(d)===s.slice(t,0,4):d.type==="event"?L(d)===t:!1:"name"in d&&d.name===t);if(i.length===0)throw new he({name:t});if(i.length===1)return{...i[0],...o?{hash:L(i[0])}:{}};let c;for(const d of i){if(!("inputs"in d))continue;if(!n||n.length===0){if(!d.inputs||d.inputs.length===0)return{...d,...o?{hash:L(d)}:{}};continue}if(!d.inputs||d.inputs.length===0||d.inputs.length!==n.length)continue;if(n.every((h,f)=>{const p="inputs"in d&&d.inputs[f];return p?fe(h,p):!1})){if(c&&"inputs"in c&&c.inputs){const h=pt(d.inputs,c.inputs,n);if(h)throw new qn({abiItem:d,type:h[0]},{abiItem:c,type:h[1]})}c=d}}const u=(()=>{if(c)return c;const[d,...l]=i;return{...d,overloads:l}})();if(!u)throw new he({name:t});return{...u,...o?{hash:L(u)}:{}}}function gt(e){return s.slice(L(e),0,4)}function Dn(e){const t=typeof e=="string"?e:s.formatAbiItem$1(e);return le(t)}function L(e){return typeof e!="string"&&"hash"in e&&e.hash?e.hash:ot(s.fromString(Dn(e)))}class qn extends s.BaseError{constructor(t,r){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${t.type}\` in \`${le(s.formatAbiItem$1(t.abiItem))}\`, and`,`\`${r.type}\` in \`${le(s.formatAbiItem$1(r.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 he extends s.BaseError{constructor({name:t,data:r,type:n="item"}){const o=t?` with name "${t}"`:r?` with data "${r}"`:"";super(`ABI ${n}${o} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}function On(e,t){const{bytecode:r,args:n}=t;return s.concat(r,e.inputs?.length&&n?.length?Ae(e.inputs,n):"0x")}function Ln(e){return mt(e)}function Mn(e,...t){const{overloads:r}=e,n=r?Hn([e,...r],e.name,{args:t[0]}):e,o=jn(n),a=t.length>0?Ae(n.inputs,t[0]):void 0;return a?s.concat(o,a):o}function q(e,t={}){return mt(e,t)}function Hn(e,t,r){const n=Un(e,t,r);if(n.type!=="function")throw new he({name:t,type:"function"});return n}function jn(e){return gt(e)}const Vn="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",$="0x0000000000000000000000000000000000000000",Wn="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function Gn(e,t){const{blockNumber:r,blockTag:n,calls:o,stateOverrides:a,traceAssetChanges:i,traceTransfers:c,validation:u}=t,d=t.account?s.parseAccount(t.account):void 0;if(i&&!d)throw new m.BaseError("`account` is required when `traceAssetChanges` is true");const l=d?On(Ln("constructor(bytes, bytes)"),{bytecode:s.deploylessCallViaBytecodeBytecode,args:[Wn,Mn(q("function getBalance(address)"),[d.address])]}):void 0,h=i?await Promise.all(t.calls.map(async x=>{if(!x.data&&!x.abi)return;const{accessList:S}=await Je(e,{account:d.address,...x,data:x.abi?s.encodeFunctionData(x):x.data});return S.map(({address:H,storageKeys:G})=>G.length>0?H:null)})).then(x=>x.flat().filter(Boolean)):[],f=await de(e,{blockNumber:r,blockTag:n,blocks:[...i?[{calls:[{data:l}],stateOverrides:a},{calls:h.map((x,S)=>({abi:[q("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[d.address],to:x,from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]}]:[],{calls:[...o,{}].map(x=>({...x,from:d?.address})),stateOverrides:a},...i?[{calls:[{data:l}]},{calls:h.map((x,S)=>({abi:[q("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[d.address],to:x,from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]},{calls:h.map((x,S)=>({to:x,abi:[q("function decimals() returns (uint256)")],functionName:"decimals",from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]},{calls:h.map((x,S)=>({to:x,abi:[q("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]},{calls:h.map((x,S)=>({to:x,abi:[q("function symbol() returns (string)")],functionName:"symbol",from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]}]:[]],traceTransfers:c,validation:u}),p=i?f[2]:f[0],[g,v,,b,y,w,E,T]=i?f:[],{calls:R,...P}=p,A=R.slice(0,-1)??[],k=g?.calls??[],I=v?.calls??[],B=[...k,...I].map(x=>x.status==="success"?m.hexToBigInt(x.data):null),N=b?.calls??[],C=y?.calls??[],z=[...N,...C].map(x=>x.status==="success"?m.hexToBigInt(x.data):null),D=(w?.calls??[]).map(x=>x.status==="success"?x.result:null),Et=(T?.calls??[]).map(x=>x.status==="success"?x.result:null),At=(E?.calls??[]).map(x=>x.status==="success"?x.result:null),te=[];for(const[x,S]of z.entries()){const H=B[x];if(typeof S!="bigint"||typeof H!="bigint")continue;const G=D[x-1],xt=Et[x-1],Tt=At[x-1],Be=x===0?{address:Vn,decimals:18,symbol:"ETH"}:{address:h[x-1],decimals:Tt||G?Number(G??1):void 0,symbol:xt??void 0};te.some(Rt=>Rt.token.address===Be.address)||te.push({token:Be,value:{pre:H,post:S,diff:S-H}})}return{assetChanges:te,block:P,results:A}}const yt="0x6492649264926492649264926492649264926492649264926492649264926492";function Zn(e){if(s.slice(e,-32)!==yt)throw new Kn(e)}function Jn(e){const{data:t,signature:r,to:n}=e;return s.concat(Ae(ct("address, bytes, bytes"),[n,t,r]),yt)}function Yn(e){try{return Zn(e),!0}catch{return!1}}class Kn extends s.BaseError{constructor(t){super(`Value \`${t}\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc6492.InvalidWrappedSignatureError"})}}function Qn({r:e,s:t,to:r="hex",v:n,yParity:o}){const a=(()=>{if(o===0||o===1)return o;if(n&&(n===27n||n===28n||n>=35n))return n%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),i=`0x${new Pt.secp256k1.Signature(m.hexToBigInt(e),m.hexToBigInt(t)).toCompactHex()}${a===0?"1b":"1c"}`;return r==="hex"?i:m.hexToBytes(i)}async function ee(e,t){const{address:r,hash:n,erc6492VerifierAddress:o=t.universalSignatureVerifierAddress??e.chain?.contracts?.erc6492Verifier?.address,multicallAddress:a=t.multicallAddress??e.chain?.contracts?.multicall3?.address}=t,i=(()=>{const c=t.signature;return m.isHex(c)?c:typeof c=="object"&&"r"in c&&"s"in c?Qn(c):m.bytesToHex(c)})();try{return Cn(i)?await Xn(e,{...t,multicallAddress:a,signature:i}):await es(e,{...t,verifierAddress:o,signature:i})}catch(c){try{if(s.isAddressEqual(m.getAddress(r),await s.recoverAddress({hash:n,signature:i})))return!0}catch{}if(c instanceof U)return!1;throw c}}async function Xn(e,t){const{address:r,blockNumber:n,blockTag:o,hash:a,multicallAddress:i}=t,{authorization:c,data:u,signature:d,to:l}=kn(t.signature);if(await ae(e,{address:r,blockNumber:n,blockTag:o})===m.concatHex(["0xef0100",c.address]))return await ts(e,{address:r,blockNumber:n,blockTag:o,hash:a,signature:d});const f={address:c.address,chainId:Number(c.chainId),nonce:Number(c.nonce),r:m.numberToHex(c.r,{size:32}),s:m.numberToHex(c.s,{size:32}),yParity:c.yParity};if(!await wr({address:r,authorization:f}))throw new U;const g=await s.getAction(e,s.readContract,"readContract")({...i?{address:i}:{code:s.multicall3Bytecode},authorizationList:[f],abi:s.multicall3Abi,blockNumber:n,blockTag:"pending",functionName:"aggregate3",args:[[...u?[{allowFailure:!0,target:l??r,callData:u}]:[],{allowFailure:!0,target:r,callData:s.encodeFunctionData({abi:s.erc1271Abi,functionName:"isValidSignature",args:[a,d]})}]]});if(g[g.length-1]?.returnData?.startsWith("0x1626ba7e"))return!0;throw new U}async function es(e,t){const{address:r,factory:n,factoryData:o,hash:a,signature:i,verifierAddress:c,...u}=t,d=await(async()=>!n&&!o||Yn(i)?i:Jn({data:o,signature:i,to:n}))(),l=c?{to:c,data:s.encodeFunctionData({abi:s.erc6492SignatureValidatorAbi,functionName:"isValidSig",args:[r,a,d]}),...u}:{data:s.encodeDeployData({abi:s.erc6492SignatureValidatorAbi,args:[r,a,d],bytecode:s.erc6492SignatureValidatorByteCode}),...u},{data:h}=await s.getAction(e,s.call,"call")(l).catch(f=>{throw f instanceof s.CallExecutionError?new U:f});if(m.hexToBool(h??"0x0"))return!0;throw new U}async function ts(e,t){const{address:r,blockNumber:n,blockTag:o,hash:a,signature:i}=t;if((await s.getAction(e,s.readContract,"readContract")({address:r,abi:s.erc1271Abi,args:[a,i],blockNumber:n,blockTag:o,functionName:"isValidSignature"}).catch(u=>{throw u instanceof s.ContractFunctionExecutionError?new U:u})).startsWith("0x1626ba7e"))return!0;throw new U}class U extends Error{}async function rs(e,{address:t,message:r,factory:n,factoryData:o,signature:a,...i}){const c=Qe(r);return ee(e,{address:t,factory:n,factoryData:o,hash:c,signature:a,...i})}async function ns(e,t){const{address:r,factory:n,factoryData:o,signature:a,message:i,primaryType:c,types:u,domain:d,...l}=t,h=zr({message:i,primaryType:c,types:u,domain:d});return ee(e,{address:r,factory:n,factoryData:o,hash:h,signature:a,...l})}function bt(e,{emitOnBegin:t=!1,emitMissed:r=!1,onBlockNumber:n,onError:o,poll:a,pollingInterval:i=e.pollingInterval}){const c=typeof a<"u"?a:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc"));let u;return c?(()=>{const h=s.stringify(["watchBlockNumber",e.uid,t,r,i]);return s.observe(h,{onBlockNumber:n,onError:o},f=>s.poll(async()=>{try{const p=await s.getAction(e,s.getBlockNumber,"getBlockNumber")({cacheTime:0});if(u!==void 0){if(p===u)return;if(p-u>1&&r)for(let g=u+1n;g<p;g++)f.onBlockNumber(g,u),u=g}(u===void 0||p>u)&&(f.onBlockNumber(p,u),u=p)}catch(p){f.onError?.(p)}},{emitOnBegin:t,interval:i}))})():(()=>{const h=s.stringify(["watchBlockNumber",e.uid,t,r]);return s.observe(h,{onBlockNumber:n,onError:o},f=>{let p=!0,g=()=>p=!1;return(async()=>{try{const v=(()=>{if(e.transport.type==="fallback"){const y=e.transport.transports.find(w=>w.config.type==="webSocket"||w.config.type==="ipc");return y?y.value:e.transport}return e.transport})(),{unsubscribe:b}=await v.subscribe({params:["newHeads"],onData(y){if(!p)return;const w=m.hexToBigInt(y.result?.number);f.onBlockNumber(w,u),u=w},onError(y){f.onError?.(y)}});g=b,p||g()}catch(v){o?.(v)}})(),()=>g()})})()}async function ss(e,t){const{checkReplacement:r=!0,confirmations:n=1,hash:o,onReplaced:a,retryCount:i=6,retryDelay:c=({count:R})=>~~(1<<R)*200,timeout:u=18e4}=t,d=s.stringify(["waitForTransactionReceipt",e.uid,o]),l=t.pollingInterval?t.pollingInterval:e.chain?.experimental_preconfirmationTime?e.chain.experimental_preconfirmationTime:e.pollingInterval;let h,f,p,g=!1,v,b;const{promise:y,resolve:w,reject:E}=s.withResolvers(),T=u?setTimeout(()=>{b?.(),v?.(),E(new m.WaitForTransactionReceiptTimeoutError({hash:o}))},u):void 0;return v=s.observe(d,{onReplaced:a,resolve:w,reject:E},async R=>{if(p=await s.getAction(e,K,"getTransactionReceipt")({hash:o}).catch(()=>{}),p&&n<=1){clearTimeout(T),R.resolve(p),v?.();return}b=s.getAction(e,bt,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:l,async onBlockNumber(P){const A=I=>{clearTimeout(T),b?.(),I(),v?.()};let k=P;if(!g)try{if(p){if(n>1&&(!p.blockNumber||k-p.blockNumber+1n<n))return;A(()=>R.resolve(p));return}if(r&&!h&&(g=!0,await Q(async()=>{h=await s.getAction(e,Pe,"getTransaction")({hash:o}),h.blockNumber&&(k=h.blockNumber)},{delay:c,retryCount:i}),g=!1),p=await s.getAction(e,K,"getTransactionReceipt")({hash:o}),n>1&&(!p.blockNumber||k-p.blockNumber+1n<n))return;A(()=>R.resolve(p))}catch(I){if(I instanceof m.TransactionNotFoundError||I instanceof m.TransactionReceiptNotFoundError){if(!h){g=!1;return}try{f=h,g=!0;const B=await Q(()=>s.getAction(e,s.getBlock,"getBlock")({blockNumber:k,includeTransactions:!0}),{delay:c,retryCount:i,shouldRetry:({error:z})=>z instanceof s.BlockNotFoundError});g=!1;const N=B.transactions.find(({from:z,nonce:D})=>z===f.from&&D===f.nonce);if(!N||(p=await s.getAction(e,K,"getTransactionReceipt")({hash:N.hash}),n>1&&(!p.blockNumber||k-p.blockNumber+1n<n)))return;let C="replaced";N.to===f.to&&N.value===f.value&&N.input===f.input?C="repriced":N.from===N.to&&N.value===0n&&(C="cancelled"),A(()=>{R.onReplaced?.({reason:C,replacedTransaction:f,transaction:N,transactionReceipt:p}),R.resolve(p)})}catch(B){A(()=>R.reject(B))}}else A(()=>R.reject(I))}}})}),y}function os(e,{blockTag:t=e.experimental_blockTag??"latest",emitMissed:r=!1,emitOnBegin:n=!1,onBlock:o,onError:a,includeTransactions:i,poll:c,pollingInterval:u=e.pollingInterval}){const d=typeof c<"u"?c:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),l=i??!1;let h;return d?(()=>{const g=s.stringify(["watchBlocks",e.uid,t,r,n,l,u]);return s.observe(g,{onBlock:o,onError:a},v=>s.poll(async()=>{try{const b=await s.getAction(e,s.getBlock,"getBlock")({blockTag:t,includeTransactions:l});if(b.number!==null&&h?.number!=null){if(b.number===h.number)return;if(b.number-h.number>1&&r)for(let y=h?.number+1n;y<b.number;y++){const w=await s.getAction(e,s.getBlock,"getBlock")({blockNumber:y,includeTransactions:l});v.onBlock(w,h),h=w}}(h?.number==null||t==="pending"&&b?.number==null||b.number!==null&&b.number>h.number)&&(v.onBlock(b,h),h=b)}catch(b){v.onError?.(b)}},{emitOnBegin:n,interval:u}))})():(()=>{let g=!0,v=!0,b=()=>g=!1;return(async()=>{try{n&&s.getAction(e,s.getBlock,"getBlock")({blockTag:t,includeTransactions:l}).then(E=>{g&&v&&(o(E,void 0),v=!1)}).catch(a);const y=(()=>{if(e.transport.type==="fallback"){const E=e.transport.transports.find(T=>T.config.type==="webSocket"||T.config.type==="ipc");return E?E.value:e.transport}return e.transport})(),{unsubscribe:w}=await y.subscribe({params:["newHeads"],async onData(E){if(!g)return;const T=await s.getAction(e,s.getBlock,"getBlock")({blockNumber:E.result?.number,includeTransactions:l}).catch(()=>{});g&&(o(T,h),v=!1,h=T)},onError(E){a?.(E)}});b=w,g||b()}catch(y){a?.(y)}})(),()=>b()})()}function as(e,{address:t,args:r,batch:n=!0,event:o,events:a,fromBlock:i,onError:c,onLogs:u,poll:d,pollingInterval:l=e.pollingInterval,strict:h}){const f=typeof d<"u"?d:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),p=h??!1;return f?(()=>{const b=s.stringify(["watchEvent",t,r,n,e.uid,o,l,i]);return s.observe(b,{onLogs:u,onError:c},y=>{let w;i!==void 0&&(w=i-1n);let E,T=!1;const R=s.poll(async()=>{if(!T){try{E=await s.getAction(e,Ye,"createEventFilter")({address:t,args:r,event:o,events:a,strict:p,fromBlock:i})}catch{}T=!0;return}try{let P;if(E)P=await s.getAction(e,s.getFilterChanges,"getFilterChanges")({filter:E});else{const A=await s.getAction(e,s.getBlockNumber,"getBlockNumber")({});w&&w!==A?P=await s.getAction(e,s.getLogs,"getLogs")({address:t,args:r,event:o,events:a,fromBlock:w+1n,toBlock:A}):P=[],w=A}if(P.length===0)return;if(n)y.onLogs(P);else for(const A of P)y.onLogs([A])}catch(P){E&&P instanceof s.InvalidInputRpcError&&(T=!1),y.onError?.(P)}},{emitOnBegin:!0,interval:l});return async()=>{E&&await s.getAction(e,s.uninstallFilter,"uninstallFilter")({filter:E}),R()}})})():(()=>{let b=!0,y=()=>b=!1;return(async()=>{try{const w=(()=>{if(e.transport.type==="fallback"){const P=e.transport.transports.find(A=>A.config.type==="webSocket"||A.config.type==="ipc");return P?P.value:e.transport}return e.transport})(),E=a??(o?[o]:void 0);let T=[];E&&(T=[E.flatMap(A=>s.encodeEventTopics({abi:[A],eventName:A.name,args:r}))],o&&(T=T[0]));const{unsubscribe:R}=await w.subscribe({params:["logs",{address:t,topics:T}],onData(P){if(!b)return;const A=P.result;try{const{eventName:k,args:I}=s.decodeEventLog({abi:E??[],data:A.data,topics:A.topics,strict:p}),B=m.formatLog(A,{args:I,eventName:k});u([B])}catch(k){let I,B;if(k instanceof s.DecodeLogDataMismatch||k instanceof s.DecodeLogTopicsMismatch){if(h)return;I=k.abiItem.name,B=k.abiItem.inputs?.some(C=>!("name"in C&&C.name))}const N=m.formatLog(A,{args:B?[]:{},eventName:I});u([N])}},onError(P){c?.(P)}});y=R,b||y()}catch(w){c?.(w)}})(),()=>y()})()}function is(e,{batch:t=!0,onError:r,onTransactions:n,poll:o,pollingInterval:a=e.pollingInterval}){return(typeof o<"u"?o:e.transport.type!=="webSocket"&&e.transport.type!=="ipc")?(()=>{const d=s.stringify(["watchPendingTransactions",e.uid,t,a]);return s.observe(d,{onTransactions:n,onError:r},l=>{let h;const f=s.poll(async()=>{try{if(!h)try{h=await s.getAction(e,Ke,"createPendingTransactionFilter")({});return}catch(g){throw f(),g}const p=await s.getAction(e,s.getFilterChanges,"getFilterChanges")({filter:h});if(p.length===0)return;if(t)l.onTransactions(p);else for(const g of p)l.onTransactions([g])}catch(p){l.onError?.(p)}},{emitOnBegin:!0,interval:a});return async()=>{h&&await s.getAction(e,s.uninstallFilter,"uninstallFilter")({filter:h}),f()}})})():(()=>{let d=!0,l=()=>d=!1;return(async()=>{try{const{unsubscribe:h}=await e.transport.subscribe({params:["newPendingTransactions"],onData(f){if(!d)return;const p=f.result;n([p])},onError(f){r?.(f)}});l=h,d||l()}catch(h){r?.(h)}})(),()=>l()})()}function cs(e){const{scheme:t,statement:r,...n}=e.match(us)?.groups??{},{chainId:o,expirationTime:a,issuedAt:i,notBefore:c,requestId:u,...d}=e.match(ds)?.groups??{},l=e.split("Resources:")[1]?.split(`
4
+ - `).slice(1);return{...n,...d,...o?{chainId:Number(o)}:{},...a?{expirationTime:new Date(a)}:{},...i?{issuedAt:new Date(i)}:{},...c?{notBefore:new Date(c)}:{},...u?{requestId:u}:{},...l?{resources:l}:{},...t?{scheme:t}:{},...r?{statement:r}:{}}}const us=/^(?:(?<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)?/,ds=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;function ls(e){const{address:t,domain:r,message:n,nonce:o,scheme:a,time:i=new Date}=e;if(r&&n.domain!==r||o&&n.nonce!==o||a&&n.scheme!==a||n.expirationTime&&i>=n.expirationTime||n.notBefore&&i<n.notBefore)return!1;try{if(!n.address||!m.isAddress(n.address,{strict:!1})||t&&!s.isAddressEqual(n.address,t))return!1}catch{return!1}return!0}async function fs(e,t){const{address:r,domain:n,message:o,nonce:a,scheme:i,signature:c,time:u=new Date,...d}=t,l=cs(o);if(!l.address||!ls({address:r,domain:n,message:l,nonce:a,scheme:i,time:u}))return!1;const f=Qe(o);return ee(e,{address:l.address,hash:f,signature:c,...d})}function hs(e){return{call:t=>s.call(e,t),createAccessList:t=>Je(e,t),createBlockFilter:()=>dr(e),createContractEventFilter:t=>s.createContractEventFilter(e,t),createEventFilter:t=>Ye(e,t),createPendingTransactionFilter:()=>Ke(e),estimateContractGas:t=>s.estimateContractGas(e,t),estimateGas:t=>s.estimateGas(e,t),getBalance:t=>s.getBalance(e,t),getBlobBaseFee:()=>lr(e),getBlock:t=>s.getBlock(e,t),getBlockNumber:t=>s.getBlockNumber(e,t),getBlockTransactionCount:t=>fr(e,t),getBytecode:t=>ae(e,t),getChainId:()=>s.getChainId(e),getCode:t=>ae(e,t),getContractEvents:t=>s.getContractEvents(e,t),getEip712Domain:t=>pr(e,t),getEnsAddress:t=>Zt(e,t),getEnsAvatar:t=>ir(e,t),getEnsName:t=>cr(e,t),getEnsResolver:t=>ur(e,t),getEnsText:t=>Ze(e,t),getFeeHistory:t=>yr(e,t),estimateFeesPerGas:t=>s.estimateFeesPerGas(e,t),getFilterChanges:t=>s.getFilterChanges(e,t),getFilterLogs:t=>br(e,t),getGasPrice:()=>s.getGasPrice(e),getLogs:t=>s.getLogs(e,t),getProof:t=>zn(e,t),estimateMaxPriorityFeePerGas:t=>s.estimateMaxPriorityFeePerGas(e,t),getStorageAt:t=>$n(e,t),getTransaction:t=>Pe(e,t),getTransactionConfirmations:t=>Fn(e,t),getTransactionCount:t=>s.getTransactionCount(e,t),getTransactionReceipt:t=>K(e,t),multicall:t=>_n(e,t),prepareTransactionRequest:t=>s.prepareTransactionRequest(e,t),readContract:t=>s.readContract(e,t),sendRawTransaction:t=>s.sendRawTransaction(e,t),simulate:t=>de(e,t),simulateBlocks:t=>de(e,t),simulateCalls:t=>Gn(e,t),simulateContract:t=>s.simulateContract(e,t),verifyHash:t=>ee(e,t),verifyMessage:t=>rs(e,t),verifySiweMessage:t=>fs(e,t),verifyTypedData:t=>ns(e,t),uninstallFilter:t=>s.uninstallFilter(e,t),waitForTransactionReceipt:t=>ss(e,t),watchBlocks:t=>os(e,t),watchBlockNumber:t=>bt(e,t),watchContractEvent:t=>s.watchContractEvent(e,t),watchEvent:t=>as(e,t),watchPendingTransactions:t=>is(e,t)}}function ps(e){const{key:t="public",name:r="Public Client"}=e;return je({...e,key:t,name:r,type:"publicClient"}).extend(hs)}async function ms(e,{chain:t}){const{id:r,name:n,nativeCurrency:o,rpcUrls:a,blockExplorers:i}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:m.numberToHex(r),chainName:n,nativeCurrency:o,rpcUrls:a.default.http,blockExplorerUrls:i?Object.values(i).map(({url:c})=>c):void 0}]},{dedupe:!0,retryCount:0})}function gs(e,t){const{abi:r,args:n,bytecode:o,...a}=t,i=s.encodeDeployData({abi:r,args:n,bytecode:o});return s.sendTransaction(e,{...a,...a.authorizationList?{to:null}:{},data:i})}async function ys(e){return e.account?.type==="local"?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map(r=>m.checksumAddress(r))}async function bs(e,t={}){const{account:r=e.account,chainId:n}=t,o=r?s.parseAccount(r):void 0,a=n?[o?.address,[m.numberToHex(n)]]:[o?.address],i=await e.request({method:"wallet_getCapabilities",params:a}),c={};for(const[u,d]of Object.entries(i)){c[Number(u)]={};for(let[l,h]of Object.entries(d))l==="addSubAccount"&&(l="unstable_addSubAccount"),c[Number(u)][l]=h}return typeof n=="number"?c[n]:c}async function ws(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}async function wt(e,t){const{account:r=e.account,chainId:n,nonce:o}=t;if(!r)throw new s.AccountNotFoundError({docsPath:"/docs/eip7702/prepareAuthorization"});const a=s.parseAccount(r),i=(()=>{if(t.executor)return t.executor==="self"?t.executor:s.parseAccount(t.executor)})(),c={address:t.contractAddress??t.address,chainId:n,nonce:o};return typeof c.chainId>"u"&&(c.chainId=e.chain?.id??await s.getAction(e,s.getChainId,"getChainId")({})),typeof c.nonce>"u"&&(c.nonce=await s.getAction(e,s.getTransactionCount,"getTransactionCount")({address:a.address,blockTag:"pending"}),(i==="self"||i?.address&&s.isAddressEqual(i.address,a.address))&&(c.nonce+=1)),c}async function vs(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(r=>m.getAddress(r))}async function Es(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function As(e,t){const{id:r}=t;await e.request({method:"wallet_showCallsStatus",params:[r]})}async function xs(e,t){const{account:r=e.account}=t;if(!r)throw new s.AccountNotFoundError({docsPath:"/docs/eip7702/signAuthorization"});const n=s.parseAccount(r);if(!n.signAuthorization)throw new s.AccountTypeNotSupportedError({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:n.type});const o=await wt(e,t);return n.signAuthorization(o)}async function Ts(e,{account:t=e.account,message:r}){if(!t)throw new s.AccountNotFoundError({docsPath:"/docs/actions/wallet/signMessage"});const n=s.parseAccount(t);if(n.signMessage)return n.signMessage({message:r});const o=typeof r=="string"?m.stringToHex(r):r.raw instanceof Uint8Array?m.toHex(r.raw):r.raw;return e.request({method:"personal_sign",params:[o,n.address]},{retryCount:0})}async function Rs(e,t){const{account:r=e.account,chain:n=e.chain,...o}=t;if(!r)throw new s.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTransaction"});const a=s.parseAccount(r);s.assertRequest({account:a,...t});const i=await s.getAction(e,s.getChainId,"getChainId")({});n!==null&&s.assertCurrentChain({currentChainId:i,chain:n});const u=(n?.formatters||e.chain?.formatters)?.transactionRequest?.format||s.formatTransactionRequest;return a.signTransaction?a.signTransaction({...o,chainId:i},{serializer:e.chain?.serializers?.transaction}):await e.request({method:"eth_signTransaction",params:[{...u(o),chainId:m.numberToHex(i),from:a.address}]},{retryCount:0})}async function Ps(e,t){const{account:r=e.account,domain:n,message:o,primaryType:a}=t;if(!r)throw new s.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTypedData"});const i=s.parseAccount(r),c={EIP712Domain:et({domain:n}),...t.types};if(Xe({domain:n,message:o,primaryType:a,types:c}),i.signTypedData)return i.signTypedData({domain:n,message:o,primaryType:a,types:c});const u=Nr({domain:n,message:o,primaryType:a,types:c});return e.request({method:"eth_signTypedData_v4",params:[i.address,u]},{retryCount:0})}async function Bs(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:m.numberToHex(t)}]},{retryCount:0})}async function ks(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}function Cs(e){return{addChain:t=>ms(e,t),deployContract:t=>gs(e,t),getAddresses:()=>ys(e),getCallsStatus:t=>Me(e,t),getCapabilities:t=>bs(e,t),getChainId:()=>s.getChainId(e),getPermissions:()=>ws(e),prepareAuthorization:t=>wt(e,t),prepareTransactionRequest:t=>s.prepareTransactionRequest(e,t),requestAddresses:()=>vs(e),requestPermissions:t=>Es(e,t),sendCalls:t=>Ht(e,t),sendRawTransaction:t=>s.sendRawTransaction(e,t),sendTransaction:t=>s.sendTransaction(e,t),showCallsStatus:t=>As(e,t),signAuthorization:t=>xs(e,t),signMessage:t=>Ts(e,t),signTransaction:t=>Rs(e,t),signTypedData:t=>Ps(e,t),switchChain:t=>Bs(e,t),waitForCallsStatus:t=>jt(e,t),watchAsset:t=>ks(e,t),writeContract:t=>s.writeContract(e,t)}}function Is(e){const{key:t="wallet",name:r="Wallet Client",transport:n}=e;return je({...e,key:t,name:r,transport:n,type:"walletClient"}).extend(Cs)}function vt({key:e,methods:t,name:r,request:n,retryCount:o=3,retryDelay:a=150,timeout:i,type:c},u){const d=He();return{config:{key:e,methods:t,name:r,request:n,retryCount:o,retryDelay:a,timeout:i,type:c},request:Er(n,{methods:t,retryCount:o,retryDelay:a,uid:d}),value:u}}class Ns extends m.BaseError{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}function Ss(e,t={}){const{batch:r,fetchFn:n,fetchOptions:o,key:a="http",methods:i,name:c="HTTP JSON-RPC",onFetchRequest:u,onFetchResponse:d,retryDelay:l,raw:h}=t;return({chain:f,retryCount:p,timeout:g})=>{const{batchSize:v=1e3,wait:b=0}=typeof r=="object"?r:{},y=t.retryCount??p,w=g??t.timeout??1e4,E=e||f?.rpcUrls.default.http[0];if(!E)throw new Ns;const T=Rr(E,{fetchFn:n,fetchOptions:o,onRequest:u,onResponse:d,timeout:w});return vt({key:a,methods:i,name:c,async request({method:R,params:P}){const A={method:R,params:P},{schedule:k}=s.createBatchScheduler({id:E,wait:b,shouldSplitBatch(C){return C.length>v},fn:C=>T.request({body:C}),sort:(C,z)=>C.id-z.id}),I=async C=>r?k(C):[await T.request({body:C})],[{error:B,result:N}]=await I(A);if(h)return{error:B,result:N};if(B)throw new s.RpcRequestError({body:A,error:B,url:E});return N},retryCount:y,retryDelay:l,timeout:w,type:"http"},{fetchOptions:o,url:E})}}exports.createPublicClient=ps;exports.createTransport=vt;exports.createWalletClient=Is;exports.http=Ss;
5
+ //# sourceMappingURL=http-qhIDc8Dn.cjs.map