@boostxyz/sdk 2.1.2 → 2.2.1

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 (157) hide show
  1. package/dist/Actions/Action.cjs +1 -1
  2. package/dist/Actions/Action.cjs.map +1 -1
  3. package/dist/Actions/Action.d.ts +2 -1
  4. package/dist/Actions/Action.d.ts.map +1 -1
  5. package/dist/Actions/Action.js +14 -13
  6. package/dist/Actions/Action.js.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 +219 -0
  10. package/dist/Actions/EventAction.d.ts.map +1 -1
  11. package/dist/Actions/EventAction.js +39 -39
  12. package/dist/Actions/EventAction.js.map +1 -1
  13. package/dist/AllowLists/AllowList.cjs +1 -1
  14. package/dist/AllowLists/AllowList.cjs.map +1 -1
  15. package/dist/AllowLists/AllowList.d.ts +2 -1
  16. package/dist/AllowLists/AllowList.d.ts.map +1 -1
  17. package/dist/AllowLists/AllowList.js +18 -17
  18. package/dist/AllowLists/AllowList.js.map +1 -1
  19. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  20. package/dist/AllowLists/SimpleAllowList.js +9 -9
  21. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  22. package/dist/AllowLists/SimpleDenyList.js +2 -2
  23. package/dist/Auth/PassthroughAuth.cjs +1 -1
  24. package/dist/Auth/PassthroughAuth.js +1 -1
  25. package/dist/BoostCore.cjs +2 -2
  26. package/dist/BoostCore.cjs.map +1 -1
  27. package/dist/BoostCore.d.ts +33 -0
  28. package/dist/BoostCore.d.ts.map +1 -1
  29. package/dist/BoostCore.js +98 -81
  30. package/dist/BoostCore.js.map +1 -1
  31. package/dist/BoostRegistry.cjs +1 -1
  32. package/dist/BoostRegistry.js +12 -12
  33. package/dist/{Budget-CUIFf1Br.js → Budget-2Zb3Mb-8.js} +40 -39
  34. package/dist/{Budget-CUIFf1Br.js.map → Budget-2Zb3Mb-8.js.map} +1 -1
  35. package/dist/{Budget-cI30CIMN.cjs → Budget-2xKEvkbL.cjs} +2 -2
  36. package/dist/{Budget-cI30CIMN.cjs.map → Budget-2xKEvkbL.cjs.map} +1 -1
  37. package/dist/Budgets/Budget.cjs +1 -1
  38. package/dist/Budgets/Budget.d.ts +2 -1
  39. package/dist/Budgets/Budget.d.ts.map +1 -1
  40. package/dist/Budgets/Budget.js +3 -3
  41. package/dist/Budgets/ManagedBudget.cjs +1 -1
  42. package/dist/Budgets/ManagedBudget.js +33 -33
  43. package/dist/Deployable/DeployableTarget.cjs +1 -1
  44. package/dist/Deployable/DeployableTarget.js +1 -1
  45. package/dist/Deployable/DeployableTargetWithRBAC.cjs +1 -1
  46. package/dist/Deployable/DeployableTargetWithRBAC.cjs.map +1 -1
  47. package/dist/Deployable/DeployableTargetWithRBAC.d.ts +158 -0
  48. package/dist/Deployable/DeployableTargetWithRBAC.d.ts.map +1 -1
  49. package/dist/Deployable/DeployableTargetWithRBAC.js +268 -31
  50. package/dist/Deployable/DeployableTargetWithRBAC.js.map +1 -1
  51. package/dist/Incentive-CfIjdL4T.cjs +2 -0
  52. package/dist/Incentive-CfIjdL4T.cjs.map +1 -0
  53. package/dist/Incentive-DNwTyG5Z.js +393 -0
  54. package/dist/Incentive-DNwTyG5Z.js.map +1 -0
  55. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  56. package/dist/Incentives/AllowListIncentive.cjs.map +1 -1
  57. package/dist/Incentives/AllowListIncentive.js +28 -28
  58. package/dist/Incentives/AllowListIncentive.js.map +1 -1
  59. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  60. package/dist/Incentives/CGDAIncentive.cjs.map +1 -1
  61. package/dist/Incentives/CGDAIncentive.d.ts +30 -0
  62. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -1
  63. package/dist/Incentives/CGDAIncentive.js +25 -25
  64. package/dist/Incentives/CGDAIncentive.js.map +1 -1
  65. package/dist/Incentives/ERC1155Incentive.d.ts +25 -0
  66. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -1
  67. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  68. package/dist/Incentives/ERC20Incentive.cjs.map +1 -1
  69. package/dist/Incentives/ERC20Incentive.d.ts +30 -0
  70. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -1
  71. package/dist/Incentives/ERC20Incentive.js +42 -42
  72. package/dist/Incentives/ERC20Incentive.js.map +1 -1
  73. package/dist/Incentives/ERC20PeggedIncentive.d.ts +905 -0
  74. package/dist/Incentives/ERC20PeggedIncentive.d.ts.map +1 -0
  75. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs +1 -1
  76. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs.map +1 -1
  77. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts +67 -0
  78. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts.map +1 -1
  79. package/dist/Incentives/ERC20VariableCriteriaIncentive.js +31 -31
  80. package/dist/Incentives/ERC20VariableCriteriaIncentive.js.map +1 -1
  81. package/dist/Incentives/ERC20VariableIncentive.cjs +1 -1
  82. package/dist/Incentives/ERC20VariableIncentive.cjs.map +1 -1
  83. package/dist/Incentives/ERC20VariableIncentive.d.ts +20 -0
  84. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  85. package/dist/Incentives/ERC20VariableIncentive.js +18 -18
  86. package/dist/Incentives/ERC20VariableIncentive.js.map +1 -1
  87. package/dist/Incentives/Incentive.cjs +1 -1
  88. package/dist/Incentives/Incentive.cjs.map +1 -1
  89. package/dist/Incentives/Incentive.d.ts +26 -4
  90. package/dist/Incentives/Incentive.d.ts.map +1 -1
  91. package/dist/Incentives/Incentive.js +20 -40
  92. package/dist/Incentives/Incentive.js.map +1 -1
  93. package/dist/Incentives/PointsIncentive.cjs +1 -1
  94. package/dist/Incentives/PointsIncentive.cjs.map +1 -1
  95. package/dist/Incentives/PointsIncentive.d.ts +25 -0
  96. package/dist/Incentives/PointsIncentive.d.ts.map +1 -1
  97. package/dist/Incentives/PointsIncentive.js +29 -29
  98. package/dist/Incentives/PointsIncentive.js.map +1 -1
  99. package/dist/{SimpleDenyList-Ds0CQ4uR.cjs → SimpleDenyList-BQ0GqQfC.cjs} +2 -2
  100. package/dist/{SimpleDenyList-Ds0CQ4uR.cjs.map → SimpleDenyList-BQ0GqQfC.cjs.map} +1 -1
  101. package/dist/{SimpleDenyList-CXruWOyu.js → SimpleDenyList-D49GF3NX.js} +11 -11
  102. package/dist/{SimpleDenyList-CXruWOyu.js.map → SimpleDenyList-D49GF3NX.js.map} +1 -1
  103. package/dist/Validators/LimitedSignerValidator.cjs +1 -1
  104. package/dist/Validators/LimitedSignerValidator.d.ts +10 -0
  105. package/dist/Validators/LimitedSignerValidator.d.ts.map +1 -1
  106. package/dist/Validators/LimitedSignerValidator.js +15 -15
  107. package/dist/Validators/SignerValidator.cjs +1 -1
  108. package/dist/Validators/SignerValidator.cjs.map +1 -1
  109. package/dist/Validators/SignerValidator.d.ts +10 -0
  110. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  111. package/dist/Validators/SignerValidator.js +8 -8
  112. package/dist/Validators/SignerValidator.js.map +1 -1
  113. package/dist/Validators/Validator.cjs +1 -1
  114. package/dist/Validators/Validator.cjs.map +1 -1
  115. package/dist/Validators/Validator.d.ts +2 -1
  116. package/dist/Validators/Validator.d.ts.map +1 -1
  117. package/dist/Validators/Validator.js +20 -19
  118. package/dist/Validators/Validator.js.map +1 -1
  119. package/dist/{componentInterfaces-dakxtQHf.js → componentInterfaces-C4uAYjSo.js} +12 -12
  120. package/dist/componentInterfaces-C4uAYjSo.js.map +1 -0
  121. package/dist/deployments.json +3 -0
  122. package/dist/{generated-BTslM7bf.js → generated-B5pVBNb-.js} +1835 -730
  123. package/dist/generated-B5pVBNb-.js.map +1 -0
  124. package/dist/generated-D50hBWtr.cjs +3 -0
  125. package/dist/generated-D50hBWtr.cjs.map +1 -0
  126. package/dist/index.cjs +1 -1
  127. package/dist/index.d.ts +1 -0
  128. package/dist/index.d.ts.map +1 -1
  129. package/dist/index.js +113 -110
  130. package/package.json +2 -2
  131. package/src/Actions/Action.ts +3 -0
  132. package/src/Actions/EventAction.test.ts +49 -2
  133. package/src/Actions/EventAction.ts +12 -4
  134. package/src/AllowLists/AllowList.ts +3 -0
  135. package/src/BoostCore.ts +27 -5
  136. package/src/Budgets/Budget.ts +3 -0
  137. package/src/Deployable/DeployableTargetWithRBAC.test.ts +175 -0
  138. package/src/Deployable/DeployableTargetWithRBAC.ts +281 -0
  139. package/src/Incentives/AllowListIncentive.test.ts +48 -0
  140. package/src/Incentives/AllowListIncentive.ts +1 -1
  141. package/src/Incentives/CGDAIncentive.test.ts +50 -0
  142. package/src/Incentives/CGDAIncentive.ts +1 -1
  143. package/src/Incentives/ERC1155Incentive.ts +1 -1
  144. package/src/Incentives/ERC20Incentive.test.ts +49 -0
  145. package/src/Incentives/ERC20Incentive.ts +1 -1
  146. package/src/Incentives/ERC20PeggedIncentive.ts +507 -0
  147. package/src/Incentives/ERC20VariableIncentive.test.ts +48 -0
  148. package/src/Incentives/ERC20VariableIncentive.ts +1 -1
  149. package/src/Incentives/Incentive.ts +9 -1
  150. package/src/Incentives/PointsIncentive.test.ts +51 -0
  151. package/src/Incentives/PointsIncentive.ts +1 -1
  152. package/src/Validators/Validator.ts +3 -0
  153. package/src/index.ts +1 -0
  154. package/dist/componentInterfaces-dakxtQHf.js.map +0 -1
  155. package/dist/generated-BTslM7bf.js.map +0 -1
  156. package/dist/generated-DhXxTQ20.cjs +0 -3
  157. package/dist/generated-DhXxTQ20.cjs.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../generated-DhXxTQ20.cjs"),r=require("viem"),p=require("viem/accounts"),g=require("../deployments-BucJ-gwk.cjs"),A=require("../Deployable/DeployableTarget.cjs"),w=require("../utils.cjs"),D="0x610120604052348015610010575f80fd5b503073ffffffffffffffffffffffffffffffffffffffff16608081815250504660a0818152505060608061004861013960201b60201c565b6100635761005a61014160201b60201c565b80925081935050505b5f61007261013960201b60201c565b610083578280519060200120610087565b5f801b5b90505f61009861013960201b60201c565b6100a95782805190602001206100ad565b5f801b5b90508160c081815250508060e081815250505f6100ce61013960201b60201c565b610118576040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815283602082015282604082015246606082015230608082015260a081209150505b80610100818152505050505050506101346101b860201b60201c565b61024d565b5f6001905090565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f6101c761022460201b60201c565b9050805460018116156101e15763f92ee8a95f526004601cfd5b8160c01c808260011c1461021f578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b60805160a05160c05160e0516101005161236361028a5f395f610fe601525f61128d01525f61126a01525f6112fc01525f61132001526123635ff3fe608060405260043610610113575f3560e01c8063715018a61161009f578063ce5c134f11610063578063ce5c134f1461035d578063d3de6e7514610387578063f04e283e146103c3578063f2fde38b146103df578063fee81cf4146103fb57610113565b8063715018a614610295578063736c0d5b1461029f57806384b0196e146102db5780638da5cb5b1461030b578063a1d2756f1461033557610113565b80632f9e058b116100e65780632f9e058b146101c35780634359d28a146101ff578063439fab911461022757806354d1f13d1461024f578063703b69001461025957610113565b806301ffc9a7146101175780630668e9d414610153578063256929621461018f57806328d6183b14610199575b5f80fd5b348015610122575f80fd5b5061013d60048036038101906101389190611511565b610437565b60405161014a9190611556565b60405180910390f35b34801561015e575f80fd5b50610179600480360381019061017491906115fc565b6104b0565b6040516101869190611664565b60405180910390f35b6101976104e5565b005b3480156101a4575f80fd5b506101ad610536565b6040516101ba919061168c565b60405180910390f35b3480156101ce575f80fd5b506101e960048036038101906101e491906116cf565b61055d565b6040516101f69190611709565b60405180910390f35b34801561020a575f80fd5b50610225600480360381019061022091906117d8565b610572565b005b348015610232575f80fd5b5061024d600480360381019061024891906118ab565b61067b565b005b6102576107fd565b005b348015610264575f80fd5b5061027f600480360381019061027a91906118f6565b610836565b60405161028c9190611556565b60405180910390f35b61029d61089b565b005b3480156102aa575f80fd5b506102c560048036038101906102c0919061197a565b6108ae565b6040516102d29190611556565b60405180910390f35b3480156102e6575f80fd5b506102ef6108ca565b6040516103029796959493929190611b15565b60405180910390f35b348015610316575f80fd5b5061031f610915565b60405161032c9190611b97565b60405180910390f35b348015610340575f80fd5b5061035b6004803603810190610356919061197a565b61093d565b005b348015610368575f80fd5b50610371610988565b60405161037e9190611709565b60405180910390f35b348015610392575f80fd5b506103ad60048036038101906103a89190611d0e565b61098e565b6040516103ba9190611664565b60405180910390f35b6103dd60048036038101906103d8919061197a565b6109f7565b005b6103f960048036038101906103f4919061197a565b610a35565b005b348015610406575f80fd5b50610421600480360381019061041c919061197a565b610a5e565b60405161042e9190611709565b60405180910390f35b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806104a957506104a882610a77565b5b9050919050565b5f8383836040516020016104c693929190611df3565b6040516020818303038152906040528051906020012090509392505050565b5f6104ee610af0565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fc8ebc75800000000000000000000000000000000000000000000000000000000905090565b6001602052805f5260405f205f915090505481565b61057a610afa565b8181905084849050146105b9576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84849050811015610674578282828181106105d9576105d8611e2f565b5b90506020020160208101906105ee9190611e86565b5f8087878581811061060357610602611e2f565b5b9050602002016020810190610618919061197a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506105bb565b5050505050565b5f610684610b31565b905080546003825580156106b65760018160011c14303b106106ad5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f805f85858101906106c99190611fac565b9250925092506106f2835f815181106106e5576106e4611e2f565b5b6020026020010151610b5a565b806002819055505f5b835181101561077f5760015f8086848151811061071b5761071a611e2f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506106fb565b508160045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505080156107f8576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f610842868686610c30565b61088357836040517f059b704500000000000000000000000000000000000000000000000000000000815260040161087a9190611b97565b60405180910390fd5b6108908686868686610c97565b905095945050505050565b6108a3610afa565b6108ac5f610e8a565b565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f6060805f805f60607f0f0000000000000000000000000000000000000000000000000000000000000096506108fe610f50565b809650819750505046935030925090919293949596565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610945610afa565b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60025481565b5f6109ed7ffea51d5bd45bcd3c2ecc3679b43a3b80b0bd0923f8c16f822455b8cdecd9852f86868686805190602001206040516020016109d2959493929190612027565b60405160208183030381529060405280519060200120610fc7565b9050949350505050565b6109ff610afa565b63389a75e1600c52805f526020600c208054421115610a2557636f5e88185f526004601cfd5b5f815550610a3281610e8a565b50565b610a3d610afa565b8060601b610a5257637448fbae5f526004601cfd5b610a5b81610e8a565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610ae95750610ae882611043565b5b9050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610b2f576382b429005f526004601cfd5b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610b626110bc565b15610bda577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610b9c57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610c2d565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f80610c3d8585856104b0565b90505f6001805f8481526020019081526020015f2054610c5d91906120a5565b9050600254811115610c73575f92505050610c90565b8060015f8481526020019081526020015f20819055506001925050505b9392505050565b5f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d1e576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8383810190610d2e9190612165565b90505f815f0151806020019051810190610d4891906122bf565b90505f610d5f89836040015189866020015161098e565b905087826040015160ff1611610db2578160400151886040517f17c66bc7000000000000000000000000000000000000000000000000000000008152600401610da9929190612306565b60405180910390fd5b5f80835f015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610e34576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4a818960036110c09092919063ffffffff16565b610e7c818360200151845f015173ffffffffffffffffffffffffffffffffffffffff166111259092919063ffffffff16565b935050505095945050505050565b610e926110bc565b15610ef7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610f4d565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f610fd0611228565b15610fe457610fdd611230565b9050611020565b7f0000000000000000000000000000000000000000000000000000000000000000905061100f6112f8565b1561101f5761101c611230565b90505b5b6719010000000000005f5280601a5281603a52604260182090505f603a52919050565b5f7fb8ce7b22000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110b557506110b482611350565b5b9050919050565b5f90565b5f633f57fc5c60e01b90505f634de1225a60e01b905060078311156110eb57815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c600116600118801561111857835f528560045260245ffd5b8183555050505050505050565b5f8360601b60601c9350831561122157604051835f5260208301516040526040835103611192576040830151601b8160ff1c016020528060011b60011c6060526020600160805f60015afa805187183d151761118f57600193505f60605282604052505050611221565b50505b60418351036111d85760608301515f1a60205260408301516060526020600160805f60015afa805186183d15176111d657600192505f606052816040525050611221565b505b5f60605280604052631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa5060208260443d01868b5afa83835114169450505050505b9392505050565b5f6001905090565b5f8061123a611228565b15611268575f80611249610f50565b91509150818051906020012093508080519060200120925050506112af565b7f000000000000000000000000000000000000000000000000000000000000000091507f000000000000000000000000000000000000000000000000000000000000000090505b6040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081209250505090565b5f807f000000000000000000000000000000000000000000000000000000000000000090505f7f0000000000000000000000000000000000000000000000000000000000000000905080301482461416159250505090565b5f7f5912b89c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806113c257506113c1826113c9565b5b9050919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061143b575061143a82611442565b5b9050919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6114f0816114bc565b81146114fa575f80fd5b50565b5f8135905061150b816114e7565b92915050565b5f60208284031215611526576115256114b4565b5b5f611533848285016114fd565b91505092915050565b5f8115159050919050565b6115508161153c565b82525050565b5f6020820190506115695f830184611547565b92915050565b5f819050919050565b6115818161156f565b811461158b575f80fd5b50565b5f8135905061159c81611578565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6115cb826115a2565b9050919050565b6115db816115c1565b81146115e5575f80fd5b50565b5f813590506115f6816115d2565b92915050565b5f805f60608486031215611613576116126114b4565b5b5f6116208682870161158e565b93505060206116318682870161158e565b9250506040611642868287016115e8565b9150509250925092565b5f819050919050565b61165e8161164c565b82525050565b5f6020820190506116775f830184611655565b92915050565b611686816114bc565b82525050565b5f60208201905061169f5f83018461167d565b92915050565b6116ae8161164c565b81146116b8575f80fd5b50565b5f813590506116c9816116a5565b92915050565b5f602082840312156116e4576116e36114b4565b5b5f6116f1848285016116bb565b91505092915050565b6117038161156f565b82525050565b5f60208201905061171c5f8301846116fa565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261174357611742611722565b5b8235905067ffffffffffffffff8111156117605761175f611726565b5b60208301915083602082028301111561177c5761177b61172a565b5b9250929050565b5f8083601f84011261179857611797611722565b5b8235905067ffffffffffffffff8111156117b5576117b4611726565b5b6020830191508360208202830111156117d1576117d061172a565b5b9250929050565b5f805f80604085870312156117f0576117ef6114b4565b5b5f85013567ffffffffffffffff81111561180d5761180c6114b8565b5b6118198782880161172e565b9450945050602085013567ffffffffffffffff81111561183c5761183b6114b8565b5b61184887828801611783565b925092505092959194509250565b5f8083601f84011261186b5761186a611722565b5b8235905067ffffffffffffffff81111561188857611887611726565b5b6020830191508360018202830111156118a4576118a361172a565b5b9250929050565b5f80602083850312156118c1576118c06114b4565b5b5f83013567ffffffffffffffff8111156118de576118dd6114b8565b5b6118ea85828601611856565b92509250509250929050565b5f805f805f6080868803121561190f5761190e6114b4565b5b5f61191c8882890161158e565b955050602061192d8882890161158e565b945050604061193e888289016115e8565b935050606086013567ffffffffffffffff81111561195f5761195e6114b8565b5b61196b88828901611856565b92509250509295509295909350565b5f6020828403121561198f5761198e6114b4565b5b5f61199c848285016115e8565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6119d9816119a5565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611a21826119df565b611a2b81856119e9565b9350611a3b8185602086016119f9565b611a4481611a07565b840191505092915050565b611a58816115c1565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611a908161156f565b82525050565b5f611aa18383611a87565b60208301905092915050565b5f602082019050919050565b5f611ac382611a5e565b611acd8185611a68565b9350611ad883611a78565b805f5b83811015611b08578151611aef8882611a96565b9750611afa83611aad565b925050600181019050611adb565b5085935050505092915050565b5f60e082019050611b285f83018a6119d0565b8181036020830152611b3a8189611a17565b90508181036040830152611b4e8188611a17565b9050611b5d60608301876116fa565b611b6a6080830186611a4f565b611b7760a0830185611655565b81810360c0830152611b898184611ab9565b905098975050505050505050565b5f602082019050611baa5f830184611a4f565b92915050565b5f60ff82169050919050565b611bc581611bb0565b8114611bcf575f80fd5b50565b5f81359050611be081611bbc565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611c2082611a07565b810181811067ffffffffffffffff82111715611c3f57611c3e611bea565b5b80604052505050565b5f611c516114ab565b9050611c5d8282611c17565b919050565b5f67ffffffffffffffff821115611c7c57611c7b611bea565b5b611c8582611a07565b9050602081019050919050565b828183375f83830152505050565b5f611cb2611cad84611c62565b611c48565b905082815260208101848484011115611cce57611ccd611be6565b5b611cd9848285611c92565b509392505050565b5f82601f830112611cf557611cf4611722565b5b8135611d05848260208601611ca0565b91505092915050565b5f805f8060808587031215611d2657611d256114b4565b5b5f611d338782880161158e565b9450506020611d4487828801611bd2565b9350506040611d55878288016115e8565b925050606085013567ffffffffffffffff811115611d7657611d756114b8565b5b611d8287828801611ce1565b91505092959194509250565b5f819050919050565b611da8611da38261156f565b611d8e565b82525050565b5f8160601b9050919050565b5f611dc482611dae565b9050919050565b5f611dd582611dba565b9050919050565b611ded611de8826115c1565b611dcb565b82525050565b5f611dfe8286611d97565b602082019150611e0e8285611d97565b602082019150611e1e8284611ddc565b601482019150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b611e658161153c565b8114611e6f575f80fd5b50565b5f81359050611e8081611e5c565b92915050565b5f60208284031215611e9b57611e9a6114b4565b5b5f611ea884828501611e72565b91505092915050565b5f67ffffffffffffffff821115611ecb57611eca611bea565b5b602082029050602081019050919050565b5f611eee611ee984611eb1565b611c48565b90508083825260208201905060208402830185811115611f1157611f1061172a565b5b835b81811015611f3a5780611f2688826115e8565b845260208401935050602081019050611f13565b5050509392505050565b5f82601f830112611f5857611f57611722565b5b8135611f68848260208601611edc565b91505092915050565b5f611f7b826115a2565b9050919050565b611f8b81611f71565b8114611f95575f80fd5b50565b5f81359050611fa681611f82565b92915050565b5f805f60608486031215611fc357611fc26114b4565b5b5f84013567ffffffffffffffff811115611fe057611fdf6114b8565b5b611fec86828701611f44565b9350506020611ffd86828701611f98565b925050604061200e8682870161158e565b9150509250925092565b61202181611bb0565b82525050565b5f60a08201905061203a5f830188611655565b61204760208301876116fa565b6120546040830186612018565b6120616060830185611a4f565b61206e6080830184611655565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6120af8261156f565b91506120ba8361156f565b92508282019050808211156120d2576120d1612078565b5b92915050565b5f80fd5b5f80fd5b5f604082840312156120f5576120f46120d8565b5b6120ff6040611c48565b90505f82013567ffffffffffffffff81111561211e5761211d6120dc565b5b61212a84828501611ce1565b5f83015250602082013567ffffffffffffffff81111561214d5761214c6120dc565b5b61215984828501611ce1565b60208301525092915050565b5f6020828403121561217a576121796114b4565b5b5f82013567ffffffffffffffff811115612197576121966114b8565b5b6121a3848285016120e0565b91505092915050565b5f815190506121ba816115d2565b92915050565b5f6121d26121cd84611c62565b611c48565b9050828152602081018484840111156121ee576121ed611be6565b5b6121f98482856119f9565b509392505050565b5f82601f83011261221557612214611722565b5b81516122258482602086016121c0565b91505092915050565b5f8151905061223c81611bbc565b92915050565b5f60608284031215612257576122566120d8565b5b6122616060611c48565b90505f612270848285016121ac565b5f83015250602082015167ffffffffffffffff811115612293576122926120dc565b5b61229f84828501612201565b60208301525060406122b38482850161222e565b60408301525092915050565b5f602082840312156122d4576122d36114b4565b5b5f82015167ffffffffffffffff8111156122f1576122f06114b8565b5b6122fd84828501612242565b91505092915050565b5f6040820190506123195f830185612018565b61232660208301846116fa565b939250505056fea2646970667358221220d03c16d35d1d66252450c489ed15af375cf310cdf687ee8778277bd8f2bb2cca64736f6c634300081a0033",i=class i extends A.DeployableTarget{constructor(){super(...arguments),this.abi=e.H}async signers(f,b){return await e.dM(this._config,{address:this.assertValidAddress(),args:[f],...b})}async hashSignerData(f,b){return await e.oM(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveQuantity,f.claimant,f.incentiveData],...b})}async validate(f,b){return await this.awaitResult(this.validateRaw(f,b))}async validateRaw(f,b){const{request:a,result:d}=await e.xM(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveId,f.claimant,f.claimData],...this.optionallyAttachAccount(),...b});return{hash:await e.NM(this._config,a),result:d}}async setAuthorized(f,b,a){return await this.awaitResult(this.setAuthorizedRaw(f,b,a))}async setAuthorizedRaw(f,b,a){const{request:d,result:t}=await e.zM(this._config,{address:this.assertValidAddress(),args:[f,b],...this.optionallyAttachAccount(),...a});return{hash:await e.AM(this._config,d),result:t}}async setValidatorCallerRaw(f,b){const{request:a,result:d}=await e.BM(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await e.hM(this._config,a),result:d}}async setValidatorCaller(f,b){return await this.awaitResult(this.setValidatorCallerRaw(f,b))}async encodeClaimData(f){return await o({...f,validator:this.assertValidAddress()})}buildParameters(f,b){const[a,d]=this.validateDeploymentConfig(f,b);return{abi:e.H,bytecode:D,args:[u(a)],...this.optionallyAttachAccount(d.account)}}};i.bases={31337:void 0,...g.SignerValidator},i.registryType=w.RegistryType.VALIDATOR;let s=i;async function o({signer:c,incentiveData:f,chainId:b,validator:a,incentiveQuantity:d,claimant:t,boostId:n}){const y={domain:{name:"LimitedSignerValidator",version:"1",chainId:b,verifyingContract:a},types:{SignerValidatorData:[{name:"boostId",type:"uint256"},{name:"incentiveQuantity",type:"uint8"},{name:"claimant",type:"address"},{name:"incentiveData",type:"bytes"}]},primaryType:"SignerValidatorData",message:{boostId:n,incentiveQuantity:d,claimant:t,incentiveData:f}},m=await p.signTypedData({...y,privateKey:c.key}),h=l({signer:c.account,signature:m,incentiveQuantity:d});return r.encodeAbiParameters([{type:"tuple",name:"BoostClaimData",components:[{type:"bytes",name:"validatorData"},{type:"bytes",name:"incentiveData"}]}],[{validatorData:h,incentiveData:f}])}function l({signer:c,signature:f,incentiveQuantity:b}){return r.encodeAbiParameters([{type:"tuple",name:"SignerValidatorInputParams",components:[{type:"address",name:"signer"},{type:"bytes",name:"signature"},{type:"uint8",name:"incentiveQuantity"}]}],[{signer:c,signature:f,incentiveQuantity:b}])}function u({signers:c,validatorCaller:f,maxClaimCount:b}){return r.encodeAbiParameters([{type:"address[]",name:"signers"},{type:"address",name:"validatorCaller"},{type:"uint256",name:"maxClaimCount"}],[c,f,BigInt(b)])}exports.limitedSignerValidatorAbi=e.H;exports.LimitedSignerValidator=s;exports.prepareLimitedSignerValidatorClaimDataPayload=o;exports.prepareLimitedSignerValidatorInputParams=l;exports.prepareLimitedSignerValidatorPayload=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../generated-D50hBWtr.cjs"),r=require("viem"),p=require("viem/accounts"),g=require("../deployments-BucJ-gwk.cjs"),A=require("../Deployable/DeployableTarget.cjs"),w=require("../utils.cjs"),D="0x610120604052348015610010575f80fd5b503073ffffffffffffffffffffffffffffffffffffffff16608081815250504660a0818152505060608061004861013960201b60201c565b6100635761005a61014160201b60201c565b80925081935050505b5f61007261013960201b60201c565b610083578280519060200120610087565b5f801b5b90505f61009861013960201b60201c565b6100a95782805190602001206100ad565b5f801b5b90508160c081815250508060e081815250505f6100ce61013960201b60201c565b610118576040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815283602082015282604082015246606082015230608082015260a081209150505b80610100818152505050505050506101346101b860201b60201c565b61024d565b5f6001905090565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f6101c761022460201b60201c565b9050805460018116156101e15763f92ee8a95f526004601cfd5b8160c01c808260011c1461021f578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b60805160a05160c05160e0516101005161236361028a5f395f610fe601525f61128d01525f61126a01525f6112fc01525f61132001526123635ff3fe608060405260043610610113575f3560e01c8063715018a61161009f578063ce5c134f11610063578063ce5c134f1461035d578063d3de6e7514610387578063f04e283e146103c3578063f2fde38b146103df578063fee81cf4146103fb57610113565b8063715018a614610295578063736c0d5b1461029f57806384b0196e146102db5780638da5cb5b1461030b578063a1d2756f1461033557610113565b80632f9e058b116100e65780632f9e058b146101c35780634359d28a146101ff578063439fab911461022757806354d1f13d1461024f578063703b69001461025957610113565b806301ffc9a7146101175780630668e9d414610153578063256929621461018f57806328d6183b14610199575b5f80fd5b348015610122575f80fd5b5061013d60048036038101906101389190611511565b610437565b60405161014a9190611556565b60405180910390f35b34801561015e575f80fd5b50610179600480360381019061017491906115fc565b6104b0565b6040516101869190611664565b60405180910390f35b6101976104e5565b005b3480156101a4575f80fd5b506101ad610536565b6040516101ba919061168c565b60405180910390f35b3480156101ce575f80fd5b506101e960048036038101906101e491906116cf565b61055d565b6040516101f69190611709565b60405180910390f35b34801561020a575f80fd5b50610225600480360381019061022091906117d8565b610572565b005b348015610232575f80fd5b5061024d600480360381019061024891906118ab565b61067b565b005b6102576107fd565b005b348015610264575f80fd5b5061027f600480360381019061027a91906118f6565b610836565b60405161028c9190611556565b60405180910390f35b61029d61089b565b005b3480156102aa575f80fd5b506102c560048036038101906102c0919061197a565b6108ae565b6040516102d29190611556565b60405180910390f35b3480156102e6575f80fd5b506102ef6108ca565b6040516103029796959493929190611b15565b60405180910390f35b348015610316575f80fd5b5061031f610915565b60405161032c9190611b97565b60405180910390f35b348015610340575f80fd5b5061035b6004803603810190610356919061197a565b61093d565b005b348015610368575f80fd5b50610371610988565b60405161037e9190611709565b60405180910390f35b348015610392575f80fd5b506103ad60048036038101906103a89190611d0e565b61098e565b6040516103ba9190611664565b60405180910390f35b6103dd60048036038101906103d8919061197a565b6109f7565b005b6103f960048036038101906103f4919061197a565b610a35565b005b348015610406575f80fd5b50610421600480360381019061041c919061197a565b610a5e565b60405161042e9190611709565b60405180910390f35b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806104a957506104a882610a77565b5b9050919050565b5f8383836040516020016104c693929190611df3565b6040516020818303038152906040528051906020012090509392505050565b5f6104ee610af0565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fc8ebc75800000000000000000000000000000000000000000000000000000000905090565b6001602052805f5260405f205f915090505481565b61057a610afa565b8181905084849050146105b9576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84849050811015610674578282828181106105d9576105d8611e2f565b5b90506020020160208101906105ee9190611e86565b5f8087878581811061060357610602611e2f565b5b9050602002016020810190610618919061197a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506105bb565b5050505050565b5f610684610b31565b905080546003825580156106b65760018160011c14303b106106ad5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f805f85858101906106c99190611fac565b9250925092506106f2835f815181106106e5576106e4611e2f565b5b6020026020010151610b5a565b806002819055505f5b835181101561077f5760015f8086848151811061071b5761071a611e2f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506106fb565b508160045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505080156107f8576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f610842868686610c30565b61088357836040517f059b704500000000000000000000000000000000000000000000000000000000815260040161087a9190611b97565b60405180910390fd5b6108908686868686610c97565b905095945050505050565b6108a3610afa565b6108ac5f610e8a565b565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f6060805f805f60607f0f0000000000000000000000000000000000000000000000000000000000000096506108fe610f50565b809650819750505046935030925090919293949596565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610945610afa565b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60025481565b5f6109ed7ffea51d5bd45bcd3c2ecc3679b43a3b80b0bd0923f8c16f822455b8cdecd9852f86868686805190602001206040516020016109d2959493929190612027565b60405160208183030381529060405280519060200120610fc7565b9050949350505050565b6109ff610afa565b63389a75e1600c52805f526020600c208054421115610a2557636f5e88185f526004601cfd5b5f815550610a3281610e8a565b50565b610a3d610afa565b8060601b610a5257637448fbae5f526004601cfd5b610a5b81610e8a565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610ae95750610ae882611043565b5b9050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610b2f576382b429005f526004601cfd5b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610b626110bc565b15610bda577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610b9c57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610c2d565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f80610c3d8585856104b0565b90505f6001805f8481526020019081526020015f2054610c5d91906120a5565b9050600254811115610c73575f92505050610c90565b8060015f8481526020019081526020015f20819055506001925050505b9392505050565b5f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d1e576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8383810190610d2e9190612165565b90505f815f0151806020019051810190610d4891906122bf565b90505f610d5f89836040015189866020015161098e565b905087826040015160ff1611610db2578160400151886040517f17c66bc7000000000000000000000000000000000000000000000000000000008152600401610da9929190612306565b60405180910390fd5b5f80835f015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610e34576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4a818960036110c09092919063ffffffff16565b610e7c818360200151845f015173ffffffffffffffffffffffffffffffffffffffff166111259092919063ffffffff16565b935050505095945050505050565b610e926110bc565b15610ef7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610f4d565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f610fd0611228565b15610fe457610fdd611230565b9050611020565b7f0000000000000000000000000000000000000000000000000000000000000000905061100f6112f8565b1561101f5761101c611230565b90505b5b6719010000000000005f5280601a5281603a52604260182090505f603a52919050565b5f7fb8ce7b22000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110b557506110b482611350565b5b9050919050565b5f90565b5f633f57fc5c60e01b90505f634de1225a60e01b905060078311156110eb57815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c600116600118801561111857835f528560045260245ffd5b8183555050505050505050565b5f8360601b60601c9350831561122157604051835f5260208301516040526040835103611192576040830151601b8160ff1c016020528060011b60011c6060526020600160805f60015afa805187183d151761118f57600193505f60605282604052505050611221565b50505b60418351036111d85760608301515f1a60205260408301516060526020600160805f60015afa805186183d15176111d657600192505f606052816040525050611221565b505b5f60605280604052631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa5060208260443d01868b5afa83835114169450505050505b9392505050565b5f6001905090565b5f8061123a611228565b15611268575f80611249610f50565b91509150818051906020012093508080519060200120925050506112af565b7f000000000000000000000000000000000000000000000000000000000000000091507f000000000000000000000000000000000000000000000000000000000000000090505b6040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081209250505090565b5f807f000000000000000000000000000000000000000000000000000000000000000090505f7f0000000000000000000000000000000000000000000000000000000000000000905080301482461416159250505090565b5f7f5912b89c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806113c257506113c1826113c9565b5b9050919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061143b575061143a82611442565b5b9050919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6114f0816114bc565b81146114fa575f80fd5b50565b5f8135905061150b816114e7565b92915050565b5f60208284031215611526576115256114b4565b5b5f611533848285016114fd565b91505092915050565b5f8115159050919050565b6115508161153c565b82525050565b5f6020820190506115695f830184611547565b92915050565b5f819050919050565b6115818161156f565b811461158b575f80fd5b50565b5f8135905061159c81611578565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6115cb826115a2565b9050919050565b6115db816115c1565b81146115e5575f80fd5b50565b5f813590506115f6816115d2565b92915050565b5f805f60608486031215611613576116126114b4565b5b5f6116208682870161158e565b93505060206116318682870161158e565b9250506040611642868287016115e8565b9150509250925092565b5f819050919050565b61165e8161164c565b82525050565b5f6020820190506116775f830184611655565b92915050565b611686816114bc565b82525050565b5f60208201905061169f5f83018461167d565b92915050565b6116ae8161164c565b81146116b8575f80fd5b50565b5f813590506116c9816116a5565b92915050565b5f602082840312156116e4576116e36114b4565b5b5f6116f1848285016116bb565b91505092915050565b6117038161156f565b82525050565b5f60208201905061171c5f8301846116fa565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261174357611742611722565b5b8235905067ffffffffffffffff8111156117605761175f611726565b5b60208301915083602082028301111561177c5761177b61172a565b5b9250929050565b5f8083601f84011261179857611797611722565b5b8235905067ffffffffffffffff8111156117b5576117b4611726565b5b6020830191508360208202830111156117d1576117d061172a565b5b9250929050565b5f805f80604085870312156117f0576117ef6114b4565b5b5f85013567ffffffffffffffff81111561180d5761180c6114b8565b5b6118198782880161172e565b9450945050602085013567ffffffffffffffff81111561183c5761183b6114b8565b5b61184887828801611783565b925092505092959194509250565b5f8083601f84011261186b5761186a611722565b5b8235905067ffffffffffffffff81111561188857611887611726565b5b6020830191508360018202830111156118a4576118a361172a565b5b9250929050565b5f80602083850312156118c1576118c06114b4565b5b5f83013567ffffffffffffffff8111156118de576118dd6114b8565b5b6118ea85828601611856565b92509250509250929050565b5f805f805f6080868803121561190f5761190e6114b4565b5b5f61191c8882890161158e565b955050602061192d8882890161158e565b945050604061193e888289016115e8565b935050606086013567ffffffffffffffff81111561195f5761195e6114b8565b5b61196b88828901611856565b92509250509295509295909350565b5f6020828403121561198f5761198e6114b4565b5b5f61199c848285016115e8565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6119d9816119a5565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611a21826119df565b611a2b81856119e9565b9350611a3b8185602086016119f9565b611a4481611a07565b840191505092915050565b611a58816115c1565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611a908161156f565b82525050565b5f611aa18383611a87565b60208301905092915050565b5f602082019050919050565b5f611ac382611a5e565b611acd8185611a68565b9350611ad883611a78565b805f5b83811015611b08578151611aef8882611a96565b9750611afa83611aad565b925050600181019050611adb565b5085935050505092915050565b5f60e082019050611b285f83018a6119d0565b8181036020830152611b3a8189611a17565b90508181036040830152611b4e8188611a17565b9050611b5d60608301876116fa565b611b6a6080830186611a4f565b611b7760a0830185611655565b81810360c0830152611b898184611ab9565b905098975050505050505050565b5f602082019050611baa5f830184611a4f565b92915050565b5f60ff82169050919050565b611bc581611bb0565b8114611bcf575f80fd5b50565b5f81359050611be081611bbc565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611c2082611a07565b810181811067ffffffffffffffff82111715611c3f57611c3e611bea565b5b80604052505050565b5f611c516114ab565b9050611c5d8282611c17565b919050565b5f67ffffffffffffffff821115611c7c57611c7b611bea565b5b611c8582611a07565b9050602081019050919050565b828183375f83830152505050565b5f611cb2611cad84611c62565b611c48565b905082815260208101848484011115611cce57611ccd611be6565b5b611cd9848285611c92565b509392505050565b5f82601f830112611cf557611cf4611722565b5b8135611d05848260208601611ca0565b91505092915050565b5f805f8060808587031215611d2657611d256114b4565b5b5f611d338782880161158e565b9450506020611d4487828801611bd2565b9350506040611d55878288016115e8565b925050606085013567ffffffffffffffff811115611d7657611d756114b8565b5b611d8287828801611ce1565b91505092959194509250565b5f819050919050565b611da8611da38261156f565b611d8e565b82525050565b5f8160601b9050919050565b5f611dc482611dae565b9050919050565b5f611dd582611dba565b9050919050565b611ded611de8826115c1565b611dcb565b82525050565b5f611dfe8286611d97565b602082019150611e0e8285611d97565b602082019150611e1e8284611ddc565b601482019150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b611e658161153c565b8114611e6f575f80fd5b50565b5f81359050611e8081611e5c565b92915050565b5f60208284031215611e9b57611e9a6114b4565b5b5f611ea884828501611e72565b91505092915050565b5f67ffffffffffffffff821115611ecb57611eca611bea565b5b602082029050602081019050919050565b5f611eee611ee984611eb1565b611c48565b90508083825260208201905060208402830185811115611f1157611f1061172a565b5b835b81811015611f3a5780611f2688826115e8565b845260208401935050602081019050611f13565b5050509392505050565b5f82601f830112611f5857611f57611722565b5b8135611f68848260208601611edc565b91505092915050565b5f611f7b826115a2565b9050919050565b611f8b81611f71565b8114611f95575f80fd5b50565b5f81359050611fa681611f82565b92915050565b5f805f60608486031215611fc357611fc26114b4565b5b5f84013567ffffffffffffffff811115611fe057611fdf6114b8565b5b611fec86828701611f44565b9350506020611ffd86828701611f98565b925050604061200e8682870161158e565b9150509250925092565b61202181611bb0565b82525050565b5f60a08201905061203a5f830188611655565b61204760208301876116fa565b6120546040830186612018565b6120616060830185611a4f565b61206e6080830184611655565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6120af8261156f565b91506120ba8361156f565b92508282019050808211156120d2576120d1612078565b5b92915050565b5f80fd5b5f80fd5b5f604082840312156120f5576120f46120d8565b5b6120ff6040611c48565b90505f82013567ffffffffffffffff81111561211e5761211d6120dc565b5b61212a84828501611ce1565b5f83015250602082013567ffffffffffffffff81111561214d5761214c6120dc565b5b61215984828501611ce1565b60208301525092915050565b5f6020828403121561217a576121796114b4565b5b5f82013567ffffffffffffffff811115612197576121966114b8565b5b6121a3848285016120e0565b91505092915050565b5f815190506121ba816115d2565b92915050565b5f6121d26121cd84611c62565b611c48565b9050828152602081018484840111156121ee576121ed611be6565b5b6121f98482856119f9565b509392505050565b5f82601f83011261221557612214611722565b5b81516122258482602086016121c0565b91505092915050565b5f8151905061223c81611bbc565b92915050565b5f60608284031215612257576122566120d8565b5b6122616060611c48565b90505f612270848285016121ac565b5f83015250602082015167ffffffffffffffff811115612293576122926120dc565b5b61229f84828501612201565b60208301525060406122b38482850161222e565b60408301525092915050565b5f602082840312156122d4576122d36114b4565b5b5f82015167ffffffffffffffff8111156122f1576122f06114b8565b5b6122fd84828501612242565b91505092915050565b5f6040820190506123195f830185612018565b61232660208301846116fa565b939250505056fea2646970667358221220d4fa7e3fb4f7c86b44d4f67ce9d9abff3e164c74acadbf114f3c66eb52afdbd864736f6c634300081a0033",i=class i extends A.DeployableTarget{constructor(){super(...arguments),this.abi=e.x}async signers(f,b){return await e.a6(this._config,{address:this.assertValidAddress(),args:[f],...b})}async hashSignerData(f,b){return await e.XR(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveQuantity,f.claimant,f.incentiveData],...b})}async validate(f,b){return await this.awaitResult(this.validateRaw(f,b))}async validateRaw(f,b){const{request:a,result:d}=await e.N6(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveId,f.claimant,f.claimData],...this.optionallyAttachAccount(),...b});return{hash:await e.m6(this._config,a),result:d}}async setAuthorized(f,b,a){return await this.awaitResult(this.setAuthorizedRaw(f,b,a))}async setAuthorizedRaw(f,b,a){const{request:d,result:t}=await e.I6(this._config,{address:this.assertValidAddress(),args:[f,b],...this.optionallyAttachAccount(),...a});return{hash:await e.y6(this._config,d),result:t}}async setValidatorCallerRaw(f,b){const{request:a,result:d}=await e.g6(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await e.d6(this._config,a),result:d}}async setValidatorCaller(f,b){return await this.awaitResult(this.setValidatorCallerRaw(f,b))}async encodeClaimData(f){return await o({...f,validator:this.assertValidAddress()})}buildParameters(f,b){const[a,d]=this.validateDeploymentConfig(f,b);return{abi:e.x,bytecode:D,args:[u(a)],...this.optionallyAttachAccount(d.account)}}};i.bases={31337:void 0,...g.SignerValidator},i.registryType=w.RegistryType.VALIDATOR;let s=i;async function o({signer:c,incentiveData:f,chainId:b,validator:a,incentiveQuantity:d,claimant:t,boostId:n}){const y={domain:{name:"LimitedSignerValidator",version:"1",chainId:b,verifyingContract:a},types:{SignerValidatorData:[{name:"boostId",type:"uint256"},{name:"incentiveQuantity",type:"uint8"},{name:"claimant",type:"address"},{name:"incentiveData",type:"bytes"}]},primaryType:"SignerValidatorData",message:{boostId:n,incentiveQuantity:d,claimant:t,incentiveData:f}},m=await p.signTypedData({...y,privateKey:c.key}),h=l({signer:c.account,signature:m,incentiveQuantity:d});return r.encodeAbiParameters([{type:"tuple",name:"BoostClaimData",components:[{type:"bytes",name:"validatorData"},{type:"bytes",name:"incentiveData"}]}],[{validatorData:h,incentiveData:f}])}function l({signer:c,signature:f,incentiveQuantity:b}){return r.encodeAbiParameters([{type:"tuple",name:"SignerValidatorInputParams",components:[{type:"address",name:"signer"},{type:"bytes",name:"signature"},{type:"uint8",name:"incentiveQuantity"}]}],[{signer:c,signature:f,incentiveQuantity:b}])}function u({signers:c,validatorCaller:f,maxClaimCount:b}){return r.encodeAbiParameters([{type:"address[]",name:"signers"},{type:"address",name:"validatorCaller"},{type:"uint256",name:"maxClaimCount"}],[c,f,BigInt(b)])}exports.limitedSignerValidatorAbi=e.x;exports.LimitedSignerValidator=s;exports.prepareLimitedSignerValidatorClaimDataPayload=o;exports.prepareLimitedSignerValidatorInputParams=l;exports.prepareLimitedSignerValidatorPayload=u;
