@boostxyz/sdk 0.0.0-alpha.11 → 0.0.0-alpha.13

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 (154) 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 +2 -2
  4. package/dist/Actions/ContractAction.d.ts.map +1 -1
  5. package/dist/Actions/ERC721MintAction.d.ts +2 -2
  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 +117 -33
  10. package/dist/Actions/EventAction.d.ts.map +1 -1
  11. package/dist/Actions/EventAction.js +309 -121
  12. package/dist/Actions/EventAction.js.map +1 -1
  13. package/dist/AllowLists/AllowList.cjs +1 -1
  14. package/dist/AllowLists/AllowList.js +2 -2
  15. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  16. package/dist/AllowLists/SimpleAllowList.cjs.map +1 -1
  17. package/dist/AllowLists/SimpleAllowList.d.ts +2 -2
  18. package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -1
  19. package/dist/AllowLists/SimpleAllowList.js +23 -19
  20. package/dist/AllowLists/SimpleAllowList.js.map +1 -1
  21. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  22. package/dist/AllowLists/SimpleDenyList.d.ts +2 -2
  23. package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -1
  24. package/dist/AllowLists/SimpleDenyList.js +6 -5
  25. package/dist/AllowLists/SimpleDenyList.js.map +1 -1
  26. package/dist/Auth/PassthroughAuth.cjs +1 -1
  27. package/dist/Auth/PassthroughAuth.js +1 -1
  28. package/dist/BoostCore.cjs +2 -2
  29. package/dist/BoostCore.cjs.map +1 -1
  30. package/dist/BoostCore.d.ts +27 -5
  31. package/dist/BoostCore.d.ts.map +1 -1
  32. package/dist/BoostCore.js +438 -347
  33. package/dist/BoostCore.js.map +1 -1
  34. package/dist/BoostRegistry.cjs +1 -1
  35. package/dist/BoostRegistry.cjs.map +1 -1
  36. package/dist/BoostRegistry.d.ts +26 -5
  37. package/dist/BoostRegistry.d.ts.map +1 -1
  38. package/dist/BoostRegistry.js +125 -64
  39. package/dist/BoostRegistry.js.map +1 -1
  40. package/dist/Budgets/Budget.cjs +1 -1
  41. package/dist/Budgets/Budget.js +1 -1
  42. package/dist/Budgets/ManagedBudget.cjs +1 -1
  43. package/dist/Budgets/ManagedBudget.cjs.map +1 -1
  44. package/dist/Budgets/ManagedBudget.d.ts +2 -2
  45. package/dist/Budgets/ManagedBudget.d.ts.map +1 -1
  46. package/dist/Budgets/ManagedBudget.js +41 -37
  47. package/dist/Budgets/ManagedBudget.js.map +1 -1
  48. package/dist/Budgets/SimpleBudget.d.ts +2 -2
  49. package/dist/Budgets/SimpleBudget.d.ts.map +1 -1
  50. package/dist/Budgets/VestingBudget.d.ts +2 -2
  51. package/dist/Budgets/VestingBudget.d.ts.map +1 -1
  52. package/dist/Deployable/DeployableTarget.cjs +1 -1
  53. package/dist/Deployable/DeployableTarget.cjs.map +1 -1
  54. package/dist/Deployable/DeployableTarget.d.ts +6 -6
  55. package/dist/Deployable/DeployableTarget.d.ts.map +1 -1
  56. package/dist/Deployable/DeployableTarget.js +22 -17
  57. package/dist/Deployable/DeployableTarget.js.map +1 -1
  58. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  59. package/dist/Incentives/AllowListIncentive.cjs.map +1 -1
  60. package/dist/Incentives/AllowListIncentive.d.ts +2 -2
  61. package/dist/Incentives/AllowListIncentive.d.ts.map +1 -1
  62. package/dist/Incentives/AllowListIncentive.js +17 -13
  63. package/dist/Incentives/AllowListIncentive.js.map +1 -1
  64. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  65. package/dist/Incentives/CGDAIncentive.cjs.map +1 -1
  66. package/dist/Incentives/CGDAIncentive.d.ts +14 -2
  67. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -1
  68. package/dist/Incentives/CGDAIncentive.js +27 -23
  69. package/dist/Incentives/CGDAIncentive.js.map +1 -1
  70. package/dist/Incentives/ERC1155Incentive.d.ts +2 -2
  71. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -1
  72. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  73. package/dist/Incentives/ERC20Incentive.cjs.map +1 -1
  74. package/dist/Incentives/ERC20Incentive.d.ts +2 -2
  75. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -1
  76. package/dist/Incentives/ERC20Incentive.js +17 -13
  77. package/dist/Incentives/ERC20Incentive.js.map +1 -1
  78. package/dist/Incentives/ERC20VariableIncentive.d.ts +2 -2
  79. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  80. package/dist/Incentives/Incentive.cjs +1 -1
  81. package/dist/Incentives/Incentive.cjs.map +1 -1
  82. package/dist/Incentives/Incentive.js +34 -30
  83. package/dist/Incentives/Incentive.js.map +1 -1
  84. package/dist/Incentives/PointsIncentive.cjs +1 -1
  85. package/dist/Incentives/PointsIncentive.cjs.map +1 -1
  86. package/dist/Incentives/PointsIncentive.d.ts +2 -2
  87. package/dist/Incentives/PointsIncentive.d.ts.map +1 -1
  88. package/dist/Incentives/PointsIncentive.js +13 -9
  89. package/dist/Incentives/PointsIncentive.js.map +1 -1
  90. package/dist/{SimpleDenyList-4PtOPXTc.js → SimpleDenyList-C21O9Yfi.js} +23 -19
  91. package/dist/SimpleDenyList-C21O9Yfi.js.map +1 -0
  92. package/dist/SimpleDenyList-DeJRKD2D.cjs +2 -0
  93. package/dist/{SimpleDenyList-4PtOPXTc.js.map → SimpleDenyList-DeJRKD2D.cjs.map} +1 -1
  94. package/dist/Validators/SignerValidator.cjs +1 -1
  95. package/dist/Validators/SignerValidator.cjs.map +1 -1
  96. package/dist/Validators/SignerValidator.d.ts +2 -2
  97. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  98. package/dist/Validators/SignerValidator.js +18 -14
  99. package/dist/Validators/SignerValidator.js.map +1 -1
  100. package/dist/Validators/Validator.cjs +1 -1
  101. package/dist/Validators/Validator.js +1 -1
  102. package/dist/deployments-BvFcK_eR.js +40 -0
  103. package/dist/deployments-BvFcK_eR.js.map +1 -0
  104. package/dist/deployments-Ho4PnGCS.cjs +2 -0
  105. package/dist/deployments-Ho4PnGCS.cjs.map +1 -0
  106. package/dist/deployments.json +38 -0
  107. package/dist/errors.cjs +1 -1
  108. package/dist/errors.cjs.map +1 -1
  109. package/dist/errors.d.ts +122 -20
  110. package/dist/errors.d.ts.map +1 -1
  111. package/dist/errors.js +98 -28
  112. package/dist/errors.js.map +1 -1
  113. package/dist/{generated-BDeDiaCK.js → generated-LpgSHrH0.js} +150 -110
  114. package/dist/generated-LpgSHrH0.js.map +1 -0
  115. package/dist/generated-tq_HLZJ0.cjs +3 -0
  116. package/dist/generated-tq_HLZJ0.cjs.map +1 -0
  117. package/dist/index.cjs +1 -1
  118. package/dist/index.js +115 -108
  119. package/dist/utils.cjs +1 -1
  120. package/dist/utils.cjs.map +1 -1
  121. package/dist/utils.d.ts +25 -11
  122. package/dist/utils.d.ts.map +1 -1
  123. package/dist/utils.js +38 -23
  124. package/dist/utils.js.map +1 -1
  125. package/package.json +10 -6
  126. package/src/Actions/Action.test.ts +8 -4
  127. package/src/Actions/ContractAction.ts +5 -3
  128. package/src/Actions/ERC721MintAction.ts +5 -3
  129. package/src/Actions/EventAction.test.ts +528 -100
  130. package/src/Actions/EventAction.ts +302 -60
  131. package/src/AllowLists/AllowList.test.ts +1 -1
  132. package/src/AllowLists/SimpleAllowList.ts +6 -3
  133. package/src/AllowLists/SimpleDenyList.ts +6 -3
  134. package/src/BoostCore.test.ts +31 -91
  135. package/src/BoostCore.ts +137 -34
  136. package/src/BoostRegistry.ts +89 -21
  137. package/src/Budgets/ManagedBudget.ts +6 -4
  138. package/src/Budgets/SimpleBudget.ts +4 -3
  139. package/src/Budgets/VestingBudget.ts +4 -3
  140. package/src/Deployable/DeployableTarget.ts +22 -11
  141. package/src/Incentives/AllowListIncentive.ts +6 -3
  142. package/src/Incentives/CGDAIncentive.ts +6 -3
  143. package/src/Incentives/ERC1155Incentive.ts +4 -3
  144. package/src/Incentives/ERC20Incentive.ts +6 -3
  145. package/src/Incentives/ERC20VariableIncentive.ts +6 -3
  146. package/src/Incentives/PointsIncentive.ts +6 -3
  147. package/src/Validators/SignerValidator.ts +6 -3
  148. package/src/errors.ts +177 -21
  149. package/src/utils.ts +60 -11
  150. package/dist/SimpleDenyList-CqT0BMP7.cjs +0 -2
  151. package/dist/SimpleDenyList-CqT0BMP7.cjs.map +0 -1
  152. package/dist/generated-BDeDiaCK.js.map +0 -1
  153. package/dist/generated-wKBNvm48.cjs +0 -3
  154. package/dist/generated-wKBNvm48.cjs.map +0 -1
