@boostxyz/sdk 0.0.0-alpha.7 → 0.0.0-alpha.9

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 (191) hide show
  1. package/dist/Actions/Action.cjs +1 -1
  2. package/dist/Actions/Action.js +1 -1
  3. package/dist/Actions/ContractAction.d.ts +46 -3
  4. package/dist/Actions/ContractAction.d.ts.map +1 -1
  5. package/dist/Actions/ERC721MintAction.d.ts +37 -10
  6. package/dist/Actions/ERC721MintAction.d.ts.map +1 -1
  7. package/dist/Actions/EventAction.cjs +1 -1
  8. package/dist/Actions/EventAction.cjs.map +1 -1
  9. package/dist/Actions/EventAction.d.ts +257 -11
  10. package/dist/Actions/EventAction.d.ts.map +1 -1
  11. package/dist/Actions/EventAction.js +249 -82
  12. package/dist/Actions/EventAction.js.map +1 -1
  13. package/dist/AllowLists/AllowList.cjs +1 -1
  14. package/dist/AllowLists/AllowList.d.ts +2 -2
  15. package/dist/AllowLists/AllowList.js +1 -1
  16. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  17. package/dist/AllowLists/SimpleAllowList.cjs.map +1 -1
  18. package/dist/AllowLists/SimpleAllowList.d.ts +33 -4
  19. package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -1
  20. package/dist/AllowLists/SimpleAllowList.js +52 -37
  21. package/dist/AllowLists/SimpleAllowList.js.map +1 -1
  22. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  23. package/dist/AllowLists/SimpleDenyList.cjs.map +1 -1
  24. package/dist/AllowLists/SimpleDenyList.d.ts +31 -2
  25. package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -1
  26. package/dist/AllowLists/SimpleDenyList.js +41 -129
  27. package/dist/AllowLists/SimpleDenyList.js.map +1 -1
  28. package/dist/Auth/PassthroughAuth.cjs +1 -1
  29. package/dist/Auth/PassthroughAuth.cjs.map +1 -1
  30. package/dist/Auth/PassthroughAuth.js +4 -4
  31. package/dist/Auth/PassthroughAuth.js.map +1 -1
  32. package/dist/Boost.cjs +1 -1
  33. package/dist/Boost.cjs.map +1 -1
  34. package/dist/Boost.d.ts +93 -1
  35. package/dist/Boost.d.ts.map +1 -1
  36. package/dist/Boost.js +151 -5
  37. package/dist/Boost.js.map +1 -1
  38. package/dist/BoostCore.cjs +2 -2
  39. package/dist/BoostCore.cjs.map +1 -1
  40. package/dist/BoostCore.d.ts +45 -7
  41. package/dist/BoostCore.d.ts.map +1 -1
  42. package/dist/BoostCore.js +352 -305
  43. package/dist/BoostCore.js.map +1 -1
  44. package/dist/BoostRegistry.cjs +1 -1
  45. package/dist/BoostRegistry.cjs.map +1 -1
  46. package/dist/BoostRegistry.d.ts +18 -4
  47. package/dist/BoostRegistry.d.ts.map +1 -1
  48. package/dist/BoostRegistry.js +36 -25
  49. package/dist/BoostRegistry.js.map +1 -1
  50. package/dist/Budgets/Budget.cjs +1 -1
  51. package/dist/Budgets/Budget.js +1 -1
  52. package/dist/Budgets/ManagedBudget.cjs +1 -1
  53. package/dist/Budgets/ManagedBudget.cjs.map +1 -1
  54. package/dist/Budgets/ManagedBudget.d.ts +40 -2
  55. package/dist/Budgets/ManagedBudget.d.ts.map +1 -1
  56. package/dist/Budgets/ManagedBudget.js +53 -36
  57. package/dist/Budgets/ManagedBudget.js.map +1 -1
  58. package/dist/Budgets/SimpleBudget.d.ts +33 -2
  59. package/dist/Budgets/SimpleBudget.d.ts.map +1 -1
  60. package/dist/Budgets/VestingBudget.d.ts +54 -2
  61. package/dist/Budgets/VestingBudget.d.ts.map +1 -1
  62. package/dist/Deployable/Contract.cjs +1 -1
  63. package/dist/Deployable/Contract.cjs.map +1 -1
  64. package/dist/Deployable/Contract.js +1 -1
  65. package/dist/Deployable/Contract.js.map +1 -1
  66. package/dist/Deployable/Deployable.cjs.map +1 -1
  67. package/dist/Deployable/Deployable.d.ts +8 -2
  68. package/dist/Deployable/Deployable.d.ts.map +1 -1
  69. package/dist/Deployable/Deployable.js +6 -0
  70. package/dist/Deployable/Deployable.js.map +1 -1
  71. package/dist/Deployable/DeployableTarget.cjs +1 -1
  72. package/dist/Deployable/DeployableTarget.cjs.map +1 -1
  73. package/dist/Deployable/DeployableTarget.d.ts +4 -3
  74. package/dist/Deployable/DeployableTarget.d.ts.map +1 -1
  75. package/dist/Deployable/DeployableTarget.js +31 -28
  76. package/dist/Deployable/DeployableTarget.js.map +1 -1
  77. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  78. package/dist/Incentives/AllowListIncentive.cjs.map +1 -1
  79. package/dist/Incentives/AllowListIncentive.d.ts +35 -5
  80. package/dist/Incentives/AllowListIncentive.d.ts.map +1 -1
  81. package/dist/Incentives/AllowListIncentive.js +33 -21
  82. package/dist/Incentives/AllowListIncentive.js.map +1 -1
  83. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  84. package/dist/Incentives/CGDAIncentive.cjs.map +1 -1
  85. package/dist/Incentives/CGDAIncentive.d.ts +89 -5
  86. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -1
  87. package/dist/Incentives/CGDAIncentive.js +44 -23
  88. package/dist/Incentives/CGDAIncentive.js.map +1 -1
  89. package/dist/Incentives/ERC1155Incentive.d.ts +67 -6
  90. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -1
  91. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  92. package/dist/Incentives/ERC20Incentive.cjs.map +1 -1
  93. package/dist/Incentives/ERC20Incentive.d.ts +49 -5
  94. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -1
  95. package/dist/Incentives/ERC20Incentive.js +46 -27
  96. package/dist/Incentives/ERC20Incentive.js.map +1 -1
  97. package/dist/Incentives/ERC20VariableIncentive.d.ts +42 -5
  98. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  99. package/dist/Incentives/Incentive.cjs +1 -1
  100. package/dist/Incentives/Incentive.cjs.map +1 -1
  101. package/dist/Incentives/Incentive.js +48 -32
  102. package/dist/Incentives/Incentive.js.map +1 -1
  103. package/dist/Incentives/PointsIncentive.cjs +1 -1
  104. package/dist/Incentives/PointsIncentive.cjs.map +1 -1
  105. package/dist/Incentives/PointsIncentive.d.ts +49 -5
  106. package/dist/Incentives/PointsIncentive.d.ts.map +1 -1
  107. package/dist/Incentives/PointsIncentive.js +38 -21
  108. package/dist/Incentives/PointsIncentive.js.map +1 -1
  109. package/dist/Validators/SignerValidator.cjs +1 -1
  110. package/dist/Validators/SignerValidator.cjs.map +1 -1
  111. package/dist/Validators/SignerValidator.d.ts +298 -5
  112. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  113. package/dist/Validators/SignerValidator.js +151 -26
  114. package/dist/Validators/SignerValidator.js.map +1 -1
  115. package/dist/Validators/Validator.cjs +1 -1
  116. package/dist/Validators/Validator.js +1 -1
  117. package/dist/claiming.cjs +2 -0
  118. package/dist/claiming.cjs.map +1 -0
  119. package/dist/claiming.d.ts +43 -0
  120. package/dist/claiming.d.ts.map +1 -0
  121. package/dist/claiming.js +17 -0
  122. package/dist/claiming.js.map +1 -0
  123. package/dist/errors.cjs +1 -1
  124. package/dist/errors.cjs.map +1 -1
  125. package/dist/errors.d.ts +15 -1
  126. package/dist/errors.d.ts.map +1 -1
  127. package/dist/errors.js +30 -21
  128. package/dist/errors.js.map +1 -1
  129. package/dist/{generated-DGpIVcv5.js → generated-57_Kffpz.js} +293 -282
  130. package/dist/generated-57_Kffpz.js.map +1 -0
  131. package/dist/{generated-Cd-Fe7W7.cjs → generated-wKBNvm48.cjs} +3 -3
  132. package/dist/generated-wKBNvm48.cjs.map +1 -0
  133. package/dist/index.cjs +1 -1
  134. package/dist/index.d.ts +4 -4
  135. package/dist/index.d.ts.map +1 -1
  136. package/dist/index.js +108 -124
  137. package/dist/transfers.cjs +2 -0
  138. package/dist/transfers.cjs.map +1 -0
  139. package/dist/transfers.d.ts +198 -0
  140. package/dist/transfers.d.ts.map +1 -0
  141. package/dist/transfers.js +84 -0
  142. package/dist/transfers.js.map +1 -0
  143. package/dist/utils.cjs +1 -1
  144. package/dist/utils.cjs.map +1 -1
  145. package/dist/utils.d.ts +2 -1371
  146. package/dist/utils.d.ts.map +1 -1
  147. package/dist/utils.js +26 -653
  148. package/dist/utils.js.map +1 -1
  149. package/package.json +17 -3
  150. package/src/Actions/Action.test.ts +5 -4
  151. package/src/Actions/ContractAction.test.ts +4 -6
  152. package/src/Actions/ContractAction.ts +73 -10
  153. package/src/Actions/ERC721MintAction.test.ts +2 -2
  154. package/src/Actions/ERC721MintAction.ts +70 -16
  155. package/src/Actions/EventAction.test.ts +43 -17
  156. package/src/Actions/EventAction.ts +451 -26
  157. package/src/AllowLists/SimpleAllowList.ts +51 -7
  158. package/src/AllowLists/SimpleDenyList.ts +47 -109
  159. package/src/Auth/PassthroughAuth.ts +1 -1
  160. package/src/Boost.ts +136 -1
  161. package/src/BoostCore.test.ts +4 -11
  162. package/src/BoostCore.ts +114 -45
  163. package/src/BoostRegistry.ts +39 -21
  164. package/src/Budgets/ManagedBudget.ts +69 -16
  165. package/src/Budgets/SimpleBudget.ts +57 -14
  166. package/src/Budgets/VestingBudget.ts +79 -9
  167. package/src/Deployable/Contract.ts +1 -1
  168. package/src/Deployable/Deployable.ts +8 -2
  169. package/src/Deployable/DeployableTarget.ts +19 -6
  170. package/src/Incentives/AllowListIncentive.test.ts +2 -5
  171. package/src/Incentives/AllowListIncentive.ts +59 -15
  172. package/src/Incentives/CGDAIncentive.test.ts +3 -7
  173. package/src/Incentives/CGDAIncentive.ts +123 -19
  174. package/src/Incentives/ERC1155Incentive.test.ts +2 -13
  175. package/src/Incentives/ERC1155Incentive.ts +104 -22
  176. package/src/Incentives/ERC20Incentive.test.ts +6 -17
  177. package/src/Incentives/ERC20Incentive.ts +86 -21
  178. package/src/Incentives/ERC20VariableIncentive.test.ts +4 -24
  179. package/src/Incentives/ERC20VariableIncentive.ts +71 -19
  180. package/src/Incentives/Incentive.test.ts +1 -1
  181. package/src/Incentives/PointsIncentive.test.ts +3 -6
  182. package/src/Incentives/PointsIncentive.ts +79 -17
  183. package/src/Validators/SignerValidator.test.ts +3 -7
  184. package/src/Validators/SignerValidator.ts +422 -13
  185. package/src/claiming.ts +56 -0
  186. package/src/errors.ts +19 -1
  187. package/src/index.ts +10 -7
  188. package/src/transfers.ts +284 -0
  189. package/src/utils.ts +3 -2052
  190. package/dist/generated-Cd-Fe7W7.cjs.map +0 -1
  191. package/dist/generated-DGpIVcv5.js.map +0 -1