2
2
  //# sourceMappingURL=LimitedSignerValidator.cjs.map
@@ -370,6 +370,16 @@ export declare class LimitedSignerValidator extends DeployableTarget<LimitedSign
370
370
  readonly indexed: true;
371
371
  }];
372
372
  readonly name: "OwnershipTransferred";
373
+ }, {
374
+ readonly type: "event";
375
+ readonly anonymous: false;
376
+ readonly inputs: readonly [{
377
+ readonly name: "validatorCaller";
378
+ readonly internalType: "address";
379
+ readonly type: "address";
380
+ readonly indexed: false;
381
+ }];
382
+ readonly name: "SignerValidatorInitialized";
373
383
  }, {
374
384
  readonly type: "function";
375
385
  readonly inputs: readonly [];
@@ -1 +1 @@
1
- {"version":3,"file":"LimitedSignerValidator.d.ts","sourceRoot":"","sources":["../../src/Validators/LimitedSignerValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LimitedSignerValidator.d.ts","sourceRoot":"","sources":["../../src/Validators/LimitedSignerValidator.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { H as n, bj as u, bk as m, bl as h, bm as y, bn as p, bo as g, bp as w, bq as A } from "../generated-BTslM7bf.js";
1
+ import { x as r, bw as u, bx as m, by as y, bz as h, bA as p, bB as g, bC as w, bD as A } from "../generated-B5pVBNb-.js";
2
2
  import { encodeAbiParameters as s } from "viem";
3
3
  import { signTypedData as D } from "viem/accounts";
4
4
  import { d as v } from "../deployments-CQu0bLhU.js";
5
5
  import { DeployableTarget as V } from "../Deployable/DeployableTarget.js";
6
6
  import { RegistryType as C } from "../utils.js";
7
- const R = "0x610120604052348015610010575f80fd5b503073ffffffffffffffffffffffffffffffffffffffff16608081815250504660a0818152505060608061004861013960201b60201c565b6100635761005a61014160201b60201c565b80925081935050505b5f61007261013960201b60201c565b610083578280519060200120610087565b5f801b5b90505f61009861013960201b60201c565b6100a95782805190602001206100ad565b5f801b5b90508160c081815250508060e081815250505f6100ce61013960201b60201c565b610118576040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815283602082015282604082015246606082015230608082015260a081209150505b80610100818152505050505050506101346101b860201b60201c565b61024d565b5f6001905090565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f6101c761022460201b60201c565b9050805460018116156101e15763f92ee8a95f526004601cfd5b8160c01c808260011c1461021f578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b60805160a05160c05160e0516101005161236361028a5f395f610fe601525f61128d01525f61126a01525f6112fc01525f61132001526123635ff3fe608060405260043610610113575f3560e01c8063715018a61161009f578063ce5c134f11610063578063ce5c134f1461035d578063d3de6e7514610387578063f04e283e146103c3578063f2fde38b146103df578063fee81cf4146103fb57610113565b8063715018a614610295578063736c0d5b1461029f57806384b0196e146102db5780638da5cb5b1461030b578063a1d2756f1461033557610113565b80632f9e058b116100e65780632f9e058b146101c35780634359d28a146101ff578063439fab911461022757806354d1f13d1461024f578063703b69001461025957610113565b806301ffc9a7146101175780630668e9d414610153578063256929621461018f57806328d6183b14610199575b5f80fd5b348015610122575f80fd5b5061013d60048036038101906101389190611511565b610437565b60405161014a9190611556565b60405180910390f35b34801561015e575f80fd5b50610179600480360381019061017491906115fc565b6104b0565b6040516101869190611664565b60405180910390f35b6101976104e5565b005b3480156101a4575f80fd5b506101ad610536565b6040516101ba919061168c565b60405180910390f35b3480156101ce575f80fd5b506101e960048036038101906101e491906116cf565b61055d565b6040516101f69190611709565b60405180910390f35b34801561020a575f80fd5b50610225600480360381019061022091906117d8565b610572565b005b348015610232575f80fd5b5061024d600480360381019061024891906118ab565b61067b565b005b6102576107fd565b005b348015610264575f80fd5b5061027f600480360381019061027a91906118f6565b610836565b60405161028c9190611556565b60405180910390f35b61029d61089b565b005b3480156102aa575f80fd5b506102c560048036038101906102c0919061197a565b6108ae565b6040516102d29190611556565b60405180910390f35b3480156102e6575f80fd5b506102ef6108ca565b6040516103029796959493929190611b15565b60405180910390f35b348015610316575f80fd5b5061031f610915565b60405161032c9190611b97565b60405180910390f35b348015610340575f80fd5b5061035b6004803603810190610356919061197a565b61093d565b005b348015610368575f80fd5b50610371610988565b60405161037e9190611709565b60405180910390f35b348015610392575f80fd5b506103ad60048036038101906103a89190611d0e565b61098e565b6040516103ba9190611664565b60405180910390f35b6103dd60048036038101906103d8919061197a565b6109f7565b005b6103f960048036038101906103f4919061197a565b610a35565b005b348015610406575f80fd5b50610421600480360381019061041c919061197a565b610a5e565b60405161042e9190611709565b60405180910390f35b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806104a957506104a882610a77565b5b9050919050565b5f8383836040516020016104c693929190611df3565b6040516020818303038152906040528051906020012090509392505050565b5f6104ee610af0565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fc8ebc75800000000000000000000000000000000000000000000000000000000905090565b6001602052805f5260405f205f915090505481565b61057a610afa565b8181905084849050146105b9576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84849050811015610674578282828181106105d9576105d8611e2f565b5b90506020020160208101906105ee9190611e86565b5f8087878581811061060357610602611e2f565b5b9050602002016020810190610618919061197a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506105bb565b5050505050565b5f610684610b31565b905080546003825580156106b65760018160011c14303b106106ad5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f805f85858101906106c99190611fac565b9250925092506106f2835f815181106106e5576106e4611e2f565b5b6020026020010151610b5a565b806002819055505f5b835181101561077f5760015f8086848151811061071b5761071a611e2f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506106fb565b508160045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505080156107f8576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f610842868686610c30565b61088357836040517f059b704500000000000000000000000000000000000000000000000000000000815260040161087a9190611b97565b60405180910390fd5b6108908686868686610c97565b905095945050505050565b6108a3610afa565b6108ac5f610e8a565b565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f6060805f805f60607f0f0000000000000000000000000000000000000000000000000000000000000096506108fe610f50565b809650819750505046935030925090919293949596565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610945610afa565b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60025481565b5f6109ed7ffea51d5bd45bcd3c2ecc3679b43a3b80b0bd0923f8c16f822455b8cdecd9852f86868686805190602001206040516020016109d2959493929190612027565b60405160208183030381529060405280519060200120610fc7565b9050949350505050565b6109ff610afa565b63389a75e1600c52805f526020600c208054421115610a2557636f5e88185f526004601cfd5b5f815550610a3281610e8a565b50565b610a3d610afa565b8060601b610a5257637448fbae5f526004601cfd5b610a5b81610e8a565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610ae95750610ae882611043565b5b9050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610b2f576382b429005f526004601cfd5b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610b626110bc565b15610bda577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610b9c57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610c2d565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f80610c3d8585856104b0565b90505f6001805f8481526020019081526020015f2054610c5d91906120a5565b9050600254811115610c73575f92505050610c90565b8060015f8481526020019081526020015f20819055506001925050505b9392505050565b5f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d1e576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8383810190610d2e9190612165565b90505f815f0151806020019051810190610d4891906122bf565b90505f610d5f89836040015189866020015161098e565b905087826040015160ff1611610db2578160400151886040517f17c66bc7000000000000000000000000000000000000000000000000000000008152600401610da9929190612306565b60405180910390fd5b5f80835f015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610e34576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4a818960036110c09092919063ffffffff16565b610e7c818360200151845f015173ffffffffffffffffffffffffffffffffffffffff166111259092919063ffffffff16565b935050505095945050505050565b610e926110bc565b15610ef7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610f4d565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f610fd0611228565b15610fe457610fdd611230565b9050611020565b7f0000000000000000000000000000000000000000000000000000000000000000905061100f6112f8565b1561101f5761101c611230565b90505b5b6719010000000000005f5280601a5281603a52604260182090505f603a52919050565b5f7fb8ce7b22000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110b557506110b482611350565b5b9050919050565b5f90565b5f633f57fc5c60e01b90505f634de1225a60e01b905060078311156110eb57815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c600116600118801561111857835f528560045260245ffd5b8183555050505050505050565b5f8360601b60601c9350831561122157604051835f5260208301516040526040835103611192576040830151601b8160ff1c016020528060011b60011c6060526020600160805f60015afa805187183d151761118f57600193505f60605282604052505050611221565b50505b60418351036111d85760608301515f1a60205260408301516060526020600160805f60015afa805186183d15176111d657600192505f606052816040525050611221565b505b5f60605280604052631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa5060208260443d01868b5afa83835114169450505050505b9392505050565b5f6001905090565b5f8061123a611228565b15611268575f80611249610f50565b91509150818051906020012093508080519060200120925050506112af565b7f000000000000000000000000000000000000000000000000000000000000000091507f000000000000000000000000000000000000000000000000000000000000000090505b6040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081209250505090565b5f807f000000000000000000000000000000000000000000000000000000000000000090505f7f0000000000000000000000000000000000000000000000000000000000000000905080301482461416159250505090565b5f7f5912b89c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806113c257506113c1826113c9565b5b9050919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061143b575061143a82611442565b5b9050919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6114f0816114bc565b81146114fa575f80fd5b50565b5f8135905061150b816114e7565b92915050565b5f60208284031215611526576115256114b4565b5b5f611533848285016114fd565b91505092915050565b5f8115159050919050565b6115508161153c565b82525050565b5f6020820190506115695f830184611547565b92915050565b5f819050919050565b6115818161156f565b811461158b575f80fd5b50565b5f8135905061159c81611578565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6115cb826115a2565b9050919050565b6115db816115c1565b81146115e5575f80fd5b50565b5f813590506115f6816115d2565b92915050565b5f805f60608486031215611613576116126114b4565b5b5f6116208682870161158e565b93505060206116318682870161158e565b9250506040611642868287016115e8565b9150509250925092565b5f819050919050565b61165e8161164c565b82525050565b5f6020820190506116775f830184611655565b92915050565b611686816114bc565b82525050565b5f60208201905061169f5f83018461167d565b92915050565b6116ae8161164c565b81146116b8575f80fd5b50565b5f813590506116c9816116a5565b92915050565b5f602082840312156116e4576116e36114b4565b5b5f6116f1848285016116bb565b91505092915050565b6117038161156f565b82525050565b5f60208201905061171c5f8301846116fa565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261174357611742611722565b5b8235905067ffffffffffffffff8111156117605761175f611726565b5b60208301915083602082028301111561177c5761177b61172a565b5b9250929050565b5f8083601f84011261179857611797611722565b5b8235905067ffffffffffffffff8111156117b5576117b4611726565b5b6020830191508360208202830111156117d1576117d061172a565b5b9250929050565b5f805f80604085870312156117f0576117ef6114b4565b5b5f85013567ffffffffffffffff81111561180d5761180c6114b8565b5b6118198782880161172e565b9450945050602085013567ffffffffffffffff81111561183c5761183b6114b8565b5b61184887828801611783565b925092505092959194509250565b5f8083601f84011261186b5761186a611722565b5b8235905067ffffffffffffffff81111561188857611887611726565b5b6020830191508360018202830111156118a4576118a361172a565b5b9250929050565b5f80602083850312156118c1576118c06114b4565b5b5f83013567ffffffffffffffff8111156118de576118dd6114b8565b5b6118ea85828601611856565b92509250509250929050565b5f805f805f6080868803121561190f5761190e6114b4565b5b5f61191c8882890161158e565b955050602061192d8882890161158e565b945050604061193e888289016115e8565b935050606086013567ffffffffffffffff81111561195f5761195e6114b8565b5b61196b88828901611856565b92509250509295509295909350565b5f6020828403121561198f5761198e6114b4565b5b5f61199c848285016115e8565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6119d9816119a5565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611a21826119df565b611a2b81856119e9565b9350611a3b8185602086016119f9565b611a4481611a07565b840191505092915050565b611a58816115c1565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611a908161156f565b82525050565b5f611aa18383611a87565b60208301905092915050565b5f602082019050919050565b5f611ac382611a5e565b611acd8185611a68565b9350611ad883611a78565b805f5b83811015611b08578151611aef8882611a96565b9750611afa83611aad565b925050600181019050611adb565b5085935050505092915050565b5f60e082019050611b285f83018a6119d0565b8181036020830152611b3a8189611a17565b90508181036040830152611b4e8188611a17565b9050611b5d60608301876116fa565b611b6a6080830186611a4f565b611b7760a0830185611655565b81810360c0830152611b898184611ab9565b905098975050505050505050565b5f602082019050611baa5f830184611a4f565b92915050565b5f60ff82169050919050565b611bc581611bb0565b8114611bcf575f80fd5b50565b5f81359050611be081611bbc565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611c2082611a07565b810181811067ffffffffffffffff82111715611c3f57611c3e611bea565b5b80604052505050565b5f611c516114ab565b9050611c5d8282611c17565b919050565b5f67ffffffffffffffff821115611c7c57611c7b611bea565b5b611c8582611a07565b9050602081019050919050565b828183375f83830152505050565b5f611cb2611cad84611c62565b611c48565b905082815260208101848484011115611cce57611ccd611be6565b5b611cd9848285611c92565b509392505050565b5f82601f830112611cf557611cf4611722565b5b8135611d05848260208601611ca0565b91505092915050565b5f805f8060808587031215611d2657611d256114b4565b5b5f611d338782880161158e565b9450506020611d4487828801611bd2565b9350506040611d55878288016115e8565b925050606085013567ffffffffffffffff811115611d7657611d756114b8565b5b611d8287828801611ce1565b91505092959194509250565b5f819050919050565b611da8611da38261156f565b611d8e565b82525050565b5f8160601b9050919050565b5f611dc482611dae565b9050919050565b5f611dd582611dba565b9050919050565b611ded611de8826115c1565b611dcb565b82525050565b5f611dfe8286611d97565b602082019150611e0e8285611d97565b602082019150611e1e8284611ddc565b601482019150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b611e658161153c565b8114611e6f575f80fd5b50565b5f81359050611e8081611e5c565b92915050565b5f60208284031215611e9b57611e9a6114b4565b5b5f611ea884828501611e72565b91505092915050565b5f67ffffffffffffffff821115611ecb57611eca611bea565b5b602082029050602081019050919050565b5f611eee611ee984611eb1565b611c48565b90508083825260208201905060208402830185811115611f1157611f1061172a565b5b835b81811015611f3a5780611f2688826115e8565b845260208401935050602081019050611f13565b5050509392505050565b5f82601f830112611f5857611f57611722565b5b8135611f68848260208601611edc565b91505092915050565b5f611f7b826115a2565b9050919050565b611f8b81611f71565b8114611f95575f80fd5b50565b5f81359050611fa681611f82565b92915050565b5f805f60608486031215611fc357611fc26114b4565b5b5f84013567ffffffffffffffff811115611fe057611fdf6114b8565b5b611fec86828701611f44565b9350506020611ffd86828701611f98565b925050604061200e8682870161158e565b9150509250925092565b61202181611bb0565b82525050565b5f60a08201905061203a5f830188611655565b61204760208301876116fa565b6120546040830186612018565b6120616060830185611a4f565b61206e6080830184611655565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6120af8261156f565b91506120ba8361156f565b92508282019050808211156120d2576120d1612078565b5b92915050565b5f80fd5b5f80fd5b5f604082840312156120f5576120f46120d8565b5b6120ff6040611c48565b90505f82013567ffffffffffffffff81111561211e5761211d6120dc565b5b61212a84828501611ce1565b5f83015250602082013567ffffffffffffffff81111561214d5761214c6120dc565b5b61215984828501611ce1565b60208301525092915050565b5f6020828403121561217a576121796114b4565b5b5f82013567ffffffffffffffff811115612197576121966114b8565b5b6121a3848285016120e0565b91505092915050565b5f815190506121ba816115d2565b92915050565b5f6121d26121cd84611c62565b611c48565b9050828152602081018484840111156121ee576121ed611be6565b5b6121f98482856119f9565b509392505050565b5f82601f83011261221557612214611722565b5b81516122258482602086016121c0565b91505092915050565b5f8151905061223c81611bbc565b92915050565b5f60608284031215612257576122566120d8565b5b6122616060611c48565b90505f612270848285016121ac565b5f83015250602082015167ffffffffffffffff811115612293576122926120dc565b5b61229f84828501612201565b60208301525060406122b38482850161222e565b60408301525092915050565b5f602082840312156122d4576122d36114b4565b5b5f82015167ffffffffffffffff8111156122f1576122f06114b8565b5b6122fd84828501612242565b91505092915050565b5f6040820190506123195f830185612018565b61232660208301846116fa565b939250505056fea2646970667358221220d03c16d35d1d66252450c489ed15af375cf310cdf687ee8778277bd8f2bb2cca64736f6c634300081a0033", t = class t extends V {
7
+ const R = "0x610120604052348015610010575f80fd5b503073ffffffffffffffffffffffffffffffffffffffff16608081815250504660a0818152505060608061004861013960201b60201c565b6100635761005a61014160201b60201c565b80925081935050505b5f61007261013960201b60201c565b610083578280519060200120610087565b5f801b5b90505f61009861013960201b60201c565b6100a95782805190602001206100ad565b5f801b5b90508160c081815250508060e081815250505f6100ce61013960201b60201c565b610118576040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815283602082015282604082015246606082015230608082015260a081209150505b80610100818152505050505050506101346101b860201b60201c565b61024d565b5f6001905090565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f6101c761022460201b60201c565b9050805460018116156101e15763f92ee8a95f526004601cfd5b8160c01c808260011c1461021f578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b60805160a05160c05160e0516101005161236361028a5f395f610fe601525f61128d01525f61126a01525f6112fc01525f61132001526123635ff3fe608060405260043610610113575f3560e01c8063715018a61161009f578063ce5c134f11610063578063ce5c134f1461035d578063d3de6e7514610387578063f04e283e146103c3578063f2fde38b146103df578063fee81cf4146103fb57610113565b8063715018a614610295578063736c0d5b1461029f57806384b0196e146102db5780638da5cb5b1461030b578063a1d2756f1461033557610113565b80632f9e058b116100e65780632f9e058b146101c35780634359d28a146101ff578063439fab911461022757806354d1f13d1461024f578063703b69001461025957610113565b806301ffc9a7146101175780630668e9d414610153578063256929621461018f57806328d6183b14610199575b5f80fd5b348015610122575f80fd5b5061013d60048036038101906101389190611511565b610437565b60405161014a9190611556565b60405180910390f35b34801561015e575f80fd5b50610179600480360381019061017491906115fc565b6104b0565b6040516101869190611664565b60405180910390f35b6101976104e5565b005b3480156101a4575f80fd5b506101ad610536565b6040516101ba919061168c565b60405180910390f35b3480156101ce575f80fd5b506101e960048036038101906101e491906116cf565b61055d565b6040516101f69190611709565b60405180910390f35b34801561020a575f80fd5b50610225600480360381019061022091906117d8565b610572565b005b348015610232575f80fd5b5061024d600480360381019061024891906118ab565b61067b565b005b6102576107fd565b005b348015610264575f80fd5b5061027f600480360381019061027a91906118f6565b610836565b60405161028c9190611556565b60405180910390f35b61029d61089b565b005b3480156102aa575f80fd5b506102c560048036038101906102c0919061197a565b6108ae565b6040516102d29190611556565b60405180910390f35b3480156102e6575f80fd5b506102ef6108ca565b6040516103029796959493929190611b15565b60405180910390f35b348015610316575f80fd5b5061031f610915565b60405161032c9190611b97565b60405180910390f35b348015610340575f80fd5b5061035b6004803603810190610356919061197a565b61093d565b005b348015610368575f80fd5b50610371610988565b60405161037e9190611709565b60405180910390f35b348015610392575f80fd5b506103ad60048036038101906103a89190611d0e565b61098e565b6040516103ba9190611664565b60405180910390f35b6103dd60048036038101906103d8919061197a565b6109f7565b005b6103f960048036038101906103f4919061197a565b610a35565b005b348015610406575f80fd5b50610421600480360381019061041c919061197a565b610a5e565b60405161042e9190611709565b60405180910390f35b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806104a957506104a882610a77565b5b9050919050565b5f8383836040516020016104c693929190611df3565b6040516020818303038152906040528051906020012090509392505050565b5f6104ee610af0565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fc8ebc75800000000000000000000000000000000000000000000000000000000905090565b6001602052805f5260405f205f915090505481565b61057a610afa565b8181905084849050146105b9576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84849050811015610674578282828181106105d9576105d8611e2f565b5b90506020020160208101906105ee9190611e86565b5f8087878581811061060357610602611e2f565b5b9050602002016020810190610618919061197a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506105bb565b5050505050565b5f610684610b31565b905080546003825580156106b65760018160011c14303b106106ad5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f805f85858101906106c99190611fac565b9250925092506106f2835f815181106106e5576106e4611e2f565b5b6020026020010151610b5a565b806002819055505f5b835181101561077f5760015f8086848151811061071b5761071a611e2f565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506106fb565b508160045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505080156107f8576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f610842868686610c30565b61088357836040517f059b704500000000000000000000000000000000000000000000000000000000815260040161087a9190611b97565b60405180910390fd5b6108908686868686610c97565b905095945050505050565b6108a3610afa565b6108ac5f610e8a565b565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f6060805f805f60607f0f0000000000000000000000000000000000000000000000000000000000000096506108fe610f50565b809650819750505046935030925090919293949596565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610945610afa565b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60025481565b5f6109ed7ffea51d5bd45bcd3c2ecc3679b43a3b80b0bd0923f8c16f822455b8cdecd9852f86868686805190602001206040516020016109d2959493929190612027565b60405160208183030381529060405280519060200120610fc7565b9050949350505050565b6109ff610afa565b63389a75e1600c52805f526020600c208054421115610a2557636f5e88185f526004601cfd5b5f815550610a3281610e8a565b50565b610a3d610afa565b8060601b610a5257637448fbae5f526004601cfd5b610a5b81610e8a565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fc8ebc758000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610ae95750610ae882611043565b5b9050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610b2f576382b429005f526004601cfd5b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610b626110bc565b15610bda577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610b9c57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610c2d565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f80610c3d8585856104b0565b90505f6001805f8481526020019081526020015f2054610c5d91906120a5565b9050600254811115610c73575f92505050610c90565b8060015f8481526020019081526020015f20819055506001925050505b9392505050565b5f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d1e576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8383810190610d2e9190612165565b90505f815f0151806020019051810190610d4891906122bf565b90505f610d5f89836040015189866020015161098e565b905087826040015160ff1611610db2578160400151886040517f17c66bc7000000000000000000000000000000000000000000000000000000008152600401610da9929190612306565b60405180910390fd5b5f80835f015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610e34576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610e4a818960036110c09092919063ffffffff16565b610e7c818360200151845f015173ffffffffffffffffffffffffffffffffffffffff166111259092919063ffffffff16565b935050505095945050505050565b610e926110bc565b15610ef7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610f4d565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b6060806040518060400160405280601681526020017f4c696d697465645369676e657256616c696461746f720000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f610fd0611228565b15610fe457610fdd611230565b9050611020565b7f0000000000000000000000000000000000000000000000000000000000000000905061100f6112f8565b1561101f5761101c611230565b90505b5b6719010000000000005f5280601a5281603a52604260182090505f603a52919050565b5f7fb8ce7b22000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110b557506110b482611350565b5b9050919050565b5f90565b5f633f57fc5c60e01b90505f634de1225a60e01b905060078311156110eb57815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c600116600118801561111857835f528560045260245ffd5b8183555050505050505050565b5f8360601b60601c9350831561122157604051835f5260208301516040526040835103611192576040830151601b8160ff1c016020528060011b60011c6060526020600160805f60015afa805187183d151761118f57600193505f60605282604052505050611221565b50505b60418351036111d85760608301515f1a60205260408301516060526020600160805f60015afa805186183d15176111d657600192505f606052816040525050611221565b505b5f60605280604052631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa5060208260443d01868b5afa83835114169450505050505b9392505050565b5f6001905090565b5f8061123a611228565b15611268575f80611249610f50565b91509150818051906020012093508080519060200120925050506112af565b7f000000000000000000000000000000000000000000000000000000000000000091507f000000000000000000000000000000000000000000000000000000000000000090505b6040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081209250505090565b5f807f000000000000000000000000000000000000000000000000000000000000000090505f7f0000000000000000000000000000000000000000000000000000000000000000905080301482461416159250505090565b5f7f5912b89c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806113c257506113c1826113c9565b5b9050919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061143b575061143a82611442565b5b9050919050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6114f0816114bc565b81146114fa575f80fd5b50565b5f8135905061150b816114e7565b92915050565b5f60208284031215611526576115256114b4565b5b5f611533848285016114fd565b91505092915050565b5f8115159050919050565b6115508161153c565b82525050565b5f6020820190506115695f830184611547565b92915050565b5f819050919050565b6115818161156f565b811461158b575f80fd5b50565b5f8135905061159c81611578565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6115cb826115a2565b9050919050565b6115db816115c1565b81146115e5575f80fd5b50565b5f813590506115f6816115d2565b92915050565b5f805f60608486031215611613576116126114b4565b5b5f6116208682870161158e565b93505060206116318682870161158e565b9250506040611642868287016115e8565b9150509250925092565b5f819050919050565b61165e8161164c565b82525050565b5f6020820190506116775f830184611655565b92915050565b611686816114bc565b82525050565b5f60208201905061169f5f83018461167d565b92915050565b6116ae8161164c565b81146116b8575f80fd5b50565b5f813590506116c9816116a5565b92915050565b5f602082840312156116e4576116e36114b4565b5b5f6116f1848285016116bb565b91505092915050565b6117038161156f565b82525050565b5f60208201905061171c5f8301846116fa565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261174357611742611722565b5b8235905067ffffffffffffffff8111156117605761175f611726565b5b60208301915083602082028301111561177c5761177b61172a565b5b9250929050565b5f8083601f84011261179857611797611722565b5b8235905067ffffffffffffffff8111156117b5576117b4611726565b5b6020830191508360208202830111156117d1576117d061172a565b5b9250929050565b5f805f80604085870312156117f0576117ef6114b4565b5b5f85013567ffffffffffffffff81111561180d5761180c6114b8565b5b6118198782880161172e565b9450945050602085013567ffffffffffffffff81111561183c5761183b6114b8565b5b61184887828801611783565b925092505092959194509250565b5f8083601f84011261186b5761186a611722565b5b8235905067ffffffffffffffff81111561188857611887611726565b5b6020830191508360018202830111156118a4576118a361172a565b5b9250929050565b5f80602083850312156118c1576118c06114b4565b5b5f83013567ffffffffffffffff8111156118de576118dd6114b8565b5b6118ea85828601611856565b92509250509250929050565b5f805f805f6080868803121561190f5761190e6114b4565b5b5f61191c8882890161158e565b955050602061192d8882890161158e565b945050604061193e888289016115e8565b935050606086013567ffffffffffffffff81111561195f5761195e6114b8565b5b61196b88828901611856565b92509250509295509295909350565b5f6020828403121561198f5761198e6114b4565b5b5f61199c848285016115e8565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6119d9816119a5565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611a21826119df565b611a2b81856119e9565b9350611a3b8185602086016119f9565b611a4481611a07565b840191505092915050565b611a58816115c1565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611a908161156f565b82525050565b5f611aa18383611a87565b60208301905092915050565b5f602082019050919050565b5f611ac382611a5e565b611acd8185611a68565b9350611ad883611a78565b805f5b83811015611b08578151611aef8882611a96565b9750611afa83611aad565b925050600181019050611adb565b5085935050505092915050565b5f60e082019050611b285f83018a6119d0565b8181036020830152611b3a8189611a17565b90508181036040830152611b4e8188611a17565b9050611b5d60608301876116fa565b611b6a6080830186611a4f565b611b7760a0830185611655565b81810360c0830152611b898184611ab9565b905098975050505050505050565b5f602082019050611baa5f830184611a4f565b92915050565b5f60ff82169050919050565b611bc581611bb0565b8114611bcf575f80fd5b50565b5f81359050611be081611bbc565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611c2082611a07565b810181811067ffffffffffffffff82111715611c3f57611c3e611bea565b5b80604052505050565b5f611c516114ab565b9050611c5d8282611c17565b919050565b5f67ffffffffffffffff821115611c7c57611c7b611bea565b5b611c8582611a07565b9050602081019050919050565b828183375f83830152505050565b5f611cb2611cad84611c62565b611c48565b905082815260208101848484011115611cce57611ccd611be6565b5b611cd9848285611c92565b509392505050565b5f82601f830112611cf557611cf4611722565b5b8135611d05848260208601611ca0565b91505092915050565b5f805f8060808587031215611d2657611d256114b4565b5b5f611d338782880161158e565b9450506020611d4487828801611bd2565b9350506040611d55878288016115e8565b925050606085013567ffffffffffffffff811115611d7657611d756114b8565b5b611d8287828801611ce1565b91505092959194509250565b5f819050919050565b611da8611da38261156f565b611d8e565b82525050565b5f8160601b9050919050565b5f611dc482611dae565b9050919050565b5f611dd582611dba565b9050919050565b611ded611de8826115c1565b611dcb565b82525050565b5f611dfe8286611d97565b602082019150611e0e8285611d97565b602082019150611e1e8284611ddc565b601482019150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b611e658161153c565b8114611e6f575f80fd5b50565b5f81359050611e8081611e5c565b92915050565b5f60208284031215611e9b57611e9a6114b4565b5b5f611ea884828501611e72565b91505092915050565b5f67ffffffffffffffff821115611ecb57611eca611bea565b5b602082029050602081019050919050565b5f611eee611ee984611eb1565b611c48565b90508083825260208201905060208402830185811115611f1157611f1061172a565b5b835b81811015611f3a5780611f2688826115e8565b845260208401935050602081019050611f13565b5050509392505050565b5f82601f830112611f5857611f57611722565b5b8135611f68848260208601611edc565b91505092915050565b5f611f7b826115a2565b9050919050565b611f8b81611f71565b8114611f95575f80fd5b50565b5f81359050611fa681611f82565b92915050565b5f805f60608486031215611fc357611fc26114b4565b5b5f84013567ffffffffffffffff811115611fe057611fdf6114b8565b5b611fec86828701611f44565b9350506020611ffd86828701611f98565b925050604061200e8682870161158e565b9150509250925092565b61202181611bb0565b82525050565b5f60a08201905061203a5f830188611655565b61204760208301876116fa565b6120546040830186612018565b6120616060830185611a4f565b61206e6080830184611655565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6120af8261156f565b91506120ba8361156f565b92508282019050808211156120d2576120d1612078565b5b92915050565b5f80fd5b5f80fd5b5f604082840312156120f5576120f46120d8565b5b6120ff6040611c48565b90505f82013567ffffffffffffffff81111561211e5761211d6120dc565b5b61212a84828501611ce1565b5f83015250602082013567ffffffffffffffff81111561214d5761214c6120dc565b5b61215984828501611ce1565b60208301525092915050565b5f6020828403121561217a576121796114b4565b5b5f82013567ffffffffffffffff811115612197576121966114b8565b5b6121a3848285016120e0565b91505092915050565b5f815190506121ba816115d2565b92915050565b5f6121d26121cd84611c62565b611c48565b9050828152602081018484840111156121ee576121ed611be6565b5b6121f98482856119f9565b509392505050565b5f82601f83011261221557612214611722565b5b81516122258482602086016121c0565b91505092915050565b5f8151905061223c81611bbc565b92915050565b5f60608284031215612257576122566120d8565b5b6122616060611c48565b90505f612270848285016121ac565b5f83015250602082015167ffffffffffffffff811115612293576122926120dc565b5b61229f84828501612201565b60208301525060406122b38482850161222e565b60408301525092915050565b5f602082840312156122d4576122d36114b4565b5b5f82015167ffffffffffffffff8111156122f1576122f06114b8565b5b6122fd84828501612242565b91505092915050565b5f6040820190506123195f830185612018565b61232660208301846116fa565b939250505056fea2646970667358221220d4fa7e3fb4f7c86b44d4f67ce9d9abff3e164c74acadbf114f3c66eb52afdbd864736f6c634300081a0033", t = class t extends V {
8
8
  constructor() {
9
- super(...arguments), this.abi = n;
9
+ super(...arguments), this.abi = r;
10
10
  }
11
11
  /**
12
12
  * The set of authorized signers
@@ -69,7 +69,7 @@ const R = "0x610120604052348015610010575f80fd5b503073fffffffffffffffffffffffffff
69
69
  * @returns {Promise<boolean>} - True if the action has been validated based on the data payload
70
70
  */
71
71
  async validateRaw(f, b) {
72
- const { request: a, result: e } = await h(
72
+ const { request: a, result: e } = await y(
73
73
  this._config,
74
74
  {
75
75
  address: this.assertValidAddress(),
@@ -84,7 +84,7 @@ const R = "0x610120604052348015610010575f80fd5b503073fffffffffffffffffffffffffff
84
84
  ...b
85
85
  }
86
86
  );
87
- return { hash: await y(
87
+ return { hash: await h(
88
88
  this._config,
89
89
  a
90
90
  ), result: e };
@@ -189,9 +189,9 @@ const R = "0x610120604052348015610010575f80fd5b503073fffffffffffffffffffffffffff
189
189
  b
190
190
  );
191
191
  return {
192
- abi: n,
192
+ abi: r,
193
193
  bytecode: R,
194
- args: [P(a)],
194
+ args: [S(a)],
195
195
  ...this.optionallyAttachAccount(e.account)
196
196
  };
197
197
  }
@@ -200,7 +200,7 @@ t.bases = {
200
200
  31337: void 0,
201
201
  ...v
202
202
  }, t.registryType = C.VALIDATOR;
203
- let r = t;
203
+ let n = t;
204
204
  async function I({
205
205
  signer: d,
206
206
  incentiveData: f,
@@ -235,7 +235,7 @@ async function I({
235
235
  }
236
236
  },
237
237
  privateKey: d.key
238
- }), l = M({
238
+ }), l = P({
239
239
  signer: d.account,
240
240
  signature: o,
241
241
  incentiveQuantity: e
@@ -255,7 +255,7 @@ async function I({
255
255
  [{ validatorData: l, incentiveData: f }]
256
256
  );
257
257
  }
258
- function M({
258
+ function P({
259
259
  signer: d,
260
260
  signature: f,
261
261
  incentiveQuantity: b
@@ -275,7 +275,7 @@ function M({
275
275
  [{ signer: d, signature: f, incentiveQuantity: b }]
276
276
  );
277
277
  }
278
- function P({
278
+ function S({
279
279
  signers: d,
280
280
  validatorCaller: f,
281
281
  maxClaimCount: b
@@ -290,10 +290,10 @@ function P({
290
290
  );
291
291
  }
292
292
  export {
293
- r as LimitedSignerValidator,
294
- n as limitedSignerValidatorAbi,
293
+ n as LimitedSignerValidator,
294
+ r as limitedSignerValidatorAbi,
295
295
  I as prepareLimitedSignerValidatorClaimDataPayload,
296
- M as prepareLimitedSignerValidatorInputParams,
297
- P as prepareLimitedSignerValidatorPayload
296
+ P as prepareLimitedSignerValidatorInputParams,
297
+ S as prepareLimitedSignerValidatorPayload
298
298
  };
299
299
  //# sourceMappingURL=LimitedSignerValidator.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../generated-DhXxTQ20.cjs"),r=require("viem"),p=require("../deployments-BucJ-gwk.cjs"),g=require("../Deployable/DeployableTarget.cjs"),m=require("../utils.cjs"),A="0x610120604052348015610010575f80fd5b503073ffffffffffffffffffffffffffffffffffffffff16608081815250504660a0818152505060608061004861013960201b60201c565b6100635761005a61014160201b60201c565b80925081935050505b5f61007261013960201b60201c565b610083578280519060200120610087565b5f801b5b90505f61009861013960201b60201c565b6100a95782805190602001206100ad565b5f801b5b90508160c081815250508060e081815250505f6100ce61013960201b60201c565b610118576040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815283602082015282604082015246606082015230608082015260a081209150505b80610100818152505050505050506101346101b860201b60201c565b61024d565b5f6001905090565b6060806040518060400160405280600f81526020017f5369676e657256616c696461746f72000000000000000000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f6101c761022460201b60201c565b9050805460018116156101e15763f92ee8a95f526004601cfd5b8160c01c808260011c1461021f578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b60805160a05160c05160e05161010051611ecf61028a5f395f610f6401525f6110a301525f61108001525f61111201525f6111360152611ecf5ff3fe6080604052600436106100f2575f3560e01c8063736c0d5b11610089578063d3de6e7511610058578063d3de6e75146102c4578063f04e283e14610300578063f2fde38b1461031c578063fee81cf414610338576100f2565b8063736c0d5b1461020657806384b0196e146102425780638da5cb5b14610272578063a1d2756f1461029c576100f2565b8063439fab91116100c5578063439fab911461018e57806354d1f13d146101b6578063703b6900146101c0578063715018a6146101fc576100f2565b806301ffc9a7146100f6578063256929621461013257806328d6183b1461013c5780634359d28a14610166575b5f80fd5b348015610101575f80fd5b5061011c60048036038101906101179190611235565b610374565b604051610129919061127a565b60405180910390f35b61013a6103ed565b005b348015610147575f80fd5b5061015061043e565b60405161015d91906112a2565b60405180910390f35b348015610171575f80fd5b5061018c60048036038101906101879190611371565b610465565b005b348015610199575f80fd5b506101b460048036038101906101af9190611444565b61056e565b005b6101be6106e5565b005b3480156101cb575f80fd5b506101e660048036038101906101e1919061151c565b61071e565b6040516101f3919061127a565b60405180910390f35b610204610911565b005b348015610211575f80fd5b5061022c600480360381019061022791906115a0565b610924565b604051610239919061127a565b60405180910390f35b34801561024d575f80fd5b50610256610940565b6040516102699796959493929190611762565b60405180910390f35b34801561027d575f80fd5b5061028661098b565b60405161029391906117e4565b60405180910390f35b3480156102a7575f80fd5b506102c260048036038101906102bd91906115a0565b6109b3565b005b3480156102cf575f80fd5b506102ea60048036038101906102e5919061195b565b6109fe565b6040516102f791906119db565b60405180910390f35b61031a600480360381019061031591906115a0565b610a67565b005b610336600480360381019061033191906115a0565b610aa5565b005b348015610343575f80fd5b5061035e600480360381019061035991906115a0565b610ace565b60405161036b91906119f4565b60405180910390f35b5f7fb8ce7b22000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103e657506103e582610ae7565b5b9050919050565b5f6103f6610b60565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fb8ce7b2200000000000000000000000000000000000000000000000000000000905090565b61046d610b6a565b8181905084849050146104ac576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84849050811015610567578282828181106104cc576104cb611a0d565b5b90506020020160208101906104e19190611a64565b5f808787858181106104f6576104f5611a0d565b5b905060200201602081019061050b91906115a0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506104ae565b5050505050565b5f610577610ba1565b905080546003825580156105a95760018160011c14303b106105a05763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f8084848101906105bb9190611b8a565b915091506105e2825f815181106105d5576105d4611a0d565b5b6020026020010151610bca565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f5b82518110156106a85760015f8085848151811061064457610643611a0d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050610624565b50505080156106e0576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107a5576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f83838101906107b59190611c71565b90505f815f01518060200190518101906107cf9190611dcb565b90505f6107e68983604001518986602001516109fe565b905087826040015160ff1611610839578160400151886040517f17c66bc7000000000000000000000000000000000000000000000000000000008152600401610830929190611e21565b60405180910390fd5b5f80835f015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166108bb576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108d181896001610ca09092919063ffffffff16565b610903818360200151845f015173ffffffffffffffffffffffffffffffffffffffff16610d059092919063ffffffff16565b935050505095945050505050565b610919610b6a565b6109225f610e08565b565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f6060805f805f60607f0f000000000000000000000000000000000000000000000000000000000000009650610974610ece565b809650819750505046935030925090919293949596565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b6109bb610b6a565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f610a5d7ffea51d5bd45bcd3c2ecc3679b43a3b80b0bd0923f8c16f822455b8cdecd9852f8686868680519060200120604051602001610a42959493929190611e48565b60405160208183030381529060405280519060200120610f45565b9050949350505050565b610a6f610b6a565b63389a75e1600c52805f526020600c208054421115610a9557636f5e88185f526004601cfd5b5f815550610aa281610e08565b50565b610aad610b6a565b8060601b610ac257637448fbae5f526004601cfd5b610acb81610e08565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7f5912b89c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610b595750610b5882610fc1565b5b9050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610b9f576382b429005f526004601cfd5b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610bd261103a565b15610c4a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610c0c57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610c9d565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f633f57fc5c60e01b90505f634de1225a60e01b90506007831115610ccb57815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c6001166001188015610cf857835f528560045260245ffd5b8183555050505050505050565b5f8360601b60601c93508315610e0157604051835f5260208301516040526040835103610d72576040830151601b8160ff1c016020528060011b60011c6060526020600160805f60015afa805187183d1517610d6f57600193505f60605282604052505050610e01565b50505b6041835103610db85760608301515f1a60205260408301516060526020600160805f60015afa805186183d1517610db657600192505f606052816040525050610e01565b505b5f60605280604052631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa5060208260443d01868b5afa83835114169450505050505b9392505050565b610e1061103a565b15610e75577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610ecb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b6060806040518060400160405280600f81526020017f5369676e657256616c696461746f72000000000000000000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f610f4e61103e565b15610f6257610f5b611046565b9050610f9e565b7f00000000000000000000000000000000000000000000000000000000000000009050610f8d61110e565b15610f9d57610f9a611046565b90505b5b6719010000000000005f5280601a5281603a52604260182090505f603a52919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611033575061103282611166565b5b9050919050565b5f90565b5f6001905090565b5f8061105061103e565b1561107e575f8061105f610ece565b91509150818051906020012093508080519060200120925050506110c5565b7f000000000000000000000000000000000000000000000000000000000000000091507f000000000000000000000000000000000000000000000000000000000000000090505b6040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081209250505090565b5f807f000000000000000000000000000000000000000000000000000000000000000090505f7f0000000000000000000000000000000000000000000000000000000000000000905080301482461416159250505090565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611214816111e0565b811461121e575f80fd5b50565b5f8135905061122f8161120b565b92915050565b5f6020828403121561124a576112496111d8565b5b5f61125784828501611221565b91505092915050565b5f8115159050919050565b61127481611260565b82525050565b5f60208201905061128d5f83018461126b565b92915050565b61129c816111e0565b82525050565b5f6020820190506112b55f830184611293565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126112dc576112db6112bb565b5b8235905067ffffffffffffffff8111156112f9576112f86112bf565b5b602083019150836020820283011115611315576113146112c3565b5b9250929050565b5f8083601f840112611331576113306112bb565b5b8235905067ffffffffffffffff81111561134e5761134d6112bf565b5b60208301915083602082028301111561136a576113696112c3565b5b9250929050565b5f805f8060408587031215611389576113886111d8565b5b5f85013567ffffffffffffffff8111156113a6576113a56111dc565b5b6113b2878288016112c7565b9450945050602085013567ffffffffffffffff8111156113d5576113d46111dc565b5b6113e18782880161131c565b925092505092959194509250565b5f8083601f840112611404576114036112bb565b5b8235905067ffffffffffffffff811115611421576114206112bf565b5b60208301915083600182028301111561143d5761143c6112c3565b5b9250929050565b5f806020838503121561145a576114596111d8565b5b5f83013567ffffffffffffffff811115611477576114766111dc565b5b611483858286016113ef565b92509250509250929050565b5f819050919050565b6114a18161148f565b81146114ab575f80fd5b50565b5f813590506114bc81611498565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114eb826114c2565b9050919050565b6114fb816114e1565b8114611505575f80fd5b50565b5f81359050611516816114f2565b92915050565b5f805f805f60808688031215611535576115346111d8565b5b5f611542888289016114ae565b9550506020611553888289016114ae565b945050604061156488828901611508565b935050606086013567ffffffffffffffff811115611585576115846111dc565b5b611591888289016113ef565b92509250509295509295909350565b5f602082840312156115b5576115b46111d8565b5b5f6115c284828501611508565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6115ff816115cb565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61164782611605565b611651818561160f565b935061166181856020860161161f565b61166a8161162d565b840191505092915050565b61167e8161148f565b82525050565b61168d816114e1565b82525050565b5f819050919050565b6116a581611693565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6116dd8161148f565b82525050565b5f6116ee83836116d4565b60208301905092915050565b5f602082019050919050565b5f611710826116ab565b61171a81856116b5565b9350611725836116c5565b805f5b8381101561175557815161173c88826116e3565b9750611747836116fa565b925050600181019050611728565b5085935050505092915050565b5f60e0820190506117755f83018a6115f6565b8181036020830152611787818961163d565b9050818103604083015261179b818861163d565b90506117aa6060830187611675565b6117b76080830186611684565b6117c460a083018561169c565b81810360c08301526117d68184611706565b905098975050505050505050565b5f6020820190506117f75f830184611684565b92915050565b5f60ff82169050919050565b611812816117fd565b811461181c575f80fd5b50565b5f8135905061182d81611809565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61186d8261162d565b810181811067ffffffffffffffff8211171561188c5761188b611837565b5b80604052505050565b5f61189e6111cf565b90506118aa8282611864565b919050565b5f67ffffffffffffffff8211156118c9576118c8611837565b5b6118d28261162d565b9050602081019050919050565b828183375f83830152505050565b5f6118ff6118fa846118af565b611895565b90508281526020810184848401111561191b5761191a611833565b5b6119268482856118df565b509392505050565b5f82601f830112611942576119416112bb565b5b81356119528482602086016118ed565b91505092915050565b5f805f8060808587031215611973576119726111d8565b5b5f611980878288016114ae565b94505060206119918782880161181f565b93505060406119a287828801611508565b925050606085013567ffffffffffffffff8111156119c3576119c26111dc565b5b6119cf8782880161192e565b91505092959194509250565b5f6020820190506119ee5f83018461169c565b92915050565b5f602082019050611a075f830184611675565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b611a4381611260565b8114611a4d575f80fd5b50565b5f81359050611a5e81611a3a565b92915050565b5f60208284031215611a7957611a786111d8565b5b5f611a8684828501611a50565b91505092915050565b5f67ffffffffffffffff821115611aa957611aa8611837565b5b602082029050602081019050919050565b5f611acc611ac784611a8f565b611895565b90508083825260208201905060208402830185811115611aef57611aee6112c3565b5b835b81811015611b185780611b048882611508565b845260208401935050602081019050611af1565b5050509392505050565b5f82601f830112611b3657611b356112bb565b5b8135611b46848260208601611aba565b91505092915050565b5f611b59826114c2565b9050919050565b611b6981611b4f565b8114611b73575f80fd5b50565b5f81359050611b8481611b60565b92915050565b5f8060408385031215611ba057611b9f6111d8565b5b5f83013567ffffffffffffffff811115611bbd57611bbc6111dc565b5b611bc985828601611b22565b9250506020611bda85828601611b76565b9150509250929050565b5f80fd5b5f80fd5b5f60408284031215611c0157611c00611be4565b5b611c0b6040611895565b90505f82013567ffffffffffffffff811115611c2a57611c29611be8565b5b611c368482850161192e565b5f83015250602082013567ffffffffffffffff811115611c5957611c58611be8565b5b611c658482850161192e565b60208301525092915050565b5f60208284031215611c8657611c856111d8565b5b5f82013567ffffffffffffffff811115611ca357611ca26111dc565b5b611caf84828501611bec565b91505092915050565b5f81519050611cc6816114f2565b92915050565b5f611cde611cd9846118af565b611895565b905082815260208101848484011115611cfa57611cf9611833565b5b611d0584828561161f565b509392505050565b5f82601f830112611d2157611d206112bb565b5b8151611d31848260208601611ccc565b91505092915050565b5f81519050611d4881611809565b92915050565b5f60608284031215611d6357611d62611be4565b5b611d6d6060611895565b90505f611d7c84828501611cb8565b5f83015250602082015167ffffffffffffffff811115611d9f57611d9e611be8565b5b611dab84828501611d0d565b6020830152506040611dbf84828501611d3a565b60408301525092915050565b5f60208284031215611de057611ddf6111d8565b5b5f82015167ffffffffffffffff811115611dfd57611dfc6111dc565b5b611e0984828501611d4e565b91505092915050565b611e1b816117fd565b82525050565b5f604082019050611e345f830185611e12565b611e416020830184611675565b9392505050565b5f60a082019050611e5b5f83018861169c565b611e686020830187611675565b611e756040830186611e12565b611e826060830185611684565b611e8f608083018461169c565b969550505050505056fea264697066735822122087daf3e273f95aff5f13f045d02c91d9576d49c6f53cea4ce8ae97c0657612de64736f6c634300081a0033",s=class s extends g.DeployableTarget{constructor(){super(...arguments),this.abi=e.F}async signers(f,b){return await e.jB(this._config,{address:this.assertValidAddress(),args:[f],...b})}async hashSignerData(f,b){return await e.UB(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveQuantity,f.claimant,f.incentiveData],...b})}async validate(f,b){return await this.awaitResult(this.validateRaw(f,b))}async validateRaw(f,b){const{request:a,result:c}=await e.mH(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveId,f.claimant,f.claimData],...this.optionallyAttachAccount(),...b});return{hash:await e.iH(this._config,a),result:c}}async setAuthorized(f,b,a){return await this.awaitResult(this.setAuthorizedRaw(f,b,a))}async setAuthorizedRaw(f,b,a){const{request:c,result:t}=await e.yH(this._config,{address:this.assertValidAddress(),args:[f,b],...this.optionallyAttachAccount(),...a});return{hash:await e.tH(this._config,c),result:t}}async setValidatorCallerRaw(f,b){const{request:a,result:c}=await e.dH(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await e.nH(this._config,a),result:c}}async setValidatorCaller(f,b){return await this.awaitResult(this.setValidatorCallerRaw(f,b))}async encodeClaimData(f){return await o({...f,validator:this.assertValidAddress()})}buildParameters(f,b){const[a,c]=this.validateDeploymentConfig(f,b);return{abi:e.F,bytecode:A,args:[u(a)],...this.optionallyAttachAccount(c.account)}}};s.bases={31337:void 0,...p.SignerValidator},s.registryType=m.RegistryType.VALIDATOR;let i=s;async function o({signer:d,incentiveData:f,chainId:b,validator:a,incentiveQuantity:c,claimant:t,boostId:n}){const y=await d.privateKey.signTypedData({domain:{name:"SignerValidator",version:"1",chainId:b,verifyingContract:a},types:{SignerValidatorData:[{name:"boostId",type:"uint256"},{name:"incentiveQuantity",type:"uint8"},{name:"claimant",type:"address"},{name:"incentiveData",type:"bytes"}]},primaryType:"SignerValidatorData",message:{boostId:n,incentiveQuantity:c,claimant:t,incentiveData:f}}),h=l({signer:d.account,signature:y,incentiveQuantity:c});return r.encodeAbiParameters([{type:"tuple",name:"BoostClaimData",components:[{type:"bytes",name:"validatorData"},{type:"bytes",name:"incentiveData"}]}],[{validatorData:h,incentiveData:f}])}function l({signer:d,signature:f,incentiveQuantity:b}){return r.encodeAbiParameters([{type:"tuple",name:"SignerValidatorInputParams",components:[{type:"address",name:"signer"},{type:"bytes",name:"signature"},{type:"uint8",name:"incentiveQuantity"}]}],[{signer:d,signature:f,incentiveQuantity:b}])}function u({signers:d,validatorCaller:f}){return r.encodeAbiParameters([{type:"address[]",name:"signers"},{type:"address",name:"validatorCaller"}],[d,f])}exports.signerValidatorAbi=e.F;exports.SignerValidator=i;exports.prepareSignerValidatorClaimDataPayload=o;exports.prepareSignerValidatorInputParams=l;exports.prepareSignerValidatorPayload=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../generated-D50hBWtr.cjs"),r=require("viem"),p=require("../deployments-BucJ-gwk.cjs"),g=require("../Deployable/DeployableTarget.cjs"),m=require("../utils.cjs"),A="0x610120604052348015610010575f80fd5b503073ffffffffffffffffffffffffffffffffffffffff16608081815250504660a0818152505060608061004861013960201b60201c565b6100635761005a61014160201b60201c565b80925081935050505b5f61007261013960201b60201c565b610083578280519060200120610087565b5f801b5b90505f61009861013960201b60201c565b6100a95782805190602001206100ad565b5f801b5b90508160c081815250508060e081815250505f6100ce61013960201b60201c565b610118576040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815283602082015282604082015246606082015230608082015260a081209150505b80610100818152505050505050506101346101b860201b60201c565b61024d565b5f6001905090565b6060806040518060400160405280600f81526020017f5369676e657256616c696461746f72000000000000000000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f6101c761022460201b60201c565b9050805460018116156101e15763f92ee8a95f526004601cfd5b8160c01c808260011c1461021f578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b60805160a05160c05160e05161010051611f0661028a5f395f610f9b01525f6110da01525f6110b701525f61114901525f61116d0152611f065ff3fe6080604052600436106100f2575f3560e01c8063736c0d5b11610089578063d3de6e7511610058578063d3de6e75146102c4578063f04e283e14610300578063f2fde38b1461031c578063fee81cf414610338576100f2565b8063736c0d5b1461020657806384b0196e146102425780638da5cb5b14610272578063a1d2756f1461029c576100f2565b8063439fab91116100c5578063439fab911461018e57806354d1f13d146101b6578063703b6900146101c0578063715018a6146101fc576100f2565b806301ffc9a7146100f6578063256929621461013257806328d6183b1461013c5780634359d28a14610166575b5f80fd5b348015610101575f80fd5b5061011c6004803603810190610117919061126c565b610374565b60405161012991906112b1565b60405180910390f35b61013a6103ed565b005b348015610147575f80fd5b5061015061043e565b60405161015d91906112d9565b60405180910390f35b348015610171575f80fd5b5061018c600480360381019061018791906113a8565b610465565b005b348015610199575f80fd5b506101b460048036038101906101af919061147b565b61056e565b005b6101be61071c565b005b3480156101cb575f80fd5b506101e660048036038101906101e19190611553565b610755565b6040516101f391906112b1565b60405180910390f35b610204610948565b005b348015610211575f80fd5b5061022c600480360381019061022791906115d7565b61095b565b60405161023991906112b1565b60405180910390f35b34801561024d575f80fd5b50610256610977565b6040516102699796959493929190611799565b60405180910390f35b34801561027d575f80fd5b506102866109c2565b604051610293919061181b565b60405180910390f35b3480156102a7575f80fd5b506102c260048036038101906102bd91906115d7565b6109ea565b005b3480156102cf575f80fd5b506102ea60048036038101906102e59190611992565b610a35565b6040516102f79190611a12565b60405180910390f35b61031a600480360381019061031591906115d7565b610a9e565b005b610336600480360381019061033191906115d7565b610adc565b005b348015610343575f80fd5b5061035e600480360381019061035991906115d7565b610b05565b60405161036b9190611a2b565b60405180910390f35b5f7fb8ce7b22000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103e657506103e582610b1e565b5b9050919050565b5f6103f6610b97565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fb8ce7b2200000000000000000000000000000000000000000000000000000000905090565b61046d610ba1565b8181905084849050146104ac576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b84849050811015610567578282828181106104cc576104cb611a44565b5b90506020020160208101906104e19190611a9b565b5f808787858181106104f6576104f5611a44565b5b905060200201602081019061050b91906115d7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506104ae565b5050505050565b5f610577610bd8565b905080546003825580156105a95760018160011c14303b106105a05763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f8084848101906105bb9190611bc1565b915091506105e2825f815181106105d5576105d4611a44565b5b6020026020010151610c01565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f5b82518110156106a85760015f8085848151811061064457610643611a44565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050610624565b507f8098ebafc4f95fe5a577ff9be7c88d4445b6ef0acf915dad2b538c81b0384d7c816040516106d8919061181b565b60405180910390a150508015610717576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107dc576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f83838101906107ec9190611ca8565b90505f815f01518060200190518101906108069190611e02565b90505f61081d898360400151898660200151610a35565b905087826040015160ff1611610870578160400151886040517f17c66bc7000000000000000000000000000000000000000000000000000000008152600401610867929190611e58565b60405180910390fd5b5f80835f015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166108f2576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61090881896001610cd79092919063ffffffff16565b61093a818360200151845f015173ffffffffffffffffffffffffffffffffffffffff16610d3c9092919063ffffffff16565b935050505095945050505050565b610950610ba1565b6109595f610e3f565b565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f6060805f805f60607f0f0000000000000000000000000000000000000000000000000000000000000096506109ab610f05565b809650819750505046935030925090919293949596565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b6109f2610ba1565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f610a947ffea51d5bd45bcd3c2ecc3679b43a3b80b0bd0923f8c16f822455b8cdecd9852f8686868680519060200120604051602001610a79959493929190611e7f565b60405160208183030381529060405280519060200120610f7c565b9050949350505050565b610aa6610ba1565b63389a75e1600c52805f526020600c208054421115610acc57636f5e88185f526004601cfd5b5f815550610ad981610e3f565b50565b610ae4610ba1565b8060601b610af957637448fbae5f526004601cfd5b610b0281610e3f565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7f5912b89c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610b905750610b8f82610ff8565b5b9050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610bd6576382b429005f526004601cfd5b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610c09611071565b15610c81577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610c4357630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610cd4565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f633f57fc5c60e01b90505f634de1225a60e01b90506007831115610d0257815f528260045260245ffd5b84602052835f5260405f206001841b81541880851c6001166001188015610d2f57835f528560045260245ffd5b8183555050505050505050565b5f8360601b60601c93508315610e3857604051835f5260208301516040526040835103610da9576040830151601b8160ff1c016020528060011b60011c6060526020600160805f60015afa805187183d1517610da657600193505f60605282604052505050610e38565b50505b6041835103610def5760608301515f1a60205260408301516060526020600160805f60015afa805186183d1517610ded57600192505f606052816040525050610e38565b505b5f60605280604052631626ba7e60e01b808252846004830152602482016040815284516020018060448501828860045afa5060208260443d01868b5afa83835114169450505050505b9392505050565b610e47611071565b15610eac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610f02565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b6060806040518060400160405280600f81526020017f5369676e657256616c696461746f72000000000000000000000000000000000081525091506040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525090509091565b5f610f85611075565b15610f9957610f9261107d565b9050610fd5565b7f00000000000000000000000000000000000000000000000000000000000000009050610fc4611145565b15610fd457610fd161107d565b90505b5b6719010000000000005f5280601a5281603a52604260182090505f603a52919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061106a57506110698261119d565b5b9050919050565b5f90565b5f6001905090565b5f80611087611075565b156110b5575f80611096610f05565b91509150818051906020012093508080519060200120925050506110fc565b7f000000000000000000000000000000000000000000000000000000000000000091507f000000000000000000000000000000000000000000000000000000000000000090505b6040517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081209250505090565b5f807f000000000000000000000000000000000000000000000000000000000000000090505f7f0000000000000000000000000000000000000000000000000000000000000000905080301482461416159250505090565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61124b81611217565b8114611255575f80fd5b50565b5f8135905061126681611242565b92915050565b5f602082840312156112815761128061120f565b5b5f61128e84828501611258565b91505092915050565b5f8115159050919050565b6112ab81611297565b82525050565b5f6020820190506112c45f8301846112a2565b92915050565b6112d381611217565b82525050565b5f6020820190506112ec5f8301846112ca565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112611313576113126112f2565b5b8235905067ffffffffffffffff8111156113305761132f6112f6565b5b60208301915083602082028301111561134c5761134b6112fa565b5b9250929050565b5f8083601f840112611368576113676112f2565b5b8235905067ffffffffffffffff811115611385576113846112f6565b5b6020830191508360208202830111156113a1576113a06112fa565b5b9250929050565b5f805f80604085870312156113c0576113bf61120f565b5b5f85013567ffffffffffffffff8111156113dd576113dc611213565b5b6113e9878288016112fe565b9450945050602085013567ffffffffffffffff81111561140c5761140b611213565b5b61141887828801611353565b925092505092959194509250565b5f8083601f84011261143b5761143a6112f2565b5b8235905067ffffffffffffffff811115611458576114576112f6565b5b602083019150836001820283011115611474576114736112fa565b5b9250929050565b5f80602083850312156114915761149061120f565b5b5f83013567ffffffffffffffff8111156114ae576114ad611213565b5b6114ba85828601611426565b92509250509250929050565b5f819050919050565b6114d8816114c6565b81146114e2575f80fd5b50565b5f813590506114f3816114cf565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611522826114f9565b9050919050565b61153281611518565b811461153c575f80fd5b50565b5f8135905061154d81611529565b92915050565b5f805f805f6080868803121561156c5761156b61120f565b5b5f611579888289016114e5565b955050602061158a888289016114e5565b945050604061159b8882890161153f565b935050606086013567ffffffffffffffff8111156115bc576115bb611213565b5b6115c888828901611426565b92509250509295509295909350565b5f602082840312156115ec576115eb61120f565b5b5f6115f98482850161153f565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b61163681611602565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61167e8261163c565b6116888185611646565b9350611698818560208601611656565b6116a181611664565b840191505092915050565b6116b5816114c6565b82525050565b6116c481611518565b82525050565b5f819050919050565b6116dc816116ca565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b611714816114c6565b82525050565b5f611725838361170b565b60208301905092915050565b5f602082019050919050565b5f611747826116e2565b61175181856116ec565b935061175c836116fc565b805f5b8381101561178c578151611773888261171a565b975061177e83611731565b92505060018101905061175f565b5085935050505092915050565b5f60e0820190506117ac5f83018a61162d565b81810360208301526117be8189611674565b905081810360408301526117d28188611674565b90506117e160608301876116ac565b6117ee60808301866116bb565b6117fb60a08301856116d3565b81810360c083015261180d818461173d565b905098975050505050505050565b5f60208201905061182e5f8301846116bb565b92915050565b5f60ff82169050919050565b61184981611834565b8114611853575f80fd5b50565b5f8135905061186481611840565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6118a482611664565b810181811067ffffffffffffffff821117156118c3576118c261186e565b5b80604052505050565b5f6118d5611206565b90506118e1828261189b565b919050565b5f67ffffffffffffffff821115611900576118ff61186e565b5b61190982611664565b9050602081019050919050565b828183375f83830152505050565b5f611936611931846118e6565b6118cc565b9050828152602081018484840111156119525761195161186a565b5b61195d848285611916565b509392505050565b5f82601f830112611979576119786112f2565b5b8135611989848260208601611924565b91505092915050565b5f805f80608085870312156119aa576119a961120f565b5b5f6119b7878288016114e5565b94505060206119c887828801611856565b93505060406119d98782880161153f565b925050606085013567ffffffffffffffff8111156119fa576119f9611213565b5b611a0687828801611965565b91505092959194509250565b5f602082019050611a255f8301846116d3565b92915050565b5f602082019050611a3e5f8301846116ac565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b611a7a81611297565b8114611a84575f80fd5b50565b5f81359050611a9581611a71565b92915050565b5f60208284031215611ab057611aaf61120f565b5b5f611abd84828501611a87565b91505092915050565b5f67ffffffffffffffff821115611ae057611adf61186e565b5b602082029050602081019050919050565b5f611b03611afe84611ac6565b6118cc565b90508083825260208201905060208402830185811115611b2657611b256112fa565b5b835b81811015611b4f5780611b3b888261153f565b845260208401935050602081019050611b28565b5050509392505050565b5f82601f830112611b6d57611b6c6112f2565b5b8135611b7d848260208601611af1565b91505092915050565b5f611b90826114f9565b9050919050565b611ba081611b86565b8114611baa575f80fd5b50565b5f81359050611bbb81611b97565b92915050565b5f8060408385031215611bd757611bd661120f565b5b5f83013567ffffffffffffffff811115611bf457611bf3611213565b5b611c0085828601611b59565b9250506020611c1185828601611bad565b9150509250929050565b5f80fd5b5f80fd5b5f60408284031215611c3857611c37611c1b565b5b611c4260406118cc565b90505f82013567ffffffffffffffff811115611c6157611c60611c1f565b5b611c6d84828501611965565b5f83015250602082013567ffffffffffffffff811115611c9057611c8f611c1f565b5b611c9c84828501611965565b60208301525092915050565b5f60208284031215611cbd57611cbc61120f565b5b5f82013567ffffffffffffffff811115611cda57611cd9611213565b5b611ce684828501611c23565b91505092915050565b5f81519050611cfd81611529565b92915050565b5f611d15611d10846118e6565b6118cc565b905082815260208101848484011115611d3157611d3061186a565b5b611d3c848285611656565b509392505050565b5f82601f830112611d5857611d576112f2565b5b8151611d68848260208601611d03565b91505092915050565b5f81519050611d7f81611840565b92915050565b5f60608284031215611d9a57611d99611c1b565b5b611da460606118cc565b90505f611db384828501611cef565b5f83015250602082015167ffffffffffffffff811115611dd657611dd5611c1f565b5b611de284828501611d44565b6020830152506040611df684828501611d71565b60408301525092915050565b5f60208284031215611e1757611e1661120f565b5b5f82015167ffffffffffffffff811115611e3457611e33611213565b5b611e4084828501611d85565b91505092915050565b611e5281611834565b82525050565b5f604082019050611e6b5f830185611e49565b611e7860208301846116ac565b9392505050565b5f60a082019050611e925f8301886116d3565b611e9f60208301876116ac565b611eac6040830186611e49565b611eb960608301856116bb565b611ec660808301846116d3565b969550505050505056fea2646970667358221220c878bffa469c59cf5f5f9a4334b893b031a135760d3134b74f109c8a522594c264736f6c634300081a0033",s=class s extends g.DeployableTarget{constructor(){super(...arguments),this.abi=e.F}async signers(f,b){return await e.Px(this._config,{address:this.assertValidAddress(),args:[f],...b})}async hashSignerData(f,b){return await e.Lx(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveQuantity,f.claimant,f.incentiveData],...b})}async validate(f,b){return await this.awaitResult(this.validateRaw(f,b))}async validateRaw(f,b){const{request:a,result:c}=await e.o1(this._config,{address:this.assertValidAddress(),args:[f.boostId,f.incentiveId,f.claimant,f.claimData],...this.optionallyAttachAccount(),...b});return{hash:await e.Kx(this._config,a),result:c}}async setAuthorized(f,b,a){return await this.awaitResult(this.setAuthorizedRaw(f,b,a))}async setAuthorizedRaw(f,b,a){const{request:c,result:t}=await e.i1(this._config,{address:this.assertValidAddress(),args:[f,b],...this.optionallyAttachAccount(),...a});return{hash:await e.$x(this._config,c),result:t}}async setValidatorCallerRaw(f,b){const{request:a,result:c}=await e.s1(this._config,{address:this.assertValidAddress(),args:[f],...this.optionallyAttachAccount(),...b});return{hash:await e.Qx(this._config,a),result:c}}async setValidatorCaller(f,b){return await this.awaitResult(this.setValidatorCallerRaw(f,b))}async encodeClaimData(f){return await o({...f,validator:this.assertValidAddress()})}buildParameters(f,b){const[a,c]=this.validateDeploymentConfig(f,b);return{abi:e.F,bytecode:A,args:[u(a)],...this.optionallyAttachAccount(c.account)}}};s.bases={31337:void 0,...p.SignerValidator},s.registryType=m.RegistryType.VALIDATOR;let i=s;async function o({signer:d,incentiveData:f,chainId:b,validator:a,incentiveQuantity:c,claimant:t,boostId:n}){const y=await d.privateKey.signTypedData({domain:{name:"SignerValidator",version:"1",chainId:b,verifyingContract:a},types:{SignerValidatorData:[{name:"boostId",type:"uint256"},{name:"incentiveQuantity",type:"uint8"},{name:"claimant",type:"address"},{name:"incentiveData",type:"bytes"}]},primaryType:"SignerValidatorData",message:{boostId:n,incentiveQuantity:c,claimant:t,incentiveData:f}}),h=l({signer:d.account,signature:y,incentiveQuantity:c});return r.encodeAbiParameters([{type:"tuple",name:"BoostClaimData",components:[{type:"bytes",name:"validatorData"},{type:"bytes",name:"incentiveData"}]}],[{validatorData:h,incentiveData:f}])}function l({signer:d,signature:f,incentiveQuantity:b}){return r.encodeAbiParameters([{type:"tuple",name:"SignerValidatorInputParams",components:[{type:"address",name:"signer"},{type:"bytes",name:"signature"},{type:"uint8",name:"incentiveQuantity"}]}],[{signer:d,signature:f,incentiveQuantity:b}])}function u({signers:d,validatorCaller:f}){return r.encodeAbiParameters([{type:"address[]",name:"signers"},{type:"address",name:"validatorCaller"}],[d,f])}exports.signerValidatorAbi=e.F;exports.SignerValidator=i;exports.prepareSignerValidatorClaimDataPayload=o;exports.prepareSignerValidatorInputParams=l;exports.prepareSignerValidatorPayload=u;
2
2
  //# sourceMappingURL=SignerValidator.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SignerValidator.cjs","sources":["../../src/Validators/SignerValidator.ts"],"sourcesContent":["import {\n readSignerValidatorHashSignerData,\n readSignerValidatorSigners,\n signerValidatorAbi,\n simulateSignerValidatorSetAuthorized,\n simulateSignerValidatorSetValidatorCaller,\n simulateSignerValidatorValidate,\n writeSignerValidatorSetAuthorized,\n writeSignerValidatorSetValidatorCaller,\n writeSignerValidatorValidate,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/validators/SignerValidator.sol/SignerValidator.json';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n type PrivateKeyAccount,\n encodeAbiParameters,\n} from 'viem';\nimport { SignerValidator as SignerValidatorBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { signerValidatorAbi };\n\n/**\n * Object reprentation of a {@link SignerValidator} initialization payload\n *\n * @export\n * @interface SignerValidatorPayload\n * @typedef {SignerValidatorPayload}\n */\nexport interface SignerValidatorPayload {\n /**\n * The list of authorized signers. The first address in the list will be the initial owner of the contract.\n *\n * @type {Address[]}\n */\n signers: Address[];\n /**\n * The authorized caller of the {@link prepareSignerValidator} function\n * @type {Address}\n */\n validatorCaller: Address;\n}\n\n/**\n * Description placeholder\n *\n * @export\n * @interface SignerValidatorValidatePayload\n * @typedef {SignerValidatorValidatePayload}\n */\nexport interface SignerValidatorValidatePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {bigint}\n */\n incentiveId: bigint;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n claimData: Hex;\n}\n\n/**\n * Object reprentation of a {@link SignerValidator} initialization payload\n *\n * @export\n * @interface SignerValidatorPayload\n * @typedef {SignerValidatorPayload}\n */\nexport interface SignerValidatorPayload {\n /**\n * The list of authorized signers. The first address in the list will be the initial owner of the contract.\n *\n * @type {Address[]}\n */\n signers: Address[];\n /**\n * The authorized caller of the {@link prepareSignerValidator} function\n * @type {Address}\n */\n validatorCaller: Address;\n}\n\n/**\n * Description placeholder\n *\n * @export\n * @interface SignerValidatorValidatePayload\n * @typedef {SignerValidatorValidatePayload}\n */\nexport interface SignerValidatorValidatePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {bigint}\n */\n incentiveId: bigint;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n claimData: Hex;\n}\n\n/**\n * Signer Validator Claim Data Payload\n *\n * @export\n * @interface SignerValidatorClaimDataParams\n * @typedef {SignerValidatorClaimDataParams}\n */\nexport interface SignerValidatorClaimDataParams {\n /**\n * The signer with which to sign the input\n *\n * @type {{\n * account: Address;\n * key: Hex;\n * privateKey: PrivateKeyAccount;\n * }}\n */\n signer: {\n account: Address;\n key: Hex;\n privateKey: PrivateKeyAccount;\n };\n /**\n * The encoded data to provide the underlying incentive. You can use {@link prepareAllowListIncentivePayload}, {@link prepareCGDAIncentivePayload}, {@link prepareERC20IncentivePayload}, {@link prepareERC1155IncentivePayload}, or {@link preparePointsIncentivePayload}\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n /**\n * The chain id to target\n *\n * @type {number}\n */\n chainId: number;\n /**\n * The address of the validator\n *\n * @type {Address}\n */\n validator: Address;\n /**\n * The total number of incentives on the Boost\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The ID of the boost\n *\n * @type {bigint}\n */\n boostId: bigint;\n}\n\n/**\n * Object representation of a {@link SignerValidatorInputParams} initialization payload\n *\n * @export\n * @interface SignerValidatorInputParams\n * @typedef {SignerValidatorInputParams}\n */\nexport interface SignerValidatorInputParams {\n /**\n * The signer address.\n *\n * @type {Address}\n */\n signer: Address;\n\n /**\n * The signature data.\n *\n * @type {string}\n */\n signature: Hex;\n\n /**\n * The total number of incentives on the Boost\n *\n * @type {number}\n */\n incentiveQuantity: number;\n}\n\n/**\n * Object representing the payload for signing before validaton.\n *\n * @export\n * @interface SignerValidatorSignaturePayload\n * @typedef {SignerValidatorSignaturePayload}\n */\nexport interface SignerValidatorSignaturePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n}\n\n/**\n * A generic `viem.Log` event with support for `BoostCore` event types.\n *\n * @export\n * @typedef {SignerValidatorLog}\n * @template {ContractEventName<\n * typeof signerValidatorAbi\n * >} [event=ContractEventName<typeof signerValidatorAbi>]\n */\nexport type SignerValidatorLog<\n event extends ContractEventName<\n typeof signerValidatorAbi\n > = ContractEventName<typeof signerValidatorAbi>,\n> = GenericLog<typeof signerValidatorAbi, event>;\n\n/**\n * A simple implementation of a Validator that verifies a given signature and checks the recovered address against a set of authorized signers\n *\n * @export\n * @class SignerValidator\n * @typedef {SignerValidator}\n * @extends {DeployableTarget<SignerValidatorPayload>}\n */\nexport class SignerValidator extends DeployableTarget<\n SignerValidatorPayload,\n typeof signerValidatorAbi\n> {\n /**\n * @inheritdoc\n *\n * @public\n * @readonly\n * @type {*}\n */\n public override readonly abi = signerValidatorAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Record<number, Address>}\n */\n public static override bases: Record<number, Address> = {\n 31337: import.meta.env.VITE_SIGNER_VALIDATOR_BASE,\n ...(SignerValidatorBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.VALIDATOR;\n\n /**\n * The set of authorized signers\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>}\n */\n public async signers(address: Address, params?: ReadParams) {\n return await readSignerValidatorSigners(this._config, {\n address: this.assertValidAddress(),\n args: [address],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Retrieve the hash and signer data for a given hash\n *\n * @public\n * @async\n * @param {SignerValidatorSignaturePayload} payload\n * @param {?ReadParams} [params]\n * @returns {Promise<Hex>}\n */\n public async hashSignerData(\n payload: SignerValidatorSignaturePayload,\n params?: ReadParams,\n ) {\n return await readSignerValidatorHashSignerData(this._config, {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveQuantity,\n payload.claimant,\n payload.incentiveData,\n ],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.\n *\n * @public\n * @async\n * @param {SignerValidatorValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the action has been validated based on the data payload\n */\n protected async validate(\n payload: SignerValidatorValidatePayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.validateRaw(payload, params));\n }\n\n /**\n * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.\n *\n * @public\n * @async\n * @param {SignerValidatorValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the action has been validated based on the data payload\n */\n protected async validateRaw(\n payload: SignerValidatorValidatePayload,\n params?: ReadParams,\n ) {\n const { request, result } = await simulateSignerValidatorValidate(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveId,\n payload.claimant,\n payload.claimData,\n ],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSignerValidatorValidate(this._config, request);\n return { hash, result };\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAuthorized(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n return await this.awaitResult(\n this.setAuthorizedRaw(addresses, allowed, params),\n );\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAuthorizedRaw(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n const { request, result } = await simulateSignerValidatorSetAuthorized(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [addresses, allowed],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSignerValidatorSetAuthorized(this._config, request);\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setValidatorCallerRaw(address: Address, params?: WriteParams) {\n const { request, result } = await simulateSignerValidatorSetValidatorCaller(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [address],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSignerValidatorSetValidatorCaller(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setValidatorCaller(address: Address, params?: WriteParams) {\n return await this.awaitResult(this.setValidatorCallerRaw(address, params));\n }\n\n /**\n * Properly encodes the data needed to claim\n *\n * @public\n * @async\n * @param {SignerValidatorClaimDataParams} params\n * @returns {Promise<Hex>}\n */\n public async encodeClaimData(\n params: Omit<SignerValidatorClaimDataParams, 'validator'>,\n ): Promise<Hex> {\n return await prepareSignerValidatorClaimDataPayload({\n ...params,\n validator: this.assertValidAddress(),\n });\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SignerValidatorPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SignerValidatorPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n return {\n abi: signerValidatorAbi,\n bytecode: bytecode as Hex,\n args: [prepareSignerValidatorPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Signer Validator Claim Data Payload Preparation\n *\n * @export\n * @async\n * @param {SignerValidatorClaimDataParams} param0\n * @param {{ account: Address; key: Hex; privateKey: PrivateKeyAccount; }} param0.signer\n * @param {Hex} param0.incentiveData\n * @param {number} param0.chainId\n * @param {Address} param0.validator\n * @param {number} param0.incentiveQuantity\n * @param {Address} param0.claimant\n * @param {bigint} param0.boostId\n * @returns {Promise<Hex>}\n */\nexport async function prepareSignerValidatorClaimDataPayload({\n signer,\n incentiveData,\n chainId,\n validator,\n incentiveQuantity,\n claimant,\n boostId,\n}: SignerValidatorClaimDataParams): Promise<Hex> {\n const trustedSignature = await signer.privateKey.signTypedData({\n domain: {\n name: 'SignerValidator',\n version: '1',\n chainId: chainId,\n verifyingContract: validator,\n },\n types: {\n SignerValidatorData: [\n { name: 'boostId', type: 'uint256' },\n { name: 'incentiveQuantity', type: 'uint8' },\n { name: 'claimant', type: 'address' },\n { name: 'incentiveData', type: 'bytes' },\n ],\n },\n primaryType: 'SignerValidatorData' as const,\n message: {\n boostId,\n incentiveQuantity,\n claimant,\n incentiveData: incentiveData,\n },\n });\n\n // Prepare the claim data payload using the new helper\n const validatorData = prepareSignerValidatorInputParams({\n signer: signer.account,\n signature: trustedSignature,\n incentiveQuantity, // Adjust incentive quantity as necessary\n });\n\n const boostClaimDataPayload = encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'BoostClaimData',\n components: [\n { type: 'bytes', name: 'validatorData' },\n { type: 'bytes', name: 'incentiveData' },\n ],\n },\n ],\n [{ validatorData, incentiveData }],\n );\n\n return boostClaimDataPayload;\n}\n\n/**\n * Given a {@link SignerValidatorInputParams}, properly encode the initialization payload.\n *\n * @param {SignerValidatorInputParams} param0\n * @param {Address} param0.signer\n * @param {Hex} param0.signature\n * @param {number} param0.incentiveQuantity\n * @returns {Hex}\n */\nexport function prepareSignerValidatorInputParams({\n signer,\n signature,\n incentiveQuantity,\n}: SignerValidatorInputParams) {\n return encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'SignerValidatorInputParams',\n components: [\n { type: 'address', name: 'signer' },\n { type: 'bytes', name: 'signature' },\n { type: 'uint8', name: 'incentiveQuantity' },\n ],\n },\n ],\n [{ signer, signature, incentiveQuantity }],\n );\n}\n\n/**\n * Given a {@link SignerValidatorPayload}, properly encode the initialization payload.\n *\n * @param {SignerValidatorPayload} param0\n * @param {Address[]} param0.signers\n * @param {Address} param0.validatorCaller\n * @returns {Hex}\n */\nexport function prepareSignerValidatorPayload({\n signers,\n validatorCaller,\n}: SignerValidatorPayload) {\n return encodeAbiParameters(\n [\n { type: 'address[]', name: 'signers' },\n { type: 'address', name: 'validatorCaller' },\n ],\n [signers, validatorCaller],\n );\n}\n"],"names":["_SignerValidator","DeployableTarget","signerValidatorAbi","address","params","readSignerValidatorSigners","payload","readSignerValidatorHashSignerData","request","result","simulateSignerValidatorValidate","writeSignerValidatorValidate","addresses","allowed","simulateSignerValidatorSetAuthorized","writeSignerValidatorSetAuthorized","simulateSignerValidatorSetValidatorCaller","writeSignerValidatorSetValidatorCaller","prepareSignerValidatorClaimDataPayload","_payload","_options","options","bytecode","prepareSignerValidatorPayload","SignerValidatorBases","RegistryType","SignerValidator","signer","incentiveData","chainId","validator","incentiveQuantity","claimant","boostId","trustedSignature","validatorData","prepareSignerValidatorInputParams","encodeAbiParameters","signature","signers","validatorCaller"],"mappings":"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"}
1
+ {"version":3,"file":"SignerValidator.cjs","sources":["../../src/Validators/SignerValidator.ts"],"sourcesContent":["import {\n readSignerValidatorHashSignerData,\n readSignerValidatorSigners,\n signerValidatorAbi,\n simulateSignerValidatorSetAuthorized,\n simulateSignerValidatorSetValidatorCaller,\n simulateSignerValidatorValidate,\n writeSignerValidatorSetAuthorized,\n writeSignerValidatorSetValidatorCaller,\n writeSignerValidatorValidate,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/validators/SignerValidator.sol/SignerValidator.json';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n type PrivateKeyAccount,\n encodeAbiParameters,\n} from 'viem';\nimport { SignerValidator as SignerValidatorBases } from '../../dist/deployments.json';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { signerValidatorAbi };\n\n/**\n * Object reprentation of a {@link SignerValidator} initialization payload\n *\n * @export\n * @interface SignerValidatorPayload\n * @typedef {SignerValidatorPayload}\n */\nexport interface SignerValidatorPayload {\n /**\n * The list of authorized signers. The first address in the list will be the initial owner of the contract.\n *\n * @type {Address[]}\n */\n signers: Address[];\n /**\n * The authorized caller of the {@link prepareSignerValidator} function\n * @type {Address}\n */\n validatorCaller: Address;\n}\n\n/**\n * Description placeholder\n *\n * @export\n * @interface SignerValidatorValidatePayload\n * @typedef {SignerValidatorValidatePayload}\n */\nexport interface SignerValidatorValidatePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {bigint}\n */\n incentiveId: bigint;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n claimData: Hex;\n}\n\n/**\n * Object reprentation of a {@link SignerValidator} initialization payload\n *\n * @export\n * @interface SignerValidatorPayload\n * @typedef {SignerValidatorPayload}\n */\nexport interface SignerValidatorPayload {\n /**\n * The list of authorized signers. The first address in the list will be the initial owner of the contract.\n *\n * @type {Address[]}\n */\n signers: Address[];\n /**\n * The authorized caller of the {@link prepareSignerValidator} function\n * @type {Address}\n */\n validatorCaller: Address;\n}\n\n/**\n * Description placeholder\n *\n * @export\n * @interface SignerValidatorValidatePayload\n * @typedef {SignerValidatorValidatePayload}\n */\nexport interface SignerValidatorValidatePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {bigint}\n */\n incentiveId: bigint;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n claimData: Hex;\n}\n\n/**\n * Signer Validator Claim Data Payload\n *\n * @export\n * @interface SignerValidatorClaimDataParams\n * @typedef {SignerValidatorClaimDataParams}\n */\nexport interface SignerValidatorClaimDataParams {\n /**\n * The signer with which to sign the input\n *\n * @type {{\n * account: Address;\n * key: Hex;\n * privateKey: PrivateKeyAccount;\n * }}\n */\n signer: {\n account: Address;\n key: Hex;\n privateKey: PrivateKeyAccount;\n };\n /**\n * The encoded data to provide the underlying incentive. You can use {@link prepareAllowListIncentivePayload}, {@link prepareCGDAIncentivePayload}, {@link prepareERC20IncentivePayload}, {@link prepareERC1155IncentivePayload}, or {@link preparePointsIncentivePayload}\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n /**\n * The chain id to target\n *\n * @type {number}\n */\n chainId: number;\n /**\n * The address of the validator\n *\n * @type {Address}\n */\n validator: Address;\n /**\n * The total number of incentives on the Boost\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The ID of the boost\n *\n * @type {bigint}\n */\n boostId: bigint;\n}\n\n/**\n * Object representation of a {@link SignerValidatorInputParams} initialization payload\n *\n * @export\n * @interface SignerValidatorInputParams\n * @typedef {SignerValidatorInputParams}\n */\nexport interface SignerValidatorInputParams {\n /**\n * The signer address.\n *\n * @type {Address}\n */\n signer: Address;\n\n /**\n * The signature data.\n *\n * @type {string}\n */\n signature: Hex;\n\n /**\n * The total number of incentives on the Boost\n *\n * @type {number}\n */\n incentiveQuantity: number;\n}\n\n/**\n * Object representing the payload for signing before validaton.\n *\n * @export\n * @interface SignerValidatorSignaturePayload\n * @typedef {SignerValidatorSignaturePayload}\n */\nexport interface SignerValidatorSignaturePayload {\n /**\n * The ID of the boost.\n *\n * @type {bigint}\n */\n boostId: bigint;\n /**\n * The ID of the incentive.\n *\n * @type {number}\n */\n incentiveQuantity: number;\n /**\n * The address of the claimant.\n *\n * @type {Address}\n */\n claimant: Address;\n /**\n * The claim data.\n *\n * @type {Hex}\n */\n incentiveData: Hex;\n}\n\n/**\n * A generic `viem.Log` event with support for `BoostCore` event types.\n *\n * @export\n * @typedef {SignerValidatorLog}\n * @template {ContractEventName<\n * typeof signerValidatorAbi\n * >} [event=ContractEventName<typeof signerValidatorAbi>]\n */\nexport type SignerValidatorLog<\n event extends ContractEventName<\n typeof signerValidatorAbi\n > = ContractEventName<typeof signerValidatorAbi>,\n> = GenericLog<typeof signerValidatorAbi, event>;\n\n/**\n * A simple implementation of a Validator that verifies a given signature and checks the recovered address against a set of authorized signers\n *\n * @export\n * @class SignerValidator\n * @typedef {SignerValidator}\n * @extends {DeployableTarget<SignerValidatorPayload>}\n */\nexport class SignerValidator extends DeployableTarget<\n SignerValidatorPayload,\n typeof signerValidatorAbi\n> {\n /**\n * @inheritdoc\n *\n * @public\n * @readonly\n * @type {*}\n */\n public override readonly abi = signerValidatorAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Record<number, Address>}\n */\n public static override bases: Record<number, Address> = {\n 31337: import.meta.env.VITE_SIGNER_VALIDATOR_BASE,\n ...(SignerValidatorBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.VALIDATOR;\n\n /**\n * The set of authorized signers\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>}\n */\n public async signers(address: Address, params?: ReadParams) {\n return await readSignerValidatorSigners(this._config, {\n address: this.assertValidAddress(),\n args: [address],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Retrieve the hash and signer data for a given hash\n *\n * @public\n * @async\n * @param {SignerValidatorSignaturePayload} payload\n * @param {?ReadParams} [params]\n * @returns {Promise<Hex>}\n */\n public async hashSignerData(\n payload: SignerValidatorSignaturePayload,\n params?: ReadParams,\n ) {\n return await readSignerValidatorHashSignerData(this._config, {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveQuantity,\n payload.claimant,\n payload.incentiveData,\n ],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.\n *\n * @public\n * @async\n * @param {SignerValidatorValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the action has been validated based on the data payload\n */\n protected async validate(\n payload: SignerValidatorValidatePayload,\n params?: WriteParams,\n ) {\n return await this.awaitResult(this.validateRaw(payload, params));\n }\n\n /**\n * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.\n *\n * @public\n * @async\n * @param {SignerValidatorValidatePayload} payload\n * @param {?WriteParams} [params]\n * @returns {Promise<boolean>} - True if the action has been validated based on the data payload\n */\n protected async validateRaw(\n payload: SignerValidatorValidatePayload,\n params?: ReadParams,\n ) {\n const { request, result } = await simulateSignerValidatorValidate(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [\n payload.boostId,\n payload.incentiveId,\n payload.claimant,\n payload.claimData,\n ],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSignerValidatorValidate(this._config, request);\n return { hash, result };\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setAuthorized(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n return await this.awaitResult(\n this.setAuthorizedRaw(addresses, allowed, params),\n );\n }\n\n /**\n * Set the authorized status of a signer\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of signers to update\n * @param {boolean[]} allowed - The authorized status of each signer\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setAuthorizedRaw(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams,\n ) {\n const { request, result } = await simulateSignerValidatorSetAuthorized(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [addresses, allowed],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSignerValidatorSetAuthorized(this._config, request);\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<{ hash: `0x${string}`; result: void; }>}\n */\n public async setValidatorCallerRaw(address: Address, params?: WriteParams) {\n const { request, result } = await simulateSignerValidatorSetValidatorCaller(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [address],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSignerValidatorSetValidatorCaller(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Update the authorized caller of the validator function\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?WriteParams} [params]\n * @returns {Promise<void>}\n */\n public async setValidatorCaller(address: Address, params?: WriteParams) {\n return await this.awaitResult(this.setValidatorCallerRaw(address, params));\n }\n\n /**\n * Properly encodes the data needed to claim\n *\n * @public\n * @async\n * @param {SignerValidatorClaimDataParams} params\n * @returns {Promise<Hex>}\n */\n public async encodeClaimData(\n params: Omit<SignerValidatorClaimDataParams, 'validator'>,\n ): Promise<Hex> {\n return await prepareSignerValidatorClaimDataPayload({\n ...params,\n validator: this.assertValidAddress(),\n });\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SignerValidatorPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SignerValidatorPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n return {\n abi: signerValidatorAbi,\n bytecode: bytecode as Hex,\n args: [prepareSignerValidatorPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Signer Validator Claim Data Payload Preparation\n *\n * @export\n * @async\n * @param {SignerValidatorClaimDataParams} param0\n * @param {{ account: Address; key: Hex; privateKey: PrivateKeyAccount; }} param0.signer\n * @param {Hex} param0.incentiveData\n * @param {number} param0.chainId\n * @param {Address} param0.validator\n * @param {number} param0.incentiveQuantity\n * @param {Address} param0.claimant\n * @param {bigint} param0.boostId\n * @returns {Promise<Hex>}\n */\nexport async function prepareSignerValidatorClaimDataPayload({\n signer,\n incentiveData,\n chainId,\n validator,\n incentiveQuantity,\n claimant,\n boostId,\n}: SignerValidatorClaimDataParams): Promise<Hex> {\n const trustedSignature = await signer.privateKey.signTypedData({\n domain: {\n name: 'SignerValidator',\n version: '1',\n chainId: chainId,\n verifyingContract: validator,\n },\n types: {\n SignerValidatorData: [\n { name: 'boostId', type: 'uint256' },\n { name: 'incentiveQuantity', type: 'uint8' },\n { name: 'claimant', type: 'address' },\n { name: 'incentiveData', type: 'bytes' },\n ],\n },\n primaryType: 'SignerValidatorData' as const,\n message: {\n boostId,\n incentiveQuantity,\n claimant,\n incentiveData: incentiveData,\n },\n });\n\n // Prepare the claim data payload using the new helper\n const validatorData = prepareSignerValidatorInputParams({\n signer: signer.account,\n signature: trustedSignature,\n incentiveQuantity, // Adjust incentive quantity as necessary\n });\n\n const boostClaimDataPayload = encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'BoostClaimData',\n components: [\n { type: 'bytes', name: 'validatorData' },\n { type: 'bytes', name: 'incentiveData' },\n ],\n },\n ],\n [{ validatorData, incentiveData }],\n );\n\n return boostClaimDataPayload;\n}\n\n/**\n * Given a {@link SignerValidatorInputParams}, properly encode the initialization payload.\n *\n * @param {SignerValidatorInputParams} param0\n * @param {Address} param0.signer\n * @param {Hex} param0.signature\n * @param {number} param0.incentiveQuantity\n * @returns {Hex}\n */\nexport function prepareSignerValidatorInputParams({\n signer,\n signature,\n incentiveQuantity,\n}: SignerValidatorInputParams) {\n return encodeAbiParameters(\n [\n {\n type: 'tuple',\n name: 'SignerValidatorInputParams',\n components: [\n { type: 'address', name: 'signer' },\n { type: 'bytes', name: 'signature' },\n { type: 'uint8', name: 'incentiveQuantity' },\n ],\n },\n ],\n [{ signer, signature, incentiveQuantity }],\n );\n}\n\n/**\n * Given a {@link SignerValidatorPayload}, properly encode the initialization payload.\n *\n * @param {SignerValidatorPayload} param0\n * @param {Address[]} param0.signers\n * @param {Address} param0.validatorCaller\n * @returns {Hex}\n */\nexport function prepareSignerValidatorPayload({\n signers,\n validatorCaller,\n}: SignerValidatorPayload) {\n return encodeAbiParameters(\n [\n { type: 'address[]', name: 'signers' },\n { type: 'address', name: 'validatorCaller' },\n ],\n [signers, validatorCaller],\n );\n}\n"],"names":["_SignerValidator","DeployableTarget","signerValidatorAbi","address","params","readSignerValidatorSigners","payload","readSignerValidatorHashSignerData","request","result","simulateSignerValidatorValidate","writeSignerValidatorValidate","addresses","allowed","simulateSignerValidatorSetAuthorized","writeSignerValidatorSetAuthorized","simulateSignerValidatorSetValidatorCaller","writeSignerValidatorSetValidatorCaller","prepareSignerValidatorClaimDataPayload","_payload","_options","options","bytecode","prepareSignerValidatorPayload","SignerValidatorBases","RegistryType","SignerValidator","signer","incentiveData","chainId","validator","incentiveQuantity","claimant","boostId","trustedSignature","validatorData","prepareSignerValidatorInputParams","encodeAbiParameters","signature","signers","validatorCaller"],"mappings":"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"}
@@ -360,6 +360,16 @@ export declare class SignerValidator extends DeployableTarget<SignerValidatorPay
360
360
  readonly indexed: true;
361
361
  }];
362
362
  readonly name: "OwnershipTransferred";
363
+ }, {
364
+ readonly type: "event";
365
+ readonly anonymous: false;
366
+ readonly inputs: readonly [{
367
+ readonly name: "validatorCaller";
368
+ readonly internalType: "address";
369
+ readonly type: "address";
370
+ readonly indexed: false;
371
+ }];
372
+ readonly name: "SignerValidatorInitialized";
363
373
  }, {
364
374
  readonly type: "function";
365
375
  readonly inputs: readonly [];
@@ -1 +1 @@
1
- {"version":3,"file":"SignerValidator.d.ts","sourceRoot":"","sources":["../../src/Validators/SignerValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SignerValidator.d.ts","sourceRoot":"","sources":["../../src/Validators/SignerValidator.ts"],"names":[],"mappings":"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"}