package/dist/BoostCore.js CHANGED
@@ -1,68 +1,70 @@
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 cf } from "./generated-BDeDiaCK.js";
2
- import { getAccount as sf, 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 gf, OpenAllowList as mf } from "./AllowLists/AllowList.js";
7
- import { SimpleAllowList as wf } from "./AllowLists/SimpleAllowList.js";
8
- import { S as pf } from "./SimpleDenyList-4PtOPXTc.js";
9
- import { PassthroughAuth as Af } from "./Auth/PassthroughAuth.js";
10
- import { prepareBoostPayload as yf, Boost as O } from "./Boost.js";
11
- import { budgetFromAddress as Cf } from "./Budgets/Budget.js";
12
- import { ManagedBudget as vf } from "./Budgets/ManagedBudget.js";
13
- import { Deployable as _f } from "./Deployable/Deployable.js";
14
- import { AllowListIncentive as If } from "./Incentives/AllowListIncentive.js";
15
- import { CGDAIncentive as Pf } from "./Incentives/CGDAIncentive.js";
16
- import { ERC20Incentive as Bf } from "./Incentives/ERC20Incentive.js";
17
- import { incentiveFromAddress as Rf, ERC20VariableIncentive as Ff } from "./Incentives/Incentive.js";
18
- import { PointsIncentive as Ef } from "./Incentives/PointsIncentive.js";
19
- import { SignerValidator as Df } from "./Validators/SignerValidator.js";
20
- import { validatorFromAddress as Vf } from "./Validators/Validator.js";
21
- import { DeployableUnknownOwnerProvidedError as Lf, BudgetMustAuthorizeBoostCore as Of, MustInitializeBudgetError as $f, IncentiveNotCloneableError as xf, BoostCoreNoIdentifierEmitted as Mf } from "./errors.js";
22
- import { simulateContract as Nf, writeContract as Sf } from "viem/actions";
23
- import { parseAccount as jf, getAddress as qf } from "viem/utils";
24
- const zf = "0x60806040526544364c5bb0006004556103e860055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506103e8600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555034801561006e575f80fd5b506040516135683803806135688339818101604052810190610090919061029f565b61009f3361012660201b60201c565b8160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506102dd565b61013461020260201b60201c565b156101ac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392780541561016e57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3506101ff565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f90565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102338261020a565b9050919050565b5f61024482610229565b9050919050565b6102548161023a565b811461025e575f80fd5b50565b5f8151905061026f8161024b565b92915050565b61027e81610229565b8114610288575f80fd5b50565b5f8151905061029981610275565b92915050565b5f80604083850312156102b5576102b4610206565b5b5f6102c285828601610261565b92505060206102d38582860161028b565b9150509250929050565b61327e806102ea5f395ff3fe60806040526004361061014a575f3560e01c8063892b97f8116100b5578063d73792a91161006e578063d73792a9146103d0578063e21ff731146103fa578063eccc19a614610436578063f04e283e1461045e578063f2fde38b1461047a578063fee81cf4146104965761014a565b8063892b97f8146102e45780638da5cb5b1461030c5780638fe4f5231461033657806399d32fc414610352578063a92647dc1461037c578063b0e21e8a146103a65761014a565b806354d1f13d1161010757806354d1f13d146102365780635edb9eb014610240578063715018a61461026a578063730f9c57146102745780637b1039991461029057806384ae2bc6146102ba5761014a565b806313c8e2de1461014e578063256929621461018a5780632e75ab501461019457806339a51be5146101bc57806343bc42d3146101e657806346877b1a1461020e575b5f80fd5b348015610159575f80fd5b50610174600480360381019061016f91906122d2565b6104d2565b60405161018191906125c3565b60405180910390f35b6101926107ac565b005b34801561019f575f80fd5b506101ba60048036038101906101b591906122d2565b6107fd565b005b3480156101c7575f80fd5b506101d061080f565b6040516101dd91906125f2565b60405180910390f35b3480156101f1575f80fd5b5061020c60048036038101906102079190612635565b610834565b005b348015610219575f80fd5b50610234600480360381019061022f919061268a565b610867565b005b61023e6108b2565b005b34801561024b575f80fd5b506102546108eb565b60405161026191906126c4565b60405180910390f35b6102726108f6565b005b61028e6004803603810190610289919061273e565b610909565b005b34801561029b575f80fd5b506102a4610b9a565b6040516102b191906127f4565b60405180910390f35b3480156102c5575f80fd5b506102ce610bbf565b6040516102db919061281c565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612635565b610bd9565b005b348015610317575f80fd5b50610320610c0d565b60405161032d91906125f2565b60405180910390f35b610350600480360381019061034b9190612835565b610c35565b005b34801561035d575f80fd5b50610366610c4a565b60405161037391906126c4565b60405180910390f35b348015610387575f80fd5b50610390610c50565b60405161039d91906128d9565b60405180910390f35b3480156103b1575f80fd5b506103ba610c75565b6040516103c7919061281c565b60405180910390f35b3480156103db575f80fd5b506103e4610c8e565b6040516103f1919061281c565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b91906128f2565b610c94565b60405161042d91906125c3565b60405180910390f35b348015610441575f80fd5b5061045c6004803603810190610457919061268a565b61164f565b005b6104786004803603810190610473919061268a565b61169a565b005b610494600480360381019061048f919061268a565b6116d8565b005b3480156104a1575f80fd5b506104bc60048036038101906104b7919061268a565b611701565b6040516104c991906126c4565b60405180910390f35b6104da612126565b5f82815481106104ed576104ec61293d565b5b905f5260205f209060080201604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156106da57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610691575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b5f6107b561171a565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b610805611724565b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61083c611724565b8060055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b61086f611724565b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f8080549050905090565b6108fe611724565b6109075f61175b565b565b3068929eee149b4bd2126854036109275763ab143c065f526004601cfd5b3068929eee149b4bd21268555f8087815481106109475761094661293d565b5b905f5260205f20906008020190506004543410156109a2575f346004546040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016109999392919061296a565b60405180910390fd5b6109ac8186611821565b806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663703b690088888588886040518663ffffffff1660e01b8152600401610a109594939291906129f9565b6020604051808303815f875af1158015610a2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a509190612a7a565b610a86576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806004018681548110610a9c57610a9b61293d565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb1757cf8386866040518463ffffffff1660e01b8152600401610b0093929190612aa5565b6020604051808303815f875af1158015610b1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b409190612a7a565b610b85578184846040517f4139d81d000000000000000000000000000000000000000000000000000000008152600401610b7c93929190612aa5565b60405180910390fd5b503868929eee149b4bd2126855505050505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560089054906101000a900467ffffffffffffffff1681565b610be1611724565b80600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610c43858585858533610909565b5050505050565b60045481565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900467ffffffffffffffff1681565b61271081565b610c9c612126565b335f73ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015610d90575060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80826040518263ffffffff1660e01b8152600401610d4f91906125f2565b602060405180830381865afa158015610d6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8e9190612a7a565b155b15610dc7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3068929eee149b4bd212685403610de55763ab143c065f526004601cfd5b3068929eee149b4bd21268555f610e3e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505061198f565b806020019051810190610e519190612f35565b9050610e5f815f0151611a28565b5f8060018160018154018082558091505003905f5260205f2090600802019050816101000151816007015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550815f0151816003015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160a0015160055f9054906101000a900467ffffffffffffffff16610f309190612fa9565b816005015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160c00151600560089054906101000a900467ffffffffffffffff16610f7f9190612fa9565b8160050160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160e001518160060181905550610fe67fe67157950000000000000000000000000000000000000000000000000000000083602001516001611b03565b815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110567fe2089f790000000000000000000000000000000000000000000000000000000083606001516001611b03565b816002015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110a88260800151835f0151611b25565b8160040190805190602001906110bf9291906121ec565b505f73ffffffffffffffffffffffffffffffffffffffff1682604001516020015173ffffffffffffffffffffffffffffffffffffffff16146111305761112b7f5912b89c0000000000000000000000000000000000000000000000000000000083604001516001611b03565b611219565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f5912b89c000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016111ab919061301e565b602060405180830381865afa1580156111c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ea9190612a7a565b6111f4575f611218565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b5b816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16816007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660015f805490506112de9190613037565b7f116812d3ad4507d72f2c428b63246d594ca055a1dc119394285504c23d1f34cd8460040180549050856001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866002015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876003015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611383949392919061306a565b60405180910390a480604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016004820180548060200260200160405190810160405280929190818152602001828054801561156d57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611524575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050935050503868929eee149b4bd21268555092915050565b611657611724565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6116a2611724565b63389a75e1600c52805f526020600c2080544211156116c857636f5e88185f526004601cfd5b5f8155506116d58161175b565b50565b6116e0611724565b8060601b6116f557637448fbae5f526004601cfd5b6116fe8161175b565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611759576382b429005f526004601cfd5b565b611763611eef565b156117c8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b821781555061181e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f600454031561198b575f60045490505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146118e7575f61271067ffffffffffffffff168460050160089054906101000a900467ffffffffffffffff1667ffffffffffffffff166004546118a291906130ad565b6118ac919061311b565b905080826118ba9190613037565b91506118e5818473ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b61193f6002826118f7919061311b565b846007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b6119894760035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b5050565b6060815115611a235760405190506020810160048301805184518501811983525b80861015611a09576001860195508551601f1a806119f9576001870196508651601f1a5f198652607f81116119e757600181013887395b6001607f821601860195505050611a04565b808553600185019450505b6119b0565b81835260208501840385525f845260208401604052505050505b919050565b611a527fea5ad34e0000000000000000000000000000000000000000000000000000000082611f10565b8073ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80336040518263ffffffff1660e01b8152600401611a8b91906125f2565b602060405180830381865afa158015611aa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aca9190612a7a565b611b00576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b5f611b12848460200151611f10565b611b1c8383612007565b90509392505050565b6060825167ffffffffffffffff811115611b4257611b41612ad9565b5b604051908082528060200260200182016040528015611b705781602001602082028036833780820191505090505b5090505f5b8351811015611ee857611bc67f5970a68900000000000000000000000000000000000000000000000000000000858381518110611bb557611bb461293d565b5b602002602001015160200151611f10565b838181518110611bd957611bd861293d565b5b60200260200101515f0151611c65577f5970a68900000000000000000000000000000000000000000000000000000000848281518110611c1c57611c1b61293d565b5b6020026020010151602001516040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611c5c92919061314b565b60405180910390fd5b611caa7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611c9c57611c9b61293d565b5b60200260200101515f611b03565b828281518110611cbd57611cbc61293d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f828281518110611d0b57611d0a61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16634e7165a2868481518110611d4157611d4061293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611d6991906131b4565b5f60405180830381865afa158015611d83573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611dab91906131d4565b90505f815114611e3c578373ffffffffffffffffffffffffffffffffffffffff1663fa4ca9b1826040518263ffffffff1660e01b8152600401611dee91906131b4565b6020604051808303815f875af1158015611e0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e2e9190612a7a565b611e3b57611e3a61321b565b5b5b828281518110611e4f57611e4e61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663439fab91868481518110611e8557611e8461293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611ead91906131b4565b5f604051808303815f87803b158015611ec4575f80fd5b505af1158015611ed6573d5f803e3d5ffd5b50505050508080600101915050611b75565b5092915050565b5f90565b5f385f3884865af1611f0c5763b12d13eb5f526004601cfd5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480611fbf57508073ffffffffffffffffffffffffffffffffffffffff166301ffc9a7836040518263ffffffff1660e01b8152600401611f7e919061301e565b602060405180830381865afa158015611f99573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fbd9190612a7a565b155b156120035781816040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611ffa92919061314b565b60405180910390fd5b5050565b5f825f015161201a57826020015161203e565b61203d836020015173ffffffffffffffffffffffffffffffffffffffff166120c3565b5b9050825f0151801561204d5750815b156120bd578073ffffffffffffffffffffffffffffffffffffffff1663439fab9184604001516040518263ffffffff1660e01b815260040161208f91906131b4565b5f604051808303815f87803b1580156120a6575f80fd5b505af11580156120b8573d5f803e3d5ffd5b505050505b92915050565b5f6120ce5f836120d5565b9050919050565b5f6c5af43d3d93803e602a57fd5bf36021528160145273602c3d8160093d39f33d3d3d3d363d3d37363d735f526035600c84f090508061211c5763301164255f526004601cfd5b5f60215292915050565b6040518061012001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f67ffffffffffffffff1681526020015f67ffffffffffffffff1681526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b828054828255905f5260205f20908101928215612262579160200282015b82811115612261578251825f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061220a565b5b50905061226f9190612273565b5090565b5b8082111561228a575f815f905550600101612274565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6122b18161229f565b81146122bb575f80fd5b50565b5f813590506122cc816122a8565b92915050565b5f602082840312156122e7576122e6612297565b5b5f6122f4848285016122be565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61233f61233a612335846122fd565b61231c565b6122fd565b9050919050565b5f61235082612325565b9050919050565b5f61236182612346565b9050919050565b61237181612357565b82525050565b5f61238182612346565b9050919050565b61239181612377565b82525050565b5f6123a182612346565b9050919050565b6123b181612397565b82525050565b5f6123c182612325565b9050919050565b5f6123d2826123b7565b9050919050565b6123e2816123c8565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61241b82612346565b9050919050565b61242b81612411565b82525050565b5f61243c8383612422565b60208301905092915050565b5f602082019050919050565b5f61245e826123e8565b61246881856123f2565b935061247383612402565b805f5b838110156124a357815161248a8882612431565b975061249583612448565b925050600181019050612476565b5085935050505092915050565b5f67ffffffffffffffff82169050919050565b6124cc816124b0565b82525050565b6124db8161229f565b82525050565b5f6124eb826122fd565b9050919050565b6124fb816124e1565b82525050565b5f61012083015f8301516125175f860182612368565b50602083015161252a6020860182612388565b50604083015161253d60408601826123a8565b50606083015161255060608601826123d9565b50608083015184820360808601526125688282612454565b91505060a083015161257d60a08601826124c3565b5060c083015161259060c08601826124c3565b5060e08301516125a360e08601826124d2565b506101008301516125b86101008601826124f2565b508091505092915050565b5f6020820190508181035f8301526125db8184612501565b905092915050565b6125ec816124e1565b82525050565b5f6020820190506126055f8301846125e3565b92915050565b612614816124b0565b811461261e575f80fd5b50565b5f8135905061262f8161260b565b92915050565b5f6020828403121561264a57612649612297565b5b5f61265784828501612621565b91505092915050565b612669816124e1565b8114612673575f80fd5b50565b5f8135905061268481612660565b92915050565b5f6020828403121561269f5761269e612297565b5b5f6126ac84828501612676565b91505092915050565b6126be8161229f565b82525050565b5f6020820190506126d75f8301846126b5565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126126fe576126fd6126dd565b5b8235905067ffffffffffffffff81111561271b5761271a6126e1565b5b602083019150836001820283011115612737576127366126e5565b5b9250929050565b5f805f805f8060a0878903121561275857612757612297565b5b5f61276589828a016122be565b965050602061277689828a016122be565b955050604061278789828a01612676565b945050606087013567ffffffffffffffff8111156127a8576127a761229b565b5b6127b489828a016126e9565b935093505060806127c789828a01612676565b9150509295509295509295565b5f6127de82612346565b9050919050565b6127ee816127d4565b82525050565b5f6020820190506128075f8301846127e5565b92915050565b612816816124b0565b82525050565b5f60208201905061282f5f83018461280d565b92915050565b5f805f805f6080868803121561284e5761284d612297565b5b5f61285b888289016122be565b955050602061286c888289016122be565b945050604061287d88828901612676565b935050606086013567ffffffffffffffff81111561289e5761289d61229b565b5b6128aa888289016126e9565b92509250509295509295909350565b5f6128c382612346565b9050919050565b6128d3816128b9565b82525050565b5f6020820190506128ec5f8301846128ca565b92915050565b5f806020838503121561290857612907612297565b5b5f83013567ffffffffffffffff8111156129255761292461229b565b5b612931858286016126e9565b92509250509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60608201905061297d5f8301866125e3565b61298a60208301856126b5565b61299760408301846126b5565b949350505050565b5f82825260208201905092915050565b828183375f83830152505050565b5f601f19601f8301169050919050565b5f6129d8838561299f565b93506129e58385846129af565b6129ee836129bd565b840190509392505050565b5f608082019050612a0c5f8301886126b5565b612a1960208301876126b5565b612a2660408301866125e3565b8181036060830152612a398184866129cd565b90509695505050505050565b5f8115159050919050565b612a5981612a45565b8114612a63575f80fd5b50565b5f81519050612a7481612a50565b92915050565b5f60208284031215612a8f57612a8e612297565b5b5f612a9c84828501612a66565b91505092915050565b5f604082019050612ab85f8301866125e3565b8181036020830152612acb8184866129cd565b9050949350505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b0f826129bd565b810181811067ffffffffffffffff82111715612b2e57612b2d612ad9565b5b80604052505050565b5f612b4061228e565b9050612b4c8282612b06565b919050565b5f80fd5b5f612b5f826122fd565b9050919050565b5f612b7082612b55565b9050919050565b612b8081612b66565b8114612b8a575f80fd5b50565b5f81519050612b9b81612b77565b92915050565b5f81519050612baf81612660565b92915050565b5f80fd5b5f67ffffffffffffffff821115612bd357612bd2612ad9565b5b612bdc826129bd565b9050602081019050919050565b8281835e5f83830152505050565b5f612c09612c0484612bb9565b612b37565b905082815260208101848484011115612c2557612c24612bb5565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b6126dd565b5b8151612c5c848260208601612bf7565b91505092915050565b5f60608284031215612c7a57612c79612ad5565b5b612c846060612b37565b90505f612c9384828501612a66565b5f830152506020612ca684828501612ba1565b602083015250604082015167ffffffffffffffff811115612cca57612cc9612b51565b5b612cd684828501612c38565b60408301525092915050565b5f67ffffffffffffffff821115612cfc57612cfb612ad9565b5b602082029050602081019050919050565b5f612d1f612d1a84612ce2565b612b37565b90508083825260208201905060208402830185811115612d4257612d416126e5565b5b835b81811015612d8957805167ffffffffffffffff811115612d6757612d666126dd565b5b808601612d748982612c65565b85526020850194505050602081019050612d44565b5050509392505050565b5f82601f830112612da757612da66126dd565b5b8151612db7848260208601612d0d565b91505092915050565b5f81519050612dce8161260b565b92915050565b5f81519050612de2816122a8565b92915050565b5f6101208284031215612dfe57612dfd612ad5565b5b612e09610120612b37565b90505f612e1884828501612b8d565b5f83015250602082015167ffffffffffffffff811115612e3b57612e3a612b51565b5b612e4784828501612c65565b602083015250604082015167ffffffffffffffff811115612e6b57612e6a612b51565b5b612e7784828501612c65565b604083015250606082015167ffffffffffffffff811115612e9b57612e9a612b51565b5b612ea784828501612c65565b606083015250608082015167ffffffffffffffff811115612ecb57612eca612b51565b5b612ed784828501612d93565b60808301525060a0612eeb84828501612dc0565b60a08301525060c0612eff84828501612dc0565b60c08301525060e0612f1384828501612dd4565b60e083015250610100612f2884828501612ba1565b6101008301525092915050565b5f60208284031215612f4a57612f49612297565b5b5f82015167ffffffffffffffff811115612f6757612f6661229b565b5b612f7384828501612de8565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612fb3826124b0565b9150612fbe836124b0565b9250828201905067ffffffffffffffff811115612fde57612fdd612f7c565b5b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61301881612fe4565b82525050565b5f6020820190506130315f83018461300f565b92915050565b5f6130418261229f565b915061304c8361229f565b925082820390508181111561306457613063612f7c565b5b92915050565b5f60808201905061307d5f8301876126b5565b61308a60208301866125e3565b61309760408301856125e3565b6130a460608301846125e3565b95945050505050565b5f6130b78261229f565b91506130c28361229f565b92508282026130d08161229f565b915082820484148315176130e7576130e6612f7c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131258261229f565b91506131308361229f565b9250826131405761313f6130ee565b5b828204905092915050565b5f60408201905061315e5f83018561300f565b61316b60208301846125e3565b9392505050565b5f81519050919050565b5f61318682613172565b613190818561299f565b93506131a0818560208601612be9565b6131a9816129bd565b840191505092915050565b5f6020820190508181035f8301526131cc818461317c565b905092915050565b5f602082840312156131e9576131e8612297565b5b5f82015167ffffffffffffffff8111156132065761320561229b565b5b61321284828501612c38565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffdfea2646970667358221220fb22934e0d9f7a8e32d07cd1f2621ea36204627afface45e5bc80aab6122bb7d64736f6c634300081a0033";
25
- function x(b) {
26
- const e = b.state.current, f = b.state.connections.get(e), a = f == null ? void 0 : f.accounts, c = a == null ? void 0 : a[0], t = b.chains.find((d) => d.id === (f == null ? void 0 : f.chainId)), s = b.state.status;
27
- switch (s) {
1
+ import { d as R, bd as X, be as Y, bf as Z, bg as ff, bh as ef, bi as bf, bj as tf, bk as af, bl as cf, bm as nf, bn as sf, bo as df, bp as of, bq as rf, br as uf, bs as lf, bt as hf } from "./generated-LpgSHrH0.js";
2
+ import { getAccount as gf, waitForTransactionReceipt as wf } from "@wagmi/core";
3
+ import { createClient as yf, custom as Cf, parseEther as mf, zeroAddress as C, zeroHash as u, parseEventLogs as vf } from "viem";
4
+ import { e as T } from "./deployments-BvFcK_eR.js";
5
+ import { actionFromAddress as Af } from "./Actions/Action.js";
6
+ import { EventAction as If } from "./Actions/EventAction.js";
7
+ import { allowListFromAddress as _f, OpenAllowList as Pf } from "./AllowLists/AllowList.js";
8
+ import { SimpleAllowList as Bf } from "./AllowLists/SimpleAllowList.js";
9
+ import { S as Rf } from "./SimpleDenyList-C21O9Yfi.js";
10
+ import { PassthroughAuth as Ef } from "./Auth/PassthroughAuth.js";
11
+ import { prepareBoostPayload as Ff, Boost as N } from "./Boost.js";
12
+ import { budgetFromAddress as pf } from "./Budgets/Budget.js";
13
+ import { ManagedBudget as Df } from "./Budgets/ManagedBudget.js";
14
+ import { Deployable as Of } from "./Deployable/Deployable.js";
15
+ import { AllowListIncentive as Lf } from "./Incentives/AllowListIncentive.js";
16
+ import { CGDAIncentive as Sf } from "./Incentives/CGDAIncentive.js";
17
+ import { ERC20Incentive as $f } from "./Incentives/ERC20Incentive.js";
18
+ import { incentiveFromAddress as xf, ERC20VariableIncentive as Mf } from "./Incentives/Incentive.js";
19
+ import { PointsIncentive as Nf } from "./Incentives/PointsIncentive.js";
20
+ import { SignerValidator as jf } from "./Validators/SignerValidator.js";
21
+ import { validatorFromAddress as qf } from "./Validators/Validator.js";
22
+ import { DeployableUnknownOwnerProvidedError as Vf, BudgetMustAuthorizeBoostCore as Tf, MustInitializeBudgetError as zf, IncentiveNotCloneableError as kf, BoostCoreNoIdentifierEmitted as Gf } from "./errors.js";
23
+ import { assertValidAddressByChainId as l } from "./utils.js";
24
+ import { simulateContract as Uf, writeContract as Wf } from "viem/actions";
25
+ import { parseAccount as Hf, getAddress as Qf } from "viem/utils";
26
+ const Jf = "0x60806040526544364c5bb0006004556103e860055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506103e8600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555034801561006e575f80fd5b506040516135bc3803806135bc8339818101604052810190610090919061029f565b61009f3361012660201b60201c565b8160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506102dd565b61013461020260201b60201c565b156101ac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392780541561016e57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3506101ff565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f90565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102338261020a565b9050919050565b5f61024482610229565b9050919050565b6102548161023a565b811461025e575f80fd5b50565b5f8151905061026f8161024b565b92915050565b61027e81610229565b8114610288575f80fd5b50565b5f8151905061029981610275565b92915050565b5f80604083850312156102b5576102b4610206565b5b5f6102c285828601610261565b92505060206102d38582860161028b565b9150509250929050565b6132d2806102ea5f395ff3fe60806040526004361061014a575f3560e01c8063892b97f8116100b5578063d73792a91161006e578063d73792a9146103d0578063e21ff731146103fa578063eccc19a614610436578063f04e283e1461045e578063f2fde38b1461047a578063fee81cf4146104965761014a565b8063892b97f8146102e45780638da5cb5b1461030c5780638fe4f5231461033657806399d32fc414610352578063a92647dc1461037c578063b0e21e8a146103a65761014a565b806354d1f13d1161010757806354d1f13d146102365780635edb9eb014610240578063715018a61461026a578063730f9c57146102745780637b1039991461029057806384ae2bc6146102ba5761014a565b806313c8e2de1461014e578063256929621461018a5780632e75ab501461019457806339a51be5146101bc57806343bc42d3146101e657806346877b1a1461020e575b5f80fd5b348015610159575f80fd5b50610174600480360381019061016f9190612326565b6104d2565b6040516101819190612617565b60405180910390f35b6101926107ac565b005b34801561019f575f80fd5b506101ba60048036038101906101b59190612326565b6107fd565b005b3480156101c7575f80fd5b506101d061080f565b6040516101dd9190612646565b60405180910390f35b3480156101f1575f80fd5b5061020c60048036038101906102079190612689565b610834565b005b348015610219575f80fd5b50610234600480360381019061022f91906126de565b610867565b005b61023e6108b2565b005b34801561024b575f80fd5b506102546108eb565b6040516102619190612718565b60405180910390f35b6102726108f6565b005b61028e60048036038101906102899190612792565b610909565b005b34801561029b575f80fd5b506102a4610bee565b6040516102b19190612848565b60405180910390f35b3480156102c5575f80fd5b506102ce610c13565b6040516102db9190612870565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612689565b610c2d565b005b348015610317575f80fd5b50610320610c61565b60405161032d9190612646565b60405180910390f35b610350600480360381019061034b9190612889565b610c89565b005b34801561035d575f80fd5b50610366610c9e565b6040516103739190612718565b60405180910390f35b348015610387575f80fd5b50610390610ca4565b60405161039d919061292d565b60405180910390f35b3480156103b1575f80fd5b506103ba610cc9565b6040516103c79190612870565b60405180910390f35b3480156103db575f80fd5b506103e4610ce2565b6040516103f19190612870565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b9190612946565b610ce8565b60405161042d9190612617565b60405180910390f35b348015610441575f80fd5b5061045c600480360381019061045791906126de565b6116a3565b005b610478600480360381019061047391906126de565b6116ee565b005b610494600480360381019061048f91906126de565b61172c565b005b3480156104a1575f80fd5b506104bc60048036038101906104b791906126de565b611755565b6040516104c99190612718565b60405180910390f35b6104da61217a565b5f82815481106104ed576104ec612991565b5b905f5260205f209060080201604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156106da57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610691575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b5f6107b561176e565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b610805611778565b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61083c611778565b8060055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b61086f611778565b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f8080549050905090565b6108fe611778565b6109075f6117af565b565b3068929eee149b4bd2126854036109275763ab143c065f526004601cfd5b3068929eee149b4bd21268555f80878154811061094757610946612991565b5b905f5260205f20906008020190506004543410156109a2575f346004546040517f5c54305e000000000000000000000000000000000000000000000000000000008152600401610999939291906129be565b60405180910390fd5b6109ac8186611875565b806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663703b690088888588886040518663ffffffff1660e01b8152600401610a10959493929190612a4d565b6020604051808303815f875af1158015610a2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a509190612ace565b610a86576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806004018681548110610a9c57610a9b612991565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb1757cf8386866040518463ffffffff1660e01b8152600401610b0093929190612af9565b6020604051808303815f875af1158015610b1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b409190612ace565b610b85578184846040517f4139d81d000000000000000000000000000000000000000000000000000000008152600401610b7c93929190612af9565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1686887f0f29bbf4ce25d2346bbeb8a898e24e5d6d7d1d19bb895e71faecac833b259547888888604051610bd193929190612af9565b60405180910390a4503868929eee149b4bd2126855505050505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560089054906101000a900467ffffffffffffffff1681565b610c35611778565b80600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610c97858585858533610909565b5050505050565b60045481565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900467ffffffffffffffff1681565b61271081565b610cf061217a565b335f73ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015610de4575060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80826040518263ffffffff1660e01b8152600401610da39190612646565b602060405180830381865afa158015610dbe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de29190612ace565b155b15610e1b576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3068929eee149b4bd212685403610e395763ab143c065f526004601cfd5b3068929eee149b4bd21268555f610e9285858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050506119e3565b806020019051810190610ea59190612f89565b9050610eb3815f0151611a7c565b5f8060018160018154018082558091505003905f5260205f2090600802019050816101000151816007015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550815f0151816003015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160a0015160055f9054906101000a900467ffffffffffffffff16610f849190612ffd565b816005015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160c00151600560089054906101000a900467ffffffffffffffff16610fd39190612ffd565b8160050160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160e00151816006018190555061103a7fe67157950000000000000000000000000000000000000000000000000000000083602001516001611b57565b815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110aa7fe2089f790000000000000000000000000000000000000000000000000000000083606001516001611b57565b816002015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110fc8260800151835f0151611b79565b816004019080519060200190611113929190612240565b505f73ffffffffffffffffffffffffffffffffffffffff1682604001516020015173ffffffffffffffffffffffffffffffffffffffff16146111845761117f7f5912b89c0000000000000000000000000000000000000000000000000000000083604001516001611b57565b61126d565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f5912b89c000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016111ff9190613072565b602060405180830381865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e9190612ace565b611248575f61126c565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b5b816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16816007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660015f80549050611332919061308b565b7f116812d3ad4507d72f2c428b63246d594ca055a1dc119394285504c23d1f34cd8460040180549050856001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866002015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876003015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516113d794939291906130be565b60405180910390a480604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156115c157602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611578575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050935050503868929eee149b4bd21268555092915050565b6116ab611778565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6116f6611778565b63389a75e1600c52805f526020600c20805442111561171c57636f5e88185f526004601cfd5b5f815550611729816117af565b50565b611734611778565b8060601b61174957637448fbae5f526004601cfd5b611752816117af565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739275433146117ad576382b429005f526004601cfd5b565b6117b7611f43565b1561181c577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550611872565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f60045403156119df575f60045490505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461193b575f61271067ffffffffffffffff168460050160089054906101000a900467ffffffffffffffff1667ffffffffffffffff166004546118f69190613101565b611900919061316f565b9050808261190e919061308b565b9150611939818473ffffffffffffffffffffffffffffffffffffffff16611f4790919063ffffffff16565b505b61199360028261194b919061316f565b846007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611f4790919063ffffffff16565b6119dd4760035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611f4790919063ffffffff16565b505b5050565b6060815115611a775760405190506020810160048301805184518501811983525b80861015611a5d576001860195508551601f1a80611a4d576001870196508651601f1a5f198652607f8111611a3b57600181013887395b6001607f821601860195505050611a58565b808553600185019450505b611a04565b81835260208501840385525f845260208401604052505050505b919050565b611aa67fea5ad34e0000000000000000000000000000000000000000000000000000000082611f64565b8073ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80336040518263ffffffff1660e01b8152600401611adf9190612646565b602060405180830381865afa158015611afa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b1e9190612ace565b611b54576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b5f611b66848460200151611f64565b611b70838361205b565b90509392505050565b6060825167ffffffffffffffff811115611b9657611b95612b2d565b5b604051908082528060200260200182016040528015611bc45781602001602082028036833780820191505090505b5090505f5b8351811015611f3c57611c1a7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611c0957611c08612991565b5b602002602001015160200151611f64565b838181518110611c2d57611c2c612991565b5b60200260200101515f0151611cb9577f5970a68900000000000000000000000000000000000000000000000000000000848281518110611c7057611c6f612991565b5b6020026020010151602001516040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611cb092919061319f565b60405180910390fd5b611cfe7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611cf057611cef612991565b5b60200260200101515f611b57565b828281518110611d1157611d10612991565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f828281518110611d5f57611d5e612991565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16634e7165a2868481518110611d9557611d94612991565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611dbd9190613208565b5f60405180830381865afa158015611dd7573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611dff9190613228565b90505f815114611e90578373ffffffffffffffffffffffffffffffffffffffff1663fa4ca9b1826040518263ffffffff1660e01b8152600401611e429190613208565b6020604051808303815f875af1158015611e5e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e829190612ace565b611e8f57611e8e61326f565b5b5b828281518110611ea357611ea2612991565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663439fab91868481518110611ed957611ed8612991565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611f019190613208565b5f604051808303815f87803b158015611f18575f80fd5b505af1158015611f2a573d5f803e3d5ffd5b50505050508080600101915050611bc9565b5092915050565b5f90565b5f385f3884865af1611f605763b12d13eb5f526004601cfd5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16148061201357508073ffffffffffffffffffffffffffffffffffffffff166301ffc9a7836040518263ffffffff1660e01b8152600401611fd29190613072565b602060405180830381865afa158015611fed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120119190612ace565b155b156120575781816040517fe1c4444800000000000000000000000000000000000000000000000000000000815260040161204e92919061319f565b60405180910390fd5b5050565b5f825f015161206e578260200151612092565b612091836020015173ffffffffffffffffffffffffffffffffffffffff16612117565b5b9050825f015180156120a15750815b15612111578073ffffffffffffffffffffffffffffffffffffffff1663439fab9184604001516040518263ffffffff1660e01b81526004016120e39190613208565b5f604051808303815f87803b1580156120fa575f80fd5b505af115801561210c573d5f803e3d5ffd5b505050505b92915050565b5f6121225f83612129565b9050919050565b5f6c5af43d3d93803e602a57fd5bf36021528160145273602c3d8160093d39f33d3d3d3d363d3d37363d735f526035600c84f09050806121705763301164255f526004601cfd5b5f60215292915050565b6040518061012001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f67ffffffffffffffff1681526020015f67ffffffffffffffff1681526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b828054828255905f5260205f209081019282156122b6579160200282015b828111156122b5578251825f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061225e565b5b5090506122c391906122c7565b5090565b5b808211156122de575f815f9055506001016122c8565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b612305816122f3565b811461230f575f80fd5b50565b5f81359050612320816122fc565b92915050565b5f6020828403121561233b5761233a6122eb565b5b5f61234884828501612312565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61239361238e61238984612351565b612370565b612351565b9050919050565b5f6123a482612379565b9050919050565b5f6123b58261239a565b9050919050565b6123c5816123ab565b82525050565b5f6123d58261239a565b9050919050565b6123e5816123cb565b82525050565b5f6123f58261239a565b9050919050565b612405816123eb565b82525050565b5f61241582612379565b9050919050565b5f6124268261240b565b9050919050565b6124368161241c565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61246f8261239a565b9050919050565b61247f81612465565b82525050565b5f6124908383612476565b60208301905092915050565b5f602082019050919050565b5f6124b28261243c565b6124bc8185612446565b93506124c783612456565b805f5b838110156124f75781516124de8882612485565b97506124e98361249c565b9250506001810190506124ca565b5085935050505092915050565b5f67ffffffffffffffff82169050919050565b61252081612504565b82525050565b61252f816122f3565b82525050565b5f61253f82612351565b9050919050565b61254f81612535565b82525050565b5f61012083015f83015161256b5f8601826123bc565b50602083015161257e60208601826123dc565b50604083015161259160408601826123fc565b5060608301516125a4606086018261242d565b50608083015184820360808601526125bc82826124a8565b91505060a08301516125d160a0860182612517565b5060c08301516125e460c0860182612517565b5060e08301516125f760e0860182612526565b5061010083015161260c610100860182612546565b508091505092915050565b5f6020820190508181035f83015261262f8184612555565b905092915050565b61264081612535565b82525050565b5f6020820190506126595f830184612637565b92915050565b61266881612504565b8114612672575f80fd5b50565b5f813590506126838161265f565b92915050565b5f6020828403121561269e5761269d6122eb565b5b5f6126ab84828501612675565b91505092915050565b6126bd81612535565b81146126c7575f80fd5b50565b5f813590506126d8816126b4565b92915050565b5f602082840312156126f3576126f26122eb565b5b5f612700848285016126ca565b91505092915050565b612712816122f3565b82525050565b5f60208201905061272b5f830184612709565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261275257612751612731565b5b8235905067ffffffffffffffff81111561276f5761276e612735565b5b60208301915083600182028301111561278b5761278a612739565b5b9250929050565b5f805f805f8060a087890312156127ac576127ab6122eb565b5b5f6127b989828a01612312565b96505060206127ca89828a01612312565b95505060406127db89828a016126ca565b945050606087013567ffffffffffffffff8111156127fc576127fb6122ef565b5b61280889828a0161273d565b9350935050608061281b89828a016126ca565b9150509295509295509295565b5f6128328261239a565b9050919050565b61284281612828565b82525050565b5f60208201905061285b5f830184612839565b92915050565b61286a81612504565b82525050565b5f6020820190506128835f830184612861565b92915050565b5f805f805f608086880312156128a2576128a16122eb565b5b5f6128af88828901612312565b95505060206128c088828901612312565b94505060406128d1888289016126ca565b935050606086013567ffffffffffffffff8111156128f2576128f16122ef565b5b6128fe8882890161273d565b92509250509295509295909350565b5f6129178261239a565b9050919050565b6129278161290d565b82525050565b5f6020820190506129405f83018461291e565b92915050565b5f806020838503121561295c5761295b6122eb565b5b5f83013567ffffffffffffffff811115612979576129786122ef565b5b6129858582860161273d565b92509250509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f6060820190506129d15f830186612637565b6129de6020830185612709565b6129eb6040830184612709565b949350505050565b5f82825260208201905092915050565b828183375f83830152505050565b5f601f19601f8301169050919050565b5f612a2c83856129f3565b9350612a39838584612a03565b612a4283612a11565b840190509392505050565b5f608082019050612a605f830188612709565b612a6d6020830187612709565b612a7a6040830186612637565b8181036060830152612a8d818486612a21565b90509695505050505050565b5f8115159050919050565b612aad81612a99565b8114612ab7575f80fd5b50565b5f81519050612ac881612aa4565b92915050565b5f60208284031215612ae357612ae26122eb565b5b5f612af084828501612aba565b91505092915050565b5f604082019050612b0c5f830186612637565b8181036020830152612b1f818486612a21565b9050949350505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b6382612a11565b810181811067ffffffffffffffff82111715612b8257612b81612b2d565b5b80604052505050565b5f612b946122e2565b9050612ba08282612b5a565b919050565b5f80fd5b5f612bb382612351565b9050919050565b5f612bc482612ba9565b9050919050565b612bd481612bba565b8114612bde575f80fd5b50565b5f81519050612bef81612bcb565b92915050565b5f81519050612c03816126b4565b92915050565b5f80fd5b5f67ffffffffffffffff821115612c2757612c26612b2d565b5b612c3082612a11565b9050602081019050919050565b8281835e5f83830152505050565b5f612c5d612c5884612c0d565b612b8b565b905082815260208101848484011115612c7957612c78612c09565b5b612c84848285612c3d565b509392505050565b5f82601f830112612ca057612c9f612731565b5b8151612cb0848260208601612c4b565b91505092915050565b5f60608284031215612cce57612ccd612b29565b5b612cd86060612b8b565b90505f612ce784828501612aba565b5f830152506020612cfa84828501612bf5565b602083015250604082015167ffffffffffffffff811115612d1e57612d1d612ba5565b5b612d2a84828501612c8c565b60408301525092915050565b5f67ffffffffffffffff821115612d5057612d4f612b2d565b5b602082029050602081019050919050565b5f612d73612d6e84612d36565b612b8b565b90508083825260208201905060208402830185811115612d9657612d95612739565b5b835b81811015612ddd57805167ffffffffffffffff811115612dbb57612dba612731565b5b808601612dc88982612cb9565b85526020850194505050602081019050612d98565b5050509392505050565b5f82601f830112612dfb57612dfa612731565b5b8151612e0b848260208601612d61565b91505092915050565b5f81519050612e228161265f565b92915050565b5f81519050612e36816122fc565b92915050565b5f6101208284031215612e5257612e51612b29565b5b612e5d610120612b8b565b90505f612e6c84828501612be1565b5f83015250602082015167ffffffffffffffff811115612e8f57612e8e612ba5565b5b612e9b84828501612cb9565b602083015250604082015167ffffffffffffffff811115612ebf57612ebe612ba5565b5b612ecb84828501612cb9565b604083015250606082015167ffffffffffffffff811115612eef57612eee612ba5565b5b612efb84828501612cb9565b606083015250608082015167ffffffffffffffff811115612f1f57612f1e612ba5565b5b612f2b84828501612de7565b60808301525060a0612f3f84828501612e14565b60a08301525060c0612f5384828501612e14565b60c08301525060e0612f6784828501612e28565b60e083015250610100612f7c84828501612bf5565b6101008301525092915050565b5f60208284031215612f9e57612f9d6122eb565b5b5f82015167ffffffffffffffff811115612fbb57612fba6122ef565b5b612fc784828501612e3c565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61300782612504565b915061301283612504565b9250828201905067ffffffffffffffff81111561303257613031612fd0565b5b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61306c81613038565b82525050565b5f6020820190506130855f830184613063565b92915050565b5f613095826122f3565b91506130a0836122f3565b92508282039050818111156130b8576130b7612fd0565b5b92915050565b5f6080820190506130d15f830187612709565b6130de6020830186612637565b6130eb6040830185612637565b6130f86060830184612637565b95945050505050565b5f61310b826122f3565b9150613116836122f3565b9250828202613124816122f3565b9150828204841483151761313b5761313a612fd0565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613179826122f3565b9150613184836122f3565b92508261319457613193613142565b5b828204905092915050565b5f6040820190506131b25f830185613063565b6131bf6020830184612637565b9392505050565b5f81519050919050565b5f6131da826131c6565b6131e481856129f3565b93506131f4818560208601612c3d565b6131fd81612a11565b840191505092915050565b5f6020820190508181035f83015261322081846131d0565b905092915050565b5f6020828403121561323d5761323c6122eb565b5b5f82015167ffffffffffffffff81111561325a576132596122ef565b5b61326684828501612c8c565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffdfea2646970667358221220a6183c86da5ac2a94caf1c18f200fbe18347be3f177f19dba5d5253c314dcfe064736f6c634300081a0033";
27
+ function z(a) {
28
+ const e = a.state.current, f = a.state.connections.get(e), b = f == null ? void 0 : f.accounts, t = b == null ? void 0 : b[0], c = a.chains.find((i) => i.id === (f == null ? void 0 : f.chainId)), n = a.state.status;
29
+ switch (n) {
28
30
  case "connected":
29
31
  return {
30
- address: c,
31
- addresses: a,
32
- chain: t,
32
+ address: t,
33
+ addresses: b,
34
+ chain: c,
33
35
  chainId: f == null ? void 0 : f.chainId,
34
36
  connector: f == null ? void 0 : f.connector,
35
37
  isConnected: !0,
36
38
  isConnecting: !1,
37
39
  isDisconnected: !1,
38
40
  isReconnecting: !1,
39
- status: s
41
+ status: n
40
42
  };
41
43
  case "reconnecting":
42
44
  return {
43
- address: c,
44
- addresses: a,
45
- chain: t,
45
+ address: t,
46
+ addresses: b,
47
+ chain: c,
46
48
  chainId: f == null ? void 0 : f.chainId,
47
49
  connector: f == null ? void 0 : f.connector,
48
- isConnected: !!c,
50
+ isConnected: !!t,
49
51
  isConnecting: !1,
50
52
  isDisconnected: !1,
51
53
  isReconnecting: !0,
52
- status: s
54
+ status: n
53
55
  };
54
56
  case "connecting":
55
57
  return {
56
- address: c,
57
- addresses: a,
58
- chain: t,
58
+ address: t,
59
+ addresses: b,
60
+ chain: c,
59
61
  chainId: f == null ? void 0 : f.chainId,
60
62
  connector: f == null ? void 0 : f.connector,
61
63
  isConnected: !1,
62
64
  isConnecting: !0,
63
65
  isDisconnected: !1,
64
66
  isReconnecting: !1,
65
- status: s
67
+ status: n
66
68
  };
67
69
  case "disconnected":
68
70
  return {
@@ -75,38 +77,38 @@ function x(b) {
75
77
  isConnecting: !1,
76
78
  isDisconnected: !0,
77
79
  isReconnecting: !1,
78
- status: s
80
+ status: n
79
81
  };
80
82
  }
81
83
  }
82
- function Tf(b) {
83
- return b.state.chainId;
84
+ function Kf(a) {
85
+ return a.state.chainId;
84
86
  }
85
- function M(b, e, f) {
86
- const a = b[e.name];
87
- if (typeof a == "function")
88
- return a;
89
- const c = b[f];
90
- return typeof c == "function" ? c : (t) => e(b, t);
87
+ function k(a, e, f) {
88
+ const b = a[e.name];
89
+ if (typeof b == "function")
90
+ return b;
91
+ const t = a[f];
92
+ return typeof t == "function" ? t : (c) => e(a, c);
91
93
  }
92
- const kf = "2.13.0", Gf = () => `@wagmi/core@${kf}`;
93
- var N = function(b, e, f, a) {
94
- if (f === "a" && !a)
94
+ const Xf = "2.13.0", Yf = () => `@wagmi/core@${Xf}`;
95
+ var G = function(a, e, f, b) {
96
+ if (f === "a" && !b)
95
97
  throw new TypeError("Private accessor was defined without a getter");
96
- if (typeof e == "function" ? b !== e || !a : !e.has(b))
98
+ if (typeof e == "function" ? a !== e || !b : !e.has(a))
97
99
  throw new TypeError("Cannot read private member from an object whose class did not declare it");
98
- return f === "m" ? a : f === "a" ? a.call(b) : a ? a.value : e.get(b);
99
- }, B, S;
100
- class p extends Error {
100
+ return f === "m" ? b : f === "a" ? b.call(a) : b ? b.value : e.get(a);
101
+ }, E, U;
102
+ class v extends Error {
101
103
  get docsBaseUrl() {
102
104
  return "https://wagmi.sh/core";
103
105
  }
104
106
  get version() {
105
- return Gf();
107
+ return Yf();
106
108
  }
107
109
  constructor(e, f = {}) {
108
- var t;
109
- super(), B.add(this), Object.defineProperty(this, "details", {
110
+ var c;
111
+ super(), E.add(this), Object.defineProperty(this, "details", {
110
112
  enumerable: !0,
111
113
  configurable: !0,
112
114
  writable: !0,
@@ -132,27 +134,27 @@ class p extends Error {
132
134
  writable: !0,
133
135
  value: "WagmiCoreError"
134
136
  });
135
- const a = f.cause instanceof p ? f.cause.details : (t = f.cause) != null && t.message ? f.cause.message : f.details, c = f.cause instanceof p && f.cause.docsPath || f.docsPath;
137
+ const b = f.cause instanceof v ? f.cause.details : (c = f.cause) != null && c.message ? f.cause.message : f.details, t = f.cause instanceof v && f.cause.docsPath || f.docsPath;
136
138
  this.message = [
137
139
  e || "An error occurred.",
138
140
  "",
139
141
  ...f.metaMessages ? [...f.metaMessages, ""] : [],
140
- ...c ? [
141
- `Docs: ${this.docsBaseUrl}${c}.html${f.docsSlug ? `#${f.docsSlug}` : ""}`
142
+ ...t ? [
143
+ `Docs: ${this.docsBaseUrl}${t}.html${f.docsSlug ? `#${f.docsSlug}` : ""}`
142
144
  ] : [],
143
- ...a ? [`Details: ${a}`] : [],
145
+ ...b ? [`Details: ${b}`] : [],
144
146
  `Version: ${this.version}`
145
147
  ].join(`
146
- `), f.cause && (this.cause = f.cause), this.details = a, this.docsPath = c, this.metaMessages = f.metaMessages, this.shortMessage = e;
148
+ `), f.cause && (this.cause = f.cause), this.details = b, this.docsPath = t, this.metaMessages = f.metaMessages, this.shortMessage = e;
147
149
  }
148
150
  walk(e) {
149
- return N(this, B, "m", S).call(this, this, e);
151
+ return G(this, E, "m", U).call(this, this, e);
150
152
  }
151
153
  }
152
- B = /* @__PURE__ */ new WeakSet(), S = function b(e, f) {
153
- return f != null && f(e) ? e : e.cause ? N(this, B, "m", b).call(this, e.cause, f) : e;
154
+ E = /* @__PURE__ */ new WeakSet(), U = function a(e, f) {
155
+ return f != null && f(e) ? e : e.cause ? G(this, E, "m", a).call(this, e.cause, f) : e;
154
156
  };
155
- class Uf extends p {
157
+ class Zf extends v {
156
158
  constructor() {
157
159
  super("Connector not connected."), Object.defineProperty(this, "name", {
158
160
  enumerable: !0,
@@ -162,7 +164,7 @@ class Uf extends p {
162
164
  });
163
165
  }
164
166
  }
165
- class Wf extends p {
167
+ class f0 extends v {
166
168
  constructor({ address: e, connector: f }) {
167
169
  super(`Account "${e}" not found for connector "${f.name}".`), Object.defineProperty(this, "name", {
168
170
  enumerable: !0,
@@ -172,7 +174,7 @@ class Wf extends p {
172
174
  });
173
175
  }
174
176
  }
175
- class Hf extends p {
177
+ class e0 extends v {
176
178
  constructor({ connectionChainId: e, connectorChainId: f }) {
177
179
  super(`The current chain of the connector (id: ${f}) does not match the connection's chain (id: ${e}).`, {
178
180
  metaMessages: [
@@ -187,108 +189,121 @@ class Hf extends p {
187
189
  });
188
190
  }
189
191
  }
190
- async function j(b, e = {}) {
192
+ async function W(a, e = {}) {
191
193
  let f;
192
194
  if (e.connector) {
193
- const { connector: n } = e, [u, m] = await Promise.all([
194
- n.getAccounts(),
195
- n.getChainId()
195
+ const { connector: s } = e, [o, h] = await Promise.all([
196
+ s.getAccounts(),
197
+ s.getChainId()
196
198
  ]);
197
199
  f = {
198
- accounts: u,
199
- chainId: m,
200
- connector: n
200
+ accounts: o,
201
+ chainId: h,
202
+ connector: s
201
203
  };
202
204
  } else
203
- f = b.state.connections.get(b.state.current);
205
+ f = a.state.connections.get(a.state.current);
204
206
  if (!f)
205
- throw new Uf();
206
- const a = e.chainId ?? f.chainId, c = await f.connector.getChainId();
207
- if (c !== f.chainId)
208
- throw new Hf({
207
+ throw new Zf();
208
+ const b = e.chainId ?? f.chainId, t = await f.connector.getChainId();
209
+ if (t !== f.chainId)
210
+ throw new e0({
209
211
  connectionChainId: f.chainId,
210
- connectorChainId: c
212
+ connectorChainId: t
211
213
  });
212
- const t = f.connector;
213
- if (t.getClient)
214
- return t.getClient({ chainId: a });
215
- const s = jf(e.account ?? f.accounts[0]);
216
- s.address = qf(s.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() === s.address.toLowerCase()))
219
- throw new Wf({
220
- address: s.address,
221
- connector: t
214
+ const c = f.connector;
215
+ if (c.getClient)
216
+ return c.getClient({ chainId: b });
217
+ const n = Hf(e.account ?? f.accounts[0]);
218
+ n.address = Qf(n.address);
219
+ const i = a.chains.find((s) => s.id === b), d = await f.connector.getProvider({ chainId: b });
220
+ if (e.account && !f.accounts.some((s) => s.toLowerCase() === n.address.toLowerCase()))
221
+ throw new f0({
222
+ address: n.address,
223
+ connector: c
222
224
  });
223
- return df({
224
- account: s,
225
- chain: d,
225
+ return yf({
226
+ account: n,
227
+ chain: i,
226
228
  name: "Connector Client",
227
- transport: (n) => rf(r)({ ...n, retryCount: 0 })
229
+ transport: (s) => Cf(d)({ ...s, retryCount: 0 })
228
230
  });
229
231
  }
230
- async function Qf(b, e) {
231
- const { abi: f, chainId: a, connector: c, ...t } = e;
232
- let s;
233
- e.account ? s = e.account : s = (await j(b, {
234
- chainId: a,
235
- connector: c
232
+ async function b0(a, e) {
233
+ const { abi: f, chainId: b, connector: t, ...c } = e;
234
+ let n;
235
+ e.account ? n = e.account : n = (await W(a, {
236
+ chainId: b,
237
+ connector: t
236
238
  })).account;
237
- const d = b.getClient({ chainId: a }), r = M(d, Nf, "simulateContract"), { result: n, request: u } = await r({ ...t, abi: f, account: s });
239
+ const i = a.getClient({ chainId: b }), d = k(i, Uf, "simulateContract"), { result: s, request: o } = await d({ ...c, abi: f, account: n });
238
240
  return {
239
- chainId: d.chain.id,
240
- result: n,
241
- request: { __mode: "prepared", ...u, chainId: a }
241
+ chainId: i.chain.id,
242
+ result: s,
243
+ request: { __mode: "prepared", ...o, chainId: b }
242
244
  };
243
245
  }
244
- async function $(b, e) {
245
- const { account: f, chainId: a, connector: c, __mode: t, ...s } = e;
246
- let d;
247
- typeof f == "object" && f.type === "local" ? d = b.getClient({ chainId: a }) : d = await j(b, { account: f, chainId: a, connector: c });
248
- const { connector: r } = x(b);
249
- let n;
250
- if (t === "prepared" || r != null && r.supportsSimulation)
251
- n = s;
246
+ async function j(a, e) {
247
+ const { account: f, chainId: b, connector: t, __mode: c, ...n } = e;
248
+ let i;
249
+ typeof f == "object" && f.type === "local" ? i = a.getClient({ chainId: b }) : i = await W(a, { account: f, chainId: b, connector: t });
250
+ const { connector: d } = z(a);
251
+ let s;
252
+ if (c === "prepared" || d != null && d.supportsSimulation)
253
+ s = n;
252
254
  else {
253
- const { request: A } = await Qf(b, {
254
- ...s,
255
+ const { request: y } = await b0(a, {
256
+ ...n,
255
257
  account: f,
256
- chainId: a
258
+ chainId: b
257
259
  });
258
- n = A;
260
+ s = y;
259
261
  }
260
- return await M(d, Sf, "writeContract")({
261
- ...n,
262
+ return await k(i, Wf, "writeContract")({
263
+ ...s,
262
264
  ...f ? { account: f } : {},
263
- chain: a ? { id: a } : null
265
+ chain: b ? { id: b } : null
264
266
  });
265
267
  }
266
- function Jf(b) {
267
- return b.address !== void 0 && typeof b.address == "object" ? (e, f) => {
268
- var s;
269
- const a = Tf(e), c = x(e);
270
- let t;
271
- return f.chainId ? t = f.chainId : f.account && f.account === c.address || f.account === void 0 ? t = c.chainId : t = a, $(e, {
268
+ function t0(a) {
269
+ return a.address !== void 0 && typeof a.address == "object" ? (e, f) => {
270
+ var n;
271
+ const b = Kf(e), t = z(e);
272
+ let c;
273
+ return f.chainId ? c = f.chainId : f.account && f.account === t.address || f.account === void 0 ? c = t.chainId : c = b, j(e, {
272
274
  ...f,
273
- ...b.functionName ? { functionName: b.functionName } : {},
274
- address: t ? (s = b.address) == null ? void 0 : s[t] : void 0,
275
- abi: b.abi
275
+ ...a.functionName ? { functionName: a.functionName } : {},
276
+ address: c ? (n = a.address) == null ? void 0 : n[c] : void 0,
277
+ abi: a.abi
276
278
  });
277
- } : (e, f) => $(e, {
279
+ } : (e, f) => j(e, {
278
280
  ...f,
279
- ...b.address ? { address: b.address } : {},
280
- ...b.functionName ? { functionName: b.functionName } : {},
281
- abi: b.abi
281
+ ...a.address ? { address: a.address } : {},
282
+ ...a.functionName ? { functionName: a.functionName } : {},
283
+ abi: a.abi
282
284
  });
283
285
  }
284
- const v0 = of("0.000075"), Kf = "0x0561e8fB1EFD614eb905CB93D548Bb217Ad07B92";
285
- function Xf(b) {
286
- return b.address;
286
+ const O0 = mf("0.000075"), L0 = T[11155111], q = {
287
+ ...T,
288
+ 31337: "0x0561e8fB1EFD614eb905CB93D548Bb217Ad07B92"
289
+ };
290
+ function a0(a) {
291
+ return a.address;
287
292
  }
288
- function Yf(b) {
289
- return b.registryAddress && b.protocolFeeReceiver;
293
+ function c0(a) {
294
+ return a.registryAddress && a.protocolFeeReceiver;
290
295
  }
291
- class _0 extends _f {
296
+ const S = class S extends Of {
297
+ /**
298
+ * A getter that will return Boost core's static addresses by numerical chain ID
299
+ *
300
+ * @public
301
+ * @readonly
302
+ * @type {Record<number, Address>}
303
+ */
304
+ get addresses() {
305
+ return this.constructor.addresses;
306
+ }
292
307
  /**
293
308
  * Creates an instance of BoostCore.
294
309
  *
@@ -298,11 +313,22 @@ class _0 extends _f {
298
313
  * @param {?Account} [param0.account]
299
314
  * @param {({ address?: Address; } | { registryAddress: Address; protocolFeeReceiver: Address; })} param0....options
300
315
  */
301
- constructor({ config: e, account: f, ...a }) {
302
- Xf(a) && a.address ? super({ account: f, config: e }, a.address) : Yf(a) ? super({ account: f, config: e }, [
303
- a.registryAddress,
304
- a.protocolFeeReceiver
305
- ]) : super({ account: f, config: e }, Kf), this.abi = P;
316
+ constructor({ config: e, account: f, ...b }) {
317
+ if (a0(b) && b.address)
318
+ super({ account: f, config: e }, b.address);
319
+ else if (c0(b))
320
+ super({ account: f, config: e }, [
321
+ b.registryAddress,
322
+ b.protocolFeeReceiver
323
+ ]);
324
+ else {
325
+ const { address: t } = l(
326
+ e,
327
+ q
328
+ );
329
+ super({ account: f, config: e }, t);
330
+ }
331
+ this.abi = R;
306
332
  }
307
333
  /**
308
334
  * Create a new Boost.
@@ -314,149 +340,169 @@ class _0 extends _f {
314
340
  * @returns {Boost}
315
341
  */
316
342
  async createBoost(e, f) {
317
- var L;
318
- const a = this.assertValidAddress(), [c, t] = this.validateDeploymentConfig(
319
- e,
320
- f
343
+ var x, M;
344
+ const [b, t] = this.validateDeploymentConfig(e, f), c = ((x = f == null ? void 0 : f.chain) == null ? void 0 : x.id) || (f == null ? void 0 : f.chainId), { chainId: n, address: i } = l(
345
+ t.config,
346
+ this.addresses,
347
+ c
321
348
  );
322
349
  let {
323
- budget: s,
324
- action: d,
325
- validator: r,
326
- allowList: n,
327
- incentives: u,
328
- protocolFee: m = 0n,
329
- referralFee: A = 0n,
330
- maxParticipants: R = 0n,
331
- owner: g
332
- } = c;
333
- const F = Jf({
334
- abi: P,
350
+ budget: d,
351
+ action: s,
352
+ validator: o,
353
+ allowList: h,
354
+ incentives: y,
355
+ protocolFee: F = 0n,
356
+ referralFee: p = 0n,
357
+ maxParticipants: D = 0n,
358
+ owner: m
359
+ } = b;
360
+ const H = t0({
361
+ abi: R,
335
362
  functionName: "createBoost",
336
- address: this.address
363
+ address: i
337
364
  });
338
- if (!g && (g = ((L = this._account) == null ? void 0 : L.address) || sf(t.config).address || w, g === w))
339
- throw new Lf();
340
- let V = w;
341
- if (s.address) {
342
- if (V = s.address, !await s.isAuthorized(a))
343
- throw new Of(a);
365
+ if (!m && (m = ((M = this._account) == null ? void 0 : M.address) || gf(t.config).address || C, m === C))
366
+ throw new Vf();
367
+ let $ = C;
368
+ if (d.address) {
369
+ if ($ = d.address, !await d.isAuthorized(i))
370
+ throw new Tf(i);
344
371
  } else
345
- throw new $f();
346
- let y = {
347
- instance: w,
372
+ throw new zf();
373
+ let A = {
374
+ instance: C,
348
375
  isBase: !0,
349
- parameters: o
376
+ parameters: u
350
377
  };
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
378
+ if (s.address) {
379
+ const r = s.isBase;
380
+ A = {
381
+ isBase: r,
382
+ instance: s.address,
383
+ parameters: r ? s.buildParameters(void 0, t).args.at(0) || u : u
357
384
  };
358
385
  } else
359
- y.parameters = d.buildParameters(void 0, t).args.at(0) || o, y.instance = d.base;
360
- let C = {
361
- instance: w,
386
+ A.parameters = s.buildParameters(void 0, t).args.at(0) || u, A.instance = l(
387
+ t.config,
388
+ s.bases,
389
+ n
390
+ ).address;
391
+ let I = {
392
+ instance: C,
362
393
  isBase: !0,
363
- parameters: o
394
+ parameters: u
364
395
  };
365
- if (r.address) {
366
- const i = r.address === r.base || r.isBase;
367
- C = {
368
- isBase: i,
369
- instance: r.address,
370
- parameters: i ? r.buildParameters(
396
+ if (o.address) {
397
+ const r = o.isBase;
398
+ I = {
399
+ isBase: r,
400
+ instance: o.address,
401
+ parameters: r ? o.buildParameters(
371
402
  {
372
- signers: [g],
373
- validatorCaller: a
403
+ signers: [m],
404
+ validatorCaller: i
374
405
  },
375
406
  t
376
- ).args.at(0) || o : o
407
+ ).args.at(0) || u : u
377
408
  };
378
409
  } else
379
- C.parameters = r.buildParameters(
410
+ I.parameters = o.buildParameters(
380
411
  {
381
- signers: [g],
382
- validatorCaller: a
412
+ signers: [m],
413
+ validatorCaller: i
383
414
  },
384
415
  t
385
- ).args.at(0) || o, C.instance = r.base;
386
- let v = {
387
- instance: w,
416
+ ).args.at(0) || u, I.instance = l(
417
+ t.config,
418
+ o.bases,
419
+ n
420
+ ).address;
421
+ let _ = {
422
+ instance: C,
388
423
  isBase: !0,
389
- parameters: o
424
+ parameters: u
390
425
  };
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
426
+ if (h.address) {
427
+ const r = h.isBase;
428
+ _ = {
429
+ isBase: r,
430
+ instance: h.address,
431
+ parameters: r ? u : u
397
432
  };
398
433
  } else
399
- v.parameters = n.buildParameters(void 0, t).args.at(0) || o, v.instance = n.base;
400
- let _ = u.map(() => ({
401
- instance: w,
434
+ _.parameters = h.buildParameters(void 0, t).args.at(0) || u, _.instance = l(
435
+ t.config,
436
+ h.bases,
437
+ n
438
+ ).address;
439
+ const P = y.map(() => ({
440
+ instance: C,
402
441
  isBase: !0,
403
- parameters: o
442
+ parameters: u
404
443
  }));
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
444
+ for (let r = 0; r < y.length; r++) {
445
+ const w = y.at(r);
446
+ if (w.address) {
447
+ const L = w.isBase;
448
+ if (!L)
449
+ throw new kf(w);
450
+ P[r] = {
451
+ isBase: L,
452
+ instance: w.address,
453
+ parameters: L ? w.buildParameters(void 0, t).args.at(0) || u : u
415
454
  };
416
455
  } else
417
- _[i].parameters = l.buildParameters(void 0, t).args.at(0) || o, _[i].instance = l.base;
456
+ P[r].parameters = w.buildParameters(void 0, t).args.at(0) || u, P[r].instance = l(
457
+ t.config,
458
+ w.bases,
459
+ n
460
+ ).address;
418
461
  }
419
- const q = {
420
- budget: V,
421
- action: y,
422
- validator: C,
423
- allowList: v,
424
- incentives: _,
425
- protocolFee: m,
426
- referralFee: A,
427
- maxParticipants: R,
428
- owner: g
429
- }, z = await F(t.config, {
430
- args: [yf(q)],
431
- ...this.optionallyAttachAccount(t.account)
432
- }), T = await nf(t.config, {
433
- hash: z
434
- }), I = uf({
435
- abi: P,
462
+ const Q = {
463
+ budget: $,
464
+ action: A,
465
+ validator: I,
466
+ allowList: _,
467
+ incentives: P,
468
+ protocolFee: F,
469
+ referralFee: p,
470
+ maxParticipants: D,
471
+ owner: m
472
+ }, J = await H(t.config, {
473
+ ...this.optionallyAttachAccount(t.account),
474
+ // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
475
+ ...f,
476
+ chainId: n,
477
+ args: [Ff(Q)]
478
+ }), K = await wf(t.config, {
479
+ hash: J
480
+ }), B = vf({
481
+ abi: R,
436
482
  eventName: "BoostCreated",
437
- logs: T.logs
483
+ logs: K.logs
438
484
  }).at(0);
439
- let E = 0n;
440
- if (!I)
441
- throw new Mf();
442
- E = I == null ? void 0 : I.args.boostIndex;
443
- const h = await this.readBoost(E);
444
- return new O({
445
- id: E,
446
- budget: s.at(h.budget),
447
- action: d.at(h.action),
448
- validator: r.at(h.validator),
449
- allowList: n.at(h.allowList),
450
- incentives: u.map(
451
- (i, l) => (
485
+ let O = 0n;
486
+ if (!B)
487
+ throw new Gf();
488
+ O = B == null ? void 0 : B.args.boostIndex;
489
+ const g = await this.readBoost(O);
490
+ return new N({
491
+ id: O,
492
+ budget: d.at(g.budget),
493
+ action: s.at(g.action),
494
+ validator: o.at(g.validator),
495
+ allowList: h.at(g.allowList),
496
+ incentives: y.map(
497
+ (r, w) => (
452
498
  // biome-ignore lint/style/noNonNullAssertion: this will never be undefined
453
- i.at(h.incentives.at(l))
499
+ r.at(g.incentives.at(w))
454
500
  )
455
501
  ),
456
- protocolFee: h.protocolFee,
457
- referralFee: h.referralFee,
458
- maxParticipants: h.maxParticipants,
459
- owner: h.owner
502
+ protocolFee: g.protocolFee,
503
+ referralFee: g.referralFee,
504
+ maxParticipants: g.maxParticipants,
505
+ owner: g.owner
460
506
  });
461
507
  }
462
508
  /**
@@ -471,9 +517,9 @@ class _0 extends _f {
471
517
  * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentive'>} [params]
472
518
  * @returns {unknown}
473
519
  */
474
- async claimIncentive(e, f, a, c, t) {
520
+ async claimIncentive(e, f, b, t, c) {
475
521
  return await this.awaitResult(
476
- this.claimIncentiveRaw(e, f, a, c, t)
522
+ this.claimIncentiveRaw(e, f, b, t, c)
477
523
  );
478
524
  }
479
525
  /**
@@ -488,18 +534,23 @@ class _0 extends _f {
488
534
  * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentive'>} [params]
489
535
  * @returns {unknown}
490
536
  */
491
- async claimIncentiveRaw(e, f, a, c, t) {
492
- const { request: s, result: d } = await k(
537
+ async claimIncentiveRaw(e, f, b, t, c) {
538
+ var s;
539
+ const { request: n, result: i } = await X(
493
540
  this._config,
494
541
  {
495
- address: this.assertValidAddress(),
496
- args: [e, f, a, c],
542
+ ...l(
543
+ this._config,
544
+ this.addresses,
545
+ ((s = c == null ? void 0 : c.chain) == null ? void 0 : s.id) || (c == null ? void 0 : c.chainId)
546
+ ),
547
+ args: [e, f, b, t],
497
548
  ...this.optionallyAttachAccount(),
498
549
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
499
- ...t
550
+ ...c
500
551
  }
501
552
  );
502
- return { hash: await G(this._config, s), result: d };
553
+ return { hash: await Y(this._config, n), result: i };
503
554
  }
504
555
  /**
505
556
  * Claims one incentive for a given `Boost` on behalf of another user by `boostId` and `incentiveId`
@@ -514,15 +565,15 @@ class _0 extends _f {
514
565
  * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentiveFor'>} [params]
515
566
  * @returns {unknown}
516
567
  */
517
- async claimIncentiveFor(e, f, a, c, t, s) {
568
+ async claimIncentiveFor(e, f, b, t, c, n) {
518
569
  return await this.awaitResult(
519
570
  this.claimIncentiveForRaw(
520
571
  e,
521
572
  f,
522
- a,
523
- c,
573
+ b,
524
574
  t,
525
- s
575
+ c,
576
+ n
526
577
  )
527
578
  );
528
579
  }
@@ -539,18 +590,23 @@ class _0 extends _f {
539
590
  * @param {?WriteParams<typeof boostCoreAbi, 'claimIncentiveFor'>} [params]
540
591
  * @returns {unknown}
541
592
  */
542
- async claimIncentiveForRaw(e, f, a, c, t, s) {
543
- const { request: d, result: r } = await U(
593
+ async claimIncentiveForRaw(e, f, b, t, c, n) {
594
+ var o;
595
+ const { request: i, result: d } = await Z(
544
596
  this._config,
545
597
  {
546
- address: this.assertValidAddress(),
547
- args: [e, f, a, c, t],
598
+ ...l(
599
+ this._config,
600
+ this.addresses,
601
+ ((o = n == null ? void 0 : n.chain) == null ? void 0 : o.id) || (n == null ? void 0 : n.chainId)
602
+ ),
603
+ args: [e, f, b, t, c],
548
604
  ...this.optionallyAttachAccount(),
549
605
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
550
- ...s
606
+ ...n
551
607
  }
552
608
  );
553
- return { hash: await W(this._config, d), result: r };
609
+ return { hash: await ff(this._config, i), result: d };
554
610
  }
555
611
  /**
556
612
  * Get a Boost by index, will return the raw on chain representation of a Boost.
@@ -562,7 +618,7 @@ class _0 extends _f {
562
618
  * @returns {unknown}
563
619
  */
564
620
  async readBoost(e, f) {
565
- return await H(this._config, {
621
+ return await ef(this._config, {
566
622
  address: this.assertValidAddress(),
567
623
  args: [e],
568
624
  ...this.optionallyAttachAccount(),
@@ -580,39 +636,39 @@ class _0 extends _f {
580
636
  * @returns {unknown}
581
637
  */
582
638
  async getBoost(e, f) {
583
- let a;
584
- typeof e == "string" ? a = BigInt(e) : a = e;
639
+ let b;
640
+ typeof e == "string" ? b = BigInt(e) : b = e;
585
641
  const {
586
- protocolFee: c,
587
- referralFee: t,
588
- maxParticipants: s,
589
- owner: d,
590
- ...r
591
- } = await this.readBoost(a, f), n = {
642
+ protocolFee: t,
643
+ referralFee: c,
644
+ maxParticipants: n,
645
+ owner: i,
646
+ ...d
647
+ } = await this.readBoost(b, f), s = {
592
648
  config: this._config,
593
649
  account: this._account
594
- }, [u, m, A, R, g] = await Promise.all([
595
- lf(n, r.action),
596
- Cf(n, r.budget),
597
- Vf(n, r.validator),
598
- gf(n, r.allowList),
650
+ }, [o, h, y, F, p] = await Promise.all([
651
+ Af(s, d.action),
652
+ pf(s, d.budget),
653
+ qf(s, d.validator),
654
+ _f(s, d.allowList),
599
655
  Promise.all(
600
- r.incentives.map(
601
- (F) => Rf(n, F)
656
+ d.incentives.map(
657
+ (D) => xf(s, D)
602
658
  )
603
659
  )
604
660
  ]);
605
- return new O({
606
- id: a,
607
- action: u,
608
- budget: m,
609
- validator: A,
610
- allowList: R,
611
- incentives: g,
612
- protocolFee: c,
613
- referralFee: t,
614
- maxParticipants: s,
615
- owner: d
661
+ return new N({
662
+ id: b,
663
+ action: o,
664
+ budget: h,
665
+ validator: y,
666
+ allowList: F,
667
+ incentives: p,
668
+ protocolFee: t,
669
+ referralFee: c,
670
+ maxParticipants: n,
671
+ owner: i
616
672
  });
617
673
  }
618
674
  /**
@@ -624,8 +680,12 @@ class _0 extends _f {
624
680
  * @returns {Promise<bigint>}
625
681
  */
626
682
  async getBoostCount(e) {
627
- return await Q(this._config, {
628
- address: this.assertValidAddress(),
683
+ return await bf(this._config, {
684
+ ...l(
685
+ this._config,
686
+ this.addresses,
687
+ e == null ? void 0 : e.chainId
688
+ ),
629
689
  args: [],
630
690
  ...this.optionallyAttachAccount(),
631
691
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -643,9 +703,9 @@ class _0 extends _f {
643
703
  * @returns {Promise<boolean>}
644
704
  */
645
705
  async isAuthorized(e, f) {
646
- const a = await this.createBoostAuth();
647
- return J(this._config, {
648
- address: a,
706
+ const b = await this.createBoostAuth(f);
707
+ return tf(this._config, {
708
+ address: b,
649
709
  args: [e],
650
710
  ...this.optionallyAttachAccount(),
651
711
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -661,8 +721,12 @@ class _0 extends _f {
661
721
  * @returns {unknown}
662
722
  */
663
723
  async createBoostAuth(e) {
664
- return await K(this._config, {
665
- address: this.assertValidAddress(),
724
+ return await af(this._config, {
725
+ ...l(
726
+ this._config,
727
+ this.addresses,
728
+ e == null ? void 0 : e.chainId
729
+ ),
666
730
  args: [],
667
731
  ...this.optionallyAttachAccount(),
668
732
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -695,17 +759,21 @@ class _0 extends _f {
695
759
  * @returns {unknown}
696
760
  */
697
761
  async setCreateBoostAuthRaw(e, f) {
698
- const { request: a, result: c } = await X(
762
+ const { request: b, result: t } = await cf(
699
763
  this._config,
700
764
  {
701
- address: this.assertValidAddress(),
765
+ ...l(
766
+ this._config,
767
+ this.addresses,
768
+ f == null ? void 0 : f.chainId
769
+ ),
702
770
  args: [e],
703
771
  ...this.optionallyAttachAccount(),
704
772
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
705
773
  ...f
706
774
  }
707
775
  );
708
- return { hash: await Y(this._config, a), result: c };
776
+ return { hash: await nf(this._config, b), result: t };
709
777
  }
710
778
  /**
711
779
  * Get the protocol fee.
@@ -716,8 +784,12 @@ class _0 extends _f {
716
784
  * @returns {unknown}
717
785
  */
718
786
  async protocolFee(e) {
719
- return await Z(this._config, {
720
- address: this.assertValidAddress(),
787
+ return await sf(this._config, {
788
+ ...l(
789
+ this._config,
790
+ this.addresses,
791
+ e == null ? void 0 : e.chainId
792
+ ),
721
793
  args: [],
722
794
  ...this.optionallyAttachAccount(),
723
795
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -733,8 +805,12 @@ class _0 extends _f {
733
805
  * @returns {unknown}
734
806
  */
735
807
  async protocolFeeReceiver(e) {
736
- return await ff(this._config, {
737
- address: this.assertValidAddress(),
808
+ return await df(this._config, {
809
+ ...l(
810
+ this._config,
811
+ this.addresses,
812
+ e == null ? void 0 : e.chainId
813
+ ),
738
814
  args: [],
739
815
  ...this.optionallyAttachAccount(),
740
816
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -767,20 +843,24 @@ class _0 extends _f {
767
843
  * @returns {unknown}
768
844
  */
769
845
  async setProcolFeeReceiverRaw(e, f) {
770
- const { request: a, result: c } = await ef(
846
+ const { request: b, result: t } = await of(
771
847
  this._config,
772
848
  {
773
- address: this.assertValidAddress(),
849
+ ...l(
850
+ this._config,
851
+ this.addresses,
852
+ f == null ? void 0 : f.chainId
853
+ ),
774
854
  args: [e],
775
855
  ...this.optionallyAttachAccount(),
776
856
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
777
857
  ...f
778
858
  }
779
859
  );
780
- return { hash: await af(
860
+ return { hash: await rf(
781
861
  this._config,
782
- a
783
- ), result: c };
862
+ b
863
+ ), result: t };
784
864
  }
785
865
  /**
786
866
  * Get the claim fee.
@@ -791,8 +871,12 @@ class _0 extends _f {
791
871
  * @returns {unknown}
792
872
  */
793
873
  async claimFee(e) {
794
- return await bf(this._config, {
795
- address: this.assertValidAddress(),
874
+ return await uf(this._config, {
875
+ ...l(
876
+ this._config,
877
+ this.addresses,
878
+ e == null ? void 0 : e.chainId
879
+ ),
796
880
  args: [],
797
881
  ...this.optionallyAttachAccount(),
798
882
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -821,17 +905,21 @@ class _0 extends _f {
821
905
  * @returns {unknown}
822
906
  */
823
907
  async setClaimFeeRaw(e, f) {
824
- const { request: a, result: c } = await tf(
908
+ const { request: b, result: t } = await lf(
825
909
  this._config,
826
910
  {
827
- address: this.assertValidAddress(),
911
+ ...l(
912
+ this._config,
913
+ this.addresses,
914
+ f == null ? void 0 : f.chainId
915
+ ),
828
916
  args: [e],
829
917
  ...this.optionallyAttachAccount(),
830
918
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
831
919
  ...f
832
920
  }
833
921
  );
834
- return { hash: await cf(this._config, a), result: c };
922
+ return { hash: await hf(this._config, b), result: t };
835
923
  }
836
924
  /**
837
925
  * Bound {@link PassthroughAuth} constructor that reuses the same configuration as the Boost Core instance.
@@ -845,7 +933,7 @@ class _0 extends _f {
845
933
  * @returns {PassthroughAuth}
846
934
  */
847
935
  PassthroughAuth(e) {
848
- return new Af(
936
+ return new Ef(
849
937
  { config: this._config, account: this._account },
850
938
  e
851
939
  );
@@ -881,7 +969,7 @@ class _0 extends _f {
881
969
  * const action = new EventAction({ config: core._config, account: core._account }, '0x')
882
970
  */
883
971
  EventAction(e, f) {
884
- return new hf(
972
+ return new If(
885
973
  { config: this._config, account: this._account },
886
974
  e,
887
975
  f
@@ -921,7 +1009,7 @@ class _0 extends _f {
921
1009
  * @returns {OpenAllowList}
922
1010
  */
923
1011
  OpenAllowList(e) {
924
- return new mf(
1012
+ return new Pf(
925
1013
  { config: this._config, account: this._account },
926
1014
  void 0,
927
1015
  e
@@ -940,7 +1028,7 @@ class _0 extends _f {
940
1028
  * @returns {SimpleAllowList}
941
1029
  */
942
1030
  SimpleAllowList(e, f) {
943
- return new wf(
1031
+ return new Bf(
944
1032
  { config: this._config, account: this._account },
945
1033
  e,
946
1034
  f
@@ -959,7 +1047,7 @@ class _0 extends _f {
959
1047
  * @returns {SimpleDenyList}
960
1048
  */
961
1049
  SimpleDenyList(e, f) {
962
- return new pf(
1050
+ return new Rf(
963
1051
  { config: this._config, account: this._account },
964
1052
  e,
965
1053
  f
@@ -994,7 +1082,7 @@ class _0 extends _f {
994
1082
  * @returns {ManagedBudget}
995
1083
  */
996
1084
  ManagedBudget(e) {
997
- return new vf(
1085
+ return new Df(
998
1086
  { config: this._config, account: this._account },
999
1087
  e
1000
1088
  );
@@ -1028,7 +1116,7 @@ class _0 extends _f {
1028
1116
  * @returns {VestingBudget}
1029
1117
  */
1030
1118
  AllowListIncentive(e) {
1031
- return new If(
1119
+ return new Lf(
1032
1120
  { config: this._config, account: this._account },
1033
1121
  e
1034
1122
  );
@@ -1045,7 +1133,7 @@ class _0 extends _f {
1045
1133
  * @returns {CGDAIncentive}
1046
1134
  */
1047
1135
  CGDAIncentive(e) {
1048
- return new Pf(
1136
+ return new Sf(
1049
1137
  { config: this._config, account: this._account },
1050
1138
  e
1051
1139
  );
@@ -1062,7 +1150,7 @@ class _0 extends _f {
1062
1150
  * @returns {ERC20Incentive}
1063
1151
  */
1064
1152
  ERC20Incentive(e) {
1065
- return new Bf(
1153
+ return new $f(
1066
1154
  { config: this._config, account: this._account },
1067
1155
  e
1068
1156
  );
@@ -1098,7 +1186,7 @@ class _0 extends _f {
1098
1186
  * @returns {PointsIncentive}
1099
1187
  */
1100
1188
  PointsIncentive(e) {
1101
- return new Ef(
1189
+ return new Nf(
1102
1190
  { config: this._config, account: this._account },
1103
1191
  e
1104
1192
  );
@@ -1116,7 +1204,7 @@ class _0 extends _f {
1116
1204
  * @returns {SignerValidator}
1117
1205
  */
1118
1206
  SignerValidator(e, f) {
1119
- return new Df(
1207
+ return new jf(
1120
1208
  { config: this._config, account: this._account },
1121
1209
  e,
1122
1210
  f
@@ -1135,7 +1223,7 @@ class _0 extends _f {
1135
1223
  * @returns {ERC20VariableIncentive}
1136
1224
  */
1137
1225
  ERC20VariableIncentive(e, f) {
1138
- return new Ff(
1226
+ return new Mf(
1139
1227
  { config: this._config, account: this._account },
1140
1228
  e,
1141
1229
  f
@@ -1150,22 +1238,25 @@ class _0 extends _f {
1150
1238
  * @returns {GenericDeployableParams}
1151
1239
  */
1152
1240
  buildParameters(e, f) {
1153
- const [a, c] = this.validateDeploymentConfig(
1241
+ const [b, t] = this.validateDeploymentConfig(
1154
1242
  e,
1155
1243
  f
1156
1244
  );
1157
1245
  return {
1158
- abi: P,
1159
- bytecode: zf,
1160
- args: a,
1161
- ...this.optionallyAttachAccount(c.account)
1246
+ abi: R,
1247
+ bytecode: Jf,
1248
+ args: b,
1249
+ ...this.optionallyAttachAccount(t.account)
1162
1250
  };
1163
1251
  }
1164
- }
1252
+ };
1253
+ S.addresses = q;
1254
+ let V = S;
1165
1255
  export {
1166
- Kf as BOOST_CORE_ADDRESS,
1167
- v0 as BOOST_CORE_CLAIM_FEE,
1168
- _0 as BoostCore,
1169
- P as boostCoreAbi
1256
+ L0 as BOOST_CORE_ADDRESS,
1257
+ q as BOOST_CORE_ADDRESSES,
1258
+ O0 as BOOST_CORE_CLAIM_FEE,
1259
+ V as BoostCore,
1260
+ R as boostCoreAbi
1170
1261
  };
1171
1262
  //# sourceMappingURL=BoostCore.js.map