package/dist/BoostCore.js CHANGED
@@ -1,35 +1,34 @@
1
- import { c as B, bd as H, be as W, bf as J, bg as K, bh as Q, bi as X, bj as Y, bk as Z, bl as ff, bm as ef, bn as bf, bo as af, bp as tf, bq as cf, br as sf } from "./generated-DGpIVcv5.js";
2
- import { getAccount as df, waitForTransactionReceipt as x } from "@wagmi/core";
3
- import { createClient as nf, custom as rf, zeroAddress as w, zeroHash as i, parseEventLogs as of } from "viem";
4
- import { actionFromAddress as uf } from "./Actions/Action.js";
5
- import { EventAction as lf } from "./Actions/EventAction.js";
6
- import { allowListFromAddress as hf } from "./AllowLists/AllowList.js";
7
- import { SimpleAllowList as mf } from "./AllowLists/SimpleAllowList.js";
8
- import { SimpleDenyList as gf } from "./AllowLists/SimpleDenyList.js";
9
- import { PassthroughAuth as wf } from "./Auth/PassthroughAuth.js";
10
- import { Boost as N } from "./Boost.js";
11
- import { budgetFromAddress as pf } from "./Budgets/Budget.js";
12
- import { ManagedBudget as Af } from "./Budgets/ManagedBudget.js";
13
- import { Deployable as yf } from "./Deployable/Deployable.js";
14
- import { AllowListIncentive as Cf } from "./Incentives/AllowListIncentive.js";
15
- import { CGDAIncentive as vf } from "./Incentives/CGDAIncentive.js";
16
- import { ERC20Incentive as _f } from "./Incentives/ERC20Incentive.js";
17
- import { incentiveFromAddress as Pf, ERC20VariableIncentive as If } from "./Incentives/Incentive.js";
18
- import { PointsIncentive as Bf } from "./Incentives/PointsIncentive.js";
19
- import { SignerValidator as Rf } from "./Validators/SignerValidator.js";
20
- import { validatorFromAddress as Ff } from "./Validators/Validator.js";
21
- import { DeployableUnknownOwnerProvidedError as Ef, BudgetMustAuthorizeBoostCore as j, NoContractAddressUponReceiptError as Df, BoostCoreNoIdentifierEmitted as Vf } from "./errors.js";
22
- import { prepareBoostPayload as Lf } from "./utils.js";
23
- import { simulateContract as $f, writeContract as xf } from "viem/actions";
24
- import { parseAccount as Nf, getAddress as jf } from "viem/utils";
25
- const Mf = "0x60806040526544364c5bb0006004556103e860055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506103e8600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555034801561006e575f80fd5b506040516135683803806135688339818101604052810190610090919061029f565b61009f3361012660201b60201c565b8160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506102dd565b61013461020260201b60201c565b156101ac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392780541561016e57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3506101ff565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f90565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102338261020a565b9050919050565b5f61024482610229565b9050919050565b6102548161023a565b811461025e575f80fd5b50565b5f8151905061026f8161024b565b92915050565b61027e81610229565b8114610288575f80fd5b50565b5f8151905061029981610275565b92915050565b5f80604083850312156102b5576102b4610206565b5b5f6102c285828601610261565b92505060206102d38582860161028b565b9150509250929050565b61327e806102ea5f395ff3fe60806040526004361061014a575f3560e01c8063892b97f8116100b5578063d73792a91161006e578063d73792a9146103d0578063e21ff731146103fa578063eccc19a614610436578063f04e283e1461045e578063f2fde38b1461047a578063fee81cf4146104965761014a565b8063892b97f8146102e45780638da5cb5b1461030c5780638fe4f5231461033657806399d32fc414610352578063a92647dc1461037c578063b0e21e8a146103a65761014a565b806354d1f13d1161010757806354d1f13d146102365780635edb9eb014610240578063715018a61461026a578063730f9c57146102745780637b1039991461029057806384ae2bc6146102ba5761014a565b806313c8e2de1461014e578063256929621461018a5780632e75ab501461019457806339a51be5146101bc57806343bc42d3146101e657806346877b1a1461020e575b5f80fd5b348015610159575f80fd5b50610174600480360381019061016f91906122d2565b6104d2565b60405161018191906125c3565b60405180910390f35b6101926107ac565b005b34801561019f575f80fd5b506101ba60048036038101906101b591906122d2565b6107fd565b005b3480156101c7575f80fd5b506101d061080f565b6040516101dd91906125f2565b60405180910390f35b3480156101f1575f80fd5b5061020c60048036038101906102079190612635565b610834565b005b348015610219575f80fd5b50610234600480360381019061022f919061268a565b610867565b005b61023e6108b2565b005b34801561024b575f80fd5b506102546108eb565b60405161026191906126c4565b60405180910390f35b6102726108f6565b005b61028e6004803603810190610289919061273e565b610909565b005b34801561029b575f80fd5b506102a4610b9a565b6040516102b191906127f4565b60405180910390f35b3480156102c5575f80fd5b506102ce610bbf565b6040516102db919061281c565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612635565b610bd9565b005b348015610317575f80fd5b50610320610c0d565b60405161032d91906125f2565b60405180910390f35b610350600480360381019061034b9190612835565b610c35565b005b34801561035d575f80fd5b50610366610c4a565b60405161037391906126c4565b60405180910390f35b348015610387575f80fd5b50610390610c50565b60405161039d91906128d9565b60405180910390f35b3480156103b1575f80fd5b506103ba610c75565b6040516103c7919061281c565b60405180910390f35b3480156103db575f80fd5b506103e4610c8e565b6040516103f1919061281c565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b91906128f2565b610c94565b60405161042d91906125c3565b60405180910390f35b348015610441575f80fd5b5061045c6004803603810190610457919061268a565b61164f565b005b6104786004803603810190610473919061268a565b61169a565b005b610494600480360381019061048f919061268a565b6116d8565b005b3480156104a1575f80fd5b506104bc60048036038101906104b7919061268a565b611701565b6040516104c991906126c4565b60405180910390f35b6104da612126565b5f82815481106104ed576104ec61293d565b5b905f5260205f209060080201604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156106da57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610691575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b5f6107b561171a565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b610805611724565b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61083c611724565b8060055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b61086f611724565b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f8080549050905090565b6108fe611724565b6109075f61175b565b565b3068929eee149b4bd2126854036109275763ab143c065f526004601cfd5b3068929eee149b4bd21268555f8087815481106109475761094661293d565b5b905f5260205f20906008020190506004543410156109a2575f346004546040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016109999392919061296a565b60405180910390fd5b6109ac8186611821565b806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663703b690088888588886040518663ffffffff1660e01b8152600401610a109594939291906129f9565b6020604051808303815f875af1158015610a2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a509190612a7a565b610a86576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806004018681548110610a9c57610a9b61293d565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb1757cf8386866040518463ffffffff1660e01b8152600401610b0093929190612aa5565b6020604051808303815f875af1158015610b1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b409190612a7a565b610b85578184846040517f4139d81d000000000000000000000000000000000000000000000000000000008152600401610b7c93929190612aa5565b60405180910390fd5b503868929eee149b4bd2126855505050505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560089054906101000a900467ffffffffffffffff1681565b610be1611724565b80600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610c43858585858533610909565b5050505050565b60045481565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900467ffffffffffffffff1681565b61271081565b610c9c612126565b335f73ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015610d90575060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80826040518263ffffffff1660e01b8152600401610d4f91906125f2565b602060405180830381865afa158015610d6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8e9190612a7a565b155b15610dc7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3068929eee149b4bd212685403610de55763ab143c065f526004601cfd5b3068929eee149b4bd21268555f610e3e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505061198f565b806020019051810190610e519190612f35565b9050610e5f815f0151611a28565b5f8060018160018154018082558091505003905f5260205f2090600802019050816101000151816007015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550815f0151816003015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160a0015160055f9054906101000a900467ffffffffffffffff16610f309190612fa9565b816005015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160c00151600560089054906101000a900467ffffffffffffffff16610f7f9190612fa9565b8160050160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160e001518160060181905550610fe67fe67157950000000000000000000000000000000000000000000000000000000083602001516001611b03565b815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110567fe2089f790000000000000000000000000000000000000000000000000000000083606001516001611b03565b816002015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110a88260800151835f0151611b25565b8160040190805190602001906110bf9291906121ec565b505f73ffffffffffffffffffffffffffffffffffffffff1682604001516020015173ffffffffffffffffffffffffffffffffffffffff16146111305761112b7f5912b89c0000000000000000000000000000000000000000000000000000000083604001516001611b03565b611219565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f5912b89c000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016111ab919061301e565b602060405180830381865afa1580156111c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ea9190612a7a565b6111f4575f611218565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b5b816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16816007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660015f805490506112de9190613037565b7f116812d3ad4507d72f2c428b63246d594ca055a1dc119394285504c23d1f34cd8460040180549050856001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866002015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876003015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611383949392919061306a565b60405180910390a480604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016004820180548060200260200160405190810160405280929190818152602001828054801561156d57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611524575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050935050503868929eee149b4bd21268555092915050565b611657611724565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6116a2611724565b63389a75e1600c52805f526020600c2080544211156116c857636f5e88185f526004601cfd5b5f8155506116d58161175b565b50565b6116e0611724565b8060601b6116f557637448fbae5f526004601cfd5b6116fe8161175b565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611759576382b429005f526004601cfd5b565b611763611eef565b156117c8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b821781555061181e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f600454031561198b575f60045490505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146118e7575f61271067ffffffffffffffff168460050160089054906101000a900467ffffffffffffffff1667ffffffffffffffff166004546118a291906130ad565b6118ac919061311b565b905080826118ba9190613037565b91506118e5818473ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b61193f6002826118f7919061311b565b846007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b6119894760035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b5050565b6060815115611a235760405190506020810160048301805184518501811983525b80861015611a09576001860195508551601f1a806119f9576001870196508651601f1a5f198652607f81116119e757600181013887395b6001607f821601860195505050611a04565b808553600185019450505b6119b0565b81835260208501840385525f845260208401604052505050505b919050565b611a527fea5ad34e0000000000000000000000000000000000000000000000000000000082611f10565b8073ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80336040518263ffffffff1660e01b8152600401611a8b91906125f2565b602060405180830381865afa158015611aa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aca9190612a7a565b611b00576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b5f611b12848460200151611f10565b611b1c8383612007565b90509392505050565b6060825167ffffffffffffffff811115611b4257611b41612ad9565b5b604051908082528060200260200182016040528015611b705781602001602082028036833780820191505090505b5090505f5b8351811015611ee857611bc67f5970a68900000000000000000000000000000000000000000000000000000000858381518110611bb557611bb461293d565b5b602002602001015160200151611f10565b838181518110611bd957611bd861293d565b5b60200260200101515f0151611c65577f5970a68900000000000000000000000000000000000000000000000000000000848281518110611c1c57611c1b61293d565b5b6020026020010151602001516040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611c5c92919061314b565b60405180910390fd5b611caa7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611c9c57611c9b61293d565b5b60200260200101515f611b03565b828281518110611cbd57611cbc61293d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f828281518110611d0b57611d0a61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16634e7165a2868481518110611d4157611d4061293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611d6991906131b4565b5f60405180830381865afa158015611d83573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611dab91906131d4565b90505f815114611e3c578373ffffffffffffffffffffffffffffffffffffffff1663fa4ca9b1826040518263ffffffff1660e01b8152600401611dee91906131b4565b6020604051808303815f875af1158015611e0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e2e9190612a7a565b611e3b57611e3a61321b565b5b5b828281518110611e4f57611e4e61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663439fab91868481518110611e8557611e8461293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611ead91906131b4565b5f604051808303815f87803b158015611ec4575f80fd5b505af1158015611ed6573d5f803e3d5ffd5b50505050508080600101915050611b75565b5092915050565b5f90565b5f385f3884865af1611f0c5763b12d13eb5f526004601cfd5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480611fbf57508073ffffffffffffffffffffffffffffffffffffffff166301ffc9a7836040518263ffffffff1660e01b8152600401611f7e919061301e565b602060405180830381865afa158015611f99573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fbd9190612a7a565b155b156120035781816040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611ffa92919061314b565b60405180910390fd5b5050565b5f825f015161201a57826020015161203e565b61203d836020015173ffffffffffffffffffffffffffffffffffffffff166120c3565b5b9050825f0151801561204d5750815b156120bd578073ffffffffffffffffffffffffffffffffffffffff1663439fab9184604001516040518263ffffffff1660e01b815260040161208f91906131b4565b5f604051808303815f87803b1580156120a6575f80fd5b505af11580156120b8573d5f803e3d5ffd5b505050505b92915050565b5f6120ce5f836120d5565b9050919050565b5f6c5af43d3d93803e602a57fd5bf36021528160145273602c3d8160093d39f33d3d3d3d363d3d37363d735f526035600c84f090508061211c5763301164255f526004601cfd5b5f60215292915050565b6040518061012001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f67ffffffffffffffff1681526020015f67ffffffffffffffff1681526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b828054828255905f5260205f20908101928215612262579160200282015b82811115612261578251825f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061220a565b5b50905061226f9190612273565b5090565b5b8082111561228a575f815f905550600101612274565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6122b18161229f565b81146122bb575f80fd5b50565b5f813590506122cc816122a8565b92915050565b5f602082840312156122e7576122e6612297565b5b5f6122f4848285016122be565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61233f61233a612335846122fd565b61231c565b6122fd565b9050919050565b5f61235082612325565b9050919050565b5f61236182612346565b9050919050565b61237181612357565b82525050565b5f61238182612346565b9050919050565b61239181612377565b82525050565b5f6123a182612346565b9050919050565b6123b181612397565b82525050565b5f6123c182612325565b9050919050565b5f6123d2826123b7565b9050919050565b6123e2816123c8565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61241b82612346565b9050919050565b61242b81612411565b82525050565b5f61243c8383612422565b60208301905092915050565b5f602082019050919050565b5f61245e826123e8565b61246881856123f2565b935061247383612402565b805f5b838110156124a357815161248a8882612431565b975061249583612448565b925050600181019050612476565b5085935050505092915050565b5f67ffffffffffffffff82169050919050565b6124cc816124b0565b82525050565b6124db8161229f565b82525050565b5f6124eb826122fd565b9050919050565b6124fb816124e1565b82525050565b5f61012083015f8301516125175f860182612368565b50602083015161252a6020860182612388565b50604083015161253d60408601826123a8565b50606083015161255060608601826123d9565b50608083015184820360808601526125688282612454565b91505060a083015161257d60a08601826124c3565b5060c083015161259060c08601826124c3565b5060e08301516125a360e08601826124d2565b506101008301516125b86101008601826124f2565b508091505092915050565b5f6020820190508181035f8301526125db8184612501565b905092915050565b6125ec816124e1565b82525050565b5f6020820190506126055f8301846125e3565b92915050565b612614816124b0565b811461261e575f80fd5b50565b5f8135905061262f8161260b565b92915050565b5f6020828403121561264a57612649612297565b5b5f61265784828501612621565b91505092915050565b612669816124e1565b8114612673575f80fd5b50565b5f8135905061268481612660565b92915050565b5f6020828403121561269f5761269e612297565b5b5f6126ac84828501612676565b91505092915050565b6126be8161229f565b82525050565b5f6020820190506126d75f8301846126b5565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126126fe576126fd6126dd565b5b8235905067ffffffffffffffff81111561271b5761271a6126e1565b5b602083019150836001820283011115612737576127366126e5565b5b9250929050565b5f805f805f8060a0878903121561275857612757612297565b5b5f61276589828a016122be565b965050602061277689828a016122be565b955050604061278789828a01612676565b945050606087013567ffffffffffffffff8111156127a8576127a761229b565b5b6127b489828a016126e9565b935093505060806127c789828a01612676565b9150509295509295509295565b5f6127de82612346565b9050919050565b6127ee816127d4565b82525050565b5f6020820190506128075f8301846127e5565b92915050565b612816816124b0565b82525050565b5f60208201905061282f5f83018461280d565b92915050565b5f805f805f6080868803121561284e5761284d612297565b5b5f61285b888289016122be565b955050602061286c888289016122be565b945050604061287d88828901612676565b935050606086013567ffffffffffffffff81111561289e5761289d61229b565b5b6128aa888289016126e9565b92509250509295509295909350565b5f6128c382612346565b9050919050565b6128d3816128b9565b82525050565b5f6020820190506128ec5f8301846128ca565b92915050565b5f806020838503121561290857612907612297565b5b5f83013567ffffffffffffffff8111156129255761292461229b565b5b612931858286016126e9565b92509250509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60608201905061297d5f8301866125e3565b61298a60208301856126b5565b61299760408301846126b5565b949350505050565b5f82825260208201905092915050565b828183375f83830152505050565b5f601f19601f8301169050919050565b5f6129d8838561299f565b93506129e58385846129af565b6129ee836129bd565b840190509392505050565b5f608082019050612a0c5f8301886126b5565b612a1960208301876126b5565b612a2660408301866125e3565b8181036060830152612a398184866129cd565b90509695505050505050565b5f8115159050919050565b612a5981612a45565b8114612a63575f80fd5b50565b5f81519050612a7481612a50565b92915050565b5f60208284031215612a8f57612a8e612297565b5b5f612a9c84828501612a66565b91505092915050565b5f604082019050612ab85f8301866125e3565b8181036020830152612acb8184866129cd565b9050949350505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b0f826129bd565b810181811067ffffffffffffffff82111715612b2e57612b2d612ad9565b5b80604052505050565b5f612b4061228e565b9050612b4c8282612b06565b919050565b5f80fd5b5f612b5f826122fd565b9050919050565b5f612b7082612b55565b9050919050565b612b8081612b66565b8114612b8a575f80fd5b50565b5f81519050612b9b81612b77565b92915050565b5f81519050612baf81612660565b92915050565b5f80fd5b5f67ffffffffffffffff821115612bd357612bd2612ad9565b5b612bdc826129bd565b9050602081019050919050565b8281835e5f83830152505050565b5f612c09612c0484612bb9565b612b37565b905082815260208101848484011115612c2557612c24612bb5565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b6126dd565b5b8151612c5c848260208601612bf7565b91505092915050565b5f60608284031215612c7a57612c79612ad5565b5b612c846060612b37565b90505f612c9384828501612a66565b5f830152506020612ca684828501612ba1565b602083015250604082015167ffffffffffffffff811115612cca57612cc9612b51565b5b612cd684828501612c38565b60408301525092915050565b5f67ffffffffffffffff821115612cfc57612cfb612ad9565b5b602082029050602081019050919050565b5f612d1f612d1a84612ce2565b612b37565b90508083825260208201905060208402830185811115612d4257612d416126e5565b5b835b81811015612d8957805167ffffffffffffffff811115612d6757612d666126dd565b5b808601612d748982612c65565b85526020850194505050602081019050612d44565b5050509392505050565b5f82601f830112612da757612da66126dd565b5b8151612db7848260208601612d0d565b91505092915050565b5f81519050612dce8161260b565b92915050565b5f81519050612de2816122a8565b92915050565b5f6101208284031215612dfe57612dfd612ad5565b5b612e09610120612b37565b90505f612e1884828501612b8d565b5f83015250602082015167ffffffffffffffff811115612e3b57612e3a612b51565b5b612e4784828501612c65565b602083015250604082015167ffffffffffffffff811115612e6b57612e6a612b51565b5b612e7784828501612c65565b604083015250606082015167ffffffffffffffff811115612e9b57612e9a612b51565b5b612ea784828501612c65565b606083015250608082015167ffffffffffffffff811115612ecb57612eca612b51565b5b612ed784828501612d93565b60808301525060a0612eeb84828501612dc0565b60a08301525060c0612eff84828501612dc0565b60c08301525060e0612f1384828501612dd4565b60e083015250610100612f2884828501612ba1565b6101008301525092915050565b5f60208284031215612f4a57612f49612297565b5b5f82015167ffffffffffffffff811115612f6757612f6661229b565b5b612f7384828501612de8565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612fb3826124b0565b9150612fbe836124b0565b9250828201905067ffffffffffffffff811115612fde57612fdd612f7c565b5b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61301881612fe4565b82525050565b5f6020820190506130315f83018461300f565b92915050565b5f6130418261229f565b915061304c8361229f565b925082820390508181111561306457613063612f7c565b5b92915050565b5f60808201905061307d5f8301876126b5565b61308a60208301866125e3565b61309760408301856125e3565b6130a460608301846125e3565b95945050505050565b5f6130b78261229f565b91506130c28361229f565b92508282026130d08161229f565b915082820484148315176130e7576130e6612f7c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131258261229f565b91506131308361229f565b9250826131405761313f6130ee565b5b828204905092915050565b5f60408201905061315e5f83018561300f565b61316b60208301846125e3565b9392505050565b5f81519050919050565b5f61318682613172565b613190818561299f565b93506131a0818560208601612be9565b6131a9816129bd565b840191505092915050565b5f6020820190508181035f8301526131cc818461317c565b905092915050565b5f602082840312156131e9576131e8612297565b5b5f82015167ffffffffffffffff8111156132065761320561229b565b5b61321284828501612c38565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffdfea2646970667358221220fb22934e0d9f7a8e32d07cd1f2621ea36204627afface45e5bc80aab6122bb7d64736f6c634300081a0033";
26
- function S(a) {
27
- const e = a.state.current, f = a.state.connections.get(e), b = f == null ? void 0 : f.accounts, c = b == null ? void 0 : b[0], t = a.chains.find((n) => n.id === (f == null ? void 0 : f.chainId)), s = a.state.status;
28
- switch (s) {
1
+ import { c as P, bd as k, be as G, bf as U, bg as W, bh as H, bi as Q, bj as J, bk as K, bl as X, bm as Y, bn as Z, bo as ff, bp as ef, bq as af, br as bf, bs as tf, bt as sf } from "./generated-57_Kffpz.js";
2
+ import { getAccount as cf, waitForTransactionReceipt as nf } from "@wagmi/core";
3
+ import { createClient as df, custom as rf, parseEther as of, zeroAddress as w, zeroHash as o, parseEventLogs as uf } from "viem";
4
+ import { actionFromAddress as lf } from "./Actions/Action.js";
5
+ import { EventAction as hf } from "./Actions/EventAction.js";
6
+ import { allowListFromAddress as mf } from "./AllowLists/AllowList.js";
7
+ import { SimpleAllowList as gf } from "./AllowLists/SimpleAllowList.js";
8
+ import { SimpleDenyList as wf } from "./AllowLists/SimpleDenyList.js";
9
+ import { PassthroughAuth as pf } from "./Auth/PassthroughAuth.js";
10
+ import { prepareBoostPayload as Af, Boost as $ } from "./Boost.js";
11
+ import { budgetFromAddress as yf } from "./Budgets/Budget.js";
12
+ import { ManagedBudget as Cf } from "./Budgets/ManagedBudget.js";
13
+ import { Deployable as vf } from "./Deployable/Deployable.js";
14
+ import { AllowListIncentive as _f } from "./Incentives/AllowListIncentive.js";
15
+ import { CGDAIncentive as If } from "./Incentives/CGDAIncentive.js";
16
+ import { ERC20Incentive as Pf } from "./Incentives/ERC20Incentive.js";
17
+ import { incentiveFromAddress as Bf, ERC20VariableIncentive as Rf } from "./Incentives/Incentive.js";
18
+ import { PointsIncentive as Ff } from "./Incentives/PointsIncentive.js";
19
+ import { SignerValidator as Ef } from "./Validators/SignerValidator.js";
20
+ import { validatorFromAddress as Df } from "./Validators/Validator.js";
21
+ import { DeployableUnknownOwnerProvidedError as Vf, BudgetMustAuthorizeBoostCore as Lf, MustInitializeBudgetError as $f, IncentiveNotCloneableError as xf, BoostCoreNoIdentifierEmitted as Mf } from "./errors.js";
22
+ import { simulateContract as Nf, writeContract as Of } from "viem/actions";
23
+ import { parseAccount as Sf, getAddress as jf } from "viem/utils";
24
+ const qf = "0x60806040526544364c5bb0006004556103e860055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506103e8600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555034801561006e575f80fd5b506040516135683803806135688339818101604052810190610090919061029f565b61009f3361012660201b60201c565b8160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506102dd565b61013461020260201b60201c565b156101ac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392780541561016e57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3506101ff565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f90565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102338261020a565b9050919050565b5f61024482610229565b9050919050565b6102548161023a565b811461025e575f80fd5b50565b5f8151905061026f8161024b565b92915050565b61027e81610229565b8114610288575f80fd5b50565b5f8151905061029981610275565b92915050565b5f80604083850312156102b5576102b4610206565b5b5f6102c285828601610261565b92505060206102d38582860161028b565b9150509250929050565b61327e806102ea5f395ff3fe60806040526004361061014a575f3560e01c8063892b97f8116100b5578063d73792a91161006e578063d73792a9146103d0578063e21ff731146103fa578063eccc19a614610436578063f04e283e1461045e578063f2fde38b1461047a578063fee81cf4146104965761014a565b8063892b97f8146102e45780638da5cb5b1461030c5780638fe4f5231461033657806399d32fc414610352578063a92647dc1461037c578063b0e21e8a146103a65761014a565b806354d1f13d1161010757806354d1f13d146102365780635edb9eb014610240578063715018a61461026a578063730f9c57146102745780637b1039991461029057806384ae2bc6146102ba5761014a565b806313c8e2de1461014e578063256929621461018a5780632e75ab501461019457806339a51be5146101bc57806343bc42d3146101e657806346877b1a1461020e575b5f80fd5b348015610159575f80fd5b50610174600480360381019061016f91906122d2565b6104d2565b60405161018191906125c3565b60405180910390f35b6101926107ac565b005b34801561019f575f80fd5b506101ba60048036038101906101b591906122d2565b6107fd565b005b3480156101c7575f80fd5b506101d061080f565b6040516101dd91906125f2565b60405180910390f35b3480156101f1575f80fd5b5061020c60048036038101906102079190612635565b610834565b005b348015610219575f80fd5b50610234600480360381019061022f919061268a565b610867565b005b61023e6108b2565b005b34801561024b575f80fd5b506102546108eb565b60405161026191906126c4565b60405180910390f35b6102726108f6565b005b61028e6004803603810190610289919061273e565b610909565b005b34801561029b575f80fd5b506102a4610b9a565b6040516102b191906127f4565b60405180910390f35b3480156102c5575f80fd5b506102ce610bbf565b6040516102db919061281c565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612635565b610bd9565b005b348015610317575f80fd5b50610320610c0d565b60405161032d91906125f2565b60405180910390f35b610350600480360381019061034b9190612835565b610c35565b005b34801561035d575f80fd5b50610366610c4a565b60405161037391906126c4565b60405180910390f35b348015610387575f80fd5b50610390610c50565b60405161039d91906128d9565b60405180910390f35b3480156103b1575f80fd5b506103ba610c75565b6040516103c7919061281c565b60405180910390f35b3480156103db575f80fd5b506103e4610c8e565b6040516103f1919061281c565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b91906128f2565b610c94565b60405161042d91906125c3565b60405180910390f35b348015610441575f80fd5b5061045c6004803603810190610457919061268a565b61164f565b005b6104786004803603810190610473919061268a565b61169a565b005b610494600480360381019061048f919061268a565b6116d8565b005b3480156104a1575f80fd5b506104bc60048036038101906104b7919061268a565b611701565b6040516104c991906126c4565b60405180910390f35b6104da612126565b5f82815481106104ed576104ec61293d565b5b905f5260205f209060080201604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156106da57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610691575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b5f6107b561171a565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b610805611724565b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61083c611724565b8060055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b61086f611724565b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f8080549050905090565b6108fe611724565b6109075f61175b565b565b3068929eee149b4bd2126854036109275763ab143c065f526004601cfd5b3068929eee149b4bd21268555f8087815481106109475761094661293d565b5b905f5260205f20906008020190506004543410156109a2575f346004546040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016109999392919061296a565b60405180910390fd5b6109ac8186611821565b806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663703b690088888588886040518663ffffffff1660e01b8152600401610a109594939291906129f9565b6020604051808303815f875af1158015610a2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a509190612a7a565b610a86576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806004018681548110610a9c57610a9b61293d565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb1757cf8386866040518463ffffffff1660e01b8152600401610b0093929190612aa5565b6020604051808303815f875af1158015610b1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b409190612a7a565b610b85578184846040517f4139d81d000000000000000000000000000000000000000000000000000000008152600401610b7c93929190612aa5565b60405180910390fd5b503868929eee149b4bd2126855505050505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560089054906101000a900467ffffffffffffffff1681565b610be1611724565b80600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610c43858585858533610909565b5050505050565b60045481565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900467ffffffffffffffff1681565b61271081565b610c9c612126565b335f73ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015610d90575060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80826040518263ffffffff1660e01b8152600401610d4f91906125f2565b602060405180830381865afa158015610d6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8e9190612a7a565b155b15610dc7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3068929eee149b4bd212685403610de55763ab143c065f526004601cfd5b3068929eee149b4bd21268555f610e3e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505061198f565b806020019051810190610e519190612f35565b9050610e5f815f0151611a28565b5f8060018160018154018082558091505003905f5260205f2090600802019050816101000151816007015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550815f0151816003015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160a0015160055f9054906101000a900467ffffffffffffffff16610f309190612fa9565b816005015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160c00151600560089054906101000a900467ffffffffffffffff16610f7f9190612fa9565b8160050160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160e001518160060181905550610fe67fe67157950000000000000000000000000000000000000000000000000000000083602001516001611b03565b815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110567fe2089f790000000000000000000000000000000000000000000000000000000083606001516001611b03565b816002015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110a88260800151835f0151611b25565b8160040190805190602001906110bf9291906121ec565b505f73ffffffffffffffffffffffffffffffffffffffff1682604001516020015173ffffffffffffffffffffffffffffffffffffffff16146111305761112b7f5912b89c0000000000000000000000000000000000000000000000000000000083604001516001611b03565b611219565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f5912b89c000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016111ab919061301e565b602060405180830381865afa1580156111c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ea9190612a7a565b6111f4575f611218565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b5b816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16816007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660015f805490506112de9190613037565b7f116812d3ad4507d72f2c428b63246d594ca055a1dc119394285504c23d1f34cd8460040180549050856001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866002015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876003015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611383949392919061306a565b60405180910390a480604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016004820180548060200260200160405190810160405280929190818152602001828054801561156d57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611524575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050935050503868929eee149b4bd21268555092915050565b611657611724565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6116a2611724565b63389a75e1600c52805f526020600c2080544211156116c857636f5e88185f526004601cfd5b5f8155506116d58161175b565b50565b6116e0611724565b8060601b6116f557637448fbae5f526004601cfd5b6116fe8161175b565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611759576382b429005f526004601cfd5b565b611763611eef565b156117c8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b821781555061181e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f600454031561198b575f60045490505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146118e7575f61271067ffffffffffffffff168460050160089054906101000a900467ffffffffffffffff1667ffffffffffffffff166004546118a291906130ad565b6118ac919061311b565b905080826118ba9190613037565b91506118e5818473ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b61193f6002826118f7919061311b565b846007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b6119894760035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b5050565b6060815115611a235760405190506020810160048301805184518501811983525b80861015611a09576001860195508551601f1a806119f9576001870196508651601f1a5f198652607f81116119e757600181013887395b6001607f821601860195505050611a04565b808553600185019450505b6119b0565b81835260208501840385525f845260208401604052505050505b919050565b611a527fea5ad34e0000000000000000000000000000000000000000000000000000000082611f10565b8073ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80336040518263ffffffff1660e01b8152600401611a8b91906125f2565b602060405180830381865afa158015611aa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aca9190612a7a565b611b00576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b5f611b12848460200151611f10565b611b1c8383612007565b90509392505050565b6060825167ffffffffffffffff811115611b4257611b41612ad9565b5b604051908082528060200260200182016040528015611b705781602001602082028036833780820191505090505b5090505f5b8351811015611ee857611bc67f5970a68900000000000000000000000000000000000000000000000000000000858381518110611bb557611bb461293d565b5b602002602001015160200151611f10565b838181518110611bd957611bd861293d565b5b60200260200101515f0151611c65577f5970a68900000000000000000000000000000000000000000000000000000000848281518110611c1c57611c1b61293d565b5b6020026020010151602001516040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611c5c92919061314b565b60405180910390fd5b611caa7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611c9c57611c9b61293d565b5b60200260200101515f611b03565b828281518110611cbd57611cbc61293d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f828281518110611d0b57611d0a61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16634e7165a2868481518110611d4157611d4061293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611d6991906131b4565b5f60405180830381865afa158015611d83573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611dab91906131d4565b90505f815114611e3c578373ffffffffffffffffffffffffffffffffffffffff1663fa4ca9b1826040518263ffffffff1660e01b8152600401611dee91906131b4565b6020604051808303815f875af1158015611e0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e2e9190612a7a565b611e3b57611e3a61321b565b5b5b828281518110611e4f57611e4e61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663439fab91868481518110611e8557611e8461293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611ead91906131b4565b5f604051808303815f87803b158015611ec4575f80fd5b505af1158015611ed6573d5f803e3d5ffd5b50505050508080600101915050611b75565b5092915050565b5f90565b5f385f3884865af1611f0c5763b12d13eb5f526004601cfd5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480611fbf57508073ffffffffffffffffffffffffffffffffffffffff166301ffc9a7836040518263ffffffff1660e01b8152600401611f7e919061301e565b602060405180830381865afa158015611f99573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fbd9190612a7a565b155b156120035781816040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611ffa92919061314b565b60405180910390fd5b5050565b5f825f015161201a57826020015161203e565b61203d836020015173ffffffffffffffffffffffffffffffffffffffff166120c3565b5b9050825f0151801561204d5750815b156120bd578073ffffffffffffffffffffffffffffffffffffffff1663439fab9184604001516040518263ffffffff1660e01b815260040161208f91906131b4565b5f604051808303815f87803b1580156120a6575f80fd5b505af11580156120b8573d5f803e3d5ffd5b505050505b92915050565b5f6120ce5f836120d5565b9050919050565b5f6c5af43d3d93803e602a57fd5bf36021528160145273602c3d8160093d39f33d3d3d3d363d3d37363d735f526035600c84f090508061211c5763301164255f526004601cfd5b5f60215292915050565b6040518061012001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f67ffffffffffffffff1681526020015f67ffffffffffffffff1681526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b828054828255905f5260205f20908101928215612262579160200282015b82811115612261578251825f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061220a565b5b50905061226f9190612273565b5090565b5b8082111561228a575f815f905550600101612274565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6122b18161229f565b81146122bb575f80fd5b50565b5f813590506122cc816122a8565b92915050565b5f602082840312156122e7576122e6612297565b5b5f6122f4848285016122be565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61233f61233a612335846122fd565b61231c565b6122fd565b9050919050565b5f61235082612325565b9050919050565b5f61236182612346565b9050919050565b61237181612357565b82525050565b5f61238182612346565b9050919050565b61239181612377565b82525050565b5f6123a182612346565b9050919050565b6123b181612397565b82525050565b5f6123c182612325565b9050919050565b5f6123d2826123b7565b9050919050565b6123e2816123c8565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61241b82612346565b9050919050565b61242b81612411565b82525050565b5f61243c8383612422565b60208301905092915050565b5f602082019050919050565b5f61245e826123e8565b61246881856123f2565b935061247383612402565b805f5b838110156124a357815161248a8882612431565b975061249583612448565b925050600181019050612476565b5085935050505092915050565b5f67ffffffffffffffff82169050919050565b6124cc816124b0565b82525050565b6124db8161229f565b82525050565b5f6124eb826122fd565b9050919050565b6124fb816124e1565b82525050565b5f61012083015f8301516125175f860182612368565b50602083015161252a6020860182612388565b50604083015161253d60408601826123a8565b50606083015161255060608601826123d9565b50608083015184820360808601526125688282612454565b91505060a083015161257d60a08601826124c3565b5060c083015161259060c08601826124c3565b5060e08301516125a360e08601826124d2565b506101008301516125b86101008601826124f2565b508091505092915050565b5f6020820190508181035f8301526125db8184612501565b905092915050565b6125ec816124e1565b82525050565b5f6020820190506126055f8301846125e3565b92915050565b612614816124b0565b811461261e575f80fd5b50565b5f8135905061262f8161260b565b92915050565b5f6020828403121561264a57612649612297565b5b5f61265784828501612621565b91505092915050565b612669816124e1565b8114612673575f80fd5b50565b5f8135905061268481612660565b92915050565b5f6020828403121561269f5761269e612297565b5b5f6126ac84828501612676565b91505092915050565b6126be8161229f565b82525050565b5f6020820190506126d75f8301846126b5565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126126fe576126fd6126dd565b5b8235905067ffffffffffffffff81111561271b5761271a6126e1565b5b602083019150836001820283011115612737576127366126e5565b5b9250929050565b5f805f805f8060a0878903121561275857612757612297565b5b5f61276589828a016122be565b965050602061277689828a016122be565b955050604061278789828a01612676565b945050606087013567ffffffffffffffff8111156127a8576127a761229b565b5b6127b489828a016126e9565b935093505060806127c789828a01612676565b9150509295509295509295565b5f6127de82612346565b9050919050565b6127ee816127d4565b82525050565b5f6020820190506128075f8301846127e5565b92915050565b612816816124b0565b82525050565b5f60208201905061282f5f83018461280d565b92915050565b5f805f805f6080868803121561284e5761284d612297565b5b5f61285b888289016122be565b955050602061286c888289016122be565b945050604061287d88828901612676565b935050606086013567ffffffffffffffff81111561289e5761289d61229b565b5b6128aa888289016126e9565b92509250509295509295909350565b5f6128c382612346565b9050919050565b6128d3816128b9565b82525050565b5f6020820190506128ec5f8301846128ca565b92915050565b5f806020838503121561290857612907612297565b5b5f83013567ffffffffffffffff8111156129255761292461229b565b5b612931858286016126e9565b92509250509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60608201905061297d5f8301866125e3565b61298a60208301856126b5565b61299760408301846126b5565b949350505050565b5f82825260208201905092915050565b828183375f83830152505050565b5f601f19601f8301169050919050565b5f6129d8838561299f565b93506129e58385846129af565b6129ee836129bd565b840190509392505050565b5f608082019050612a0c5f8301886126b5565b612a1960208301876126b5565b612a2660408301866125e3565b8181036060830152612a398184866129cd565b90509695505050505050565b5f8115159050919050565b612a5981612a45565b8114612a63575f80fd5b50565b5f81519050612a7481612a50565b92915050565b5f60208284031215612a8f57612a8e612297565b5b5f612a9c84828501612a66565b91505092915050565b5f604082019050612ab85f8301866125e3565b8181036020830152612acb8184866129cd565b9050949350505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b0f826129bd565b810181811067ffffffffffffffff82111715612b2e57612b2d612ad9565b5b80604052505050565b5f612b4061228e565b9050612b4c8282612b06565b919050565b5f80fd5b5f612b5f826122fd565b9050919050565b5f612b7082612b55565b9050919050565b612b8081612b66565b8114612b8a575f80fd5b50565b5f81519050612b9b81612b77565b92915050565b5f81519050612baf81612660565b92915050565b5f80fd5b5f67ffffffffffffffff821115612bd357612bd2612ad9565b5b612bdc826129bd565b9050602081019050919050565b8281835e5f83830152505050565b5f612c09612c0484612bb9565b612b37565b905082815260208101848484011115612c2557612c24612bb5565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b6126dd565b5b8151612c5c848260208601612bf7565b91505092915050565b5f60608284031215612c7a57612c79612ad5565b5b612c846060612b37565b90505f612c9384828501612a66565b5f830152506020612ca684828501612ba1565b602083015250604082015167ffffffffffffffff811115612cca57612cc9612b51565b5b612cd684828501612c38565b60408301525092915050565b5f67ffffffffffffffff821115612cfc57612cfb612ad9565b5b602082029050602081019050919050565b5f612d1f612d1a84612ce2565b612b37565b90508083825260208201905060208402830185811115612d4257612d416126e5565b5b835b81811015612d8957805167ffffffffffffffff811115612d6757612d666126dd565b5b808601612d748982612c65565b85526020850194505050602081019050612d44565b5050509392505050565b5f82601f830112612da757612da66126dd565b5b8151612db7848260208601612d0d565b91505092915050565b5f81519050612dce8161260b565b92915050565b5f81519050612de2816122a8565b92915050565b5f6101208284031215612dfe57612dfd612ad5565b5b612e09610120612b37565b90505f612e1884828501612b8d565b5f83015250602082015167ffffffffffffffff811115612e3b57612e3a612b51565b5b612e4784828501612c65565b602083015250604082015167ffffffffffffffff811115612e6b57612e6a612b51565b5b612e7784828501612c65565b604083015250606082015167ffffffffffffffff811115612e9b57612e9a612b51565b5b612ea784828501612c65565b606083015250608082015167ffffffffffffffff811115612ecb57612eca612b51565b5b612ed784828501612d93565b60808301525060a0612eeb84828501612dc0565b60a08301525060c0612eff84828501612dc0565b60c08301525060e0612f1384828501612dd4565b60e083015250610100612f2884828501612ba1565b6101008301525092915050565b5f60208284031215612f4a57612f49612297565b5b5f82015167ffffffffffffffff811115612f6757612f6661229b565b5b612f7384828501612de8565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612fb3826124b0565b9150612fbe836124b0565b9250828201905067ffffffffffffffff811115612fde57612fdd612f7c565b5b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61301881612fe4565b82525050565b5f6020820190506130315f83018461300f565b92915050565b5f6130418261229f565b915061304c8361229f565b925082820390508181111561306457613063612f7c565b5b92915050565b5f60808201905061307d5f8301876126b5565b61308a60208301866125e3565b61309760408301856125e3565b6130a460608301846125e3565b95945050505050565b5f6130b78261229f565b91506130c28361229f565b92508282026130d08161229f565b915082820484148315176130e7576130e6612f7c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131258261229f565b91506131308361229f565b9250826131405761313f6130ee565b5b828204905092915050565b5f60408201905061315e5f83018561300f565b61316b60208301846125e3565b9392505050565b5f81519050919050565b5f61318682613172565b613190818561299f565b93506131a0818560208601612be9565b6131a9816129bd565b840191505092915050565b5f6020820190508181035f8301526131cc818461317c565b905092915050565b5f602082840312156131e9576131e8612297565b5b5f82015167ffffffffffffffff8111156132065761320561229b565b5b61321284828501612c38565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffdfea2646970667358221220fb22934e0d9f7a8e32d07cd1f2621ea36204627afface45e5bc80aab6122bb7d64736f6c634300081a0033";
25
+ function M(b) {
26
+ const e = b.state.current, f = b.state.connections.get(e), a = f == null ? void 0 : f.accounts, s = a == null ? void 0 : a[0], t = b.chains.find((d) => d.id === (f == null ? void 0 : f.chainId)), c = b.state.status;
27
+ switch (c) {
29
28
  case "connected":
30
29
  return {
31
- address: c,
32
- addresses: b,
30
+ address: s,
31
+ addresses: a,
33
32
  chain: t,
34
33
  chainId: f == null ? void 0 : f.chainId,
35
34
  connector: f == null ? void 0 : f.connector,
@@ -37,25 +36,25 @@ function S(a) {
37
36
  isConnecting: !1,
38
37
  isDisconnected: !1,
39
38
  isReconnecting: !1,
40
- status: s
39
+ status: c
41
40
  };
42
41
  case "reconnecting":
43
42
  return {
44
- address: c,
45
- addresses: b,
43
+ address: s,
44
+ addresses: a,
46
45
  chain: t,
47
46
  chainId: f == null ? void 0 : f.chainId,
48
47
  connector: f == null ? void 0 : f.connector,
49
- isConnected: !!c,
48
+ isConnected: !!s,
50
49
  isConnecting: !1,
51
50
  isDisconnected: !1,
52
51
  isReconnecting: !0,
53
- status: s
52
+ status: c
54
53
  };
55
54
  case "connecting":
56
55
  return {
57
- address: c,
58
- addresses: b,
56
+ address: s,
57
+ addresses: a,
59
58
  chain: t,
60
59
  chainId: f == null ? void 0 : f.chainId,
61
60
  connector: f == null ? void 0 : f.connector,
@@ -63,7 +62,7 @@ function S(a) {
63
62
  isConnecting: !0,
64
63
  isDisconnected: !1,
65
64
  isReconnecting: !1,
66
- status: s
65
+ status: c
67
66
  };
68
67
  case "disconnected":
69
68
  return {
@@ -76,38 +75,38 @@ function S(a) {
76
75
  isConnecting: !1,
77
76
  isDisconnected: !0,
78
77
  isReconnecting: !1,
79
- status: s
78
+ status: c
80
79
  };
81
80
  }
82
81
  }
83
- function Sf(a) {
84
- return a.state.chainId;
82
+ function zf(b) {
83
+ return b.state.chainId;
85
84
  }
86
- function O(a, e, f) {
87
- const b = a[e.name];
88
- if (typeof b == "function")
89
- return b;
90
- const c = a[f];
91
- return typeof c == "function" ? c : (t) => e(a, t);
85
+ function N(b, e, f) {
86
+ const a = b[e.name];
87
+ if (typeof a == "function")
88
+ return a;
89
+ const s = b[f];
90
+ return typeof s == "function" ? s : (t) => e(b, t);
92
91
  }
93
- const Of = "2.13.0", qf = () => `@wagmi/core@${Of}`;
94
- var q = function(a, e, f, b) {
95
- if (f === "a" && !b)
92
+ const Tf = "2.13.0", kf = () => `@wagmi/core@${Tf}`;
93
+ var O = function(b, e, f, a) {
94
+ if (f === "a" && !a)
96
95
  throw new TypeError("Private accessor was defined without a getter");
97
- if (typeof e == "function" ? a !== e || !b : !e.has(a))
96
+ if (typeof e == "function" ? b !== e || !a : !e.has(b))
98
97
  throw new TypeError("Cannot read private member from an object whose class did not declare it");
99
- return f === "m" ? b : f === "a" ? b.call(a) : b ? b.value : e.get(a);
100
- }, R, z;
101
- class A extends Error {
98
+ return f === "m" ? a : f === "a" ? a.call(b) : a ? a.value : e.get(b);
99
+ }, B, S;
100
+ class p extends Error {
102
101
  get docsBaseUrl() {
103
102
  return "https://wagmi.sh/core";
104
103
  }
105
104
  get version() {
106
- return qf();
105
+ return kf();
107
106
  }
108
107
  constructor(e, f = {}) {
109
108
  var t;
110
- super(), R.add(this), Object.defineProperty(this, "details", {
109
+ super(), B.add(this), Object.defineProperty(this, "details", {
111
110
  enumerable: !0,
112
111
  configurable: !0,
113
112
  writable: !0,
@@ -133,27 +132,27 @@ class A extends Error {
133
132
  writable: !0,
134
133
  value: "WagmiCoreError"
135
134
  });
136
- const b = f.cause instanceof A ? f.cause.details : (t = f.cause) != null && t.message ? f.cause.message : f.details, c = f.cause instanceof A && f.cause.docsPath || f.docsPath;
135
+ const a = f.cause instanceof p ? f.cause.details : (t = f.cause) != null && t.message ? f.cause.message : f.details, s = f.cause instanceof p && f.cause.docsPath || f.docsPath;
137
136
  this.message = [
138
137
  e || "An error occurred.",
139
138
  "",
140
139
  ...f.metaMessages ? [...f.metaMessages, ""] : [],
141
- ...c ? [
142
- `Docs: ${this.docsBaseUrl}${c}.html${f.docsSlug ? `#${f.docsSlug}` : ""}`
140
+ ...s ? [
141
+ `Docs: ${this.docsBaseUrl}${s}.html${f.docsSlug ? `#${f.docsSlug}` : ""}`
143
142
  ] : [],
144
- ...b ? [`Details: ${b}`] : [],
143
+ ...a ? [`Details: ${a}`] : [],
145
144
  `Version: ${this.version}`
146
145
  ].join(`
147
- `), f.cause && (this.cause = f.cause), this.details = b, this.docsPath = c, this.metaMessages = f.metaMessages, this.shortMessage = e;
146
+ `), f.cause && (this.cause = f.cause), this.details = a, this.docsPath = s, this.metaMessages = f.metaMessages, this.shortMessage = e;
148
147
  }
149
148
  walk(e) {
150
- return q(this, R, "m", z).call(this, this, e);
149
+ return O(this, B, "m", S).call(this, this, e);
151
150
  }
152
151
  }
153
- R = /* @__PURE__ */ new WeakSet(), z = function a(e, f) {
154
- return f != null && f(e) ? e : e.cause ? q(this, R, "m", a).call(this, e.cause, f) : e;
152
+ B = /* @__PURE__ */ new WeakSet(), S = function b(e, f) {
153
+ return f != null && f(e) ? e : e.cause ? O(this, B, "m", b).call(this, e.cause, f) : e;
155
154
  };
156
- class zf extends A {
155
+ class Gf extends p {
157
156
  constructor() {
158
157
  super("Connector not connected."), Object.defineProperty(this, "name", {
159
158
  enumerable: !0,
@@ -163,7 +162,7 @@ class zf extends A {
163
162
  });
164
163
  }
165
164
  }
166
- class Tf extends A {
165
+ class Uf extends p {
167
166
  constructor({ address: e, connector: f }) {
168
167
  super(`Account "${e}" not found for connector "${f.name}".`), Object.defineProperty(this, "name", {
169
168
  enumerable: !0,
@@ -173,7 +172,7 @@ class Tf extends A {
173
172
  });
174
173
  }
175
174
  }
176
- class Uf extends A {
175
+ class Wf extends p {
177
176
  constructor({ connectionChainId: e, connectorChainId: f }) {
178
177
  super(`The current chain of the connector (id: ${f}) does not match the connection's chain (id: ${e}).`, {
179
178
  metaMessages: [
@@ -188,108 +187,108 @@ class Uf extends A {
188
187
  });
189
188
  }
190
189
  }
191
- async function T(a, e = {}) {
190
+ async function j(b, e = {}) {
192
191
  let f;
193
192
  if (e.connector) {
194
- const { connector: d } = e, [l, g] = await Promise.all([
195
- d.getAccounts(),
196
- d.getChainId()
193
+ const { connector: n } = e, [u, g] = await Promise.all([
194
+ n.getAccounts(),
195
+ n.getChainId()
197
196
  ]);
198
197
  f = {
199
- accounts: l,
198
+ accounts: u,
200
199
  chainId: g,
201
- connector: d
200
+ connector: n
202
201
  };
203
202
  } else
204
- f = a.state.connections.get(a.state.current);
203
+ f = b.state.connections.get(b.state.current);
205
204
  if (!f)
206
- throw new zf();
207
- const b = e.chainId ?? f.chainId, c = await f.connector.getChainId();
208
- if (c !== f.chainId)
209
- throw new Uf({
205
+ throw new Gf();
206
+ const a = e.chainId ?? f.chainId, s = await f.connector.getChainId();
207
+ if (s !== f.chainId)
208
+ throw new Wf({
210
209
  connectionChainId: f.chainId,
211
- connectorChainId: c
210
+ connectorChainId: s
212
211
  });
213
212
  const t = f.connector;
214
213
  if (t.getClient)
215
- return t.getClient({ chainId: b });
216
- const s = Nf(e.account ?? f.accounts[0]);
217
- s.address = jf(s.address);
218
- const n = a.chains.find((d) => d.id === b), r = await f.connector.getProvider({ chainId: b });
219
- if (e.account && !f.accounts.some((d) => d.toLowerCase() === s.address.toLowerCase()))
220
- throw new Tf({
221
- address: s.address,
214
+ return t.getClient({ chainId: a });
215
+ const c = Sf(e.account ?? f.accounts[0]);
216
+ c.address = jf(c.address);
217
+ const d = b.chains.find((n) => n.id === a), r = await f.connector.getProvider({ chainId: a });
218
+ if (e.account && !f.accounts.some((n) => n.toLowerCase() === c.address.toLowerCase()))
219
+ throw new Uf({
220
+ address: c.address,
222
221
  connector: t
223
222
  });
224
- return nf({
225
- account: s,
226
- chain: n,
223
+ return df({
224
+ account: c,
225
+ chain: d,
227
226
  name: "Connector Client",
228
- transport: (d) => rf(r)({ ...d, retryCount: 0 })
227
+ transport: (n) => rf(r)({ ...n, retryCount: 0 })
229
228
  });
230
229
  }
231
- async function kf(a, e) {
232
- const { abi: f, chainId: b, connector: c, ...t } = e;
233
- let s;
234
- e.account ? s = e.account : s = (await T(a, {
235
- chainId: b,
236
- connector: c
230
+ async function Hf(b, e) {
231
+ const { abi: f, chainId: a, connector: s, ...t } = e;
232
+ let c;
233
+ e.account ? c = e.account : c = (await j(b, {
234
+ chainId: a,
235
+ connector: s
237
236
  })).account;
238
- const n = a.getClient({ chainId: b }), r = O(n, $f, "simulateContract"), { result: d, request: l } = await r({ ...t, abi: f, account: s });
237
+ const d = b.getClient({ chainId: a }), r = N(d, Nf, "simulateContract"), { result: n, request: u } = await r({ ...t, abi: f, account: c });
239
238
  return {
240
- chainId: n.chain.id,
241
- result: d,
242
- request: { __mode: "prepared", ...l, chainId: b }
239
+ chainId: d.chain.id,
240
+ result: n,
241
+ request: { __mode: "prepared", ...u, chainId: a }
243
242
  };
244
243
  }
245
- async function M(a, e) {
246
- const { account: f, chainId: b, connector: c, __mode: t, ...s } = e;
247
- let n;
248
- typeof f == "object" && f.type === "local" ? n = a.getClient({ chainId: b }) : n = await T(a, { account: f, chainId: b, connector: c });
249
- const { connector: r } = S(a);
244
+ async function x(b, e) {
245
+ const { account: f, chainId: a, connector: s, __mode: t, ...c } = e;
250
246
  let d;
247
+ typeof f == "object" && f.type === "local" ? d = b.getClient({ chainId: a }) : d = await j(b, { account: f, chainId: a, connector: s });
248
+ const { connector: r } = M(b);
249
+ let n;
251
250
  if (t === "prepared" || r != null && r.supportsSimulation)
252
- d = s;
251
+ n = c;
253
252
  else {
254
- const { request: y } = await kf(a, {
255
- ...s,
253
+ const { request: A } = await Hf(b, {
254
+ ...c,
256
255
  account: f,
257
- chainId: b
256
+ chainId: a
258
257
  });
259
- d = y;
258
+ n = A;
260
259
  }
261
- return await O(n, xf, "writeContract")({
262
- ...d,
260
+ return await N(d, Of, "writeContract")({
261
+ ...n,
263
262
  ...f ? { account: f } : {},
264
- chain: b ? { id: b } : null
263
+ chain: a ? { id: a } : null
265
264
  });
266
265
  }
267
- function Gf(a) {
268
- return a.address !== void 0 && typeof a.address == "object" ? (e, f) => {
269
- var s;
270
- const b = Sf(e), c = S(e);
266
+ function Qf(b) {
267
+ return b.address !== void 0 && typeof b.address == "object" ? (e, f) => {
268
+ var c;
269
+ const a = zf(e), s = M(e);
271
270
  let t;
272
- return f.chainId ? t = f.chainId : f.account && f.account === c.address || f.account === void 0 ? t = c.chainId : t = b, M(e, {
271
+ return f.chainId ? t = f.chainId : f.account && f.account === s.address || f.account === void 0 ? t = s.chainId : t = a, x(e, {
273
272
  ...f,
274
- ...a.functionName ? { functionName: a.functionName } : {},
275
- address: t ? (s = a.address) == null ? void 0 : s[t] : void 0,
276
- abi: a.abi
273
+ ...b.functionName ? { functionName: b.functionName } : {},
274
+ address: t ? (c = b.address) == null ? void 0 : c[t] : void 0,
275
+ abi: b.abi
277
276
  });
278
- } : (e, f) => M(e, {
277
+ } : (e, f) => x(e, {
279
278
  ...f,
280
- ...a.address ? { address: a.address } : {},
281
- ...a.functionName ? { functionName: a.functionName } : {},
282
- abi: a.abi
279
+ ...b.address ? { address: b.address } : {},
280
+ ...b.functionName ? { functionName: b.functionName } : {},
281
+ abi: b.abi
283
282
  });
284
283
  }
285
- const Hf = "0xF4905b327904E5797840fd8cD7F300001a34122f";
286
- function Wf(a) {
287
- return a.address;
284
+ const C0 = of("0.000075"), Jf = "0x0561e8fB1EFD614eb905CB93D548Bb217Ad07B92";
285
+ function Kf(b) {
286
+ return b.address;
288
287
  }
289
- function Jf(a) {
290
- return a.registryAddress && a.protocolFeeReceiver;
288
+ function Xf(b) {
289
+ return b.registryAddress && b.protocolFeeReceiver;
291
290
  }
292
- class A0 extends yf {
291
+ class v0 extends vf {
293
292
  /**
294
293
  * Creates an instance of BoostCore.
295
294
  *
@@ -299,163 +298,160 @@ class A0 extends yf {
299
298
  * @param {?Account} [param0.account]
300
299
  * @param {({ address?: Address; } | { registryAddress: Address; protocolFeeReceiver: Address; })} param0....options
301
300
  */
302
- constructor({ config: e, account: f, ...b }) {
303
- Wf(b) && b.address ? super({ account: f, config: e }, b.address) : Jf(b) ? super({ account: f, config: e }, [
304
- b.registryAddress,
305
- b.protocolFeeReceiver
306
- ]) : super({ account: f, config: e }, Hf), this.abi = B;
301
+ constructor({ config: e, account: f, ...a }) {
302
+ Kf(a) && a.address ? super({ account: f, config: e }, a.address) : Xf(a) ? super({ account: f, config: e }, [
303
+ a.registryAddress,
304
+ a.protocolFeeReceiver
305
+ ]) : super({ account: f, config: e }, Jf), this.abi = P;
307
306
  }
308
307
  /**
309
- * Create a new Boost.
310
- *
311
- * @public
312
- * @async
313
- * @param {CreateBoostPayload} _boostPayload
314
- * @param {?DeployableOptions} [_options]
315
- * @returns {Boost}
316
- */
308
+ * Create a new Boost.
309
+ *
310
+ * @public
311
+ * @async
312
+ * @param {CreateBoostPayload} _boostPayload
313
+ * @param {?DeployableOptions} [_options]
314
+ * @returns {Boost}
315
+ */
317
316
  async createBoost(e, f) {
318
- var L, $;
319
- const b = this.assertValidAddress(), [c, t] = this.validateDeploymentConfig(
317
+ var L;
318
+ const a = this.assertValidAddress(), [s, t] = this.validateDeploymentConfig(
320
319
  e,
321
320
  f
322
321
  );
323
322
  let {
324
- budget: s,
325
- action: n,
323
+ budget: c,
324
+ action: d,
326
325
  validator: r,
327
- allowList: d,
328
- incentives: l,
326
+ allowList: n,
327
+ incentives: u,
329
328
  protocolFee: g = 0n,
330
- referralFee: y = 0n,
331
- maxParticipants: F = 0n,
329
+ referralFee: A = 0n,
330
+ maxParticipants: R = 0n,
332
331
  owner: m
333
- } = c;
334
- const E = Gf({
335
- abi: B,
332
+ } = s;
333
+ const F = Qf({
334
+ abi: P,
336
335
  functionName: "createBoost",
337
336
  address: this.address
338
337
  });
339
- if (!m && (m = ((L = this._account) == null ? void 0 : L.address) || df(t.config).address || w, m === w))
340
- throw new Ef();
341
- let D = w;
342
- if (s.address) {
343
- if (D = s.address, !await s.isAuthorized(b))
344
- throw new j(b);
345
- } else {
346
- if (!((($ = s.payload) == null ? void 0 : $.authorized) || []).includes(b))
347
- throw new j(b);
348
- const u = await s.deployRaw(void 0, t), p = await x(t.config, {
349
- hash: u
350
- });
351
- if (!p.contractAddress)
352
- throw new Df(p);
353
- D = p.contractAddress;
354
- }
355
- let C = {
338
+ if (!m && (m = ((L = this._account) == null ? void 0 : L.address) || cf(t.config).address || w, m === w))
339
+ throw new Vf();
340
+ let V = w;
341
+ if (c.address) {
342
+ if (V = c.address, !await c.isAuthorized(a))
343
+ throw new Lf(a);
344
+ } else
345
+ throw new $f();
346
+ let y = {
356
347
  instance: w,
357
348
  isBase: !0,
358
- parameters: i
349
+ parameters: o
359
350
  };
360
- if (n.address) {
361
- const o = n.address === n.base || n.isBase;
362
- C = {
363
- isBase: o,
364
- instance: n.address,
365
- parameters: o ? n.buildParameters(void 0, t).args.at(0) || i : i
351
+ if (d.address) {
352
+ const i = d.address === d.base || d.isBase;
353
+ y = {
354
+ isBase: i,
355
+ instance: d.address,
356
+ parameters: i ? d.buildParameters(void 0, t).args.at(0) || o : o
366
357
  };
367
358
  } else
368
- C.parameters = n.buildParameters(void 0, t).args.at(0) || i, C.instance = n.base;
369
- let v = {
359
+ y.parameters = d.buildParameters(void 0, t).args.at(0) || o, y.instance = d.base;
360
+ let C = {
370
361
  instance: w,
371
362
  isBase: !0,
372
- parameters: i
363
+ parameters: o
373
364
  };
374
365
  if (r.address) {
375
- const o = r.address === r.base || r.isBase;
376
- v = {
377
- isBase: o,
366
+ const i = r.address === r.base || r.isBase;
367
+ C = {
368
+ isBase: i,
378
369
  instance: r.address,
379
- parameters: o ? r.buildParameters(
370
+ parameters: i ? r.buildParameters(
380
371
  {
381
372
  signers: [m],
382
- validatorCaller: b
373
+ validatorCaller: a
383
374
  },
384
375
  t
385
- ).args.at(0) || i : i
376
+ ).args.at(0) || o : o
386
377
  };
387
378
  } else
388
- v.parameters = r.buildParameters(
379
+ C.parameters = r.buildParameters(
389
380
  {
390
381
  signers: [m],
391
- validatorCaller: b
382
+ validatorCaller: a
392
383
  },
393
384
  t
394
- ).args.at(0) || i, v.instance = r.base;
395
- let _ = {
385
+ ).args.at(0) || o, C.instance = r.base;
386
+ let v = {
396
387
  instance: w,
397
388
  isBase: !0,
398
- parameters: i
389
+ parameters: o
399
390
  };
400
- if (d.address) {
401
- const o = d.address === d.base || d.isBase;
402
- _ = {
403
- isBase: o,
404
- instance: d.address,
405
- parameters: o ? i : i
391
+ if (n.address) {
392
+ const i = n.address === n.base || n.isBase;
393
+ v = {
394
+ isBase: i,
395
+ instance: n.address,
396
+ parameters: i ? o : o
406
397
  };
407
398
  } else
408
- _.parameters = d.buildParameters(void 0, t).args.at(0) || i, _.instance = d.base;
409
- let P = l.map(() => ({
399
+ v.parameters = n.buildParameters(void 0, t).args.at(0) || o, v.instance = n.base;
400
+ let _ = u.map(() => ({
410
401
  instance: w,
411
402
  isBase: !0,
412
- parameters: i
403
+ parameters: o
413
404
  }));
414
- for (let o = 0; o < l.length; o++) {
415
- const u = l.at(o);
416
- if (u.address) {
417
- const p = u.address === u.base || u.isBase;
418
- P[o] = {
419
- isBase: p,
420
- instance: u.address,
421
- parameters: p ? u.buildParameters(void 0, t).args.at(0) || i : i
405
+ for (let i = 0; i < u.length; i++) {
406
+ const l = u.at(i);
407
+ if (l.address) {
408
+ const D = l.address === l.base || l.isBase;
409
+ if (!D)
410
+ throw new xf(l);
411
+ _[i] = {
412
+ isBase: D,
413
+ instance: l.address,
414
+ parameters: D ? l.buildParameters(void 0, t).args.at(0) || o : o
422
415
  };
423
416
  } else
424
- P[o].parameters = u.buildParameters(void 0, t).args.at(0) || i, P[o].instance = u.base;
417
+ _[i].parameters = l.buildParameters(void 0, t).args.at(0) || o, _[i].instance = l.base;
425
418
  }
426
- const U = {
427
- budget: D,
428
- action: C,
429
- validator: v,
430
- allowList: _,
431
- incentives: P,
419
+ const q = {
420
+ budget: V,
421
+ action: y,
422
+ validator: C,
423
+ allowList: v,
424
+ incentives: _,
432
425
  protocolFee: g,
433
- referralFee: y,
434
- maxParticipants: F,
426
+ referralFee: A,
427
+ maxParticipants: R,
435
428
  owner: m
436
- }, k = await E(t.config, {
437
- args: [Lf(U)],
429
+ }, z = await F(t.config, {
430
+ args: [Af(q)],
438
431
  ...this.optionallyAttachAccount(t.account)
439
- }), G = await x(t.config, {
440
- hash: k
441
- }), I = of({
442
- abi: B,
432
+ }), T = await nf(t.config, {
433
+ hash: z
434
+ }), I = uf({
435
+ abi: P,
443
436
  eventName: "BoostCreated",
444
- logs: G.logs
437
+ logs: T.logs
445
438
  }).at(0);
446
- let V = 0n;
439
+ let E = 0n;
447
440
  if (!I)
448
- throw new Vf();
449
- V = I == null ? void 0 : I.args.boostIndex;
450
- const h = await this.readBoost(V);
451
- return new N({
452
- id: V,
453
- budget: s.at(h.budget),
454
- action: n.at(h.action),
441
+ throw new Mf();
442
+ E = I == null ? void 0 : I.args.boostIndex;
443
+ const h = await this.readBoost(E);
444
+ return new $({
445
+ id: E,
446
+ budget: c.at(h.budget),
447
+ action: d.at(h.action),
455
448
  validator: r.at(h.validator),
456
- allowList: d.at(h.allowList),
457
- incentives: l.map(
458
- (o, u) => o.at(h.incentives.at(u))
449
+ allowList: n.at(h.allowList),
450
+ incentives: u.map(
451
+ (i, l) => (
452
+ // biome-ignore lint/style/noNonNullAssertion: this will never be undefined
453
+ i.at(h.incentives.at(l))
454
+ )
459
455
  ),
460
456
  protocolFee: h.protocolFee,
461
457
  referralFee: h.referralFee,
@@ -475,9 +471,9 @@ class A0 extends yf {
475
471
  * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentive'>} [params]
476
472
  * @returns {unknown}
477
473
  */
478
- async claimIncentive(e, f, b, c, t) {
479
- return this.awaitResult(
480
- this.claimIncentiveRaw(e, f, b, c, t)
474
+ async claimIncentive(e, f, a, s, t) {
475
+ return await this.awaitResult(
476
+ this.claimIncentiveRaw(e, f, a, s, t)
481
477
  );
482
478
  }
483
479
  /**
@@ -487,23 +483,74 @@ class A0 extends yf {
487
483
  * @async
488
484
  * @param {bigint} boostId - The ID of the Boost
489
485
  * @param {bigint} incentiveId - The ID of the Incentive
490
- * @param {Address} address - The address of the referrer (if any)
486
+ * @param {Address} referrer - The address of the referrer (if any)
491
487
  * @param {Hex} data- The data for the claim
492
488
  * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentive'>} [params]
493
489
  * @returns {unknown}
494
490
  */
495
- async claimIncentiveRaw(e, f, b, c, t) {
496
- const { request: s, result: n } = await H(
491
+ async claimIncentiveRaw(e, f, a, s, t) {
492
+ const { request: c, result: d } = await k(
497
493
  this._config,
498
494
  {
499
495
  address: this.assertValidAddress(),
500
- args: [e, f, b, c],
496
+ args: [e, f, a, s],
501
497
  ...this.optionallyAttachAccount(),
502
498
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
503
499
  ...t
504
500
  }
505
501
  );
506
- return { hash: await W(this._config, s), result: n };
502
+ return { hash: await G(this._config, c), result: d };
503
+ }
504
+ /**
505
+ * Claims one incentive for a given `Boost` on behalf of another user by `boostId` and `incentiveId`
506
+ *
507
+ * @public
508
+ * @async
509
+ * @param {bigint} boostId
510
+ * @param {bigint} incentiveId
511
+ * @param {Address} referrer
512
+ * @param {Hex} data
513
+ * @param {Address} claimant
514
+ * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentiveFor'>} [params]
515
+ * @returns {unknown}
516
+ */
517
+ async claimIncentiveFor(e, f, a, s, t, c) {
518
+ return await this.awaitResult(
519
+ this.claimIncentiveForRaw(
520
+ e,
521
+ f,
522
+ a,
523
+ s,
524
+ t,
525
+ c
526
+ )
527
+ );
528
+ }
529
+ /**
530
+ * Claim an incentive for a Boost on behalf of another user
531
+ *
532
+ * @public
533
+ * @async
534
+ * @param {bigint} boostId - The ID of the Boost
535
+ * @param {bigint} incentiveId - The ID of the Incentive
536
+ * @param {Address} referrer - The address of the referrer (if any)
537
+ * @param {Hex} data - The data for the claim
538
+ * @param {Address} claimant - The address of the user eligible for the incentive payout
539
+ * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentiveFor'>} [params]
540
+ * @returns {unknown}
541
+ */
542
+ async claimIncentiveForRaw(e, f, a, s, t, c) {
543
+ const { request: d, result: r } = await U(
544
+ this._config,
545
+ {
546
+ address: this.assertValidAddress(),
547
+ args: [e, f, a, s, t],
548
+ ...this.optionallyAttachAccount(),
549
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
550
+ ...c
551
+ }
552
+ );
553
+ return { hash: await W(this._config, d), result: r };
507
554
  }
508
555
  /**
509
556
  * Get a Boost by index, will return the raw on chain representation of a Boost.
@@ -515,7 +562,7 @@ class A0 extends yf {
515
562
  * @returns {unknown}
516
563
  */
517
564
  async readBoost(e, f) {
518
- return J(this._config, {
565
+ return await H(this._config, {
519
566
  address: this.assertValidAddress(),
520
567
  args: [e],
521
568
  ...this.optionallyAttachAccount(),
@@ -533,39 +580,39 @@ class A0 extends yf {
533
580
  * @returns {unknown}
534
581
  */
535
582
  async getBoost(e, f) {
536
- let b;
537
- typeof e == "string" ? b = BigInt(e) : b = e;
583
+ let a;
584
+ typeof e == "string" ? a = BigInt(e) : a = e;
538
585
  const {
539
- protocolFee: c,
586
+ protocolFee: s,
540
587
  referralFee: t,
541
- maxParticipants: s,
542
- owner: n,
588
+ maxParticipants: c,
589
+ owner: d,
543
590
  ...r
544
- } = await this.readBoost(b, f), d = {
591
+ } = await this.readBoost(a, f), n = {
545
592
  config: this._config,
546
593
  account: this._account
547
- }, [l, g, y, F, m] = await Promise.all([
548
- uf(d, r.action),
549
- pf(d, r.budget),
550
- Ff(d, r.validator),
551
- hf(d, r.allowList),
594
+ }, [u, g, A, R, m] = await Promise.all([
595
+ lf(n, r.action),
596
+ yf(n, r.budget),
597
+ Df(n, r.validator),
598
+ mf(n, r.allowList),
552
599
  Promise.all(
553
600
  r.incentives.map(
554
- (E) => Pf(d, E)
601
+ (F) => Bf(n, F)
555
602
  )
556
603
  )
557
604
  ]);
558
- return new N({
559
- id: b,
560
- action: l,
605
+ return new $({
606
+ id: a,
607
+ action: u,
561
608
  budget: g,
562
- validator: y,
563
- allowList: F,
609
+ validator: A,
610
+ allowList: R,
564
611
  incentives: m,
565
- protocolFee: c,
612
+ protocolFee: s,
566
613
  referralFee: t,
567
- maxParticipants: s,
568
- owner: n
614
+ maxParticipants: c,
615
+ owner: d
569
616
  });
570
617
  }
571
618
  /**
@@ -577,7 +624,7 @@ class A0 extends yf {
577
624
  * @returns {Promise<bigint>}
578
625
  */
579
626
  async getBoostCount(e) {
580
- return K(this._config, {
627
+ return await Q(this._config, {
581
628
  address: this.assertValidAddress(),
582
629
  args: [],
583
630
  ...this.optionallyAttachAccount(),
@@ -596,9 +643,9 @@ class A0 extends yf {
596
643
  * @returns {Promise<boolean>}
597
644
  */
598
645
  async isAuthorized(e, f) {
599
- const b = await this.createBoostAuth();
600
- return Q(this._config, {
601
- address: b,
646
+ const a = await this.createBoostAuth();
647
+ return J(this._config, {
648
+ address: a,
602
649
  args: [e],
603
650
  ...this.optionallyAttachAccount(),
604
651
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -614,7 +661,7 @@ class A0 extends yf {
614
661
  * @returns {unknown}
615
662
  */
616
663
  async createBoostAuth(e) {
617
- return X(this._config, {
664
+ return await K(this._config, {
618
665
  address: this.assertValidAddress(),
619
666
  args: [],
620
667
  ...this.optionallyAttachAccount(),
@@ -632,7 +679,7 @@ class A0 extends yf {
632
679
  * @returns {unknown}
633
680
  */
634
681
  async setCreateBoostAuth(e, f) {
635
- return this.awaitResult(
682
+ return await this.awaitResult(
636
683
  this.setCreateBoostAuthRaw(e.assertValidAddress(), {
637
684
  ...f
638
685
  })
@@ -648,7 +695,7 @@ class A0 extends yf {
648
695
  * @returns {unknown}
649
696
  */
650
697
  async setCreateBoostAuthRaw(e, f) {
651
- const { request: b, result: c } = await Y(
698
+ const { request: a, result: s } = await X(
652
699
  this._config,
653
700
  {
654
701
  address: this.assertValidAddress(),
@@ -658,7 +705,7 @@ class A0 extends yf {
658
705
  ...f
659
706
  }
660
707
  );
661
- return { hash: await Z(this._config, b), result: c };
708
+ return { hash: await Y(this._config, a), result: s };
662
709
  }
663
710
  /**
664
711
  * Get the protocol fee.
@@ -669,7 +716,7 @@ class A0 extends yf {
669
716
  * @returns {unknown}
670
717
  */
671
718
  async protocolFee(e) {
672
- return ff(this._config, {
719
+ return await Z(this._config, {
673
720
  address: this.assertValidAddress(),
674
721
  args: [],
675
722
  ...this.optionallyAttachAccount(),
@@ -686,7 +733,7 @@ class A0 extends yf {
686
733
  * @returns {unknown}
687
734
  */
688
735
  async protocolFeeReceiver(e) {
689
- return ef(this._config, {
736
+ return await ff(this._config, {
690
737
  address: this.assertValidAddress(),
691
738
  args: [],
692
739
  ...this.optionallyAttachAccount(),
@@ -704,7 +751,7 @@ class A0 extends yf {
704
751
  * @returns {unknown}
705
752
  */
706
753
  async setProcolFeeReceiver(e, f) {
707
- return this.awaitResult(
754
+ return await this.awaitResult(
708
755
  this.setProcolFeeReceiverRaw(e, {
709
756
  ...f
710
757
  })
@@ -720,7 +767,7 @@ class A0 extends yf {
720
767
  * @returns {unknown}
721
768
  */
722
769
  async setProcolFeeReceiverRaw(e, f) {
723
- const { request: b, result: c } = await bf(
770
+ const { request: a, result: s } = await ef(
724
771
  this._config,
725
772
  {
726
773
  address: this.assertValidAddress(),
@@ -732,8 +779,8 @@ class A0 extends yf {
732
779
  );
733
780
  return { hash: await af(
734
781
  this._config,
735
- b
736
- ), result: c };
782
+ a
783
+ ), result: s };
737
784
  }
738
785
  /**
739
786
  * Get the claim fee.
@@ -744,7 +791,7 @@ class A0 extends yf {
744
791
  * @returns {unknown}
745
792
  */
746
793
  async claimFee(e) {
747
- return tf(this._config, {
794
+ return await bf(this._config, {
748
795
  address: this.assertValidAddress(),
749
796
  args: [],
750
797
  ...this.optionallyAttachAccount(),
@@ -762,7 +809,7 @@ class A0 extends yf {
762
809
  * @returns {unknown}
763
810
  */
764
811
  async setClaimFee(e, f) {
765
- return this.awaitResult(this.setClaimFeeRaw(e, f));
812
+ return await this.awaitResult(this.setClaimFeeRaw(e, f));
766
813
  }
767
814
  /**
768
815
  * Sets the claim fee.
@@ -774,7 +821,7 @@ class A0 extends yf {
774
821
  * @returns {unknown}
775
822
  */
776
823
  async setClaimFeeRaw(e, f) {
777
- const { request: b, result: c } = await cf(
824
+ const { request: a, result: s } = await tf(
778
825
  this._config,
779
826
  {
780
827
  address: this.assertValidAddress(),
@@ -784,7 +831,7 @@ class A0 extends yf {
784
831
  ...f
785
832
  }
786
833
  );
787
- return { hash: await sf(this._config, b), result: c };
834
+ return { hash: await sf(this._config, a), result: s };
788
835
  }
789
836
  /**
790
837
  * Bound {@link PassthroughAuth} constructor that reuses the same configuration as the Boost Core instance.
@@ -794,12 +841,11 @@ class A0 extends yf {
794
841
  * const auth = core.PassthroughAuth('0x') // is roughly equivalent to
795
842
  * const auth = new PassthroughAuth({ config: core._config, account: core._account }, '0x')
796
843
  * ```
797
- * @param {DeployablePayloadOrAddress<{}>} options
798
- * @param {?boolean} [isBase]
844
+ * @param {Address} address
799
845
  * @returns {PassthroughAuth}
800
846
  */
801
847
  PassthroughAuth(e) {
802
- return new wf(
848
+ return new pf(
803
849
  { config: this._config, account: this._account },
804
850
  e
805
851
  );
@@ -835,7 +881,7 @@ class A0 extends yf {
835
881
  * const action = new EventAction({ config: core._config, account: core._account }, '0x')
836
882
  */
837
883
  EventAction(e, f) {
838
- return new lf(
884
+ return new hf(
839
885
  { config: this._config, account: this._account },
840
886
  e,
841
887
  f
@@ -876,7 +922,7 @@ class A0 extends yf {
876
922
  * @returns {SimpleAllowList}
877
923
  */
878
924
  SimpleAllowList(e, f) {
879
- return new mf(
925
+ return new gf(
880
926
  { config: this._config, account: this._account },
881
927
  e,
882
928
  f
@@ -895,7 +941,7 @@ class A0 extends yf {
895
941
  * @returns {SimpleDenyList}
896
942
  */
897
943
  SimpleDenyList(e, f) {
898
- return new gf(
944
+ return new wf(
899
945
  { config: this._config, account: this._account },
900
946
  e,
901
947
  f
@@ -930,7 +976,7 @@ class A0 extends yf {
930
976
  * @returns {ManagedBudget}
931
977
  */
932
978
  ManagedBudget(e) {
933
- return new Af(
979
+ return new Cf(
934
980
  { config: this._config, account: this._account },
935
981
  e
936
982
  );
@@ -964,7 +1010,7 @@ class A0 extends yf {
964
1010
  * @returns {VestingBudget}
965
1011
  */
966
1012
  AllowListIncentive(e) {
967
- return new Cf(
1013
+ return new _f(
968
1014
  { config: this._config, account: this._account },
969
1015
  e
970
1016
  );
@@ -981,7 +1027,7 @@ class A0 extends yf {
981
1027
  * @returns {CGDAIncentive}
982
1028
  */
983
1029
  CGDAIncentive(e) {
984
- return new vf(
1030
+ return new If(
985
1031
  { config: this._config, account: this._account },
986
1032
  e
987
1033
  );
@@ -998,7 +1044,7 @@ class A0 extends yf {
998
1044
  * @returns {ERC20Incentive}
999
1045
  */
1000
1046
  ERC20Incentive(e) {
1001
- return new _f(
1047
+ return new Pf(
1002
1048
  { config: this._config, account: this._account },
1003
1049
  e
1004
1050
  );
@@ -1034,7 +1080,7 @@ class A0 extends yf {
1034
1080
  * @returns {PointsIncentive}
1035
1081
  */
1036
1082
  PointsIncentive(e) {
1037
- return new Bf(
1083
+ return new Ff(
1038
1084
  { config: this._config, account: this._account },
1039
1085
  e
1040
1086
  );
@@ -1052,7 +1098,7 @@ class A0 extends yf {
1052
1098
  * @returns {SignerValidator}
1053
1099
  */
1054
1100
  SignerValidator(e, f) {
1055
- return new Rf(
1101
+ return new Ef(
1056
1102
  { config: this._config, account: this._account },
1057
1103
  e,
1058
1104
  f
@@ -1071,7 +1117,7 @@ class A0 extends yf {
1071
1117
  * @returns {ERC20VariableIncentive}
1072
1118
  */
1073
1119
  ERC20VariableIncentive(e, f) {
1074
- return new If(
1120
+ return new Rf(
1075
1121
  { config: this._config, account: this._account },
1076
1122
  e,
1077
1123
  f
@@ -1086,21 +1132,22 @@ class A0 extends yf {
1086
1132
  * @returns {GenericDeployableParams}
1087
1133
  */
1088
1134
  buildParameters(e, f) {
1089
- const [b, c] = this.validateDeploymentConfig(
1135
+ const [a, s] = this.validateDeploymentConfig(
1090
1136
  e,
1091
1137
  f
1092
1138
  );
1093
1139
  return {
1094
- abi: B,
1095
- bytecode: Mf,
1096
- args: b,
1097
- ...this.optionallyAttachAccount(c.account)
1140
+ abi: P,
1141
+ bytecode: qf,
1142
+ args: a,
1143
+ ...this.optionallyAttachAccount(s.account)
1098
1144
  };
1099
1145
  }
1100
1146
  }
1101
1147
  export {
1102
- Hf as BOOST_CORE_ADDRESS,
1103
- A0 as BoostCore,
1104
- B as boostCoreAbi
1148
+ Jf as BOOST_CORE_ADDRESS,
1149
+ C0 as BOOST_CORE_CLAIM_FEE,
1150
+ v0 as BoostCore,
1151
+ P as boostCoreAbi
1105
1152
  };
1106
1153
  //# sourceMappingURL=BoostCore.js.map