@raac/rpc 1.1.0-beta.3 → 1.1.0-beta.4

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 (357) hide show
  1. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +1688 -1688
  2. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.json +1418 -1418
  3. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.json +247 -247
  4. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.json +310 -310
  5. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.json +2635 -2699
  6. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.json +1107 -1107
  7. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.json +259 -259
  8. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.json +856 -856
  9. package/dist/artifacts/core/tokens/IndexToken.sol/IndexToken.json +710 -710
  10. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.json +1391 -1391
  11. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.json +796 -796
  12. package/dist/artifacts/core/tokens/RToken.sol/RToken.json +1084 -1084
  13. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +1555 -1555
  14. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.json +772 -772
  15. package/dist/artifacts/mocks/core/tokens/crvUSDToken.sol/crvUSDToken.json +433 -433
  16. package/dist/artifacts/zeno/Auction.sol/Auction.json +356 -356
  17. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.json +282 -282
  18. package/dist/artifacts/zeno/Zeno.sol/Zeno.json +582 -582
  19. package/dist/artifacts/zeno/ZenoFactory.sol/ZenoFactory.json +252 -252
  20. package/dist/assets/getSupply.js +3 -0
  21. package/dist/methods/approveToken.js +1 -9
  22. package/dist/minter/tick.js +3 -7
  23. package/dist/pools/lendingPool/borrowFromLendingPool.js +1 -1
  24. package/dist/pools/lendingPool/depositNFTToLendingPool.js +2 -2
  25. package/dist/pools/lendingPool/depositToLendingPool.js +2 -6
  26. package/dist/pools/lendingPool/getPositionView.js +1 -0
  27. package/dist/pools/lendingPool/withdrawFromLendingPool.js +1 -5
  28. package/dist/pools/stabilityPool/depositToStabilityPool.js +0 -6
  29. package/dist/pools/stabilityPool/withdrawFromStabilityPool.js +0 -6
  30. package/dist/scripts/index.js +12 -10
  31. package/dist/types/pools/lendingPool/getAllUserData.d.ts +1 -0
  32. package/dist/types/pools/lendingPool/getPositionView.d.ts +2 -0
  33. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPool.d.ts +2 -49
  34. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPool.d.ts +1 -40
  35. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolDebtToken.d.ts +1 -40
  36. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/functions/v1_0_0/libraries/FunctionsRequest__factory.d.ts +1 -1
  37. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwnerWithProposal__factory.d.ts +1 -1
  38. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwner__factory.d.ts +1 -1
  39. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts +1 -1
  40. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +1 -1
  41. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
  42. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +1 -1
  43. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.d.ts +1 -1
  44. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/Math__factory.d.ts +1 -1
  45. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts +1 -1
  46. package/dist/types/typechain-types/factories/contracts/core/collectors/FeeCollector__factory.d.ts +1 -1
  47. package/dist/types/typechain-types/factories/contracts/core/collectors/Treasury__factory.d.ts +1 -1
  48. package/dist/types/typechain-types/factories/contracts/core/governance/boost/BoostController__factory.d.ts +1 -1
  49. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +1 -1
  50. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +1 -1
  51. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +1 -1
  52. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/Governance__factory.d.ts +1 -1
  53. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/TimelockController__factory.d.ts +1 -1
  54. package/dist/types/typechain-types/factories/contracts/core/minters/RAACMinter/RAACMinter__factory.d.ts +1 -1
  55. package/dist/types/typechain-types/factories/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator__factory.d.ts +1 -1
  56. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseVRFv2Consumer__factory.d.ts +1 -1
  57. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACHousePriceOracle__factory.d.ts +1 -1
  58. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACPrimeRateOracle__factory.d.ts +1 -1
  59. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPool__factory.d.ts +1 -51
  60. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/NFTLiquidator__factory.d.ts +1 -1
  61. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPool__factory.d.ts +1 -1
  62. package/dist/types/typechain-types/factories/contracts/core/primitives/RAACHousePrices__factory.d.ts +1 -1
  63. package/dist/types/typechain-types/factories/contracts/core/tokens/DEToken__factory.d.ts +1 -1
  64. package/dist/types/typechain-types/factories/contracts/core/tokens/DebtToken__factory.d.ts +1 -1
  65. package/dist/types/typechain-types/factories/contracts/core/tokens/IndexToken__factory.d.ts +1 -1
  66. package/dist/types/typechain-types/factories/contracts/core/tokens/LPToken__factory.d.ts +1 -1
  67. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACNFT__factory.d.ts +1 -1
  68. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACToken__factory.d.ts +1 -1
  69. package/dist/types/typechain-types/factories/contracts/core/tokens/RToken__factory.d.ts +1 -1
  70. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACToken__factory.d.ts +1 -1
  71. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPool__factory.d.ts +0 -30
  72. package/dist/types/typechain-types/factories/contracts/libraries/governance/BoostCalculator__factory.d.ts +1 -1
  73. package/dist/types/typechain-types/factories/contracts/libraries/governance/Checkpoints__factory.d.ts +1 -1
  74. package/dist/types/typechain-types/factories/contracts/libraries/governance/LockManager__factory.d.ts +1 -1
  75. package/dist/types/typechain-types/factories/contracts/libraries/governance/PowerCheckpoint__factory.d.ts +1 -1
  76. package/dist/types/typechain-types/factories/contracts/libraries/governance/RAACVoting__factory.d.ts +1 -1
  77. package/dist/types/typechain-types/factories/contracts/libraries/governance/VotingPowerLib__factory.d.ts +1 -1
  78. package/dist/types/typechain-types/factories/contracts/libraries/math/TimeWeightedAverage__factory.d.ts +1 -1
  79. package/dist/types/typechain-types/factories/contracts/libraries/pools/ReserveLibrary__factory.d.ts +1 -1
  80. package/dist/types/typechain-types/factories/contracts/libraries/utils/StringUtils__factory.d.ts +1 -1
  81. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockTreasury__factory.d.ts +1 -1
  82. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockBaseGauge__factory.d.ts +1 -1
  83. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockGaugeController__factory.d.ts +1 -1
  84. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockTestTarget__factory.d.ts +1 -1
  85. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter__factory.d.ts +1 -1
  86. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockOracle__factory.d.ts +1 -1
  87. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockVRFCoordinatorV2__factory.d.ts +1 -1
  88. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACHousePriceOracle__factory.d.ts +1 -1
  89. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACPrimeRateOracle__factory.d.ts +1 -1
  90. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolCollector__factory.d.ts +1 -1
  91. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolDebtToken__factory.d.ts +1 -31
  92. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPool__factory.d.ts +1 -1
  93. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLiquidityPool__factory.d.ts +1 -1
  94. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockPool__factory.d.ts +1 -1
  95. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockStabilityPool__factory.d.ts +1 -1
  96. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContractWithConfig__factory.d.ts +1 -1
  97. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContract__factory.d.ts +1 -1
  98. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockDistributableContract__factory.d.ts +1 -1
  99. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/RAACHousePricesMock__factory.d.ts +1 -1
  100. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/CrvUSDToken__factory.d.ts +1 -1
  101. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC20Mock__factory.d.ts +1 -1
  102. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC721Mock__factory.d.ts +1 -1
  103. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockCollectableUnderlying__factory.d.ts +1 -1
  104. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockFeeCollectorToken__factory.d.ts +1 -1
  105. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockToken__factory.d.ts +1 -1
  106. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockUSDC__factory.d.ts +1 -1
  107. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockVeToken__factory.d.ts +1 -1
  108. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/RAACMockERC20__factory.d.ts +1 -1
  109. package/dist/types/typechain-types/factories/contracts/mocks/core/vaults/MockVault__factory.d.ts +1 -1
  110. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockStringUtils__factory.d.ts +1 -1
  111. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/BoostCalculatorMock__factory.d.ts +1 -1
  112. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/CheckpointsMock__factory.d.ts +1 -1
  113. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/LockManagerMock__factory.d.ts +1 -1
  114. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/PowerCheckpointMock__factory.d.ts +1 -1
  115. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/RAACVotingMock__factory.d.ts +1 -1
  116. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/VotingPowerMock__factory.d.ts +1 -1
  117. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/TimeWeightedAverageMock__factory.d.ts +1 -1
  118. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/WadRayMathMock__factory.d.ts +1 -1
  119. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMock__factory.d.ts +1 -1
  120. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousDeposit__factory.d.ts +1 -1
  121. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousWithdraw__factory.d.ts +1 -1
  122. package/dist/types/typechain-types/factories/contracts/mocks/tests/VeRAACFuzzHelper__factory.d.ts +1 -1
  123. package/dist/types/typechain-types/factories/contracts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper__factory.d.ts +1 -1
  124. package/dist/types/typechain-types/factories/contracts/zeno/AuctionFactory__factory.d.ts +1 -1
  125. package/dist/types/typechain-types/factories/contracts/zeno/Auction__factory.d.ts +1 -1
  126. package/dist/types/typechain-types/factories/contracts/zeno/ZENOFactory__factory.d.ts +1 -1
  127. package/dist/types/typechain-types/factories/contracts/zeno/ZENO__factory.d.ts +1 -1
  128. package/dist/types/utils/artifacts.d.ts +1201 -2
  129. package/dist/utils/artifacts.js +2 -2
  130. package/dist/wallet/assets/approveAsset.js +2 -6
  131. package/dist/wallet/assets/burnAsset.js +0 -6
  132. package/dist/wallet/assets/mintAsset.js +1 -6
  133. package/dist/wallet/assets/transferAsset.js +0 -7
  134. package/package.json +3 -3
  135. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.dbg.json +0 -4
  136. package/dist/artifacts/core/collectors/Treasury.sol/Treasury.dbg.json +0 -4
  137. package/dist/artifacts/core/collectors/Treasury.sol/Treasury.json +0 -481
  138. package/dist/artifacts/core/governance/boost/BoostController.sol/BoostController.dbg.json +0 -4
  139. package/dist/artifacts/core/governance/boost/BoostController.sol/BoostController.json +0 -905
  140. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.dbg.json +0 -4
  141. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.json +0 -1398
  142. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.dbg.json +0 -4
  143. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.json +0 -1435
  144. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.dbg.json +0 -4
  145. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.json +0 -1471
  146. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.dbg.json +0 -4
  147. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.json +0 -1471
  148. package/dist/artifacts/core/governance/proposals/Governance.sol/Governance.dbg.json +0 -4
  149. package/dist/artifacts/core/governance/proposals/Governance.sol/Governance.json +0 -1242
  150. package/dist/artifacts/core/governance/proposals/TimelockController.sol/TimelockController.dbg.json +0 -4
  151. package/dist/artifacts/core/governance/proposals/TimelockController.sol/TimelockController.json +0 -988
  152. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.dbg.json +0 -4
  153. package/dist/artifacts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator.sol/RAACReleaseOrchestrator.dbg.json +0 -4
  154. package/dist/artifacts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator.sol/RAACReleaseOrchestrator.json +0 -860
  155. package/dist/artifacts/core/oracles/BaseChainlinkFunctionsOracle.sol/BaseChainlinkFunctionsOracle.dbg.json +0 -4
  156. package/dist/artifacts/core/oracles/BaseChainlinkFunctionsOracle.sol/BaseChainlinkFunctionsOracle.json +0 -264
  157. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.dbg.json +0 -4
  158. package/dist/artifacts/core/oracles/RAACHousePriceOracle.sol/RAACHousePriceOracle.dbg.json +0 -4
  159. package/dist/artifacts/core/oracles/RAACHousePriceOracle.sol/RAACHousePriceOracle.json +0 -335
  160. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.dbg.json +0 -4
  161. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.dbg.json +0 -4
  162. package/dist/artifacts/core/pools/StabilityPool/NFTLiquidator.sol/NFTLiquidator.dbg.json +0 -4
  163. package/dist/artifacts/core/pools/StabilityPool/NFTLiquidator.sol/NFTLiquidator.json +0 -485
  164. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.dbg.json +0 -4
  165. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.dbg.json +0 -4
  166. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.dbg.json +0 -4
  167. package/dist/artifacts/core/tokens/DebtToken.sol/DebtToken.dbg.json +0 -4
  168. package/dist/artifacts/core/tokens/DebtToken.sol/DebtToken.json +0 -953
  169. package/dist/artifacts/core/tokens/IndexToken.sol/IndexToken.dbg.json +0 -4
  170. package/dist/artifacts/core/tokens/LPToken.sol/LPToken.dbg.json +0 -4
  171. package/dist/artifacts/core/tokens/LPToken.sol/LPToken.json +0 -507
  172. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.dbg.json +0 -4
  173. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.dbg.json +0 -4
  174. package/dist/artifacts/core/tokens/RToken.sol/RToken.dbg.json +0 -4
  175. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.dbg.json +0 -4
  176. package/dist/artifacts/interfaces/IERC20.sol/IERC20.dbg.json +0 -4
  177. package/dist/artifacts/interfaces/IERC20.sol/IERC20.json +0 -194
  178. package/dist/artifacts/interfaces/IHousePrices.sol/IHousePrices.dbg.json +0 -4
  179. package/dist/artifacts/interfaces/IHousePrices.sol/IHousePrices.json +0 -30
  180. package/dist/artifacts/interfaces/INFTLiquidator.sol/INFTLiquidator.dbg.json +0 -4
  181. package/dist/artifacts/interfaces/INFTLiquidator.sol/INFTLiquidator.json +0 -86
  182. package/dist/artifacts/interfaces/IPoolManager.sol/IPoolManager.dbg.json +0 -4
  183. package/dist/artifacts/interfaces/IPoolManager.sol/IPoolManager.json +0 -57
  184. package/dist/artifacts/interfaces/IReserveAllocationLibraryMock.sol/IReserveAllocationLibraryMock.dbg.json +0 -4
  185. package/dist/artifacts/interfaces/IReserveAllocationLibraryMock.sol/IReserveAllocationLibraryMock.json +0 -246
  186. package/dist/artifacts/interfaces/IUSDC.sol/IUSDC.dbg.json +0 -4
  187. package/dist/artifacts/interfaces/IUSDC.sol/IUSDC.json +0 -194
  188. package/dist/artifacts/interfaces/IveRAACDistributor.sol/IveRAACDistributor.dbg.json +0 -4
  189. package/dist/artifacts/interfaces/IveRAACDistributor.sol/IveRAACDistributor.json +0 -100
  190. package/dist/artifacts/interfaces/core/collectors/IBaseCollector.sol/IBaseCollector.dbg.json +0 -4
  191. package/dist/artifacts/interfaces/core/collectors/IBaseCollector.sol/IBaseCollector.json +0 -45
  192. package/dist/artifacts/interfaces/core/collectors/IFeeCollector.sol/IFeeCollector.dbg.json +0 -4
  193. package/dist/artifacts/interfaces/core/collectors/IFeeCollector.sol/IFeeCollector.json +0 -922
  194. package/dist/artifacts/interfaces/core/collectors/ITreasury.sol/ITreasury.dbg.json +0 -4
  195. package/dist/artifacts/interfaces/core/collectors/ITreasury.sol/ITreasury.json +0 -214
  196. package/dist/artifacts/interfaces/core/governance/IBoostController.sol/IBoostController.dbg.json +0 -4
  197. package/dist/artifacts/interfaces/core/governance/IBoostController.sol/IBoostController.json +0 -378
  198. package/dist/artifacts/interfaces/core/governance/gauges/IGauge.sol/IGauge.dbg.json +0 -4
  199. package/dist/artifacts/interfaces/core/governance/gauges/IGauge.sol/IGauge.json +0 -394
  200. package/dist/artifacts/interfaces/core/governance/gauges/IGaugeController.sol/IGaugeController.dbg.json +0 -4
  201. package/dist/artifacts/interfaces/core/governance/gauges/IGaugeController.sol/IGaugeController.json +0 -577
  202. package/dist/artifacts/interfaces/core/governance/proposals/IGovernance.sol/IGovernance.dbg.json +0 -4
  203. package/dist/artifacts/interfaces/core/governance/proposals/IGovernance.sol/IGovernance.json +0 -1134
  204. package/dist/artifacts/interfaces/core/governance/proposals/ITimelockController.sol/ITimelockController.dbg.json +0 -4
  205. package/dist/artifacts/interfaces/core/governance/proposals/ITimelockController.sol/ITimelockController.json +0 -612
  206. package/dist/artifacts/interfaces/core/minters/RAACMinter/IRAACMinter.sol/IRAACMinter.dbg.json +0 -4
  207. package/dist/artifacts/interfaces/core/minters/RAACMinter/IRAACMinter.sol/IRAACMinter.json +0 -542
  208. package/dist/artifacts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator.sol/IReleaseOrchestrator.dbg.json +0 -4
  209. package/dist/artifacts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator.sol/IReleaseOrchestrator.json +0 -358
  210. package/dist/artifacts/interfaces/core/oracles/IBaseVRFv2Consumer.sol/IBaseVRFv2Consumer.dbg.json +0 -4
  211. package/dist/artifacts/interfaces/core/oracles/IBaseVRFv2Consumer.sol/IBaseVRFv2Consumer.json +0 -102
  212. package/dist/artifacts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePrices.dbg.json +0 -4
  213. package/dist/artifacts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePrices.json +0 -193
  214. package/dist/artifacts/interfaces/core/pools/ILiquidityPool.sol/ILiquidityPool.dbg.json +0 -4
  215. package/dist/artifacts/interfaces/core/pools/ILiquidityPool.sol/ILiquidityPool.json +0 -310
  216. package/dist/artifacts/interfaces/core/pools/LendingPool/ILendingPool.sol/ILendingPool.dbg.json +0 -4
  217. package/dist/artifacts/interfaces/core/pools/LendingPool/ILendingPool.sol/ILendingPool.json +0 -1538
  218. package/dist/artifacts/interfaces/core/pools/StabilityPool/IStabilityPool.sol/IStabilityPool.dbg.json +0 -4
  219. package/dist/artifacts/interfaces/core/pools/StabilityPool/IStabilityPool.sol/IStabilityPool.json +0 -622
  220. package/dist/artifacts/interfaces/core/tokens/IDEToken.sol/IDEToken.dbg.json +0 -4
  221. package/dist/artifacts/interfaces/core/tokens/IDEToken.sol/IDEToken.json +0 -333
  222. package/dist/artifacts/interfaces/core/tokens/IDebtToken.sol/IDebtToken.dbg.json +0 -4
  223. package/dist/artifacts/interfaces/core/tokens/IDebtToken.sol/IDebtToken.json +0 -507
  224. package/dist/artifacts/interfaces/core/tokens/IIndexToken.sol/IIndexToken.dbg.json +0 -4
  225. package/dist/artifacts/interfaces/core/tokens/IIndexToken.sol/IIndexToken.json +0 -299
  226. package/dist/artifacts/interfaces/core/tokens/IRAACNFT.sol/IRAACNFT.dbg.json +0 -4
  227. package/dist/artifacts/interfaces/core/tokens/IRAACNFT.sol/IRAACNFT.json +0 -816
  228. package/dist/artifacts/interfaces/core/tokens/IRAACToken.sol/IRAACToken.dbg.json +0 -4
  229. package/dist/artifacts/interfaces/core/tokens/IRAACToken.sol/IRAACToken.json +0 -567
  230. package/dist/artifacts/interfaces/core/tokens/IRToken.sol/IRToken.dbg.json +0 -4
  231. package/dist/artifacts/interfaces/core/tokens/IRToken.sol/IRToken.json +0 -641
  232. package/dist/artifacts/interfaces/core/tokens/IveRAACToken.sol/IveRAACToken.dbg.json +0 -4
  233. package/dist/artifacts/interfaces/core/tokens/IveRAACToken.sol/IveRAACToken.json +0 -560
  234. package/dist/artifacts/interfaces/core/vaults/IBaseVault.sol/IBaseVault.dbg.json +0 -4
  235. package/dist/artifacts/interfaces/core/vaults/IBaseVault.sol/IBaseVault.json +0 -185
  236. package/dist/artifacts/interfaces/curve/ICurveCrvUSDVault.sol/ICurveCrvUSDVault.dbg.json +0 -4
  237. package/dist/artifacts/interfaces/curve/ICurveCrvUSDVault.sol/ICurveCrvUSDVault.json +0 -250
  238. package/dist/artifacts/interfaces/zeno/IAuction.sol/IAuction.dbg.json +0 -4
  239. package/dist/artifacts/interfaces/zeno/IAuction.sol/IAuction.json +0 -162
  240. package/dist/artifacts/interfaces/zeno/IZENO.sol/IZENO.dbg.json +0 -4
  241. package/dist/artifacts/interfaces/zeno/IZENO.sol/IZENO.json +0 -321
  242. package/dist/artifacts/libraries/governance/BoostCalculator.sol/BoostCalculator.dbg.json +0 -4
  243. package/dist/artifacts/libraries/governance/BoostCalculator.sol/BoostCalculator.json +0 -51
  244. package/dist/artifacts/libraries/governance/Checkpoints.sol/Checkpoints.dbg.json +0 -4
  245. package/dist/artifacts/libraries/governance/Checkpoints.sol/Checkpoints.json +0 -69
  246. package/dist/artifacts/libraries/governance/LockManager.sol/LockManager.dbg.json +0 -4
  247. package/dist/artifacts/libraries/governance/LockManager.sol/LockManager.json +0 -123
  248. package/dist/artifacts/libraries/governance/PowerCheckpoint.sol/PowerCheckpoint.dbg.json +0 -4
  249. package/dist/artifacts/libraries/governance/PowerCheckpoint.sol/PowerCheckpoint.json +0 -70
  250. package/dist/artifacts/libraries/governance/RAACVoting.sol/RAACVoting.dbg.json +0 -4
  251. package/dist/artifacts/libraries/governance/RAACVoting.sol/RAACVoting.json +0 -102
  252. package/dist/artifacts/libraries/governance/VotingPowerLib.sol/VotingPowerLib.dbg.json +0 -4
  253. package/dist/artifacts/libraries/governance/VotingPowerLib.sol/VotingPowerLib.json +0 -76
  254. package/dist/artifacts/libraries/math/PercentageMath.sol/PercentageMath.dbg.json +0 -4
  255. package/dist/artifacts/libraries/math/PercentageMath.sol/PercentageMath.json +0 -10
  256. package/dist/artifacts/libraries/math/TimeWeightedAverage.sol/TimeWeightedAverage.dbg.json +0 -4
  257. package/dist/artifacts/libraries/math/TimeWeightedAverage.sol/TimeWeightedAverage.json +0 -142
  258. package/dist/artifacts/libraries/math/WadRayMath.sol/WadRayMath.dbg.json +0 -4
  259. package/dist/artifacts/libraries/math/WadRayMath.sol/WadRayMath.json +0 -10
  260. package/dist/artifacts/libraries/pools/DataTypes.sol/DataTypes.dbg.json +0 -4
  261. package/dist/artifacts/libraries/pools/DataTypes.sol/DataTypes.json +0 -10
  262. package/dist/artifacts/libraries/pools/ReserveLibrary.sol/ReserveLibrary.dbg.json +0 -4
  263. package/dist/artifacts/libraries/pools/ReserveLibrary.sol/ReserveLibrary.json +0 -153
  264. package/dist/artifacts/libraries/utils/StringUtils.sol/StringUtils.dbg.json +0 -4
  265. package/dist/artifacts/libraries/utils/StringUtils.sol/StringUtils.json +0 -16
  266. package/dist/artifacts/mocks/core/collectors/MockTreasury.sol/MockTreasury.dbg.json +0 -4
  267. package/dist/artifacts/mocks/core/collectors/MockTreasury.sol/MockTreasury.json +0 -255
  268. package/dist/artifacts/mocks/core/governance/gauges/MockBaseGauge.sol/MockBaseGauge.dbg.json +0 -4
  269. package/dist/artifacts/mocks/core/governance/gauges/MockBaseGauge.sol/MockBaseGauge.json +0 -1522
  270. package/dist/artifacts/mocks/core/governance/gauges/MockGaugeController.sol/MockGaugeController.dbg.json +0 -4
  271. package/dist/artifacts/mocks/core/governance/gauges/MockGaugeController.sol/MockGaugeController.json +0 -49
  272. package/dist/artifacts/mocks/core/governance/proposals/TimelockTestTarget.sol/TimelockTestTarget.dbg.json +0 -4
  273. package/dist/artifacts/mocks/core/governance/proposals/TimelockTestTarget.sol/TimelockTestTarget.json +0 -112
  274. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/IFunctionsRouter.dbg.json +0 -4
  275. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/IFunctionsRouter.json +0 -50
  276. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter.dbg.json +0 -4
  277. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter.json +0 -69
  278. package/dist/artifacts/mocks/core/oracles/MockOracle.sol/MockOracle.dbg.json +0 -4
  279. package/dist/artifacts/mocks/core/oracles/MockOracle.sol/MockOracle.json +0 -63
  280. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.dbg.json +0 -4
  281. package/dist/artifacts/mocks/core/oracles/TestRAACHousePriceOracle.sol/TestRAACHousePriceOracle.dbg.json +0 -4
  282. package/dist/artifacts/mocks/core/oracles/TestRAACHousePriceOracle.sol/TestRAACHousePriceOracle.json +0 -358
  283. package/dist/artifacts/mocks/core/oracles/TestRAACPrimeRateOracle.sol/TestRAACPrimeRateOracle.dbg.json +0 -4
  284. package/dist/artifacts/mocks/core/oracles/TestRAACPrimeRateOracle.sol/TestRAACPrimeRateOracle.json +0 -373
  285. package/dist/artifacts/mocks/core/pools/MockLendingPool.sol/MockLendingPool.dbg.json +0 -4
  286. package/dist/artifacts/mocks/core/pools/MockLendingPool.sol/MockLendingPool.json +0 -241
  287. package/dist/artifacts/mocks/core/pools/MockLendingPoolCollector.sol/MockLendingPoolCollector.dbg.json +0 -4
  288. package/dist/artifacts/mocks/core/pools/MockLendingPoolCollector.sol/MockLendingPoolCollector.json +0 -288
  289. package/dist/artifacts/mocks/core/pools/MockLendingPoolDebtToken.sol/MockLendingPoolDebtToken.dbg.json +0 -4
  290. package/dist/artifacts/mocks/core/pools/MockLendingPoolDebtToken.sol/MockLendingPoolDebtToken.json +0 -1560
  291. package/dist/artifacts/mocks/core/pools/MockLiquidityPool.sol/MockLiquidityPool.dbg.json +0 -4
  292. package/dist/artifacts/mocks/core/pools/MockLiquidityPool.sol/MockLiquidityPool.json +0 -1019
  293. package/dist/artifacts/mocks/core/pools/MockPool.sol/MockPool.dbg.json +0 -4
  294. package/dist/artifacts/mocks/core/pools/MockPool.sol/MockPool.json +0 -93
  295. package/dist/artifacts/mocks/core/pools/MockStabilityPool.sol/MockStabilityPool.dbg.json +0 -4
  296. package/dist/artifacts/mocks/core/pools/MockStabilityPool.sol/MockStabilityPool.json +0 -126
  297. package/dist/artifacts/mocks/core/primitives/MockContract.sol/MockContract.dbg.json +0 -4
  298. package/dist/artifacts/mocks/core/primitives/MockContract.sol/MockContract.json +0 -37
  299. package/dist/artifacts/mocks/core/primitives/MockContractWithConfig.sol/MockContractWithConfig.dbg.json +0 -4
  300. package/dist/artifacts/mocks/core/primitives/MockContractWithConfig.sol/MockContractWithConfig.json +0 -52
  301. package/dist/artifacts/mocks/core/primitives/MockDistributableContract.sol/MockDistributableContract.dbg.json +0 -4
  302. package/dist/artifacts/mocks/core/primitives/MockDistributableContract.sol/MockDistributableContract.json +0 -73
  303. package/dist/artifacts/mocks/core/primitives/RAACHousePricesMock.sol/RAACHousePricesMock.dbg.json +0 -4
  304. package/dist/artifacts/mocks/core/primitives/RAACHousePricesMock.sol/RAACHousePricesMock.json +0 -67
  305. package/dist/artifacts/mocks/core/tokens/ERC20Mock.sol/ERC20Mock.dbg.json +0 -4
  306. package/dist/artifacts/mocks/core/tokens/ERC20Mock.sol/ERC20Mock.json +0 -353
  307. package/dist/artifacts/mocks/core/tokens/ERC721Mock.sol/ERC721Mock.dbg.json +0 -4
  308. package/dist/artifacts/mocks/core/tokens/ERC721Mock.sol/ERC721Mock.json +0 -491
  309. package/dist/artifacts/mocks/core/tokens/MockCollectableUnderlying.sol/MockCollectableUnderlying.dbg.json +0 -4
  310. package/dist/artifacts/mocks/core/tokens/MockCollectableUnderlying.sol/MockCollectableUnderlying.json +0 -568
  311. package/dist/artifacts/mocks/core/tokens/MockFeeCollectorToken.sol/MockFeeCollectorToken.dbg.json +0 -4
  312. package/dist/artifacts/mocks/core/tokens/MockFeeCollectorToken.sol/MockFeeCollectorToken.json +0 -515
  313. package/dist/artifacts/mocks/core/tokens/MockToken.sol/MockToken.dbg.json +0 -4
  314. package/dist/artifacts/mocks/core/tokens/MockToken.sol/MockToken.json +0 -426
  315. package/dist/artifacts/mocks/core/tokens/MockUSDC.sol/MockUSDC.dbg.json +0 -4
  316. package/dist/artifacts/mocks/core/tokens/MockUSDC.sol/MockUSDC.json +0 -348
  317. package/dist/artifacts/mocks/core/tokens/MockVeToken.sol/MockVeToken.dbg.json +0 -4
  318. package/dist/artifacts/mocks/core/tokens/MockVeToken.sol/MockVeToken.json +0 -905
  319. package/dist/artifacts/mocks/core/tokens/RAACMockERC20.sol/RAACMockERC20.dbg.json +0 -4
  320. package/dist/artifacts/mocks/core/tokens/RAACMockERC20.sol/RAACMockERC20.json +0 -422
  321. package/dist/artifacts/mocks/core/tokens/crvUSDToken.sol/crvUSDToken.dbg.json +0 -4
  322. package/dist/artifacts/mocks/core/vaults/MockVault.sol/MockVault.dbg.json +0 -4
  323. package/dist/artifacts/mocks/core/vaults/MockVault.sol/MockVault.json +0 -672
  324. package/dist/artifacts/mocks/libraries/MockStringUtils.sol/MockStringUtils.dbg.json +0 -4
  325. package/dist/artifacts/mocks/libraries/MockStringUtils.sol/MockStringUtils.json +0 -35
  326. package/dist/artifacts/mocks/libraries/governance/BoostCalculatorMock.sol/BoostCalculatorMock.dbg.json +0 -4
  327. package/dist/artifacts/mocks/libraries/governance/BoostCalculatorMock.sol/BoostCalculatorMock.json +0 -431
  328. package/dist/artifacts/mocks/libraries/governance/CheckpointsMock.sol/CheckpointsMock.dbg.json +0 -4
  329. package/dist/artifacts/mocks/libraries/governance/CheckpointsMock.sol/CheckpointsMock.json +0 -144
  330. package/dist/artifacts/mocks/libraries/governance/LockManagerMock.sol/LockManagerMock.dbg.json +0 -4
  331. package/dist/artifacts/mocks/libraries/governance/LockManagerMock.sol/LockManagerMock.json +0 -237
  332. package/dist/artifacts/mocks/libraries/governance/PowerCheckpointMock.sol/PowerCheckpointMock.dbg.json +0 -4
  333. package/dist/artifacts/mocks/libraries/governance/PowerCheckpointMock.sol/PowerCheckpointMock.json +0 -221
  334. package/dist/artifacts/mocks/libraries/governance/RAACVotingMock.sol/RAACVotingMock.dbg.json +0 -4
  335. package/dist/artifacts/mocks/libraries/governance/RAACVotingMock.sol/RAACVotingMock.json +0 -95
  336. package/dist/artifacts/mocks/libraries/governance/VotingPowerMock.sol/VotingPowerMock.dbg.json +0 -4
  337. package/dist/artifacts/mocks/libraries/governance/VotingPowerMock.sol/VotingPowerMock.json +0 -442
  338. package/dist/artifacts/mocks/libraries/math/TimeWeightedAverageMock.sol/TimeWeightedAverageMock.dbg.json +0 -4
  339. package/dist/artifacts/mocks/libraries/math/TimeWeightedAverageMock.sol/TimeWeightedAverageMock.json +0 -309
  340. package/dist/artifacts/mocks/libraries/math/WadRayMathMock.sol/WadRayMathMock.dbg.json +0 -4
  341. package/dist/artifacts/mocks/libraries/math/WadRayMathMock.sol/WadRayMathMock.json +0 -188
  342. package/dist/artifacts/mocks/libraries/pools/ReserveLibraryMock.sol/ReserveLibraryMock.dbg.json +0 -4
  343. package/dist/artifacts/mocks/libraries/pools/ReserveLibraryMock.sol/ReserveLibraryMock.json +0 -339
  344. package/dist/artifacts/mocks/tests/MaliciousDeposit.sol/MaliciousDeposit.dbg.json +0 -4
  345. package/dist/artifacts/mocks/tests/MaliciousDeposit.sol/MaliciousDeposit.json +0 -52
  346. package/dist/artifacts/mocks/tests/MaliciousWithdraw.sol/MaliciousWithdraw.dbg.json +0 -4
  347. package/dist/artifacts/mocks/tests/MaliciousWithdraw.sol/MaliciousWithdraw.json +0 -52
  348. package/dist/artifacts/mocks/tests/VeRAACFuzzHelper.sol/VeRAACFuzzHelper.dbg.json +0 -4
  349. package/dist/artifacts/mocks/tests/VeRAACFuzzHelper.sol/VeRAACFuzzHelper.json +0 -88
  350. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/IVMTimeControl.dbg.json +0 -4
  351. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/IVMTimeControl.json +0 -24
  352. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper.dbg.json +0 -4
  353. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper.json +0 -129
  354. package/dist/artifacts/zeno/Auction.sol/Auction.dbg.json +0 -4
  355. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.dbg.json +0 -4
  356. package/dist/artifacts/zeno/Zeno.sol/ZENO.dbg.json +0 -4
  357. package/dist/artifacts/zeno/ZenoFactory.sol/ZENOFactory.dbg.json +0 -4
@@ -1,1743 +1,1743 @@
1
1
  {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "FeeCollector",
4
- "sourceName": "contracts/core/collectors/FeeCollector.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "address",
10
- "name": "_admin",
11
- "type": "address"
12
- }
13
- ],
14
- "stateMutability": "nonpayable",
15
- "type": "constructor"
16
- },
17
- {
18
- "inputs": [],
19
- "name": "AccessControlBadConfirmation",
20
- "type": "error"
21
- },
22
- {
23
- "inputs": [
24
- {
25
- "internalType": "address",
26
- "name": "account",
27
- "type": "address"
28
- },
29
- {
30
- "internalType": "bytes32",
31
- "name": "neededRole",
32
- "type": "bytes32"
33
- }
34
- ],
35
- "name": "AccessControlUnauthorizedAccount",
36
- "type": "error"
37
- },
38
- {
39
- "inputs": [
40
- {
41
- "internalType": "address",
42
- "name": "target",
43
- "type": "address"
44
- }
45
- ],
46
- "name": "AddressEmptyCode",
47
- "type": "error"
48
- },
49
- {
50
- "inputs": [
51
- {
52
- "internalType": "address",
53
- "name": "account",
54
- "type": "address"
55
- }
56
- ],
57
- "name": "AddressInsufficientBalance",
58
- "type": "error"
59
- },
60
- {
61
- "inputs": [],
62
- "name": "ClaimCollectorRewardsFailed",
63
- "type": "error"
64
- },
65
- {
66
- "inputs": [],
67
- "name": "ClaimCollectorUnderlyingFailed",
68
- "type": "error"
69
- },
70
- {
71
- "inputs": [],
72
- "name": "ClaimingDisabled",
73
- "type": "error"
74
- },
75
- {
76
- "inputs": [],
77
- "name": "DistributionFailed",
78
- "type": "error"
79
- },
80
- {
81
- "inputs": [],
82
- "name": "DivisionByZero",
83
- "type": "error"
84
- },
85
- {
86
- "inputs": [],
87
- "name": "EmergencyPaused",
88
- "type": "error"
89
- },
90
- {
91
- "inputs": [],
92
- "name": "EnforcedPause",
93
- "type": "error"
94
- },
95
- {
96
- "inputs": [],
97
- "name": "ExcessiveAmount",
98
- "type": "error"
99
- },
100
- {
101
- "inputs": [],
102
- "name": "ExpectedPause",
103
- "type": "error"
104
- },
105
- {
106
- "inputs": [],
107
- "name": "FailedInnerCall",
108
- "type": "error"
109
- },
110
- {
111
- "inputs": [],
112
- "name": "FeeTypeAlreadyExists",
113
- "type": "error"
114
- },
115
- {
116
- "inputs": [],
117
- "name": "FeeTypeDoesNotExist",
118
- "type": "error"
119
- },
120
- {
121
- "inputs": [],
122
- "name": "InsufficientBalance",
123
- "type": "error"
124
- },
125
- {
126
- "inputs": [],
127
- "name": "InvalidAddress",
128
- "type": "error"
129
- },
130
- {
131
- "inputs": [],
132
- "name": "InvalidAddressType",
133
- "type": "error"
134
- },
135
- {
136
- "inputs": [],
137
- "name": "InvalidDistributionParams",
138
- "type": "error"
139
- },
140
- {
141
- "inputs": [],
142
- "name": "InvalidFeeAmount",
143
- "type": "error"
144
- },
145
- {
146
- "inputs": [],
147
- "name": "InvalidFeeType",
148
- "type": "error"
149
- },
150
- {
151
- "inputs": [],
152
- "name": "ReentrancyGuardReentrantCall",
153
- "type": "error"
154
- },
155
- {
156
- "inputs": [
157
- {
158
- "internalType": "address",
159
- "name": "token",
160
- "type": "address"
161
- }
162
- ],
163
- "name": "SafeERC20FailedOperation",
164
- "type": "error"
165
- },
166
- {
167
- "inputs": [],
168
- "name": "TokenAlreadySupported",
169
- "type": "error"
170
- },
171
- {
172
- "inputs": [],
173
- "name": "TokenNotSupported",
174
- "type": "error"
175
- },
176
- {
177
- "inputs": [],
178
- "name": "ZeroTotalWeight",
179
- "type": "error"
180
- },
181
- {
182
- "anonymous": false,
183
- "inputs": [
184
- {
185
- "indexed": true,
186
- "internalType": "address",
187
- "name": "token",
188
- "type": "address"
189
- },
190
- {
191
- "indexed": true,
192
- "internalType": "address",
193
- "name": "target",
194
- "type": "address"
195
- },
196
- {
197
- "indexed": false,
198
- "internalType": "uint256",
199
- "name": "amount",
200
- "type": "uint256"
201
- }
202
- ],
203
- "name": "CollectorRewardsClaimed",
204
- "type": "event"
205
- },
206
- {
207
- "anonymous": false,
208
- "inputs": [
209
- {
210
- "indexed": true,
211
- "internalType": "address",
212
- "name": "token",
213
- "type": "address"
214
- },
215
- {
216
- "indexed": true,
217
- "internalType": "address",
218
- "name": "target",
219
- "type": "address"
220
- },
221
- {
222
- "indexed": false,
223
- "internalType": "uint256",
224
- "name": "amount",
225
- "type": "uint256"
226
- }
227
- ],
228
- "name": "CollectorUnderlyingClaimed",
229
- "type": "event"
230
- },
231
- {
232
- "anonymous": false,
233
- "inputs": [
234
- {
235
- "indexed": true,
236
- "internalType": "address",
237
- "name": "token",
238
- "type": "address"
239
- },
240
- {
241
- "indexed": false,
242
- "internalType": "uint256",
243
- "name": "amount",
244
- "type": "uint256"
245
- }
246
- ],
247
- "name": "EmergencyWithdrawal",
248
- "type": "event"
249
- },
250
- {
251
- "anonymous": false,
252
- "inputs": [
253
- {
254
- "indexed": true,
255
- "internalType": "bytes32",
256
- "name": "feeType",
257
- "type": "bytes32"
258
- },
259
- {
260
- "indexed": false,
261
- "internalType": "uint256",
262
- "name": "amount",
263
- "type": "uint256"
264
- }
265
- ],
266
- "name": "FeeCollected",
267
- "type": "event"
268
- },
269
- {
270
- "anonymous": false,
271
- "inputs": [
272
- {
273
- "indexed": true,
274
- "internalType": "bytes32",
275
- "name": "feeType",
276
- "type": "bytes32"
277
- },
278
- {
279
- "indexed": true,
280
- "internalType": "bytes32",
281
- "name": "target",
282
- "type": "bytes32"
283
- },
284
- {
285
- "indexed": true,
286
- "internalType": "address",
287
- "name": "token",
288
- "type": "address"
289
- },
290
- {
291
- "indexed": false,
292
- "internalType": "uint256",
293
- "name": "amount",
294
- "type": "uint256"
295
- }
296
- ],
297
- "name": "FeeDistributed",
298
- "type": "event"
299
- },
300
- {
301
- "anonymous": false,
302
- "inputs": [
303
- {
304
- "indexed": false,
305
- "internalType": "bytes32",
306
- "name": "feeType",
307
- "type": "bytes32"
308
- }
309
- ],
310
- "name": "FeeTypeAdded",
311
- "type": "event"
312
- },
313
- {
314
- "anonymous": false,
315
- "inputs": [
316
- {
317
- "indexed": true,
318
- "internalType": "bytes32",
319
- "name": "feeType",
320
- "type": "bytes32"
321
- },
322
- {
323
- "components": [
324
- {
325
- "internalType": "bytes32",
326
- "name": "feeType",
327
- "type": "bytes32"
328
- },
329
- {
330
- "internalType": "uint256",
331
- "name": "treasuryShare",
332
- "type": "uint256"
333
- },
334
- {
335
- "internalType": "uint256",
336
- "name": "repairFundShare",
337
- "type": "uint256"
338
- },
339
- {
340
- "internalType": "uint256",
341
- "name": "burnShare",
342
- "type": "uint256"
343
- },
344
- {
345
- "internalType": "uint256",
346
- "name": "veRAACTokenShare",
347
- "type": "uint256"
348
- },
349
- {
350
- "internalType": "uint256",
351
- "name": "otherShare",
352
- "type": "uint256"
353
- }
354
- ],
355
- "indexed": false,
356
- "internalType": "struct IFeeCollector.FeeType",
357
- "name": "newFee",
358
- "type": "tuple"
359
- }
360
- ],
361
- "name": "FeeTypeUpdated",
362
- "type": "event"
363
- },
364
- {
365
- "anonymous": false,
366
- "inputs": [
367
- {
368
- "indexed": false,
369
- "internalType": "address",
370
- "name": "account",
371
- "type": "address"
372
- }
373
- ],
374
- "name": "Paused",
375
- "type": "event"
376
- },
377
- {
378
- "anonymous": false,
379
- "inputs": [
380
- {
381
- "indexed": true,
382
- "internalType": "bytes32",
383
- "name": "role",
384
- "type": "bytes32"
385
- },
386
- {
387
- "indexed": true,
388
- "internalType": "bytes32",
389
- "name": "previousAdminRole",
390
- "type": "bytes32"
391
- },
392
- {
393
- "indexed": true,
394
- "internalType": "bytes32",
395
- "name": "newAdminRole",
396
- "type": "bytes32"
397
- }
398
- ],
399
- "name": "RoleAdminChanged",
400
- "type": "event"
401
- },
402
- {
403
- "anonymous": false,
404
- "inputs": [
405
- {
406
- "indexed": true,
407
- "internalType": "bytes32",
408
- "name": "role",
409
- "type": "bytes32"
410
- },
411
- {
412
- "indexed": true,
413
- "internalType": "address",
414
- "name": "account",
415
- "type": "address"
416
- },
417
- {
418
- "indexed": true,
419
- "internalType": "address",
420
- "name": "sender",
421
- "type": "address"
422
- }
423
- ],
424
- "name": "RoleGranted",
425
- "type": "event"
426
- },
427
- {
428
- "anonymous": false,
429
- "inputs": [
430
- {
431
- "indexed": true,
432
- "internalType": "bytes32",
433
- "name": "role",
434
- "type": "bytes32"
435
- },
436
- {
437
- "indexed": true,
438
- "internalType": "address",
439
- "name": "account",
440
- "type": "address"
441
- },
442
- {
443
- "indexed": true,
444
- "internalType": "address",
445
- "name": "sender",
446
- "type": "address"
447
- }
448
- ],
449
- "name": "RoleRevoked",
450
- "type": "event"
451
- },
452
- {
453
- "anonymous": false,
454
- "inputs": [
455
- {
456
- "indexed": false,
457
- "internalType": "bytes32",
458
- "name": "target",
459
- "type": "bytes32"
460
- },
461
- {
462
- "indexed": true,
463
- "internalType": "address",
464
- "name": "newAddress",
465
- "type": "address"
466
- }
467
- ],
468
- "name": "TargetAddressUpdated",
469
- "type": "event"
470
- },
471
- {
472
- "anonymous": false,
473
- "inputs": [
474
- {
475
- "indexed": true,
476
- "internalType": "address",
477
- "name": "token",
478
- "type": "address"
479
- }
480
- ],
481
- "name": "TokenAdded",
482
- "type": "event"
483
- },
484
- {
485
- "anonymous": false,
486
- "inputs": [
487
- {
488
- "indexed": true,
489
- "internalType": "address",
490
- "name": "token",
491
- "type": "address"
492
- }
493
- ],
494
- "name": "TokenRemoved",
495
- "type": "event"
496
- },
497
- {
498
- "anonymous": false,
499
- "inputs": [
500
- {
501
- "indexed": false,
502
- "internalType": "address",
503
- "name": "account",
504
- "type": "address"
505
- }
506
- ],
507
- "name": "Unpaused",
508
- "type": "event"
509
- },
510
- {
511
- "inputs": [],
512
- "name": "BASIS_POINTS",
513
- "outputs": [
514
- {
515
- "internalType": "uint256",
516
- "name": "",
517
- "type": "uint256"
518
- }
519
- ],
520
- "stateMutability": "view",
521
- "type": "function"
522
- },
523
- {
524
- "inputs": [],
525
- "name": "BURN",
526
- "outputs": [
527
- {
528
- "internalType": "bytes32",
529
- "name": "",
530
- "type": "bytes32"
531
- }
532
- ],
533
- "stateMutability": "view",
534
- "type": "function"
535
- },
536
- {
537
- "inputs": [],
538
- "name": "DEFAULT_ADMIN_ROLE",
539
- "outputs": [
540
- {
541
- "internalType": "bytes32",
542
- "name": "",
543
- "type": "bytes32"
544
- }
545
- ],
546
- "stateMutability": "view",
547
- "type": "function"
548
- },
549
- {
550
- "inputs": [],
551
- "name": "DISTRIBUTOR_ROLE",
552
- "outputs": [
553
- {
554
- "internalType": "bytes32",
555
- "name": "",
556
- "type": "bytes32"
557
- }
558
- ],
559
- "stateMutability": "view",
560
- "type": "function"
561
- },
562
- {
563
- "inputs": [],
564
- "name": "EMERGENCY_ROLE",
565
- "outputs": [
566
- {
567
- "internalType": "bytes32",
568
- "name": "",
569
- "type": "bytes32"
570
- }
571
- ],
572
- "stateMutability": "view",
573
- "type": "function"
574
- },
575
- {
576
- "inputs": [],
577
- "name": "FEE_MANAGER_ROLE",
578
- "outputs": [
579
- {
580
- "internalType": "bytes32",
581
- "name": "",
582
- "type": "bytes32"
583
- }
584
- ],
585
- "stateMutability": "view",
586
- "type": "function"
587
- },
588
- {
589
- "inputs": [],
590
- "name": "MAX_FEE_AMOUNT",
591
- "outputs": [
592
- {
593
- "internalType": "uint256",
594
- "name": "",
595
- "type": "uint256"
596
- }
597
- ],
598
- "stateMutability": "view",
599
- "type": "function"
600
- },
601
- {
602
- "inputs": [],
603
- "name": "OTHER",
604
- "outputs": [
605
- {
606
- "internalType": "bytes32",
607
- "name": "",
608
- "type": "bytes32"
609
- }
610
- ],
611
- "stateMutability": "view",
612
- "type": "function"
613
- },
614
- {
615
- "inputs": [],
616
- "name": "REPAIR_FUND",
617
- "outputs": [
618
- {
619
- "internalType": "bytes32",
620
- "name": "",
621
- "type": "bytes32"
622
- }
623
- ],
624
- "stateMutability": "view",
625
- "type": "function"
626
- },
627
- {
628
- "inputs": [],
629
- "name": "ROYALTY_FEE",
630
- "outputs": [
631
- {
632
- "internalType": "bytes32",
633
- "name": "",
634
- "type": "bytes32"
635
- }
636
- ],
637
- "stateMutability": "view",
638
- "type": "function"
639
- },
640
- {
641
- "inputs": [],
642
- "name": "TREASURY",
643
- "outputs": [
644
- {
645
- "internalType": "bytes32",
646
- "name": "",
647
- "type": "bytes32"
648
- }
649
- ],
650
- "stateMutability": "view",
651
- "type": "function"
652
- },
653
- {
654
- "inputs": [],
655
- "name": "TREASURY_UPDATE_DELAY",
656
- "outputs": [
657
- {
658
- "internalType": "uint256",
659
- "name": "",
660
- "type": "uint256"
661
- }
662
- ],
663
- "stateMutability": "view",
664
- "type": "function"
665
- },
666
- {
667
- "inputs": [],
668
- "name": "VERAAC",
669
- "outputs": [
670
- {
671
- "internalType": "bytes32",
672
- "name": "",
673
- "type": "bytes32"
674
- }
675
- ],
676
- "stateMutability": "view",
677
- "type": "function"
678
- },
679
- {
680
- "inputs": [
681
- {
682
- "internalType": "address",
683
- "name": "token",
684
- "type": "address"
685
- }
686
- ],
687
- "name": "addClaimableToken",
688
- "outputs": [],
689
- "stateMutability": "nonpayable",
690
- "type": "function"
691
- },
692
- {
693
- "inputs": [
694
- {
695
- "internalType": "bytes32",
696
- "name": "feeType",
697
- "type": "bytes32"
698
- },
699
- {
700
- "internalType": "uint256",
701
- "name": "treasuryShare",
702
- "type": "uint256"
703
- },
704
- {
705
- "internalType": "uint256",
706
- "name": "repairFundShare",
707
- "type": "uint256"
708
- },
709
- {
710
- "internalType": "uint256",
711
- "name": "burnShare",
712
- "type": "uint256"
713
- },
714
- {
715
- "internalType": "uint256",
716
- "name": "veRAACTokenShare",
717
- "type": "uint256"
718
- },
719
- {
720
- "internalType": "uint256",
721
- "name": "otherShare",
722
- "type": "uint256"
723
- }
724
- ],
725
- "name": "addFeeType",
726
- "outputs": [
727
- {
728
- "internalType": "bool",
729
- "name": "",
730
- "type": "bool"
731
- }
732
- ],
733
- "stateMutability": "nonpayable",
734
- "type": "function"
735
- },
736
- {
737
- "inputs": [],
738
- "name": "burnAddress",
739
- "outputs": [
740
- {
741
- "internalType": "address",
742
- "name": "",
743
- "type": "address"
744
- }
745
- ],
746
- "stateMutability": "view",
747
- "type": "function"
748
- },
749
- {
750
- "inputs": [
751
- {
752
- "internalType": "address",
753
- "name": "token",
754
- "type": "address"
755
- },
756
- {
757
- "internalType": "address",
758
- "name": "target",
759
- "type": "address"
760
- },
761
- {
762
- "internalType": "bytes32",
763
- "name": "feeType",
764
- "type": "bytes32"
765
- }
766
- ],
767
- "name": "claimCollectorRewards",
768
- "outputs": [
769
- {
770
- "internalType": "bool",
771
- "name": "",
772
- "type": "bool"
773
- }
774
- ],
775
- "stateMutability": "nonpayable",
776
- "type": "function"
777
- },
778
- {
779
- "inputs": [
780
- {
781
- "internalType": "address",
782
- "name": "token",
783
- "type": "address"
784
- },
785
- {
786
- "internalType": "address",
787
- "name": "target",
788
- "type": "address"
789
- },
790
- {
791
- "internalType": "uint256",
792
- "name": "amount",
793
- "type": "uint256"
794
- },
795
- {
796
- "internalType": "bytes32",
797
- "name": "feeType",
798
- "type": "bytes32"
799
- }
800
- ],
801
- "name": "claimNFTUnderlying",
802
- "outputs": [
803
- {
804
- "internalType": "bool",
805
- "name": "",
806
- "type": "bool"
807
- }
808
- ],
809
- "stateMutability": "nonpayable",
810
- "type": "function"
811
- },
812
- {
813
- "inputs": [
814
- {
815
- "internalType": "address",
816
- "name": "token",
817
- "type": "address"
818
- },
819
- {
820
- "internalType": "address",
821
- "name": "target",
822
- "type": "address"
823
- },
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "FeeCollector",
4
+ "sourceName": "contracts/core/collectors/FeeCollector.sol",
5
+ "abi": [
824
6
  {
825
- "internalType": "uint256",
826
- "name": "amount",
827
- "type": "uint256"
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_admin",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "stateMutability": "nonpayable",
15
+ "type": "constructor"
828
16
  },
829
17
  {
830
- "internalType": "bytes32",
831
- "name": "feeType",
832
- "type": "bytes32"
833
- }
834
- ],
835
- "name": "collectFee",
836
- "outputs": [
837
- {
838
- "internalType": "bool",
839
- "name": "",
840
- "type": "bool"
841
- }
842
- ],
843
- "stateMutability": "nonpayable",
844
- "type": "function"
845
- },
846
- {
847
- "inputs": [
848
- {
849
- "internalType": "bytes32",
850
- "name": "",
851
- "type": "bytes32"
852
- }
853
- ],
854
- "name": "collectedFees",
855
- "outputs": [
856
- {
857
- "internalType": "uint256",
858
- "name": "treasuryAmount",
859
- "type": "uint256"
18
+ "inputs": [],
19
+ "name": "AccessControlBadConfirmation",
20
+ "type": "error"
860
21
  },
861
22
  {
862
- "internalType": "uint256",
863
- "name": "repairFundAmount",
864
- "type": "uint256"
23
+ "inputs": [
24
+ {
25
+ "internalType": "address",
26
+ "name": "account",
27
+ "type": "address"
28
+ },
29
+ {
30
+ "internalType": "bytes32",
31
+ "name": "neededRole",
32
+ "type": "bytes32"
33
+ }
34
+ ],
35
+ "name": "AccessControlUnauthorizedAccount",
36
+ "type": "error"
865
37
  },
866
38
  {
867
- "internalType": "uint256",
868
- "name": "burnAmount",
869
- "type": "uint256"
39
+ "inputs": [
40
+ {
41
+ "internalType": "address",
42
+ "name": "target",
43
+ "type": "address"
44
+ }
45
+ ],
46
+ "name": "AddressEmptyCode",
47
+ "type": "error"
870
48
  },
871
49
  {
872
- "internalType": "uint256",
873
- "name": "veRAACTokenAmount",
874
- "type": "uint256"
50
+ "inputs": [
51
+ {
52
+ "internalType": "address",
53
+ "name": "account",
54
+ "type": "address"
55
+ }
56
+ ],
57
+ "name": "AddressInsufficientBalance",
58
+ "type": "error"
875
59
  },
876
60
  {
877
- "internalType": "uint256",
878
- "name": "otherAmount",
879
- "type": "uint256"
880
- }
881
- ],
882
- "stateMutability": "view",
883
- "type": "function"
884
- },
885
- {
886
- "inputs": [
887
- {
888
- "internalType": "address",
889
- "name": "",
890
- "type": "address"
891
- },
892
- {
893
- "internalType": "bytes32",
894
- "name": "",
895
- "type": "bytes32"
896
- }
897
- ],
898
- "name": "collectedFeesByToken",
899
- "outputs": [
900
- {
901
- "internalType": "uint256",
902
- "name": "treasuryAmount",
903
- "type": "uint256"
61
+ "inputs": [],
62
+ "name": "ClaimCollectorRewardsFailed",
63
+ "type": "error"
904
64
  },
905
65
  {
906
- "internalType": "uint256",
907
- "name": "repairFundAmount",
908
- "type": "uint256"
66
+ "inputs": [],
67
+ "name": "ClaimCollectorUnderlyingFailed",
68
+ "type": "error"
909
69
  },
910
70
  {
911
- "internalType": "uint256",
912
- "name": "burnAmount",
913
- "type": "uint256"
71
+ "inputs": [],
72
+ "name": "ClaimingDisabled",
73
+ "type": "error"
914
74
  },
915
75
  {
916
- "internalType": "uint256",
917
- "name": "veRAACTokenAmount",
918
- "type": "uint256"
76
+ "inputs": [],
77
+ "name": "DistributionFailed",
78
+ "type": "error"
919
79
  },
920
80
  {
921
- "internalType": "uint256",
922
- "name": "otherAmount",
923
- "type": "uint256"
924
- }
925
- ],
926
- "stateMutability": "view",
927
- "type": "function"
928
- },
929
- {
930
- "inputs": [
931
- {
932
- "internalType": "bytes32",
933
- "name": "feeType",
934
- "type": "bytes32"
81
+ "inputs": [],
82
+ "name": "DivisionByZero",
83
+ "type": "error"
935
84
  },
936
85
  {
937
- "internalType": "bytes32",
938
- "name": "target",
939
- "type": "bytes32"
86
+ "inputs": [],
87
+ "name": "EmergencyPaused",
88
+ "type": "error"
940
89
  },
941
90
  {
942
- "internalType": "address",
943
- "name": "token",
944
- "type": "address"
945
- }
946
- ],
947
- "name": "distributeFees",
948
- "outputs": [],
949
- "stateMutability": "nonpayable",
950
- "type": "function"
951
- },
952
- {
953
- "inputs": [],
954
- "name": "distributionPeriod",
955
- "outputs": [
956
- {
957
- "internalType": "uint256",
958
- "name": "startTime",
959
- "type": "uint256"
91
+ "inputs": [],
92
+ "name": "EnforcedPause",
93
+ "type": "error"
960
94
  },
961
95
  {
962
- "internalType": "uint256",
963
- "name": "endTime",
964
- "type": "uint256"
96
+ "inputs": [],
97
+ "name": "ExcessiveAmount",
98
+ "type": "error"
965
99
  },
966
100
  {
967
- "internalType": "uint256",
968
- "name": "lastUpdateTime",
969
- "type": "uint256"
101
+ "inputs": [],
102
+ "name": "ExpectedPause",
103
+ "type": "error"
970
104
  },
971
105
  {
972
- "internalType": "uint256",
973
- "name": "value",
974
- "type": "uint256"
106
+ "inputs": [],
107
+ "name": "FailedInnerCall",
108
+ "type": "error"
975
109
  },
976
110
  {
977
- "internalType": "uint256",
978
- "name": "weightedSum",
979
- "type": "uint256"
111
+ "inputs": [],
112
+ "name": "FeeTypeAlreadyExists",
113
+ "type": "error"
980
114
  },
981
115
  {
982
- "internalType": "uint256",
983
- "name": "totalDuration",
984
- "type": "uint256"
116
+ "inputs": [],
117
+ "name": "FeeTypeDoesNotExist",
118
+ "type": "error"
985
119
  },
986
120
  {
987
- "internalType": "uint256",
988
- "name": "weight",
989
- "type": "uint256"
990
- }
991
- ],
992
- "stateMutability": "view",
993
- "type": "function"
994
- },
995
- {
996
- "inputs": [
997
- {
998
- "internalType": "address",
999
- "name": "token",
1000
- "type": "address"
121
+ "inputs": [],
122
+ "name": "InsufficientBalance",
123
+ "type": "error"
1001
124
  },
1002
125
  {
1003
- "internalType": "address",
1004
- "name": "recipient",
1005
- "type": "address"
1006
- }
1007
- ],
1008
- "name": "emergencyWithdraw",
1009
- "outputs": [],
1010
- "stateMutability": "nonpayable",
1011
- "type": "function"
1012
- },
1013
- {
1014
- "inputs": [
1015
- {
1016
- "internalType": "bytes32",
1017
- "name": "",
1018
- "type": "bytes32"
1019
- }
1020
- ],
1021
- "name": "feeTypes",
1022
- "outputs": [
1023
- {
1024
- "internalType": "bytes32",
1025
- "name": "feeType",
1026
- "type": "bytes32"
126
+ "inputs": [],
127
+ "name": "InvalidAddress",
128
+ "type": "error"
1027
129
  },
1028
130
  {
1029
- "internalType": "uint256",
1030
- "name": "treasuryShare",
1031
- "type": "uint256"
131
+ "inputs": [],
132
+ "name": "InvalidAddressType",
133
+ "type": "error"
1032
134
  },
1033
135
  {
1034
- "internalType": "uint256",
1035
- "name": "repairFundShare",
1036
- "type": "uint256"
136
+ "inputs": [],
137
+ "name": "InvalidDistributionParams",
138
+ "type": "error"
1037
139
  },
1038
140
  {
1039
- "internalType": "uint256",
1040
- "name": "burnShare",
1041
- "type": "uint256"
141
+ "inputs": [],
142
+ "name": "InvalidFeeAmount",
143
+ "type": "error"
1042
144
  },
1043
145
  {
1044
- "internalType": "uint256",
1045
- "name": "veRAACTokenShare",
1046
- "type": "uint256"
1047
- },
1048
- {
1049
- "internalType": "uint256",
1050
- "name": "otherShare",
1051
- "type": "uint256"
1052
- }
1053
- ],
1054
- "stateMutability": "view",
1055
- "type": "function"
1056
- },
1057
- {
1058
- "inputs": [
1059
- {
1060
- "internalType": "address",
1061
- "name": "token",
1062
- "type": "address"
1063
- },
1064
- {
1065
- "internalType": "bytes32",
1066
- "name": "feeType",
1067
- "type": "bytes32"
1068
- }
1069
- ],
1070
- "name": "getCollectedFees",
1071
- "outputs": [
1072
- {
1073
- "components": [
1074
- {
1075
- "internalType": "uint256",
1076
- "name": "treasuryAmount",
1077
- "type": "uint256"
1078
- },
1079
- {
1080
- "internalType": "uint256",
1081
- "name": "repairFundAmount",
1082
- "type": "uint256"
1083
- },
1084
- {
1085
- "internalType": "uint256",
1086
- "name": "burnAmount",
1087
- "type": "uint256"
1088
- },
1089
- {
1090
- "internalType": "uint256",
1091
- "name": "veRAACTokenAmount",
1092
- "type": "uint256"
1093
- },
1094
- {
1095
- "internalType": "uint256",
1096
- "name": "otherAmount",
1097
- "type": "uint256"
1098
- }
1099
- ],
1100
- "internalType": "struct IFeeCollector.CollectedFeeForType",
1101
- "name": "",
1102
- "type": "tuple"
1103
- }
1104
- ],
1105
- "stateMutability": "view",
1106
- "type": "function"
1107
- },
1108
- {
1109
- "inputs": [
1110
- {
1111
- "internalType": "address",
1112
- "name": "token",
1113
- "type": "address"
1114
- }
1115
- ],
1116
- "name": "getCollectedFeesByToken",
1117
- "outputs": [
1118
- {
1119
- "components": [
1120
- {
1121
- "internalType": "uint256",
1122
- "name": "treasuryAmount",
1123
- "type": "uint256"
1124
- },
1125
- {
1126
- "internalType": "uint256",
1127
- "name": "repairFundAmount",
1128
- "type": "uint256"
1129
- },
1130
- {
1131
- "internalType": "uint256",
1132
- "name": "burnAmount",
1133
- "type": "uint256"
1134
- },
1135
- {
1136
- "internalType": "uint256",
1137
- "name": "veRAACTokenAmount",
1138
- "type": "uint256"
1139
- },
1140
- {
1141
- "internalType": "uint256",
1142
- "name": "otherAmount",
1143
- "type": "uint256"
1144
- }
1145
- ],
1146
- "internalType": "struct IFeeCollector.CollectedFeeForType[]",
1147
- "name": "",
1148
- "type": "tuple[]"
1149
- }
1150
- ],
1151
- "stateMutability": "view",
1152
- "type": "function"
1153
- },
1154
- {
1155
- "inputs": [
1156
- {
1157
- "internalType": "address",
1158
- "name": "token",
1159
- "type": "address"
1160
- },
1161
- {
1162
- "internalType": "bytes32",
1163
- "name": "feeType",
1164
- "type": "bytes32"
1165
- }
1166
- ],
1167
- "name": "getCollectedFeesByTokenAndFeeType",
1168
- "outputs": [
1169
- {
1170
- "components": [
1171
- {
1172
- "internalType": "uint256",
1173
- "name": "treasuryAmount",
1174
- "type": "uint256"
1175
- },
1176
- {
1177
- "internalType": "uint256",
1178
- "name": "repairFundAmount",
1179
- "type": "uint256"
1180
- },
1181
- {
1182
- "internalType": "uint256",
1183
- "name": "burnAmount",
1184
- "type": "uint256"
1185
- },
1186
- {
1187
- "internalType": "uint256",
1188
- "name": "veRAACTokenAmount",
1189
- "type": "uint256"
1190
- },
1191
- {
1192
- "internalType": "uint256",
1193
- "name": "otherAmount",
1194
- "type": "uint256"
1195
- }
1196
- ],
1197
- "internalType": "struct IFeeCollector.CollectedFeeForType",
1198
- "name": "",
1199
- "type": "tuple"
1200
- }
1201
- ],
1202
- "stateMutability": "view",
1203
- "type": "function"
1204
- },
1205
- {
1206
- "inputs": [
1207
- {
1208
- "internalType": "bytes32",
1209
- "name": "feeType",
1210
- "type": "bytes32"
1211
- }
1212
- ],
1213
- "name": "getFeeType",
1214
- "outputs": [
1215
- {
1216
- "components": [
1217
- {
1218
- "internalType": "bytes32",
1219
- "name": "feeType",
1220
- "type": "bytes32"
1221
- },
1222
- {
1223
- "internalType": "uint256",
1224
- "name": "treasuryShare",
1225
- "type": "uint256"
1226
- },
1227
- {
1228
- "internalType": "uint256",
1229
- "name": "repairFundShare",
1230
- "type": "uint256"
1231
- },
1232
- {
1233
- "internalType": "uint256",
1234
- "name": "burnShare",
1235
- "type": "uint256"
1236
- },
1237
- {
1238
- "internalType": "uint256",
1239
- "name": "veRAACTokenShare",
1240
- "type": "uint256"
1241
- },
1242
- {
1243
- "internalType": "uint256",
1244
- "name": "otherShare",
1245
- "type": "uint256"
1246
- }
1247
- ],
1248
- "internalType": "struct IFeeCollector.FeeType",
1249
- "name": "",
1250
- "type": "tuple"
1251
- }
1252
- ],
1253
- "stateMutability": "view",
1254
- "type": "function"
1255
- },
1256
- {
1257
- "inputs": [],
1258
- "name": "getFeeTypes",
1259
- "outputs": [
1260
- {
1261
- "components": [
1262
- {
1263
- "internalType": "bytes32",
1264
- "name": "feeType",
1265
- "type": "bytes32"
1266
- },
1267
- {
1268
- "internalType": "uint256",
1269
- "name": "treasuryShare",
1270
- "type": "uint256"
1271
- },
1272
- {
1273
- "internalType": "uint256",
1274
- "name": "repairFundShare",
1275
- "type": "uint256"
1276
- },
1277
- {
1278
- "internalType": "uint256",
1279
- "name": "burnShare",
1280
- "type": "uint256"
1281
- },
1282
- {
1283
- "internalType": "uint256",
1284
- "name": "veRAACTokenShare",
1285
- "type": "uint256"
1286
- },
1287
- {
1288
- "internalType": "uint256",
1289
- "name": "otherShare",
1290
- "type": "uint256"
1291
- }
1292
- ],
1293
- "internalType": "struct IFeeCollector.FeeType[]",
1294
- "name": "",
1295
- "type": "tuple[]"
1296
- }
1297
- ],
1298
- "stateMutability": "view",
1299
- "type": "function"
1300
- },
1301
- {
1302
- "inputs": [
1303
- {
1304
- "internalType": "bytes32",
1305
- "name": "role",
1306
- "type": "bytes32"
1307
- }
1308
- ],
1309
- "name": "getRoleAdmin",
1310
- "outputs": [
1311
- {
1312
- "internalType": "bytes32",
1313
- "name": "",
1314
- "type": "bytes32"
1315
- }
1316
- ],
1317
- "stateMutability": "view",
1318
- "type": "function"
1319
- },
1320
- {
1321
- "inputs": [],
1322
- "name": "getSupportedTokens",
1323
- "outputs": [
1324
- {
1325
- "internalType": "address[]",
1326
- "name": "",
1327
- "type": "address[]"
1328
- }
1329
- ],
1330
- "stateMutability": "view",
1331
- "type": "function"
1332
- },
1333
- {
1334
- "inputs": [
1335
- {
1336
- "internalType": "bytes32",
1337
- "name": "target",
1338
- "type": "bytes32"
1339
- }
1340
- ],
1341
- "name": "getTargetAddress",
1342
- "outputs": [
1343
- {
1344
- "internalType": "address",
1345
- "name": "",
1346
- "type": "address"
1347
- }
1348
- ],
1349
- "stateMutability": "view",
1350
- "type": "function"
1351
- },
1352
- {
1353
- "inputs": [
1354
- {
1355
- "internalType": "bytes32",
1356
- "name": "feeType",
1357
- "type": "bytes32"
146
+ "inputs": [],
147
+ "name": "InvalidFeeType",
148
+ "type": "error"
1358
149
  },
1359
150
  {
1360
- "internalType": "bytes32",
1361
- "name": "target",
1362
- "type": "bytes32"
151
+ "inputs": [],
152
+ "name": "ReentrancyGuardReentrantCall",
153
+ "type": "error"
1363
154
  },
1364
155
  {
1365
- "internalType": "address",
1366
- "name": "token",
1367
- "type": "address"
1368
- }
1369
- ],
1370
- "name": "getTargetAmount",
1371
- "outputs": [
1372
- {
1373
- "internalType": "uint256",
1374
- "name": "",
1375
- "type": "uint256"
1376
- }
1377
- ],
1378
- "stateMutability": "view",
1379
- "type": "function"
1380
- },
1381
- {
1382
- "inputs": [
1383
- {
1384
- "internalType": "bytes32",
1385
- "name": "role",
1386
- "type": "bytes32"
156
+ "inputs": [
157
+ {
158
+ "internalType": "address",
159
+ "name": "token",
160
+ "type": "address"
161
+ }
162
+ ],
163
+ "name": "SafeERC20FailedOperation",
164
+ "type": "error"
1387
165
  },
1388
166
  {
1389
- "internalType": "address",
1390
- "name": "account",
1391
- "type": "address"
1392
- }
1393
- ],
1394
- "name": "grantRole",
1395
- "outputs": [],
1396
- "stateMutability": "nonpayable",
1397
- "type": "function"
1398
- },
1399
- {
1400
- "inputs": [
1401
- {
1402
- "internalType": "bytes32",
1403
- "name": "role",
1404
- "type": "bytes32"
1405
- },
1406
- {
1407
- "internalType": "address",
1408
- "name": "account",
1409
- "type": "address"
1410
- }
1411
- ],
1412
- "name": "hasRole",
1413
- "outputs": [
1414
- {
1415
- "internalType": "bool",
1416
- "name": "",
1417
- "type": "bool"
1418
- }
1419
- ],
1420
- "stateMutability": "view",
1421
- "type": "function"
1422
- },
1423
- {
1424
- "inputs": [
1425
- {
1426
- "internalType": "address",
1427
- "name": "",
1428
- "type": "address"
1429
- }
1430
- ],
1431
- "name": "isTokenSupported",
1432
- "outputs": [
1433
- {
1434
- "internalType": "bool",
1435
- "name": "",
1436
- "type": "bool"
1437
- }
1438
- ],
1439
- "stateMutability": "view",
1440
- "type": "function"
1441
- },
1442
- {
1443
- "inputs": [],
1444
- "name": "otherAddress",
1445
- "outputs": [
1446
- {
1447
- "internalType": "address",
1448
- "name": "",
1449
- "type": "address"
1450
- }
1451
- ],
1452
- "stateMutability": "view",
1453
- "type": "function"
1454
- },
1455
- {
1456
- "inputs": [],
1457
- "name": "pause",
1458
- "outputs": [],
1459
- "stateMutability": "nonpayable",
1460
- "type": "function"
1461
- },
1462
- {
1463
- "inputs": [],
1464
- "name": "paused",
1465
- "outputs": [
1466
- {
1467
- "internalType": "bool",
1468
- "name": "",
1469
- "type": "bool"
1470
- }
1471
- ],
1472
- "stateMutability": "view",
1473
- "type": "function"
1474
- },
1475
- {
1476
- "inputs": [],
1477
- "name": "pendingRepairFund",
1478
- "outputs": [
1479
- {
1480
- "internalType": "address",
1481
- "name": "newAddress",
1482
- "type": "address"
1483
- },
1484
- {
1485
- "internalType": "uint256",
1486
- "name": "effectiveTime",
1487
- "type": "uint256"
1488
- }
1489
- ],
1490
- "stateMutability": "view",
1491
- "type": "function"
1492
- },
1493
- {
1494
- "inputs": [],
1495
- "name": "pendingTreasury",
1496
- "outputs": [
1497
- {
1498
- "internalType": "address",
1499
- "name": "newAddress",
1500
- "type": "address"
1501
- },
1502
- {
1503
- "internalType": "uint256",
1504
- "name": "effectiveTime",
1505
- "type": "uint256"
1506
- }
1507
- ],
1508
- "stateMutability": "view",
1509
- "type": "function"
1510
- },
1511
- {
1512
- "inputs": [
1513
- {
1514
- "internalType": "address",
1515
- "name": "token",
1516
- "type": "address"
1517
- }
1518
- ],
1519
- "name": "removeClaimableToken",
1520
- "outputs": [],
1521
- "stateMutability": "nonpayable",
1522
- "type": "function"
1523
- },
1524
- {
1525
- "inputs": [
1526
- {
1527
- "internalType": "bytes32",
1528
- "name": "feeType",
1529
- "type": "bytes32"
1530
- }
1531
- ],
1532
- "name": "removeFeeType",
1533
- "outputs": [],
1534
- "stateMutability": "nonpayable",
1535
- "type": "function"
1536
- },
1537
- {
1538
- "inputs": [
1539
- {
1540
- "internalType": "bytes32",
1541
- "name": "role",
1542
- "type": "bytes32"
1543
- },
1544
- {
1545
- "internalType": "address",
1546
- "name": "callerConfirmation",
1547
- "type": "address"
1548
- }
1549
- ],
1550
- "name": "renounceRole",
1551
- "outputs": [],
1552
- "stateMutability": "nonpayable",
1553
- "type": "function"
1554
- },
1555
- {
1556
- "inputs": [],
1557
- "name": "repairFundAddress",
1558
- "outputs": [
1559
- {
1560
- "internalType": "address",
1561
- "name": "",
1562
- "type": "address"
1563
- }
1564
- ],
1565
- "stateMutability": "view",
1566
- "type": "function"
1567
- },
1568
- {
1569
- "inputs": [
1570
- {
1571
- "internalType": "bytes32",
1572
- "name": "role",
1573
- "type": "bytes32"
167
+ "inputs": [],
168
+ "name": "TokenAlreadySupported",
169
+ "type": "error"
1574
170
  },
1575
171
  {
1576
- "internalType": "address",
1577
- "name": "account",
1578
- "type": "address"
1579
- }
1580
- ],
1581
- "name": "revokeRole",
1582
- "outputs": [],
1583
- "stateMutability": "nonpayable",
1584
- "type": "function"
1585
- },
1586
- {
1587
- "inputs": [
1588
- {
1589
- "internalType": "bytes32",
1590
- "name": "target",
1591
- "type": "bytes32"
1592
- },
1593
- {
1594
- "internalType": "address",
1595
- "name": "newAddress",
1596
- "type": "address"
1597
- }
1598
- ],
1599
- "name": "setTargetAddress",
1600
- "outputs": [],
1601
- "stateMutability": "nonpayable",
1602
- "type": "function"
1603
- },
1604
- {
1605
- "inputs": [
1606
- {
1607
- "internalType": "bytes4",
1608
- "name": "interfaceId",
1609
- "type": "bytes4"
1610
- }
1611
- ],
1612
- "name": "supportsInterface",
1613
- "outputs": [
1614
- {
1615
- "internalType": "bool",
1616
- "name": "",
1617
- "type": "bool"
1618
- }
1619
- ],
1620
- "stateMutability": "view",
1621
- "type": "function"
1622
- },
1623
- {
1624
- "inputs": [],
1625
- "name": "totalDistributed",
1626
- "outputs": [
1627
- {
1628
- "internalType": "uint256",
1629
- "name": "",
1630
- "type": "uint256"
1631
- }
1632
- ],
1633
- "stateMutability": "view",
1634
- "type": "function"
1635
- },
1636
- {
1637
- "inputs": [],
1638
- "name": "treasuryAddress",
1639
- "outputs": [
1640
- {
1641
- "internalType": "address",
1642
- "name": "",
1643
- "type": "address"
1644
- }
1645
- ],
1646
- "stateMutability": "view",
1647
- "type": "function"
1648
- },
1649
- {
1650
- "inputs": [],
1651
- "name": "unpause",
1652
- "outputs": [],
1653
- "stateMutability": "nonpayable",
1654
- "type": "function"
1655
- },
1656
- {
1657
- "inputs": [
1658
- {
1659
- "internalType": "bytes32",
1660
- "name": "feeType",
1661
- "type": "bytes32"
1662
- },
1663
- {
1664
- "components": [
1665
- {
1666
- "internalType": "bytes32",
1667
- "name": "feeType",
1668
- "type": "bytes32"
1669
- },
1670
- {
1671
- "internalType": "uint256",
1672
- "name": "treasuryShare",
1673
- "type": "uint256"
1674
- },
1675
- {
1676
- "internalType": "uint256",
1677
- "name": "repairFundShare",
1678
- "type": "uint256"
1679
- },
1680
- {
1681
- "internalType": "uint256",
1682
- "name": "burnShare",
1683
- "type": "uint256"
1684
- },
1685
- {
1686
- "internalType": "uint256",
1687
- "name": "veRAACTokenShare",
1688
- "type": "uint256"
1689
- },
1690
- {
1691
- "internalType": "uint256",
1692
- "name": "otherShare",
1693
- "type": "uint256"
1694
- }
1695
- ],
1696
- "internalType": "struct IFeeCollector.FeeType",
1697
- "name": "newFee",
1698
- "type": "tuple"
1699
- }
1700
- ],
1701
- "name": "updateFeeType",
1702
- "outputs": [],
1703
- "stateMutability": "nonpayable",
1704
- "type": "function"
1705
- },
1706
- {
1707
- "inputs": [
1708
- {
1709
- "internalType": "address",
1710
- "name": "",
1711
- "type": "address"
1712
- }
1713
- ],
1714
- "name": "userRewards",
1715
- "outputs": [
1716
- {
1717
- "internalType": "uint256",
1718
- "name": "",
1719
- "type": "uint256"
1720
- }
1721
- ],
1722
- "stateMutability": "view",
1723
- "type": "function"
1724
- },
1725
- {
1726
- "inputs": [],
1727
- "name": "veRAACAddress",
1728
- "outputs": [
1729
- {
1730
- "internalType": "address",
1731
- "name": "",
1732
- "type": "address"
1733
- }
1734
- ],
1735
- "stateMutability": "view",
1736
- "type": "function"
1737
- }
1738
- ],
1739
- "bytecode": "0x60806040523480156200001157600080fd5b50604051620036113803806200361183398101604081905262000034916200020d565b600180556002805460ff191690556001600160a01b0381166200006a5760405163e6c4247b60e01b815260040160405180910390fd5b620000776000826200015e565b50620000a47f6c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1c826200015e565b50620000d17fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26826200015e565b50620000fe7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c826200015e565b5060028054610100600160a81b0319166101006001600160a01b0393909316928302179055600380546001600160a01b0319908116831790915560048054821683179055600580548216831790556006805490911690911790556200023f565b6000828152602081815260408083206001600160a01b038516845290915281205460ff1662000203576000838152602081815260408083206001600160a01b03861684529091529020805460ff19166001179055620001ba3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600162000207565b5060005b92915050565b6000602082840312156200022057600080fd5b81516001600160a01b03811681146200023857600080fd5b9392505050565b6133c2806200024f6000396000f3fe608060405234801561001057600080fd5b50600436106102dd5760003560e01c80637a89a5f011610193578063c5f956af116100e4578063e41b203611610092578063e41b203614610801578063e58730a114610814578063ef77527b14610829578063efca2eed1461083c578063f0bd87cc14610845578063f2bab2a51461086c578063f90e65701461087f57600080fd5b8063c5f956af14610792578063c71378d6146107aa578063c737f2a61461062e578063c812bcaa146107bd578063d3c7c2c7146107d0578063d547741f146107e5578063e1f1c4a7146107f857600080fd5b80639b501723116101415780639b501723146106ce578063a217fddf14610725578063a42c70ea1461072d578063a47b210114610740578063b51c116514610757578063c0a2526c1461076a578063c4e6c6041461077f57600080fd5b80637a89a5f0146105c95780637d0b17f91461062e5780638456cb591461064e578063911f60a51461065657806391d148541461069e578063968de9ab146106b157806399cac555146106bb57600080fd5b806330dc281e1161024d57806354c79bb3116101fb57806354c79bb31461052f5780635c975abb1461054f5780636033e3151461055a5780636382d9ad1461056d5780636a3d1d2c1461058057806370d5ae051461059357806375151b63146105a657600080fd5b806330dc281e14610490578063335477fc146104b057806336568abe146104d75780633932e611146104ea5780633f4ba83a146104ff57806344ac0b171461050757806347344e751461051c57600080fd5b806301ffc9a7146102e257806305db2f411461030a5780630660f1e81461032d57806309ed15101461034d5780630d31767e146103bd5780630f8450b2146103d25780630fe5e4f0146103e757806320df4359146103fa578063248a9ca31461040f5780632a54caba146104325780632d2c5565146104435780632ed6b75d146104585780632f2ff15d1461047d575b600080fd5b6102f56102f0366004612d20565b61089f565b60405190151581526020015b60405180910390f35b61031f6000805160206132ed83398151915281565b604051908152602001610301565b61031f61033b366004612d5f565b60146020526000908152604090205481565b61039061035b366004612d7c565b600b60205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b604080519687526020870195909552938501929092526060840152608083015260a082015260c001610301565b61031f6000805160206132ad83398151915281565b6103e56103e0366004612d7c565b6108d6565b005b6103e56103f5366004612d95565b610a05565b61031f6000805160206132cd83398151915281565b61031f61041d366004612d7c565b60009081526020819052604090206001015490565b61031f69d3c21bcecceda100000081565b61031f60008051602061336d83398151915281565b60165460175461046f916001600160a01b03169082565b604051610301929190612dce565b6103e561048b366004612de7565b610d45565b6104a361049e366004612d7c565b610d70565b6040516103019190612e17565b61031f7f1f49de3380557c514cedfeafa4b0515d7e744b9e861dd34381fe6813d97079ca81565b6103e56104e5366004612de7565b610e4e565b6104f2610e81565b6040516103019190612e65565b6103e5610f98565b61031f60008051602061332d83398151915281565b6003546104a3906001600160a01b031681565b61054261053d366004612d7c565b610fbb565b6040516103019190612eb3565b60025460ff166102f5565b6102f5610568366004612ec1565b61101c565b6103e561057b366004612f07565b611134565b6103e561058e366004612d5f565b6116b4565b6004546104a3906001600160a01b031681565b6102f56105b4366004612d5f565b60086020526000908152604090205460ff1681565b6106066105d7366004612d7c565b600c60205260009081526040902080546001820154600283015460038401546004909401549293919290919085565b604080519586526020860194909452928401919091526060830152608082015260a001610301565b61064161063c366004612f35565b6117ba565b6040516103019190612f91565b6103e5611826565b610606610664366004612f35565b6009602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401549293919290919085565b6102f56106ac366004612de7565b611846565b61031f6201518081565b6102f56106c9366004612f9f565b61186f565b600d54600e54600f546010546011546012546013546106f09695949392919087565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e001610301565b61031f600081565b61031f61073b366004612d95565b611a19565b60185460195461046f916001600160a01b03169082565b6103e5610765366004612d5f565b611b65565b61031f60008051602061334d83398151915281565b6006546104a3906001600160a01b031681565b6002546104a39061010090046001600160a01b031681565b6103e56107b8366004612ff8565b611d38565b6102f56107cb36600461309d565b611e00565b6107d8611f73565b60405161030191906130de565b6103e56107f3366004612de7565b611fd5565b61031f61271081565b6005546104a3906001600160a01b031681565b61031f60008051602061330d83398151915281565b6103e5610837366004612de7565b611ffa565b61031f60155481565b61031f7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c81565b6102f561087a366004612ec1565b61217e565b61089261088d366004612d5f565b612331565b604051610301919061311f565b60006001600160e01b03198216637965db0b60e01b14806108d057506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206132ed8339815191526108ee81612457565b6000828152600b60205260408120818155600181018290556002810182905560038101829055600481018290556005018190555b600a54811015610a005782600a828154811061094057610940613161565b9060005260206000200154036109ee57805b600a546109619060019061318d565b8110156109c157600a6109758260016131a0565b8154811061098557610985613161565b9060005260206000200154600a82815481106109a3576109a3613161565b600091825260209091200155806109b9816131b3565b915050610952565b50600a8054806109d3576109d36131cc565b60019003818190600052602060002001600090559055505050565b806109f8816131b3565b915050610922565b505050565b610a0d612461565b7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c610a3781612457565b6000848152600b6020526040902054610a6357604051633b1d164d60e01b815260040160405180910390fd5b82610a8157604051631616b52b60e11b815260040160405180910390fd5b60405163186e140f60e11b81526004810184905260009030906330dc281e90602401602060405180830381865afa158015610ac0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae491906131e2565b604051635216387560e11b8152909150600090309063a42c70ea90610b11908990899089906004016131ff565b602060405180830381865afa158015610b2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b52919061321e565b90506001600160a01b03821615610d245760405163095ea7b360e01b81526001600160a01b0385169063095ea7b390610b919085908590600401612dce565b6020604051808303816000875af1158015610bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd49190613237565b50813b8015801590600090610ca757846001600160a01b03167fa8031a1d0ac3e39dea4480161b184429c9da86cb2d0af9fd867b5e00d02e02608886604051602401610c21929190612dce565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610c5f9190613259565b6000604051808303816000865af19150503d8060008114610c9c576040519150601f19603f3d011682016040523d82523d6000602084013e610ca1565b606091505b50909150505b811580610cb2575080155b15610ccb57610ccb6001600160a01b0388168686612487565b610cd7878a868b6124df565b866001600160a01b0316888a7fcaa89f1183784e4b1671918b616c5bf64dc0097db662191486475080e46ebf1d87604051610d1491815260200190565b60405180910390a4505050610d3d565b60405163185f9d0960e01b815260040160405180910390fd5b505050505050565b600082815260208190526040902060010154610d6081612457565b610d6a8383612734565b50505050565b600060008051602061336d8339815191528203610d9d57505060025461010090046001600160a01b031690565b60008051602061332d8339815191528203610dc35750506003546001600160a01b031690565b60008051602061334d8339815191528203610de95750506004546001600160a01b031690565b60008051602061330d8339815191528203610e0f5750506005546001600160a01b031690565b6000805160206132ad8339815191528203610e355750506006546001600160a01b031690565b604051631616b52b60e11b815260040160405180910390fd5b6001600160a01b0381163314610e775760405163334bd91960e11b815260040160405180910390fd5b610a0082826127c6565b600a5460609060009067ffffffffffffffff811115610ea257610ea2612fe2565b604051908082528060200260200182016040528015610edb57816020015b610ec8612cb8565b815260200190600190039081610ec05790505b50905060005b600a54811015610f9257600b6000600a8381548110610f0257610f02613161565b906000526020600020015481526020019081526020016000206040518060c00160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152602001600582015481525050828281518110610f7457610f74613161565b60200260200101819052508080610f8a906131b3565b915050610ee1565b50919050565b6000805160206132cd833981519152610fb081612457565b610fb8612831565b50565b610fc3612cb8565b506000908152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a082015290565b600061102661287d565b61102e612461565b821580611044575069d3c21bcecceda100000083115b156110615760405162a4671960e71b815260040160405180910390fd5b6000828152600b602052604090205461108d57604051633b1d164d60e01b815260040160405180910390fd5b6001600160a01b03851660009081526008602052604090205460ff166110c657604051633dd1b30560e01b815260040160405180910390fd5b6110db6001600160a01b0386168530866128a7565b6110e68583856128cf565b817f156e588d1067ba3c8a6a7f4376ef70794f8afed114dc9d1421e054b65743e6308460405161111891815260200190565b60405180910390a250600161112c60018055565b949350505050565b61113c612aa2565b6000805160206132cd83398151915261115481612457565b6001600160a01b03831661117b5760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81526000906001600160a01b038516906370a08231906111aa903090600401612e17565b602060405180830381865afa1580156111c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111eb919061321e565b90506112016001600160a01b0385168483612487565b60005b600a5481101561166a576000306001600160a01b031663a42c70ea600a848154811061123257611232613161565b906000526020600020015460008051602061336d833981519152896040518463ffffffff1660e01b815260040161126b939291906131ff565b602060405180830381865afa158015611288573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ac919061321e565b905080156112eb576112eb86600a84815481106112cb576112cb613161565b90600052602060002001548360008051602061336d8339815191526124df565b306001600160a01b031663a42c70ea600a848154811061130d5761130d613161565b906000526020600020015460008051602061332d833981519152896040518463ffffffff1660e01b8152600401611346939291906131ff565b602060405180830381865afa158015611363573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611387919061321e565b905080156113c6576113c686600a84815481106113a6576113a6613161565b90600052602060002001548360008051602061332d8339815191526124df565b306001600160a01b031663a42c70ea600a84815481106113e8576113e8613161565b906000526020600020015460008051602061334d833981519152896040518463ffffffff1660e01b8152600401611421939291906131ff565b602060405180830381865afa15801561143e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611462919061321e565b905080156114a1576114a186600a848154811061148157611481613161565b90600052602060002001548360008051602061334d8339815191526124df565b306001600160a01b031663a42c70ea600a84815481106114c3576114c3613161565b906000526020600020015460008051602061330d833981519152896040518463ffffffff1660e01b81526004016114fc939291906131ff565b602060405180830381865afa158015611519573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061153d919061321e565b9050801561157c5761157c86600a848154811061155c5761155c613161565b90600052602060002001548360008051602061330d8339815191526124df565b306001600160a01b031663a42c70ea600a848154811061159e5761159e613161565b90600052602060002001546000805160206132ad833981519152896040518463ffffffff1660e01b81526004016115d7939291906131ff565b602060405180830381865afa1580156115f4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611618919061321e565b905080156116575761165786600a848154811061163757611637613161565b9060005260206000200154836000805160206132ad8339815191526124df565b5080611662816131b3565b915050611204565b50836001600160a01b03167f23d6711a1d031134a36921253c75aa59e967d38e369ac625992824315e204f20826040516116a691815260200190565b60405180910390a250505050565b6000805160206132ed8339815191526116cc81612457565b6001600160a01b0382166116f35760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03821660009081526008602052604090205460ff161561172d5760405163c78e82ad60e01b815260040160405180910390fd5b6001600160a01b038216600081815260086020526040808220805460ff1916600190811790915560078054918201815583527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b03191684179055517f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a49190a25050565b6117c2612cf1565b506001600160a01b0382166000908152600960209081526040808320848452825291829020825160a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600490910154608082015292915050565b6000805160206132cd83398151915261183e81612457565b610fb8612ac5565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b60006000805160206132ed83398151915261188981612457565b6000888152600b6020526040902054156118b657604051633c884a3960e01b815260040160405180910390fd5b6040518060c0016040528089815260200188815260200187815260200186815260200185815260200184815250600b60008a8152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050155905050600a8890806001815401808255809150506001900390600052602060002001600090919091909150556040518060a00160405280600081526020016000815260200160008152602001600081526020016000815250600c60008a815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050507f1f62f4042c9d0687445c24d4340239988795b5163eea4f40e76a22af9a80918a88604051611a0391815260200190565b60405180910390a1506001979650505050505050565b600060008051602061336d8339815191528303611a5a57506001600160a01b0381166000908152600960209081526040808320868452909152902054611b5e565b60008051602061332d8339815191528303611a9c57506001600160a01b0381166000908152600960209081526040808320868452909152902060010154611b5e565b60008051602061334d8339815191528303611ade57506001600160a01b0381166000908152600960209081526040808320868452909152902060020154611b5e565b60008051602061330d8339815191528303611b2057506001600160a01b0381166000908152600960209081526040808320868452909152902060030154611b5e565b6000805160206132ad8339815191528303610e3557506001600160a01b03811660009081526009602090815260408083208684529091529020600401545b9392505050565b6000805160206132ed833981519152611b7d81612457565b6001600160a01b03821660009081526008602052604090205460ff16611bb657604051633dd1b30560e01b815260040160405180910390fd5b6001600160a01b0382166000908152600860205260408120805460ff191690555b600754811015611cff57826001600160a01b031660078281548110611bfe57611bfe613161565b6000918252602090912001546001600160a01b031603611ced57805b600754611c299060019061318d565b811015611cb4576007611c3d8260016131a0565b81548110611c4d57611c4d613161565b600091825260209091200154600780546001600160a01b039092169183908110611c7957611c79613161565b600091825260209091200180546001600160a01b0319166001600160a01b039290921691909117905580611cac816131b3565b915050611c1a565b506007805480611cc657611cc66131cc565b600082815260209020810160001990810180546001600160a01b0319169055019055611cff565b80611cf7816131b3565b915050611bd7565b506040516001600160a01b038316907f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd390600090a25050565b6000805160206132ed833981519152611d5081612457565b6000838152600b6020526040902054611d7c57604051633b1d164d60e01b815260040160405180910390fd5b6000838152600b602090815260409182902084518155908401516001820155818401516002820155606084015160038201556080840151600482015560a08401516005909101555183907f6b4f47836fff23be2d07ab675f5d4b10dc118552142b34f04f70db65e6a6419690611df3908590612eb3565b60405180910390a2505050565b6000611e0a61287d565b611e12612461565b6001600160a01b03841660009081526008602052604090205460ff16611e4b57604051633dd1b30560e01b815260040160405180910390fd5b60408051600481526024810182526020810180516001600160e01b031663a90d728f60e01b179052905160009182916001600160a01b03871691611e8e91613259565b6000604051808303816000865af19150503d8060008114611ecb576040519150601f19603f3d011682016040523d82523d6000602084013e611ed0565b606091505b509150915081611ef357604051632bb978cf60e01b815260040160405180910390fd5b600081806020019051810190611f09919061321e565b9050611f168786836128cf565b856001600160a01b0316876001600160a01b03167ff2ecb5d3ae35532714be41e7338f5dd28ba159beae417aa48aad36d11a868b4983604051611f5b91815260200190565b60405180910390a360019350505050611b5e60018055565b60606007805480602002602001604051908101604052809291908181526020018280548015611fcb57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611fad575b5050505050905090565b600082815260208190526040902060010154611ff081612457565b610d6a83836127c6565b6000805160206132ed83398151915261201281612457565b6001600160a01b0382166120395760405163e6c4247b60e01b815260040160405180910390fd5b60008051602061336d83398151915283036120735760028054610100600160a81b0319166101006001600160a01b03851602179055612143565b60008051602061332d83398151915283036120a857600380546001600160a01b0319166001600160a01b038416179055612143565b60008051602061334d83398151915283036120dd57600480546001600160a01b0319166001600160a01b038416179055612143565b60008051602061330d833981519152830361211257600580546001600160a01b0319166001600160a01b038416179055612143565b6000805160206132ad8339815191528303610e3557600680546001600160a01b0319166001600160a01b0384161790555b816001600160a01b03167f4952f88e1ac12e72cbe037dc5569f3a7803f8ed0de21288624ac3ae2e88fb35284604051611df391815260200190565b600061218861287d565b612190612461565b6001600160a01b03851660009081526008602052604090205460ff166121c957604051633dd1b30560e01b815260040160405180910390fd5b826000036121e95760405162a4671960e71b815260040160405180910390fd5b6000846001600160a01b03167fc5969d94823b97816164fcc48ec75f31865c6e8319ecefeaae1f6a217da0db2287308760405160240161222b93929190613288565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516122699190613259565b6000604051808303816000865af19150503d80600081146122a6576040519150601f19603f3d011682016040523d82523d6000602084013e6122ab565b606091505b50509050806122cd57604051630c95a54f60e01b815260040160405180910390fd5b6122d88684866128cf565b846001600160a01b0316866001600160a01b03167fe1ee5b767f21f291732f3af94ead0ad2de6534cfd816eb4520698a812f2f816a8660405161231d91815260200190565b60405180910390a35050600180805561112c565b600a5460609060009067ffffffffffffffff81111561235257612352612fe2565b60405190808252806020026020018201604052801561238b57816020015b612378612cf1565b8152602001906001900390816123705790505b50905060005b600a54811015612450576001600160a01b0384166000908152600960205260408120600a8054919291849081106123ca576123ca613161565b906000526020600020015481526020019081526020016000206040518060a00160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152505082828151811061243257612432613161565b60200260200101819052508080612448906131b3565b915050612391565b5092915050565b610fb88133612b02565b60025460ff16156124855760405163d93c066560e01b815260040160405180910390fd5b565b610a0083846001600160a01b031663a9059cbb85856040516024016124ad929190612dce565b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050612b3a565b604051635216387560e11b8152600090309063a42c70ea9061250990879086908a906004016131ff565b602060405180830381865afa158015612526573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061254a919061321e565b90508281101561256d57604051631e9acf1760e31b815260040160405180910390fd5b6000612579848361318d565b6000868152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a08201529091507ff955fc69b24e08da8ca810f68eb5a0f35c9cc8dc20be6168fea1f385c17c12498401612623576001600160a01b0387166000908152600960209081526040808320898452909152902082905561272b565b60008051602061332d8339815191528403612666576001600160a01b0387166000908152600960209081526040808320898452909152902060010182905561272b565b60008051602061334d83398151915284036126a9576001600160a01b0387166000908152600960209081526040808320898452909152902060020182905561272b565b60008051602061330d83398151915284036126ec576001600160a01b0387166000908152600960209081526040808320898452909152902060030182905561272b565b6000805160206132ad8339815191528403610e35576001600160a01b038716600090815260096020908152604080832089845290915290206004018290555b50505050505050565b60006127408383611846565b6127be576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556127763390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016108d0565b5060006108d0565b60006127d28383611846565b156127be576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016108d0565b612839612aa2565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516128739190612e17565b60405180910390a1565b6002600154036128a057604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b610d6a84856001600160a01b03166323b872dd8686866040516024016124ad93929190613288565b6000828152600b60209081526040808320815160c08101835281548152600182015493810184905260028201549281019290925260038101546060830152600481015460808301526005015460a0820152919061292d908490612b94565b90506000612948836040015185612b9490919063ffffffff16565b90506000612963846060015186612b9490919063ffffffff16565b9050600061297e856080015187612b9490919063ffffffff16565b905060006129998660a0015188612b9490919063ffffffff16565b905060008183856129aa888a6131a0565b6129b491906131a0565b6129be91906131a0565b6129c891906131a0565b90508781146129ed5760006129dd828a61318d565b90506129e981886131a0565b9650505b6001600160a01b038a1660009081526009602090815260408083208c84529091528120805490918891839190612a249084906131a0565b9250508190555085816001016000828254612a3f91906131a0565b9250508190555084816002016000828254612a5a91906131a0565b9250508190555083816003016000828254612a7591906131a0565b9250508190555082816004016000828254612a9091906131a0565b90915550505050505050505050505050565b60025460ff1661248557604051638dfc202b60e01b815260040160405180910390fd5b612acd612461565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586128663390565b612b0c8282611846565b612b3657808260405163e2517d3f60e01b8152600401612b2d929190612dce565b60405180910390fd5b5050565b6000612b4f6001600160a01b03841683612bba565b90508051600014158015612b74575080806020019051810190612b729190613237565b155b15610a005782604051635274afe760e01b8152600401612b2d9190612e17565b600081156113881983900484111517612bac57600080fd5b506127109102611388010490565b6060611b5e8383600084600080856001600160a01b03168486604051612be09190613259565b60006040518083038185875af1925050503d8060008114612c1d576040519150601f19603f3d011682016040523d82523d6000602084013e612c22565b606091505b5091509150612c32868383612c3c565b9695505050505050565b606082612c5157612c4c82612c8f565b611b5e565b8151158015612c6857506001600160a01b0384163b155b15612c885783604051639996b31560e01b8152600401612b2d9190612e17565b5080611b5e565b805115612c9f5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6040518060c001604052806000801916815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215612d3257600080fd5b81356001600160e01b031981168114611b5e57600080fd5b6001600160a01b0381168114610fb857600080fd5b600060208284031215612d7157600080fd5b8135611b5e81612d4a565b600060208284031215612d8e57600080fd5b5035919050565b600080600060608486031215612daa57600080fd5b83359250602084013591506040840135612dc381612d4a565b809150509250925092565b6001600160a01b03929092168252602082015260400190565b60008060408385031215612dfa57600080fd5b823591506020830135612e0c81612d4a565b809150509250929050565b6001600160a01b0391909116815260200190565b805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b6020808252825182820181905260009190848201906040850190845b81811015612ea757612e94838551612e2b565b9284019260c09290920191600101612e81565b50909695505050505050565b60c081016108d08284612e2b565b60008060008060808587031215612ed757600080fd5b8435612ee281612d4a565b93506020850135612ef281612d4a565b93969395505050506040820135916060013590565b60008060408385031215612f1a57600080fd5b8235612f2581612d4a565b91506020830135612e0c81612d4a565b60008060408385031215612f4857600080fd5b8235612f5381612d4a565b946020939093013593505050565b80518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b60a081016108d08284612f61565b60008060008060008060c08789031215612fb857600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b634e487b7160e01b600052604160045260246000fd5b60008082840360e081121561300c57600080fd5b8335925060c0601f198201121561302257600080fd5b5060405160c0810181811067ffffffffffffffff8211171561305457634e487b7160e01b600052604160045260246000fd5b80604052506020840135815260408401356020820152606084013560408201526080840135606082015260a0840135608082015260c084013560a0820152809150509250929050565b6000806000606084860312156130b257600080fd5b83356130bd81612d4a565b925060208401356130cd81612d4a565b929592945050506040919091013590565b6020808252825182820181905260009190848201906040850190845b81811015612ea75783516001600160a01b0316835292840192918401916001016130fa565b6020808252825182820181905260009190848201906040850190845b81811015612ea75761314e838551612f61565b9284019260a0929092019160010161313b565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156108d0576108d0613177565b808201808211156108d0576108d0613177565b6000600182016131c5576131c5613177565b5060010190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156131f457600080fd5b8151611b5e81612d4a565b92835260208301919091526001600160a01b0316604082015260600190565b60006020828403121561323057600080fd5b5051919050565b60006020828403121561324957600080fd5b81518015158114611b5e57600080fd5b6000825160005b8181101561327a5760208186018101518583015201613260565b506000920191825250919050565b6001600160a01b03938416815291909216602082015260408101919091526060019056fe35b65de3b579a9ce74763d33e74f08dcef72a66ee55fd214549ace2be760d16dbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b266c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1ce404ddc6d6772360eea3184c00b8a6bfc2a971e0bf4f48fdc3c56af5e3bf2cc4dea17103e6dca833246fe1c7037e20c1267b9ee9b25085a4f0ad6a66c6a1827204c6a47ae7910ef8b295215a97e8495a9eaf57b7b05bfd8bf951edb3fd4a16a306aa03964db1f7257357ef09714a5f0ca3633723df419e97015e0c7a3e83edb7a2646970667358221220f71fea55a249aff80cc854feac521908cd56f093a516a3120841a356fb4e8c2164736f6c63430008140033",
1740
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102dd5760003560e01c80637a89a5f011610193578063c5f956af116100e4578063e41b203611610092578063e41b203614610801578063e58730a114610814578063ef77527b14610829578063efca2eed1461083c578063f0bd87cc14610845578063f2bab2a51461086c578063f90e65701461087f57600080fd5b8063c5f956af14610792578063c71378d6146107aa578063c737f2a61461062e578063c812bcaa146107bd578063d3c7c2c7146107d0578063d547741f146107e5578063e1f1c4a7146107f857600080fd5b80639b501723116101415780639b501723146106ce578063a217fddf14610725578063a42c70ea1461072d578063a47b210114610740578063b51c116514610757578063c0a2526c1461076a578063c4e6c6041461077f57600080fd5b80637a89a5f0146105c95780637d0b17f91461062e5780638456cb591461064e578063911f60a51461065657806391d148541461069e578063968de9ab146106b157806399cac555146106bb57600080fd5b806330dc281e1161024d57806354c79bb3116101fb57806354c79bb31461052f5780635c975abb1461054f5780636033e3151461055a5780636382d9ad1461056d5780636a3d1d2c1461058057806370d5ae051461059357806375151b63146105a657600080fd5b806330dc281e14610490578063335477fc146104b057806336568abe146104d75780633932e611146104ea5780633f4ba83a146104ff57806344ac0b171461050757806347344e751461051c57600080fd5b806301ffc9a7146102e257806305db2f411461030a5780630660f1e81461032d57806309ed15101461034d5780630d31767e146103bd5780630f8450b2146103d25780630fe5e4f0146103e757806320df4359146103fa578063248a9ca31461040f5780632a54caba146104325780632d2c5565146104435780632ed6b75d146104585780632f2ff15d1461047d575b600080fd5b6102f56102f0366004612d20565b61089f565b60405190151581526020015b60405180910390f35b61031f6000805160206132ed83398151915281565b604051908152602001610301565b61031f61033b366004612d5f565b60146020526000908152604090205481565b61039061035b366004612d7c565b600b60205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b604080519687526020870195909552938501929092526060840152608083015260a082015260c001610301565b61031f6000805160206132ad83398151915281565b6103e56103e0366004612d7c565b6108d6565b005b6103e56103f5366004612d95565b610a05565b61031f6000805160206132cd83398151915281565b61031f61041d366004612d7c565b60009081526020819052604090206001015490565b61031f69d3c21bcecceda100000081565b61031f60008051602061336d83398151915281565b60165460175461046f916001600160a01b03169082565b604051610301929190612dce565b6103e561048b366004612de7565b610d45565b6104a361049e366004612d7c565b610d70565b6040516103019190612e17565b61031f7f1f49de3380557c514cedfeafa4b0515d7e744b9e861dd34381fe6813d97079ca81565b6103e56104e5366004612de7565b610e4e565b6104f2610e81565b6040516103019190612e65565b6103e5610f98565b61031f60008051602061332d83398151915281565b6003546104a3906001600160a01b031681565b61054261053d366004612d7c565b610fbb565b6040516103019190612eb3565b60025460ff166102f5565b6102f5610568366004612ec1565b61101c565b6103e561057b366004612f07565b611134565b6103e561058e366004612d5f565b6116b4565b6004546104a3906001600160a01b031681565b6102f56105b4366004612d5f565b60086020526000908152604090205460ff1681565b6106066105d7366004612d7c565b600c60205260009081526040902080546001820154600283015460038401546004909401549293919290919085565b604080519586526020860194909452928401919091526060830152608082015260a001610301565b61064161063c366004612f35565b6117ba565b6040516103019190612f91565b6103e5611826565b610606610664366004612f35565b6009602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401549293919290919085565b6102f56106ac366004612de7565b611846565b61031f6201518081565b6102f56106c9366004612f9f565b61186f565b600d54600e54600f546010546011546012546013546106f09695949392919087565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e001610301565b61031f600081565b61031f61073b366004612d95565b611a19565b60185460195461046f916001600160a01b03169082565b6103e5610765366004612d5f565b611b65565b61031f60008051602061334d83398151915281565b6006546104a3906001600160a01b031681565b6002546104a39061010090046001600160a01b031681565b6103e56107b8366004612ff8565b611d38565b6102f56107cb36600461309d565b611e00565b6107d8611f73565b60405161030191906130de565b6103e56107f3366004612de7565b611fd5565b61031f61271081565b6005546104a3906001600160a01b031681565b61031f60008051602061330d83398151915281565b6103e5610837366004612de7565b611ffa565b61031f60155481565b61031f7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c81565b6102f561087a366004612ec1565b61217e565b61089261088d366004612d5f565b612331565b604051610301919061311f565b60006001600160e01b03198216637965db0b60e01b14806108d057506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206132ed8339815191526108ee81612457565b6000828152600b60205260408120818155600181018290556002810182905560038101829055600481018290556005018190555b600a54811015610a005782600a828154811061094057610940613161565b9060005260206000200154036109ee57805b600a546109619060019061318d565b8110156109c157600a6109758260016131a0565b8154811061098557610985613161565b9060005260206000200154600a82815481106109a3576109a3613161565b600091825260209091200155806109b9816131b3565b915050610952565b50600a8054806109d3576109d36131cc565b60019003818190600052602060002001600090559055505050565b806109f8816131b3565b915050610922565b505050565b610a0d612461565b7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c610a3781612457565b6000848152600b6020526040902054610a6357604051633b1d164d60e01b815260040160405180910390fd5b82610a8157604051631616b52b60e11b815260040160405180910390fd5b60405163186e140f60e11b81526004810184905260009030906330dc281e90602401602060405180830381865afa158015610ac0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae491906131e2565b604051635216387560e11b8152909150600090309063a42c70ea90610b11908990899089906004016131ff565b602060405180830381865afa158015610b2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b52919061321e565b90506001600160a01b03821615610d245760405163095ea7b360e01b81526001600160a01b0385169063095ea7b390610b919085908590600401612dce565b6020604051808303816000875af1158015610bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd49190613237565b50813b8015801590600090610ca757846001600160a01b03167fa8031a1d0ac3e39dea4480161b184429c9da86cb2d0af9fd867b5e00d02e02608886604051602401610c21929190612dce565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610c5f9190613259565b6000604051808303816000865af19150503d8060008114610c9c576040519150601f19603f3d011682016040523d82523d6000602084013e610ca1565b606091505b50909150505b811580610cb2575080155b15610ccb57610ccb6001600160a01b0388168686612487565b610cd7878a868b6124df565b866001600160a01b0316888a7fcaa89f1183784e4b1671918b616c5bf64dc0097db662191486475080e46ebf1d87604051610d1491815260200190565b60405180910390a4505050610d3d565b60405163185f9d0960e01b815260040160405180910390fd5b505050505050565b600082815260208190526040902060010154610d6081612457565b610d6a8383612734565b50505050565b600060008051602061336d8339815191528203610d9d57505060025461010090046001600160a01b031690565b60008051602061332d8339815191528203610dc35750506003546001600160a01b031690565b60008051602061334d8339815191528203610de95750506004546001600160a01b031690565b60008051602061330d8339815191528203610e0f5750506005546001600160a01b031690565b6000805160206132ad8339815191528203610e355750506006546001600160a01b031690565b604051631616b52b60e11b815260040160405180910390fd5b6001600160a01b0381163314610e775760405163334bd91960e11b815260040160405180910390fd5b610a0082826127c6565b600a5460609060009067ffffffffffffffff811115610ea257610ea2612fe2565b604051908082528060200260200182016040528015610edb57816020015b610ec8612cb8565b815260200190600190039081610ec05790505b50905060005b600a54811015610f9257600b6000600a8381548110610f0257610f02613161565b906000526020600020015481526020019081526020016000206040518060c00160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152602001600582015481525050828281518110610f7457610f74613161565b60200260200101819052508080610f8a906131b3565b915050610ee1565b50919050565b6000805160206132cd833981519152610fb081612457565b610fb8612831565b50565b610fc3612cb8565b506000908152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a082015290565b600061102661287d565b61102e612461565b821580611044575069d3c21bcecceda100000083115b156110615760405162a4671960e71b815260040160405180910390fd5b6000828152600b602052604090205461108d57604051633b1d164d60e01b815260040160405180910390fd5b6001600160a01b03851660009081526008602052604090205460ff166110c657604051633dd1b30560e01b815260040160405180910390fd5b6110db6001600160a01b0386168530866128a7565b6110e68583856128cf565b817f156e588d1067ba3c8a6a7f4376ef70794f8afed114dc9d1421e054b65743e6308460405161111891815260200190565b60405180910390a250600161112c60018055565b949350505050565b61113c612aa2565b6000805160206132cd83398151915261115481612457565b6001600160a01b03831661117b5760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81526000906001600160a01b038516906370a08231906111aa903090600401612e17565b602060405180830381865afa1580156111c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111eb919061321e565b90506112016001600160a01b0385168483612487565b60005b600a5481101561166a576000306001600160a01b031663a42c70ea600a848154811061123257611232613161565b906000526020600020015460008051602061336d833981519152896040518463ffffffff1660e01b815260040161126b939291906131ff565b602060405180830381865afa158015611288573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ac919061321e565b905080156112eb576112eb86600a84815481106112cb576112cb613161565b90600052602060002001548360008051602061336d8339815191526124df565b306001600160a01b031663a42c70ea600a848154811061130d5761130d613161565b906000526020600020015460008051602061332d833981519152896040518463ffffffff1660e01b8152600401611346939291906131ff565b602060405180830381865afa158015611363573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611387919061321e565b905080156113c6576113c686600a84815481106113a6576113a6613161565b90600052602060002001548360008051602061332d8339815191526124df565b306001600160a01b031663a42c70ea600a84815481106113e8576113e8613161565b906000526020600020015460008051602061334d833981519152896040518463ffffffff1660e01b8152600401611421939291906131ff565b602060405180830381865afa15801561143e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611462919061321e565b905080156114a1576114a186600a848154811061148157611481613161565b90600052602060002001548360008051602061334d8339815191526124df565b306001600160a01b031663a42c70ea600a84815481106114c3576114c3613161565b906000526020600020015460008051602061330d833981519152896040518463ffffffff1660e01b81526004016114fc939291906131ff565b602060405180830381865afa158015611519573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061153d919061321e565b9050801561157c5761157c86600a848154811061155c5761155c613161565b90600052602060002001548360008051602061330d8339815191526124df565b306001600160a01b031663a42c70ea600a848154811061159e5761159e613161565b90600052602060002001546000805160206132ad833981519152896040518463ffffffff1660e01b81526004016115d7939291906131ff565b602060405180830381865afa1580156115f4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611618919061321e565b905080156116575761165786600a848154811061163757611637613161565b9060005260206000200154836000805160206132ad8339815191526124df565b5080611662816131b3565b915050611204565b50836001600160a01b03167f23d6711a1d031134a36921253c75aa59e967d38e369ac625992824315e204f20826040516116a691815260200190565b60405180910390a250505050565b6000805160206132ed8339815191526116cc81612457565b6001600160a01b0382166116f35760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03821660009081526008602052604090205460ff161561172d5760405163c78e82ad60e01b815260040160405180910390fd5b6001600160a01b038216600081815260086020526040808220805460ff1916600190811790915560078054918201815583527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b03191684179055517f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a49190a25050565b6117c2612cf1565b506001600160a01b0382166000908152600960209081526040808320848452825291829020825160a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600490910154608082015292915050565b6000805160206132cd83398151915261183e81612457565b610fb8612ac5565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b60006000805160206132ed83398151915261188981612457565b6000888152600b6020526040902054156118b657604051633c884a3960e01b815260040160405180910390fd5b6040518060c0016040528089815260200188815260200187815260200186815260200185815260200184815250600b60008a8152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050155905050600a8890806001815401808255809150506001900390600052602060002001600090919091909150556040518060a00160405280600081526020016000815260200160008152602001600081526020016000815250600c60008a815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050507f1f62f4042c9d0687445c24d4340239988795b5163eea4f40e76a22af9a80918a88604051611a0391815260200190565b60405180910390a1506001979650505050505050565b600060008051602061336d8339815191528303611a5a57506001600160a01b0381166000908152600960209081526040808320868452909152902054611b5e565b60008051602061332d8339815191528303611a9c57506001600160a01b0381166000908152600960209081526040808320868452909152902060010154611b5e565b60008051602061334d8339815191528303611ade57506001600160a01b0381166000908152600960209081526040808320868452909152902060020154611b5e565b60008051602061330d8339815191528303611b2057506001600160a01b0381166000908152600960209081526040808320868452909152902060030154611b5e565b6000805160206132ad8339815191528303610e3557506001600160a01b03811660009081526009602090815260408083208684529091529020600401545b9392505050565b6000805160206132ed833981519152611b7d81612457565b6001600160a01b03821660009081526008602052604090205460ff16611bb657604051633dd1b30560e01b815260040160405180910390fd5b6001600160a01b0382166000908152600860205260408120805460ff191690555b600754811015611cff57826001600160a01b031660078281548110611bfe57611bfe613161565b6000918252602090912001546001600160a01b031603611ced57805b600754611c299060019061318d565b811015611cb4576007611c3d8260016131a0565b81548110611c4d57611c4d613161565b600091825260209091200154600780546001600160a01b039092169183908110611c7957611c79613161565b600091825260209091200180546001600160a01b0319166001600160a01b039290921691909117905580611cac816131b3565b915050611c1a565b506007805480611cc657611cc66131cc565b600082815260209020810160001990810180546001600160a01b0319169055019055611cff565b80611cf7816131b3565b915050611bd7565b506040516001600160a01b038316907f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd390600090a25050565b6000805160206132ed833981519152611d5081612457565b6000838152600b6020526040902054611d7c57604051633b1d164d60e01b815260040160405180910390fd5b6000838152600b602090815260409182902084518155908401516001820155818401516002820155606084015160038201556080840151600482015560a08401516005909101555183907f6b4f47836fff23be2d07ab675f5d4b10dc118552142b34f04f70db65e6a6419690611df3908590612eb3565b60405180910390a2505050565b6000611e0a61287d565b611e12612461565b6001600160a01b03841660009081526008602052604090205460ff16611e4b57604051633dd1b30560e01b815260040160405180910390fd5b60408051600481526024810182526020810180516001600160e01b031663a90d728f60e01b179052905160009182916001600160a01b03871691611e8e91613259565b6000604051808303816000865af19150503d8060008114611ecb576040519150601f19603f3d011682016040523d82523d6000602084013e611ed0565b606091505b509150915081611ef357604051632bb978cf60e01b815260040160405180910390fd5b600081806020019051810190611f09919061321e565b9050611f168786836128cf565b856001600160a01b0316876001600160a01b03167ff2ecb5d3ae35532714be41e7338f5dd28ba159beae417aa48aad36d11a868b4983604051611f5b91815260200190565b60405180910390a360019350505050611b5e60018055565b60606007805480602002602001604051908101604052809291908181526020018280548015611fcb57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611fad575b5050505050905090565b600082815260208190526040902060010154611ff081612457565b610d6a83836127c6565b6000805160206132ed83398151915261201281612457565b6001600160a01b0382166120395760405163e6c4247b60e01b815260040160405180910390fd5b60008051602061336d83398151915283036120735760028054610100600160a81b0319166101006001600160a01b03851602179055612143565b60008051602061332d83398151915283036120a857600380546001600160a01b0319166001600160a01b038416179055612143565b60008051602061334d83398151915283036120dd57600480546001600160a01b0319166001600160a01b038416179055612143565b60008051602061330d833981519152830361211257600580546001600160a01b0319166001600160a01b038416179055612143565b6000805160206132ad8339815191528303610e3557600680546001600160a01b0319166001600160a01b0384161790555b816001600160a01b03167f4952f88e1ac12e72cbe037dc5569f3a7803f8ed0de21288624ac3ae2e88fb35284604051611df391815260200190565b600061218861287d565b612190612461565b6001600160a01b03851660009081526008602052604090205460ff166121c957604051633dd1b30560e01b815260040160405180910390fd5b826000036121e95760405162a4671960e71b815260040160405180910390fd5b6000846001600160a01b03167fc5969d94823b97816164fcc48ec75f31865c6e8319ecefeaae1f6a217da0db2287308760405160240161222b93929190613288565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516122699190613259565b6000604051808303816000865af19150503d80600081146122a6576040519150601f19603f3d011682016040523d82523d6000602084013e6122ab565b606091505b50509050806122cd57604051630c95a54f60e01b815260040160405180910390fd5b6122d88684866128cf565b846001600160a01b0316866001600160a01b03167fe1ee5b767f21f291732f3af94ead0ad2de6534cfd816eb4520698a812f2f816a8660405161231d91815260200190565b60405180910390a35050600180805561112c565b600a5460609060009067ffffffffffffffff81111561235257612352612fe2565b60405190808252806020026020018201604052801561238b57816020015b612378612cf1565b8152602001906001900390816123705790505b50905060005b600a54811015612450576001600160a01b0384166000908152600960205260408120600a8054919291849081106123ca576123ca613161565b906000526020600020015481526020019081526020016000206040518060a00160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152505082828151811061243257612432613161565b60200260200101819052508080612448906131b3565b915050612391565b5092915050565b610fb88133612b02565b60025460ff16156124855760405163d93c066560e01b815260040160405180910390fd5b565b610a0083846001600160a01b031663a9059cbb85856040516024016124ad929190612dce565b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050612b3a565b604051635216387560e11b8152600090309063a42c70ea9061250990879086908a906004016131ff565b602060405180830381865afa158015612526573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061254a919061321e565b90508281101561256d57604051631e9acf1760e31b815260040160405180910390fd5b6000612579848361318d565b6000868152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a08201529091507ff955fc69b24e08da8ca810f68eb5a0f35c9cc8dc20be6168fea1f385c17c12498401612623576001600160a01b0387166000908152600960209081526040808320898452909152902082905561272b565b60008051602061332d8339815191528403612666576001600160a01b0387166000908152600960209081526040808320898452909152902060010182905561272b565b60008051602061334d83398151915284036126a9576001600160a01b0387166000908152600960209081526040808320898452909152902060020182905561272b565b60008051602061330d83398151915284036126ec576001600160a01b0387166000908152600960209081526040808320898452909152902060030182905561272b565b6000805160206132ad8339815191528403610e35576001600160a01b038716600090815260096020908152604080832089845290915290206004018290555b50505050505050565b60006127408383611846565b6127be576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556127763390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016108d0565b5060006108d0565b60006127d28383611846565b156127be576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016108d0565b612839612aa2565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516128739190612e17565b60405180910390a1565b6002600154036128a057604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b610d6a84856001600160a01b03166323b872dd8686866040516024016124ad93929190613288565b6000828152600b60209081526040808320815160c08101835281548152600182015493810184905260028201549281019290925260038101546060830152600481015460808301526005015460a0820152919061292d908490612b94565b90506000612948836040015185612b9490919063ffffffff16565b90506000612963846060015186612b9490919063ffffffff16565b9050600061297e856080015187612b9490919063ffffffff16565b905060006129998660a0015188612b9490919063ffffffff16565b905060008183856129aa888a6131a0565b6129b491906131a0565b6129be91906131a0565b6129c891906131a0565b90508781146129ed5760006129dd828a61318d565b90506129e981886131a0565b9650505b6001600160a01b038a1660009081526009602090815260408083208c84529091528120805490918891839190612a249084906131a0565b9250508190555085816001016000828254612a3f91906131a0565b9250508190555084816002016000828254612a5a91906131a0565b9250508190555083816003016000828254612a7591906131a0565b9250508190555082816004016000828254612a9091906131a0565b90915550505050505050505050505050565b60025460ff1661248557604051638dfc202b60e01b815260040160405180910390fd5b612acd612461565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586128663390565b612b0c8282611846565b612b3657808260405163e2517d3f60e01b8152600401612b2d929190612dce565b60405180910390fd5b5050565b6000612b4f6001600160a01b03841683612bba565b90508051600014158015612b74575080806020019051810190612b729190613237565b155b15610a005782604051635274afe760e01b8152600401612b2d9190612e17565b600081156113881983900484111517612bac57600080fd5b506127109102611388010490565b6060611b5e8383600084600080856001600160a01b03168486604051612be09190613259565b60006040518083038185875af1925050503d8060008114612c1d576040519150601f19603f3d011682016040523d82523d6000602084013e612c22565b606091505b5091509150612c32868383612c3c565b9695505050505050565b606082612c5157612c4c82612c8f565b611b5e565b8151158015612c6857506001600160a01b0384163b155b15612c885783604051639996b31560e01b8152600401612b2d9190612e17565b5080611b5e565b805115612c9f5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6040518060c001604052806000801916815260200160008152602001600081526020016000815260200160008152602001600081525090565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215612d3257600080fd5b81356001600160e01b031981168114611b5e57600080fd5b6001600160a01b0381168114610fb857600080fd5b600060208284031215612d7157600080fd5b8135611b5e81612d4a565b600060208284031215612d8e57600080fd5b5035919050565b600080600060608486031215612daa57600080fd5b83359250602084013591506040840135612dc381612d4a565b809150509250925092565b6001600160a01b03929092168252602082015260400190565b60008060408385031215612dfa57600080fd5b823591506020830135612e0c81612d4a565b809150509250929050565b6001600160a01b0391909116815260200190565b805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b6020808252825182820181905260009190848201906040850190845b81811015612ea757612e94838551612e2b565b9284019260c09290920191600101612e81565b50909695505050505050565b60c081016108d08284612e2b565b60008060008060808587031215612ed757600080fd5b8435612ee281612d4a565b93506020850135612ef281612d4a565b93969395505050506040820135916060013590565b60008060408385031215612f1a57600080fd5b8235612f2581612d4a565b91506020830135612e0c81612d4a565b60008060408385031215612f4857600080fd5b8235612f5381612d4a565b946020939093013593505050565b80518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b60a081016108d08284612f61565b60008060008060008060c08789031215612fb857600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b634e487b7160e01b600052604160045260246000fd5b60008082840360e081121561300c57600080fd5b8335925060c0601f198201121561302257600080fd5b5060405160c0810181811067ffffffffffffffff8211171561305457634e487b7160e01b600052604160045260246000fd5b80604052506020840135815260408401356020820152606084013560408201526080840135606082015260a0840135608082015260c084013560a0820152809150509250929050565b6000806000606084860312156130b257600080fd5b83356130bd81612d4a565b925060208401356130cd81612d4a565b929592945050506040919091013590565b6020808252825182820181905260009190848201906040850190845b81811015612ea75783516001600160a01b0316835292840192918401916001016130fa565b6020808252825182820181905260009190848201906040850190845b81811015612ea75761314e838551612f61565b9284019260a0929092019160010161313b565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156108d0576108d0613177565b808201808211156108d0576108d0613177565b6000600182016131c5576131c5613177565b5060010190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156131f457600080fd5b8151611b5e81612d4a565b92835260208301919091526001600160a01b0316604082015260600190565b60006020828403121561323057600080fd5b5051919050565b60006020828403121561324957600080fd5b81518015158114611b5e57600080fd5b6000825160005b8181101561327a5760208186018101518583015201613260565b506000920191825250919050565b6001600160a01b03938416815291909216602082015260408101919091526060019056fe35b65de3b579a9ce74763d33e74f08dcef72a66ee55fd214549ace2be760d16dbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b266c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1ce404ddc6d6772360eea3184c00b8a6bfc2a971e0bf4f48fdc3c56af5e3bf2cc4dea17103e6dca833246fe1c7037e20c1267b9ee9b25085a4f0ad6a66c6a1827204c6a47ae7910ef8b295215a97e8495a9eaf57b7b05bfd8bf951edb3fd4a16a306aa03964db1f7257357ef09714a5f0ca3633723df419e97015e0c7a3e83edb7a2646970667358221220f71fea55a249aff80cc854feac521908cd56f093a516a3120841a356fb4e8c2164736f6c63430008140033",
1741
- "linkReferences": {},
1742
- "deployedLinkReferences": {}
172
+ "inputs": [],
173
+ "name": "TokenNotSupported",
174
+ "type": "error"
175
+ },
176
+ {
177
+ "inputs": [],
178
+ "name": "ZeroTotalWeight",
179
+ "type": "error"
180
+ },
181
+ {
182
+ "anonymous": false,
183
+ "inputs": [
184
+ {
185
+ "indexed": true,
186
+ "internalType": "address",
187
+ "name": "token",
188
+ "type": "address"
189
+ },
190
+ {
191
+ "indexed": true,
192
+ "internalType": "address",
193
+ "name": "target",
194
+ "type": "address"
195
+ },
196
+ {
197
+ "indexed": false,
198
+ "internalType": "uint256",
199
+ "name": "amount",
200
+ "type": "uint256"
201
+ }
202
+ ],
203
+ "name": "CollectorRewardsClaimed",
204
+ "type": "event"
205
+ },
206
+ {
207
+ "anonymous": false,
208
+ "inputs": [
209
+ {
210
+ "indexed": true,
211
+ "internalType": "address",
212
+ "name": "token",
213
+ "type": "address"
214
+ },
215
+ {
216
+ "indexed": true,
217
+ "internalType": "address",
218
+ "name": "target",
219
+ "type": "address"
220
+ },
221
+ {
222
+ "indexed": false,
223
+ "internalType": "uint256",
224
+ "name": "amount",
225
+ "type": "uint256"
226
+ }
227
+ ],
228
+ "name": "CollectorUnderlyingClaimed",
229
+ "type": "event"
230
+ },
231
+ {
232
+ "anonymous": false,
233
+ "inputs": [
234
+ {
235
+ "indexed": true,
236
+ "internalType": "address",
237
+ "name": "token",
238
+ "type": "address"
239
+ },
240
+ {
241
+ "indexed": false,
242
+ "internalType": "uint256",
243
+ "name": "amount",
244
+ "type": "uint256"
245
+ }
246
+ ],
247
+ "name": "EmergencyWithdrawal",
248
+ "type": "event"
249
+ },
250
+ {
251
+ "anonymous": false,
252
+ "inputs": [
253
+ {
254
+ "indexed": true,
255
+ "internalType": "bytes32",
256
+ "name": "feeType",
257
+ "type": "bytes32"
258
+ },
259
+ {
260
+ "indexed": false,
261
+ "internalType": "uint256",
262
+ "name": "amount",
263
+ "type": "uint256"
264
+ }
265
+ ],
266
+ "name": "FeeCollected",
267
+ "type": "event"
268
+ },
269
+ {
270
+ "anonymous": false,
271
+ "inputs": [
272
+ {
273
+ "indexed": true,
274
+ "internalType": "bytes32",
275
+ "name": "feeType",
276
+ "type": "bytes32"
277
+ },
278
+ {
279
+ "indexed": true,
280
+ "internalType": "bytes32",
281
+ "name": "target",
282
+ "type": "bytes32"
283
+ },
284
+ {
285
+ "indexed": true,
286
+ "internalType": "address",
287
+ "name": "token",
288
+ "type": "address"
289
+ },
290
+ {
291
+ "indexed": false,
292
+ "internalType": "uint256",
293
+ "name": "amount",
294
+ "type": "uint256"
295
+ }
296
+ ],
297
+ "name": "FeeDistributed",
298
+ "type": "event"
299
+ },
300
+ {
301
+ "anonymous": false,
302
+ "inputs": [
303
+ {
304
+ "indexed": false,
305
+ "internalType": "bytes32",
306
+ "name": "feeType",
307
+ "type": "bytes32"
308
+ }
309
+ ],
310
+ "name": "FeeTypeAdded",
311
+ "type": "event"
312
+ },
313
+ {
314
+ "anonymous": false,
315
+ "inputs": [
316
+ {
317
+ "indexed": true,
318
+ "internalType": "bytes32",
319
+ "name": "feeType",
320
+ "type": "bytes32"
321
+ },
322
+ {
323
+ "components": [
324
+ {
325
+ "internalType": "bytes32",
326
+ "name": "feeType",
327
+ "type": "bytes32"
328
+ },
329
+ {
330
+ "internalType": "uint256",
331
+ "name": "treasuryShare",
332
+ "type": "uint256"
333
+ },
334
+ {
335
+ "internalType": "uint256",
336
+ "name": "repairFundShare",
337
+ "type": "uint256"
338
+ },
339
+ {
340
+ "internalType": "uint256",
341
+ "name": "burnShare",
342
+ "type": "uint256"
343
+ },
344
+ {
345
+ "internalType": "uint256",
346
+ "name": "veRAACTokenShare",
347
+ "type": "uint256"
348
+ },
349
+ {
350
+ "internalType": "uint256",
351
+ "name": "otherShare",
352
+ "type": "uint256"
353
+ }
354
+ ],
355
+ "indexed": false,
356
+ "internalType": "struct IFeeCollector.FeeType",
357
+ "name": "newFee",
358
+ "type": "tuple"
359
+ }
360
+ ],
361
+ "name": "FeeTypeUpdated",
362
+ "type": "event"
363
+ },
364
+ {
365
+ "anonymous": false,
366
+ "inputs": [
367
+ {
368
+ "indexed": false,
369
+ "internalType": "address",
370
+ "name": "account",
371
+ "type": "address"
372
+ }
373
+ ],
374
+ "name": "Paused",
375
+ "type": "event"
376
+ },
377
+ {
378
+ "anonymous": false,
379
+ "inputs": [
380
+ {
381
+ "indexed": true,
382
+ "internalType": "bytes32",
383
+ "name": "role",
384
+ "type": "bytes32"
385
+ },
386
+ {
387
+ "indexed": true,
388
+ "internalType": "bytes32",
389
+ "name": "previousAdminRole",
390
+ "type": "bytes32"
391
+ },
392
+ {
393
+ "indexed": true,
394
+ "internalType": "bytes32",
395
+ "name": "newAdminRole",
396
+ "type": "bytes32"
397
+ }
398
+ ],
399
+ "name": "RoleAdminChanged",
400
+ "type": "event"
401
+ },
402
+ {
403
+ "anonymous": false,
404
+ "inputs": [
405
+ {
406
+ "indexed": true,
407
+ "internalType": "bytes32",
408
+ "name": "role",
409
+ "type": "bytes32"
410
+ },
411
+ {
412
+ "indexed": true,
413
+ "internalType": "address",
414
+ "name": "account",
415
+ "type": "address"
416
+ },
417
+ {
418
+ "indexed": true,
419
+ "internalType": "address",
420
+ "name": "sender",
421
+ "type": "address"
422
+ }
423
+ ],
424
+ "name": "RoleGranted",
425
+ "type": "event"
426
+ },
427
+ {
428
+ "anonymous": false,
429
+ "inputs": [
430
+ {
431
+ "indexed": true,
432
+ "internalType": "bytes32",
433
+ "name": "role",
434
+ "type": "bytes32"
435
+ },
436
+ {
437
+ "indexed": true,
438
+ "internalType": "address",
439
+ "name": "account",
440
+ "type": "address"
441
+ },
442
+ {
443
+ "indexed": true,
444
+ "internalType": "address",
445
+ "name": "sender",
446
+ "type": "address"
447
+ }
448
+ ],
449
+ "name": "RoleRevoked",
450
+ "type": "event"
451
+ },
452
+ {
453
+ "anonymous": false,
454
+ "inputs": [
455
+ {
456
+ "indexed": false,
457
+ "internalType": "bytes32",
458
+ "name": "target",
459
+ "type": "bytes32"
460
+ },
461
+ {
462
+ "indexed": true,
463
+ "internalType": "address",
464
+ "name": "newAddress",
465
+ "type": "address"
466
+ }
467
+ ],
468
+ "name": "TargetAddressUpdated",
469
+ "type": "event"
470
+ },
471
+ {
472
+ "anonymous": false,
473
+ "inputs": [
474
+ {
475
+ "indexed": true,
476
+ "internalType": "address",
477
+ "name": "token",
478
+ "type": "address"
479
+ }
480
+ ],
481
+ "name": "TokenAdded",
482
+ "type": "event"
483
+ },
484
+ {
485
+ "anonymous": false,
486
+ "inputs": [
487
+ {
488
+ "indexed": true,
489
+ "internalType": "address",
490
+ "name": "token",
491
+ "type": "address"
492
+ }
493
+ ],
494
+ "name": "TokenRemoved",
495
+ "type": "event"
496
+ },
497
+ {
498
+ "anonymous": false,
499
+ "inputs": [
500
+ {
501
+ "indexed": false,
502
+ "internalType": "address",
503
+ "name": "account",
504
+ "type": "address"
505
+ }
506
+ ],
507
+ "name": "Unpaused",
508
+ "type": "event"
509
+ },
510
+ {
511
+ "inputs": [],
512
+ "name": "BASIS_POINTS",
513
+ "outputs": [
514
+ {
515
+ "internalType": "uint256",
516
+ "name": "",
517
+ "type": "uint256"
518
+ }
519
+ ],
520
+ "stateMutability": "view",
521
+ "type": "function"
522
+ },
523
+ {
524
+ "inputs": [],
525
+ "name": "BURN",
526
+ "outputs": [
527
+ {
528
+ "internalType": "bytes32",
529
+ "name": "",
530
+ "type": "bytes32"
531
+ }
532
+ ],
533
+ "stateMutability": "view",
534
+ "type": "function"
535
+ },
536
+ {
537
+ "inputs": [],
538
+ "name": "DEFAULT_ADMIN_ROLE",
539
+ "outputs": [
540
+ {
541
+ "internalType": "bytes32",
542
+ "name": "",
543
+ "type": "bytes32"
544
+ }
545
+ ],
546
+ "stateMutability": "view",
547
+ "type": "function"
548
+ },
549
+ {
550
+ "inputs": [],
551
+ "name": "DISTRIBUTOR_ROLE",
552
+ "outputs": [
553
+ {
554
+ "internalType": "bytes32",
555
+ "name": "",
556
+ "type": "bytes32"
557
+ }
558
+ ],
559
+ "stateMutability": "view",
560
+ "type": "function"
561
+ },
562
+ {
563
+ "inputs": [],
564
+ "name": "EMERGENCY_ROLE",
565
+ "outputs": [
566
+ {
567
+ "internalType": "bytes32",
568
+ "name": "",
569
+ "type": "bytes32"
570
+ }
571
+ ],
572
+ "stateMutability": "view",
573
+ "type": "function"
574
+ },
575
+ {
576
+ "inputs": [],
577
+ "name": "FEE_MANAGER_ROLE",
578
+ "outputs": [
579
+ {
580
+ "internalType": "bytes32",
581
+ "name": "",
582
+ "type": "bytes32"
583
+ }
584
+ ],
585
+ "stateMutability": "view",
586
+ "type": "function"
587
+ },
588
+ {
589
+ "inputs": [],
590
+ "name": "MAX_FEE_AMOUNT",
591
+ "outputs": [
592
+ {
593
+ "internalType": "uint256",
594
+ "name": "",
595
+ "type": "uint256"
596
+ }
597
+ ],
598
+ "stateMutability": "view",
599
+ "type": "function"
600
+ },
601
+ {
602
+ "inputs": [],
603
+ "name": "OTHER",
604
+ "outputs": [
605
+ {
606
+ "internalType": "bytes32",
607
+ "name": "",
608
+ "type": "bytes32"
609
+ }
610
+ ],
611
+ "stateMutability": "view",
612
+ "type": "function"
613
+ },
614
+ {
615
+ "inputs": [],
616
+ "name": "REPAIR_FUND",
617
+ "outputs": [
618
+ {
619
+ "internalType": "bytes32",
620
+ "name": "",
621
+ "type": "bytes32"
622
+ }
623
+ ],
624
+ "stateMutability": "view",
625
+ "type": "function"
626
+ },
627
+ {
628
+ "inputs": [],
629
+ "name": "ROYALTY_FEE",
630
+ "outputs": [
631
+ {
632
+ "internalType": "bytes32",
633
+ "name": "",
634
+ "type": "bytes32"
635
+ }
636
+ ],
637
+ "stateMutability": "view",
638
+ "type": "function"
639
+ },
640
+ {
641
+ "inputs": [],
642
+ "name": "TREASURY",
643
+ "outputs": [
644
+ {
645
+ "internalType": "bytes32",
646
+ "name": "",
647
+ "type": "bytes32"
648
+ }
649
+ ],
650
+ "stateMutability": "view",
651
+ "type": "function"
652
+ },
653
+ {
654
+ "inputs": [],
655
+ "name": "TREASURY_UPDATE_DELAY",
656
+ "outputs": [
657
+ {
658
+ "internalType": "uint256",
659
+ "name": "",
660
+ "type": "uint256"
661
+ }
662
+ ],
663
+ "stateMutability": "view",
664
+ "type": "function"
665
+ },
666
+ {
667
+ "inputs": [],
668
+ "name": "VERAAC",
669
+ "outputs": [
670
+ {
671
+ "internalType": "bytes32",
672
+ "name": "",
673
+ "type": "bytes32"
674
+ }
675
+ ],
676
+ "stateMutability": "view",
677
+ "type": "function"
678
+ },
679
+ {
680
+ "inputs": [
681
+ {
682
+ "internalType": "address",
683
+ "name": "token",
684
+ "type": "address"
685
+ }
686
+ ],
687
+ "name": "addClaimableToken",
688
+ "outputs": [],
689
+ "stateMutability": "nonpayable",
690
+ "type": "function"
691
+ },
692
+ {
693
+ "inputs": [
694
+ {
695
+ "internalType": "bytes32",
696
+ "name": "feeType",
697
+ "type": "bytes32"
698
+ },
699
+ {
700
+ "internalType": "uint256",
701
+ "name": "treasuryShare",
702
+ "type": "uint256"
703
+ },
704
+ {
705
+ "internalType": "uint256",
706
+ "name": "repairFundShare",
707
+ "type": "uint256"
708
+ },
709
+ {
710
+ "internalType": "uint256",
711
+ "name": "burnShare",
712
+ "type": "uint256"
713
+ },
714
+ {
715
+ "internalType": "uint256",
716
+ "name": "veRAACTokenShare",
717
+ "type": "uint256"
718
+ },
719
+ {
720
+ "internalType": "uint256",
721
+ "name": "otherShare",
722
+ "type": "uint256"
723
+ }
724
+ ],
725
+ "name": "addFeeType",
726
+ "outputs": [
727
+ {
728
+ "internalType": "bool",
729
+ "name": "",
730
+ "type": "bool"
731
+ }
732
+ ],
733
+ "stateMutability": "nonpayable",
734
+ "type": "function"
735
+ },
736
+ {
737
+ "inputs": [],
738
+ "name": "burnAddress",
739
+ "outputs": [
740
+ {
741
+ "internalType": "address",
742
+ "name": "",
743
+ "type": "address"
744
+ }
745
+ ],
746
+ "stateMutability": "view",
747
+ "type": "function"
748
+ },
749
+ {
750
+ "inputs": [
751
+ {
752
+ "internalType": "address",
753
+ "name": "token",
754
+ "type": "address"
755
+ },
756
+ {
757
+ "internalType": "address",
758
+ "name": "target",
759
+ "type": "address"
760
+ },
761
+ {
762
+ "internalType": "bytes32",
763
+ "name": "feeType",
764
+ "type": "bytes32"
765
+ }
766
+ ],
767
+ "name": "claimCollectorRewards",
768
+ "outputs": [
769
+ {
770
+ "internalType": "bool",
771
+ "name": "",
772
+ "type": "bool"
773
+ }
774
+ ],
775
+ "stateMutability": "nonpayable",
776
+ "type": "function"
777
+ },
778
+ {
779
+ "inputs": [
780
+ {
781
+ "internalType": "address",
782
+ "name": "token",
783
+ "type": "address"
784
+ },
785
+ {
786
+ "internalType": "address",
787
+ "name": "target",
788
+ "type": "address"
789
+ },
790
+ {
791
+ "internalType": "uint256",
792
+ "name": "amount",
793
+ "type": "uint256"
794
+ },
795
+ {
796
+ "internalType": "bytes32",
797
+ "name": "feeType",
798
+ "type": "bytes32"
799
+ }
800
+ ],
801
+ "name": "claimNFTUnderlying",
802
+ "outputs": [
803
+ {
804
+ "internalType": "bool",
805
+ "name": "",
806
+ "type": "bool"
807
+ }
808
+ ],
809
+ "stateMutability": "nonpayable",
810
+ "type": "function"
811
+ },
812
+ {
813
+ "inputs": [
814
+ {
815
+ "internalType": "address",
816
+ "name": "token",
817
+ "type": "address"
818
+ },
819
+ {
820
+ "internalType": "address",
821
+ "name": "target",
822
+ "type": "address"
823
+ },
824
+ {
825
+ "internalType": "uint256",
826
+ "name": "amount",
827
+ "type": "uint256"
828
+ },
829
+ {
830
+ "internalType": "bytes32",
831
+ "name": "feeType",
832
+ "type": "bytes32"
833
+ }
834
+ ],
835
+ "name": "collectFee",
836
+ "outputs": [
837
+ {
838
+ "internalType": "bool",
839
+ "name": "",
840
+ "type": "bool"
841
+ }
842
+ ],
843
+ "stateMutability": "nonpayable",
844
+ "type": "function"
845
+ },
846
+ {
847
+ "inputs": [
848
+ {
849
+ "internalType": "bytes32",
850
+ "name": "",
851
+ "type": "bytes32"
852
+ }
853
+ ],
854
+ "name": "collectedFees",
855
+ "outputs": [
856
+ {
857
+ "internalType": "uint256",
858
+ "name": "treasuryAmount",
859
+ "type": "uint256"
860
+ },
861
+ {
862
+ "internalType": "uint256",
863
+ "name": "repairFundAmount",
864
+ "type": "uint256"
865
+ },
866
+ {
867
+ "internalType": "uint256",
868
+ "name": "burnAmount",
869
+ "type": "uint256"
870
+ },
871
+ {
872
+ "internalType": "uint256",
873
+ "name": "veRAACTokenAmount",
874
+ "type": "uint256"
875
+ },
876
+ {
877
+ "internalType": "uint256",
878
+ "name": "otherAmount",
879
+ "type": "uint256"
880
+ }
881
+ ],
882
+ "stateMutability": "view",
883
+ "type": "function"
884
+ },
885
+ {
886
+ "inputs": [
887
+ {
888
+ "internalType": "address",
889
+ "name": "",
890
+ "type": "address"
891
+ },
892
+ {
893
+ "internalType": "bytes32",
894
+ "name": "",
895
+ "type": "bytes32"
896
+ }
897
+ ],
898
+ "name": "collectedFeesByToken",
899
+ "outputs": [
900
+ {
901
+ "internalType": "uint256",
902
+ "name": "treasuryAmount",
903
+ "type": "uint256"
904
+ },
905
+ {
906
+ "internalType": "uint256",
907
+ "name": "repairFundAmount",
908
+ "type": "uint256"
909
+ },
910
+ {
911
+ "internalType": "uint256",
912
+ "name": "burnAmount",
913
+ "type": "uint256"
914
+ },
915
+ {
916
+ "internalType": "uint256",
917
+ "name": "veRAACTokenAmount",
918
+ "type": "uint256"
919
+ },
920
+ {
921
+ "internalType": "uint256",
922
+ "name": "otherAmount",
923
+ "type": "uint256"
924
+ }
925
+ ],
926
+ "stateMutability": "view",
927
+ "type": "function"
928
+ },
929
+ {
930
+ "inputs": [
931
+ {
932
+ "internalType": "bytes32",
933
+ "name": "feeType",
934
+ "type": "bytes32"
935
+ },
936
+ {
937
+ "internalType": "bytes32",
938
+ "name": "target",
939
+ "type": "bytes32"
940
+ },
941
+ {
942
+ "internalType": "address",
943
+ "name": "token",
944
+ "type": "address"
945
+ }
946
+ ],
947
+ "name": "distributeFees",
948
+ "outputs": [],
949
+ "stateMutability": "nonpayable",
950
+ "type": "function"
951
+ },
952
+ {
953
+ "inputs": [],
954
+ "name": "distributionPeriod",
955
+ "outputs": [
956
+ {
957
+ "internalType": "uint256",
958
+ "name": "startTime",
959
+ "type": "uint256"
960
+ },
961
+ {
962
+ "internalType": "uint256",
963
+ "name": "endTime",
964
+ "type": "uint256"
965
+ },
966
+ {
967
+ "internalType": "uint256",
968
+ "name": "lastUpdateTime",
969
+ "type": "uint256"
970
+ },
971
+ {
972
+ "internalType": "uint256",
973
+ "name": "value",
974
+ "type": "uint256"
975
+ },
976
+ {
977
+ "internalType": "uint256",
978
+ "name": "weightedSum",
979
+ "type": "uint256"
980
+ },
981
+ {
982
+ "internalType": "uint256",
983
+ "name": "totalDuration",
984
+ "type": "uint256"
985
+ },
986
+ {
987
+ "internalType": "uint256",
988
+ "name": "weight",
989
+ "type": "uint256"
990
+ }
991
+ ],
992
+ "stateMutability": "view",
993
+ "type": "function"
994
+ },
995
+ {
996
+ "inputs": [
997
+ {
998
+ "internalType": "address",
999
+ "name": "token",
1000
+ "type": "address"
1001
+ },
1002
+ {
1003
+ "internalType": "address",
1004
+ "name": "recipient",
1005
+ "type": "address"
1006
+ }
1007
+ ],
1008
+ "name": "emergencyWithdraw",
1009
+ "outputs": [],
1010
+ "stateMutability": "nonpayable",
1011
+ "type": "function"
1012
+ },
1013
+ {
1014
+ "inputs": [
1015
+ {
1016
+ "internalType": "bytes32",
1017
+ "name": "",
1018
+ "type": "bytes32"
1019
+ }
1020
+ ],
1021
+ "name": "feeTypes",
1022
+ "outputs": [
1023
+ {
1024
+ "internalType": "bytes32",
1025
+ "name": "feeType",
1026
+ "type": "bytes32"
1027
+ },
1028
+ {
1029
+ "internalType": "uint256",
1030
+ "name": "treasuryShare",
1031
+ "type": "uint256"
1032
+ },
1033
+ {
1034
+ "internalType": "uint256",
1035
+ "name": "repairFundShare",
1036
+ "type": "uint256"
1037
+ },
1038
+ {
1039
+ "internalType": "uint256",
1040
+ "name": "burnShare",
1041
+ "type": "uint256"
1042
+ },
1043
+ {
1044
+ "internalType": "uint256",
1045
+ "name": "veRAACTokenShare",
1046
+ "type": "uint256"
1047
+ },
1048
+ {
1049
+ "internalType": "uint256",
1050
+ "name": "otherShare",
1051
+ "type": "uint256"
1052
+ }
1053
+ ],
1054
+ "stateMutability": "view",
1055
+ "type": "function"
1056
+ },
1057
+ {
1058
+ "inputs": [
1059
+ {
1060
+ "internalType": "address",
1061
+ "name": "token",
1062
+ "type": "address"
1063
+ },
1064
+ {
1065
+ "internalType": "bytes32",
1066
+ "name": "feeType",
1067
+ "type": "bytes32"
1068
+ }
1069
+ ],
1070
+ "name": "getCollectedFees",
1071
+ "outputs": [
1072
+ {
1073
+ "components": [
1074
+ {
1075
+ "internalType": "uint256",
1076
+ "name": "treasuryAmount",
1077
+ "type": "uint256"
1078
+ },
1079
+ {
1080
+ "internalType": "uint256",
1081
+ "name": "repairFundAmount",
1082
+ "type": "uint256"
1083
+ },
1084
+ {
1085
+ "internalType": "uint256",
1086
+ "name": "burnAmount",
1087
+ "type": "uint256"
1088
+ },
1089
+ {
1090
+ "internalType": "uint256",
1091
+ "name": "veRAACTokenAmount",
1092
+ "type": "uint256"
1093
+ },
1094
+ {
1095
+ "internalType": "uint256",
1096
+ "name": "otherAmount",
1097
+ "type": "uint256"
1098
+ }
1099
+ ],
1100
+ "internalType": "struct IFeeCollector.CollectedFeeForType",
1101
+ "name": "",
1102
+ "type": "tuple"
1103
+ }
1104
+ ],
1105
+ "stateMutability": "view",
1106
+ "type": "function"
1107
+ },
1108
+ {
1109
+ "inputs": [
1110
+ {
1111
+ "internalType": "address",
1112
+ "name": "token",
1113
+ "type": "address"
1114
+ }
1115
+ ],
1116
+ "name": "getCollectedFeesByToken",
1117
+ "outputs": [
1118
+ {
1119
+ "components": [
1120
+ {
1121
+ "internalType": "uint256",
1122
+ "name": "treasuryAmount",
1123
+ "type": "uint256"
1124
+ },
1125
+ {
1126
+ "internalType": "uint256",
1127
+ "name": "repairFundAmount",
1128
+ "type": "uint256"
1129
+ },
1130
+ {
1131
+ "internalType": "uint256",
1132
+ "name": "burnAmount",
1133
+ "type": "uint256"
1134
+ },
1135
+ {
1136
+ "internalType": "uint256",
1137
+ "name": "veRAACTokenAmount",
1138
+ "type": "uint256"
1139
+ },
1140
+ {
1141
+ "internalType": "uint256",
1142
+ "name": "otherAmount",
1143
+ "type": "uint256"
1144
+ }
1145
+ ],
1146
+ "internalType": "struct IFeeCollector.CollectedFeeForType[]",
1147
+ "name": "",
1148
+ "type": "tuple[]"
1149
+ }
1150
+ ],
1151
+ "stateMutability": "view",
1152
+ "type": "function"
1153
+ },
1154
+ {
1155
+ "inputs": [
1156
+ {
1157
+ "internalType": "address",
1158
+ "name": "token",
1159
+ "type": "address"
1160
+ },
1161
+ {
1162
+ "internalType": "bytes32",
1163
+ "name": "feeType",
1164
+ "type": "bytes32"
1165
+ }
1166
+ ],
1167
+ "name": "getCollectedFeesByTokenAndFeeType",
1168
+ "outputs": [
1169
+ {
1170
+ "components": [
1171
+ {
1172
+ "internalType": "uint256",
1173
+ "name": "treasuryAmount",
1174
+ "type": "uint256"
1175
+ },
1176
+ {
1177
+ "internalType": "uint256",
1178
+ "name": "repairFundAmount",
1179
+ "type": "uint256"
1180
+ },
1181
+ {
1182
+ "internalType": "uint256",
1183
+ "name": "burnAmount",
1184
+ "type": "uint256"
1185
+ },
1186
+ {
1187
+ "internalType": "uint256",
1188
+ "name": "veRAACTokenAmount",
1189
+ "type": "uint256"
1190
+ },
1191
+ {
1192
+ "internalType": "uint256",
1193
+ "name": "otherAmount",
1194
+ "type": "uint256"
1195
+ }
1196
+ ],
1197
+ "internalType": "struct IFeeCollector.CollectedFeeForType",
1198
+ "name": "",
1199
+ "type": "tuple"
1200
+ }
1201
+ ],
1202
+ "stateMutability": "view",
1203
+ "type": "function"
1204
+ },
1205
+ {
1206
+ "inputs": [
1207
+ {
1208
+ "internalType": "bytes32",
1209
+ "name": "feeType",
1210
+ "type": "bytes32"
1211
+ }
1212
+ ],
1213
+ "name": "getFeeType",
1214
+ "outputs": [
1215
+ {
1216
+ "components": [
1217
+ {
1218
+ "internalType": "bytes32",
1219
+ "name": "feeType",
1220
+ "type": "bytes32"
1221
+ },
1222
+ {
1223
+ "internalType": "uint256",
1224
+ "name": "treasuryShare",
1225
+ "type": "uint256"
1226
+ },
1227
+ {
1228
+ "internalType": "uint256",
1229
+ "name": "repairFundShare",
1230
+ "type": "uint256"
1231
+ },
1232
+ {
1233
+ "internalType": "uint256",
1234
+ "name": "burnShare",
1235
+ "type": "uint256"
1236
+ },
1237
+ {
1238
+ "internalType": "uint256",
1239
+ "name": "veRAACTokenShare",
1240
+ "type": "uint256"
1241
+ },
1242
+ {
1243
+ "internalType": "uint256",
1244
+ "name": "otherShare",
1245
+ "type": "uint256"
1246
+ }
1247
+ ],
1248
+ "internalType": "struct IFeeCollector.FeeType",
1249
+ "name": "",
1250
+ "type": "tuple"
1251
+ }
1252
+ ],
1253
+ "stateMutability": "view",
1254
+ "type": "function"
1255
+ },
1256
+ {
1257
+ "inputs": [],
1258
+ "name": "getFeeTypes",
1259
+ "outputs": [
1260
+ {
1261
+ "components": [
1262
+ {
1263
+ "internalType": "bytes32",
1264
+ "name": "feeType",
1265
+ "type": "bytes32"
1266
+ },
1267
+ {
1268
+ "internalType": "uint256",
1269
+ "name": "treasuryShare",
1270
+ "type": "uint256"
1271
+ },
1272
+ {
1273
+ "internalType": "uint256",
1274
+ "name": "repairFundShare",
1275
+ "type": "uint256"
1276
+ },
1277
+ {
1278
+ "internalType": "uint256",
1279
+ "name": "burnShare",
1280
+ "type": "uint256"
1281
+ },
1282
+ {
1283
+ "internalType": "uint256",
1284
+ "name": "veRAACTokenShare",
1285
+ "type": "uint256"
1286
+ },
1287
+ {
1288
+ "internalType": "uint256",
1289
+ "name": "otherShare",
1290
+ "type": "uint256"
1291
+ }
1292
+ ],
1293
+ "internalType": "struct IFeeCollector.FeeType[]",
1294
+ "name": "",
1295
+ "type": "tuple[]"
1296
+ }
1297
+ ],
1298
+ "stateMutability": "view",
1299
+ "type": "function"
1300
+ },
1301
+ {
1302
+ "inputs": [
1303
+ {
1304
+ "internalType": "bytes32",
1305
+ "name": "role",
1306
+ "type": "bytes32"
1307
+ }
1308
+ ],
1309
+ "name": "getRoleAdmin",
1310
+ "outputs": [
1311
+ {
1312
+ "internalType": "bytes32",
1313
+ "name": "",
1314
+ "type": "bytes32"
1315
+ }
1316
+ ],
1317
+ "stateMutability": "view",
1318
+ "type": "function"
1319
+ },
1320
+ {
1321
+ "inputs": [],
1322
+ "name": "getSupportedTokens",
1323
+ "outputs": [
1324
+ {
1325
+ "internalType": "address[]",
1326
+ "name": "",
1327
+ "type": "address[]"
1328
+ }
1329
+ ],
1330
+ "stateMutability": "view",
1331
+ "type": "function"
1332
+ },
1333
+ {
1334
+ "inputs": [
1335
+ {
1336
+ "internalType": "bytes32",
1337
+ "name": "target",
1338
+ "type": "bytes32"
1339
+ }
1340
+ ],
1341
+ "name": "getTargetAddress",
1342
+ "outputs": [
1343
+ {
1344
+ "internalType": "address",
1345
+ "name": "",
1346
+ "type": "address"
1347
+ }
1348
+ ],
1349
+ "stateMutability": "view",
1350
+ "type": "function"
1351
+ },
1352
+ {
1353
+ "inputs": [
1354
+ {
1355
+ "internalType": "bytes32",
1356
+ "name": "feeType",
1357
+ "type": "bytes32"
1358
+ },
1359
+ {
1360
+ "internalType": "bytes32",
1361
+ "name": "target",
1362
+ "type": "bytes32"
1363
+ },
1364
+ {
1365
+ "internalType": "address",
1366
+ "name": "token",
1367
+ "type": "address"
1368
+ }
1369
+ ],
1370
+ "name": "getTargetAmount",
1371
+ "outputs": [
1372
+ {
1373
+ "internalType": "uint256",
1374
+ "name": "",
1375
+ "type": "uint256"
1376
+ }
1377
+ ],
1378
+ "stateMutability": "view",
1379
+ "type": "function"
1380
+ },
1381
+ {
1382
+ "inputs": [
1383
+ {
1384
+ "internalType": "bytes32",
1385
+ "name": "role",
1386
+ "type": "bytes32"
1387
+ },
1388
+ {
1389
+ "internalType": "address",
1390
+ "name": "account",
1391
+ "type": "address"
1392
+ }
1393
+ ],
1394
+ "name": "grantRole",
1395
+ "outputs": [],
1396
+ "stateMutability": "nonpayable",
1397
+ "type": "function"
1398
+ },
1399
+ {
1400
+ "inputs": [
1401
+ {
1402
+ "internalType": "bytes32",
1403
+ "name": "role",
1404
+ "type": "bytes32"
1405
+ },
1406
+ {
1407
+ "internalType": "address",
1408
+ "name": "account",
1409
+ "type": "address"
1410
+ }
1411
+ ],
1412
+ "name": "hasRole",
1413
+ "outputs": [
1414
+ {
1415
+ "internalType": "bool",
1416
+ "name": "",
1417
+ "type": "bool"
1418
+ }
1419
+ ],
1420
+ "stateMutability": "view",
1421
+ "type": "function"
1422
+ },
1423
+ {
1424
+ "inputs": [
1425
+ {
1426
+ "internalType": "address",
1427
+ "name": "",
1428
+ "type": "address"
1429
+ }
1430
+ ],
1431
+ "name": "isTokenSupported",
1432
+ "outputs": [
1433
+ {
1434
+ "internalType": "bool",
1435
+ "name": "",
1436
+ "type": "bool"
1437
+ }
1438
+ ],
1439
+ "stateMutability": "view",
1440
+ "type": "function"
1441
+ },
1442
+ {
1443
+ "inputs": [],
1444
+ "name": "otherAddress",
1445
+ "outputs": [
1446
+ {
1447
+ "internalType": "address",
1448
+ "name": "",
1449
+ "type": "address"
1450
+ }
1451
+ ],
1452
+ "stateMutability": "view",
1453
+ "type": "function"
1454
+ },
1455
+ {
1456
+ "inputs": [],
1457
+ "name": "pause",
1458
+ "outputs": [],
1459
+ "stateMutability": "nonpayable",
1460
+ "type": "function"
1461
+ },
1462
+ {
1463
+ "inputs": [],
1464
+ "name": "paused",
1465
+ "outputs": [
1466
+ {
1467
+ "internalType": "bool",
1468
+ "name": "",
1469
+ "type": "bool"
1470
+ }
1471
+ ],
1472
+ "stateMutability": "view",
1473
+ "type": "function"
1474
+ },
1475
+ {
1476
+ "inputs": [],
1477
+ "name": "pendingRepairFund",
1478
+ "outputs": [
1479
+ {
1480
+ "internalType": "address",
1481
+ "name": "newAddress",
1482
+ "type": "address"
1483
+ },
1484
+ {
1485
+ "internalType": "uint256",
1486
+ "name": "effectiveTime",
1487
+ "type": "uint256"
1488
+ }
1489
+ ],
1490
+ "stateMutability": "view",
1491
+ "type": "function"
1492
+ },
1493
+ {
1494
+ "inputs": [],
1495
+ "name": "pendingTreasury",
1496
+ "outputs": [
1497
+ {
1498
+ "internalType": "address",
1499
+ "name": "newAddress",
1500
+ "type": "address"
1501
+ },
1502
+ {
1503
+ "internalType": "uint256",
1504
+ "name": "effectiveTime",
1505
+ "type": "uint256"
1506
+ }
1507
+ ],
1508
+ "stateMutability": "view",
1509
+ "type": "function"
1510
+ },
1511
+ {
1512
+ "inputs": [
1513
+ {
1514
+ "internalType": "address",
1515
+ "name": "token",
1516
+ "type": "address"
1517
+ }
1518
+ ],
1519
+ "name": "removeClaimableToken",
1520
+ "outputs": [],
1521
+ "stateMutability": "nonpayable",
1522
+ "type": "function"
1523
+ },
1524
+ {
1525
+ "inputs": [
1526
+ {
1527
+ "internalType": "bytes32",
1528
+ "name": "feeType",
1529
+ "type": "bytes32"
1530
+ }
1531
+ ],
1532
+ "name": "removeFeeType",
1533
+ "outputs": [],
1534
+ "stateMutability": "nonpayable",
1535
+ "type": "function"
1536
+ },
1537
+ {
1538
+ "inputs": [
1539
+ {
1540
+ "internalType": "bytes32",
1541
+ "name": "role",
1542
+ "type": "bytes32"
1543
+ },
1544
+ {
1545
+ "internalType": "address",
1546
+ "name": "callerConfirmation",
1547
+ "type": "address"
1548
+ }
1549
+ ],
1550
+ "name": "renounceRole",
1551
+ "outputs": [],
1552
+ "stateMutability": "nonpayable",
1553
+ "type": "function"
1554
+ },
1555
+ {
1556
+ "inputs": [],
1557
+ "name": "repairFundAddress",
1558
+ "outputs": [
1559
+ {
1560
+ "internalType": "address",
1561
+ "name": "",
1562
+ "type": "address"
1563
+ }
1564
+ ],
1565
+ "stateMutability": "view",
1566
+ "type": "function"
1567
+ },
1568
+ {
1569
+ "inputs": [
1570
+ {
1571
+ "internalType": "bytes32",
1572
+ "name": "role",
1573
+ "type": "bytes32"
1574
+ },
1575
+ {
1576
+ "internalType": "address",
1577
+ "name": "account",
1578
+ "type": "address"
1579
+ }
1580
+ ],
1581
+ "name": "revokeRole",
1582
+ "outputs": [],
1583
+ "stateMutability": "nonpayable",
1584
+ "type": "function"
1585
+ },
1586
+ {
1587
+ "inputs": [
1588
+ {
1589
+ "internalType": "bytes32",
1590
+ "name": "target",
1591
+ "type": "bytes32"
1592
+ },
1593
+ {
1594
+ "internalType": "address",
1595
+ "name": "newAddress",
1596
+ "type": "address"
1597
+ }
1598
+ ],
1599
+ "name": "setTargetAddress",
1600
+ "outputs": [],
1601
+ "stateMutability": "nonpayable",
1602
+ "type": "function"
1603
+ },
1604
+ {
1605
+ "inputs": [
1606
+ {
1607
+ "internalType": "bytes4",
1608
+ "name": "interfaceId",
1609
+ "type": "bytes4"
1610
+ }
1611
+ ],
1612
+ "name": "supportsInterface",
1613
+ "outputs": [
1614
+ {
1615
+ "internalType": "bool",
1616
+ "name": "",
1617
+ "type": "bool"
1618
+ }
1619
+ ],
1620
+ "stateMutability": "view",
1621
+ "type": "function"
1622
+ },
1623
+ {
1624
+ "inputs": [],
1625
+ "name": "totalDistributed",
1626
+ "outputs": [
1627
+ {
1628
+ "internalType": "uint256",
1629
+ "name": "",
1630
+ "type": "uint256"
1631
+ }
1632
+ ],
1633
+ "stateMutability": "view",
1634
+ "type": "function"
1635
+ },
1636
+ {
1637
+ "inputs": [],
1638
+ "name": "treasuryAddress",
1639
+ "outputs": [
1640
+ {
1641
+ "internalType": "address",
1642
+ "name": "",
1643
+ "type": "address"
1644
+ }
1645
+ ],
1646
+ "stateMutability": "view",
1647
+ "type": "function"
1648
+ },
1649
+ {
1650
+ "inputs": [],
1651
+ "name": "unpause",
1652
+ "outputs": [],
1653
+ "stateMutability": "nonpayable",
1654
+ "type": "function"
1655
+ },
1656
+ {
1657
+ "inputs": [
1658
+ {
1659
+ "internalType": "bytes32",
1660
+ "name": "feeType",
1661
+ "type": "bytes32"
1662
+ },
1663
+ {
1664
+ "components": [
1665
+ {
1666
+ "internalType": "bytes32",
1667
+ "name": "feeType",
1668
+ "type": "bytes32"
1669
+ },
1670
+ {
1671
+ "internalType": "uint256",
1672
+ "name": "treasuryShare",
1673
+ "type": "uint256"
1674
+ },
1675
+ {
1676
+ "internalType": "uint256",
1677
+ "name": "repairFundShare",
1678
+ "type": "uint256"
1679
+ },
1680
+ {
1681
+ "internalType": "uint256",
1682
+ "name": "burnShare",
1683
+ "type": "uint256"
1684
+ },
1685
+ {
1686
+ "internalType": "uint256",
1687
+ "name": "veRAACTokenShare",
1688
+ "type": "uint256"
1689
+ },
1690
+ {
1691
+ "internalType": "uint256",
1692
+ "name": "otherShare",
1693
+ "type": "uint256"
1694
+ }
1695
+ ],
1696
+ "internalType": "struct IFeeCollector.FeeType",
1697
+ "name": "newFee",
1698
+ "type": "tuple"
1699
+ }
1700
+ ],
1701
+ "name": "updateFeeType",
1702
+ "outputs": [],
1703
+ "stateMutability": "nonpayable",
1704
+ "type": "function"
1705
+ },
1706
+ {
1707
+ "inputs": [
1708
+ {
1709
+ "internalType": "address",
1710
+ "name": "",
1711
+ "type": "address"
1712
+ }
1713
+ ],
1714
+ "name": "userRewards",
1715
+ "outputs": [
1716
+ {
1717
+ "internalType": "uint256",
1718
+ "name": "",
1719
+ "type": "uint256"
1720
+ }
1721
+ ],
1722
+ "stateMutability": "view",
1723
+ "type": "function"
1724
+ },
1725
+ {
1726
+ "inputs": [],
1727
+ "name": "veRAACAddress",
1728
+ "outputs": [
1729
+ {
1730
+ "internalType": "address",
1731
+ "name": "",
1732
+ "type": "address"
1733
+ }
1734
+ ],
1735
+ "stateMutability": "view",
1736
+ "type": "function"
1737
+ }
1738
+ ],
1739
+ "bytecode": "0x60806040523480156200001157600080fd5b50604051620036f6380380620036f683398101604081905262000034916200020d565b600180556002805460ff191690556001600160a01b0381166200006a5760405163e6c4247b60e01b815260040160405180910390fd5b620000776000826200015e565b50620000a47f6c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1c826200015e565b50620000d17fbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b26826200015e565b50620000fe7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c826200015e565b5060028054610100600160a81b0319166101006001600160a01b0393909316928302179055600380546001600160a01b0319908116831790915560048054821683179055600580548216831790556006805490911690911790556200023f565b6000828152602081815260408083206001600160a01b038516845290915281205460ff1662000203576000838152602081815260408083206001600160a01b03861684529091529020805460ff19166001179055620001ba3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600162000207565b5060005b92915050565b6000602082840312156200022057600080fd5b81516001600160a01b03811681146200023857600080fd5b9392505050565b6134a7806200024f6000396000f3fe608060405234801561001057600080fd5b506004361061035d5760003560e01c80637a89a5f0116101d3578063c5f956af11610104578063e41b2036116100a2578063efca2eed1161007c578063efca2eed146108d8578063f0bd87cc146108e1578063f2bab2a514610908578063f90e65701461091b57600080fd5b8063e41b20361461089d578063e58730a1146108b0578063ef77527b146108c557600080fd5b8063c812bcaa116100de578063c812bcaa14610859578063d3c7c2c71461086c578063d547741f14610881578063e1f1c4a71461089457600080fd5b8063c5f956af1461082e578063c71378d614610846578063c737f2a6146106ca57600080fd5b80639b50172311610171578063a47b21011161014b578063a47b2101146107dc578063b51c1165146107f3578063c0a2526c14610806578063c4e6c6041461081b57600080fd5b80639b5017231461076a578063a217fddf146107c1578063a42c70ea146107c957600080fd5b8063911f60a5116101ad578063911f60a5146106f257806391d148541461073a578063968de9ab1461074d57806399cac5551461075757600080fd5b80637a89a5f0146106655780637d0b17f9146106ca5780638456cb59146106ea57600080fd5b806330dc281e116102ad57806354c79bb31161024b5780636382d9ad116102255780636382d9ad146106095780636a3d1d2c1461061c57806370d5ae051461062f57806375151b631461064257600080fd5b806354c79bb3146105cb5780635c975abb146105eb5780636033e315146105f657600080fd5b80633932e611116102875780633932e611146105865780633f4ba83a1461059b57806344ac0b17146105a357806347344e75146105b857600080fd5b806330dc281e14610521578063335477fc1461054c57806336568abe1461057357600080fd5b80630fe5e4f01161031a5780632a54caba116102f45780632a54caba146104b25780632d2c5565146104c35780632ed6b75d146104d85780632f2ff15d1461050e57600080fd5b80630fe5e4f01461046757806320df43591461047a578063248a9ca31461048f57600080fd5b806301ffc9a71461036257806305db2f411461038a5780630660f1e8146103ad57806309ed1510146103cd5780630d31767e1461043d5780630f8450b214610452575b600080fd5b610375610370366004612e00565b61093b565b60405190151581526020015b60405180910390f35b61039f6000805160206133d283398151915281565b604051908152602001610381565b61039f6103bb366004612e3f565b60146020526000908152604090205481565b6104106103db366004612e5c565b600b60205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b604080519687526020870195909552938501929092526060840152608083015260a082015260c001610381565b61039f60008051602061339283398151915281565b610465610460366004612e5c565b610972565b005b610465610475366004612e75565b610aa1565b61039f6000805160206133b283398151915281565b61039f61049d366004612e5c565b60009081526020819052604090206001015490565b61039f69d3c21bcecceda100000081565b61039f60008051602061345283398151915281565b6016546017546104ef916001600160a01b03169082565b604080516001600160a01b039093168352602083019190915201610381565b61046561051c366004612eae565b610dbe565b61053461052f366004612e5c565b610de9565b6040516001600160a01b039091168152602001610381565b61039f7f1f49de3380557c514cedfeafa4b0515d7e744b9e861dd34381fe6813d97079ca81565b610465610581366004612eae565b610ec7565b61058e610efa565b6040516103819190612ede565b610465611045565b61039f60008051602061341283398151915281565b600354610534906001600160a01b031681565b6105de6105d9366004612e5c565b611068565b6040516103819190612f61565b60025460ff16610375565b610375610604366004612fa4565b6110fd565b610465610617366004612fea565b611215565b61046561062a366004612e3f565b611790565b600454610534906001600160a01b031681565b610375610650366004612e3f565b60086020526000908152604090205460ff1681565b6106a2610673366004612e5c565b600c60205260009081526040902080546001820154600283015460038401546004909401549293919290919085565b604080519586526020860194909452928401919091526060830152608082015260a001610381565b6106dd6106d8366004613018565b611896565b6040516103819190613044565b61046561192c565b6106a2610700366004613018565b6009602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401549293919290919085565b610375610748366004612eae565b61194c565b61039f6201518081565b61037561076536600461307d565b611975565b600d54600e54600f5460105460115460125460135461078c9695949392919087565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e001610381565b61039f600081565b61039f6107d7366004612e75565b611b1f565b6018546019546104ef916001600160a01b03169082565b610465610801366004612e3f565b611c6b565b61039f60008051602061343283398151915281565b600654610534906001600160a01b031681565b6002546105349061010090046001600160a01b031681565b6104656108543660046130d6565b611e3e565b61037561086736600461317b565b611f06565b610874612079565b60405161038191906131bc565b61046561088f366004612eae565b6120db565b61039f61271081565b600554610534906001600160a01b031681565b61039f6000805160206133f283398151915281565b6104656108d3366004612eae565b612100565b61039f60155481565b61039f7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c81565b610375610916366004612fa4565b612284565b61092e610929366004612e3f565b612415565b60405161038191906131fd565b60006001600160e01b03198216637965db0b60e01b148061096c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206133d283398151915261098a81612565565b6000828152600b60205260408120818155600181018290556002810182905560038101829055600481018290556005018190555b600a54811015610a9c5782600a82815481106109dc576109dc61326a565b906000526020600020015403610a8a57805b600a546109fd90600190613296565b811015610a5d57600a610a118260016132a9565b81548110610a2157610a2161326a565b9060005260206000200154600a8281548110610a3f57610a3f61326a565b60009182526020909120015580610a55816132bc565b9150506109ee565b50600a805480610a6f57610a6f6132d5565b60019003818190600052602060002001600090559055505050565b80610a94816132bc565b9150506109be565b505050565b610aa961256f565b7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c610ad381612565565b6000848152600b6020526040902054610aff57604051633b1d164d60e01b815260040160405180910390fd5b82610b1d57604051631616b52b60e11b815260040160405180910390fd5b60405163186e140f60e11b81526004810184905260009030906330dc281e90602401602060405180830381865afa158015610b5c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b8091906132eb565b604051635216387560e11b8152909150600090309063a42c70ea90610bad90899089908990600401613308565b602060405180830381865afa158015610bca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bee9190613327565b90506001600160a01b03821615610d9d5760405163095ea7b360e01b81526001600160a01b0383811660048301526024820183905285169063095ea7b3906044016020604051808303816000875af1158015610c4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c729190613340565b50813b8015801590600090610d2057604080516001600160a01b038981166024830152604480830188905283518084039091018152606490920183526020820180516001600160e01b031663a8031a1d60e01b179052915191871691610cd89190613362565b6000604051808303816000865af19150503d8060008114610d15576040519150601f19603f3d011682016040523d82523d6000602084013e610d1a565b606091505b50909150505b811580610d2b575080155b15610d4457610d446001600160a01b0388168686612595565b610d50878a868b6125f4565b866001600160a01b0316888a7fcaa89f1183784e4b1671918b616c5bf64dc0097db662191486475080e46ebf1d87604051610d8d91815260200190565b60405180910390a4505050610db6565b60405163185f9d0960e01b815260040160405180910390fd5b505050505050565b600082815260208190526040902060010154610dd981612565565b610de38383612849565b50505050565b60006000805160206134528339815191528203610e1657505060025461010090046001600160a01b031690565b6000805160206134128339815191528203610e3c5750506003546001600160a01b031690565b6000805160206134328339815191528203610e625750506004546001600160a01b031690565b6000805160206133f28339815191528203610e885750506005546001600160a01b031690565b6000805160206133928339815191528203610eae5750506006546001600160a01b031690565b604051631616b52b60e11b815260040160405180910390fd5b6001600160a01b0381163314610ef05760405163334bd91960e11b815260040160405180910390fd5b610a9c82826128db565b600a5460609060009067ffffffffffffffff811115610f1b57610f1b6130c0565b604051908082528060200260200182016040528015610f8857816020015b610f756040518060c001604052806000801916815260200160008152602001600081526020016000815260200160008152602001600081525090565b815260200190600190039081610f395790505b50905060005b600a5481101561103f57600b6000600a8381548110610faf57610faf61326a565b906000526020600020015481526020019081526020016000206040518060c001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815250508282815181106110215761102161326a565b60200260200101819052508080611037906132bc565b915050610f8e565b50919050565b6000805160206133b283398151915261105d81612565565b611065612946565b50565b6110a46040518060c001604052806000801916815260200160008152602001600081526020016000815260200160008152602001600081525090565b506000908152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a082015290565b6000611107612998565b61110f61256f565b821580611125575069d3c21bcecceda100000083115b156111425760405162a4671960e71b815260040160405180910390fd5b6000828152600b602052604090205461116e57604051633b1d164d60e01b815260040160405180910390fd5b6001600160a01b03851660009081526008602052604090205460ff166111a757604051633dd1b30560e01b815260040160405180910390fd5b6111bc6001600160a01b0386168530866129c2565b6111c78583856129fb565b817f156e588d1067ba3c8a6a7f4376ef70794f8afed114dc9d1421e054b65743e630846040516111f991815260200190565b60405180910390a250600161120d60018055565b949350505050565b61121d612bce565b6000805160206133b283398151915261123581612565565b6001600160a01b03831661125c5760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa1580156112a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c79190613327565b90506112dd6001600160a01b0385168483612595565b60005b600a54811015611746576000306001600160a01b031663a42c70ea600a848154811061130e5761130e61326a565b9060005260206000200154600080516020613452833981519152896040518463ffffffff1660e01b815260040161134793929190613308565b602060405180830381865afa158015611364573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113889190613327565b905080156113c7576113c786600a84815481106113a7576113a761326a565b9060005260206000200154836000805160206134528339815191526125f4565b306001600160a01b031663a42c70ea600a84815481106113e9576113e961326a565b9060005260206000200154600080516020613412833981519152896040518463ffffffff1660e01b815260040161142293929190613308565b602060405180830381865afa15801561143f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114639190613327565b905080156114a2576114a286600a84815481106114825761148261326a565b9060005260206000200154836000805160206134128339815191526125f4565b306001600160a01b031663a42c70ea600a84815481106114c4576114c461326a565b9060005260206000200154600080516020613432833981519152896040518463ffffffff1660e01b81526004016114fd93929190613308565b602060405180830381865afa15801561151a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061153e9190613327565b9050801561157d5761157d86600a848154811061155d5761155d61326a565b9060005260206000200154836000805160206134328339815191526125f4565b306001600160a01b031663a42c70ea600a848154811061159f5761159f61326a565b90600052602060002001546000805160206133f2833981519152896040518463ffffffff1660e01b81526004016115d893929190613308565b602060405180830381865afa1580156115f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116199190613327565b905080156116585761165886600a84815481106116385761163861326a565b9060005260206000200154836000805160206133f28339815191526125f4565b306001600160a01b031663a42c70ea600a848154811061167a5761167a61326a565b9060005260206000200154600080516020613392833981519152896040518463ffffffff1660e01b81526004016116b393929190613308565b602060405180830381865afa1580156116d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116f49190613327565b905080156117335761173386600a84815481106117135761171361326a565b9060005260206000200154836000805160206133928339815191526125f4565b508061173e816132bc565b9150506112e0565b50836001600160a01b03167f23d6711a1d031134a36921253c75aa59e967d38e369ac625992824315e204f208260405161178291815260200190565b60405180910390a250505050565b6000805160206133d28339815191526117a881612565565b6001600160a01b0382166117cf5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03821660009081526008602052604090205460ff16156118095760405163c78e82ad60e01b815260040160405180910390fd5b6001600160a01b038216600081815260086020526040808220805460ff1916600190811790915560078054918201815583527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b03191684179055517f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a49190a25050565b6118c86040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b0382166000908152600960209081526040808320848452825291829020825160a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600490910154608082015292915050565b6000805160206133b283398151915261194481612565565b611065612bf1565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b60006000805160206133d283398151915261198f81612565565b6000888152600b6020526040902054156119bc57604051633c884a3960e01b815260040160405180910390fd5b6040518060c0016040528089815260200188815260200187815260200186815260200185815260200184815250600b60008a8152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050155905050600a8890806001815401808255809150506001900390600052602060002001600090919091909150556040518060a00160405280600081526020016000815260200160008152602001600081526020016000815250600c60008a815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050507f1f62f4042c9d0687445c24d4340239988795b5163eea4f40e76a22af9a80918a88604051611b0991815260200190565b60405180910390a1506001979650505050505050565b60006000805160206134528339815191528303611b6057506001600160a01b0381166000908152600960209081526040808320868452909152902054611c64565b6000805160206134128339815191528303611ba257506001600160a01b0381166000908152600960209081526040808320868452909152902060010154611c64565b6000805160206134328339815191528303611be457506001600160a01b0381166000908152600960209081526040808320868452909152902060020154611c64565b6000805160206133f28339815191528303611c2657506001600160a01b0381166000908152600960209081526040808320868452909152902060030154611c64565b6000805160206133928339815191528303610eae57506001600160a01b03811660009081526009602090815260408083208684529091529020600401545b9392505050565b6000805160206133d2833981519152611c8381612565565b6001600160a01b03821660009081526008602052604090205460ff16611cbc57604051633dd1b30560e01b815260040160405180910390fd5b6001600160a01b0382166000908152600860205260408120805460ff191690555b600754811015611e0557826001600160a01b031660078281548110611d0457611d0461326a565b6000918252602090912001546001600160a01b031603611df357805b600754611d2f90600190613296565b811015611dba576007611d438260016132a9565b81548110611d5357611d5361326a565b600091825260209091200154600780546001600160a01b039092169183908110611d7f57611d7f61326a565b600091825260209091200180546001600160a01b0319166001600160a01b039290921691909117905580611db2816132bc565b915050611d20565b506007805480611dcc57611dcc6132d5565b600082815260209020810160001990810180546001600160a01b0319169055019055611e05565b80611dfd816132bc565b915050611cdd565b506040516001600160a01b038316907f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd390600090a25050565b6000805160206133d2833981519152611e5681612565565b6000838152600b6020526040902054611e8257604051633b1d164d60e01b815260040160405180910390fd5b6000838152600b602090815260409182902084518155908401516001820155818401516002820155606084015160038201556080840151600482015560a08401516005909101555183907f6b4f47836fff23be2d07ab675f5d4b10dc118552142b34f04f70db65e6a6419690611ef9908590612f61565b60405180910390a2505050565b6000611f10612998565b611f1861256f565b6001600160a01b03841660009081526008602052604090205460ff16611f5157604051633dd1b30560e01b815260040160405180910390fd5b60408051600481526024810182526020810180516001600160e01b031663a90d728f60e01b179052905160009182916001600160a01b03871691611f9491613362565b6000604051808303816000865af19150503d8060008114611fd1576040519150601f19603f3d011682016040523d82523d6000602084013e611fd6565b606091505b509150915081611ff957604051632bb978cf60e01b815260040160405180910390fd5b60008180602001905181019061200f9190613327565b905061201c8786836129fb565b856001600160a01b0316876001600160a01b03167ff2ecb5d3ae35532714be41e7338f5dd28ba159beae417aa48aad36d11a868b498360405161206191815260200190565b60405180910390a360019350505050611c6460018055565b606060078054806020026020016040519081016040528092919081815260200182805480156120d157602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116120b3575b5050505050905090565b6000828152602081905260409020600101546120f681612565565b610de383836128db565b6000805160206133d283398151915261211881612565565b6001600160a01b03821661213f5760405163e6c4247b60e01b815260040160405180910390fd5b60008051602061345283398151915283036121795760028054610100600160a81b0319166101006001600160a01b03851602179055612249565b60008051602061341283398151915283036121ae57600380546001600160a01b0319166001600160a01b038416179055612249565b60008051602061343283398151915283036121e357600480546001600160a01b0319166001600160a01b038416179055612249565b6000805160206133f2833981519152830361221857600580546001600160a01b0319166001600160a01b038416179055612249565b6000805160206133928339815191528303610eae57600680546001600160a01b0319166001600160a01b0384161790555b816001600160a01b03167f4952f88e1ac12e72cbe037dc5569f3a7803f8ed0de21288624ac3ae2e88fb35284604051611ef991815260200190565b600061228e612998565b61229661256f565b6001600160a01b03851660009081526008602052604090205460ff166122cf57604051633dd1b30560e01b815260040160405180910390fd5b826000036122ef5760405162a4671960e71b815260040160405180910390fd5b604080516001600160a01b038781166024830152306044830152606480830187905283518084039091018152608490920183526020820180516001600160e01b0316633165a76560e21b179052915160009287169161234d91613362565b6000604051808303816000865af19150503d806000811461238a576040519150601f19603f3d011682016040523d82523d6000602084013e61238f565b606091505b50509050806123b157604051630c95a54f60e01b815260040160405180910390fd5b6123bc8684866129fb565b846001600160a01b0316866001600160a01b03167fe1ee5b767f21f291732f3af94ead0ad2de6534cfd816eb4520698a812f2f816a8660405161240191815260200190565b60405180910390a35050600180805561120d565b600a5460609060009067ffffffffffffffff811115612436576124366130c0565b60405190808252806020026020018201604052801561249957816020015b6124866040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b8152602001906001900390816124545790505b50905060005b600a5481101561255e576001600160a01b0384166000908152600960205260408120600a8054919291849081106124d8576124d861326a565b906000526020600020015481526020019081526020016000206040518060a0016040529081600082015481526020016001820154815260200160028201548152602001600382015481526020016004820154815250508282815181106125405761254061326a565b60200260200101819052508080612556906132bc565b91505061249f565b5092915050565b6110658133612c2e565b60025460ff16156125935760405163d93c066560e01b815260040160405180910390fd5b565b6040516001600160a01b03838116602483015260448201839052610a9c91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050612c70565b604051635216387560e11b8152600090309063a42c70ea9061261e90879086908a90600401613308565b602060405180830381865afa15801561263b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061265f9190613327565b90508281101561268257604051631e9acf1760e31b815260040160405180910390fd5b600061268e8483613296565b6000868152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a08201529091507ff955fc69b24e08da8ca810f68eb5a0f35c9cc8dc20be6168fea1f385c17c12498401612738576001600160a01b03871660009081526009602090815260408083208984529091529020829055612840565b600080516020613412833981519152840361277b576001600160a01b03871660009081526009602090815260408083208984529091529020600101829055612840565b60008051602061343283398151915284036127be576001600160a01b03871660009081526009602090815260408083208984529091529020600201829055612840565b6000805160206133f28339815191528403612801576001600160a01b03871660009081526009602090815260408083208984529091529020600301829055612840565b6000805160206133928339815191528403610eae576001600160a01b038716600090815260096020908152604080832089845290915290206004018290555b50505050505050565b6000612855838361194c565b6128d3576000838152602081815260408083206001600160a01b03861684529091529020805460ff1916600117905561288b3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600161096c565b50600061096c565b60006128e7838361194c565b156128d3576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a450600161096c565b61294e612bce565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6002600154036129bb57604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b6040516001600160a01b038481166024830152838116604483015260648201839052610de39186918216906323b872dd906084016125c2565b6000828152600b60209081526040808320815160c08101835281548152600182015493810184905260028201549281019290925260038101546060830152600481015460808301526005015460a08201529190612a59908490612cd3565b90506000612a74836040015185612cd390919063ffffffff16565b90506000612a8f846060015186612cd390919063ffffffff16565b90506000612aaa856080015187612cd390919063ffffffff16565b90506000612ac58660a0015188612cd390919063ffffffff16565b90506000818385612ad6888a6132a9565b612ae091906132a9565b612aea91906132a9565b612af491906132a9565b9050878114612b19576000612b09828a613296565b9050612b1581886132a9565b9650505b6001600160a01b038a1660009081526009602090815260408083208c84529091528120805490918891839190612b509084906132a9565b9250508190555085816001016000828254612b6b91906132a9565b9250508190555084816002016000828254612b8691906132a9565b9250508190555083816003016000828254612ba191906132a9565b9250508190555082816004016000828254612bbc91906132a9565b90915550505050505050505050505050565b60025460ff1661259357604051638dfc202b60e01b815260040160405180910390fd5b612bf961256f565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861297b3390565b612c38828261194c565b612c6c5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044015b60405180910390fd5b5050565b6000612c856001600160a01b03841683612cf9565b90508051600014158015612caa575080806020019051810190612ca89190613340565b155b15610a9c57604051635274afe760e01b81526001600160a01b0384166004820152602401612c63565b600081156113881983900484111517612ceb57600080fd5b506127109102611388010490565b6060611c648383600084600080856001600160a01b03168486604051612d1f9190613362565b60006040518083038185875af1925050503d8060008114612d5c576040519150601f19603f3d011682016040523d82523d6000602084013e612d61565b606091505b5091509150612d71868383612d7b565b9695505050505050565b606082612d9057612d8b82612dd7565b611c64565b8151158015612da757506001600160a01b0384163b155b15612dd057604051639996b31560e01b81526001600160a01b0385166004820152602401612c63565b5080611c64565b805115612de75780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600060208284031215612e1257600080fd5b81356001600160e01b031981168114611c6457600080fd5b6001600160a01b038116811461106557600080fd5b600060208284031215612e5157600080fd5b8135611c6481612e2a565b600060208284031215612e6e57600080fd5b5035919050565b600080600060608486031215612e8a57600080fd5b83359250602084013591506040840135612ea381612e2a565b809150509250925092565b60008060408385031215612ec157600080fd5b823591506020830135612ed381612e2a565b809150509250929050565b6020808252825182820181905260009190848201906040850190845b81811015612f5557612f42838551805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b9284019260c09290920191600101612efa565b50909695505050505050565b60c0810161096c8284805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b60008060008060808587031215612fba57600080fd5b8435612fc581612e2a565b93506020850135612fd581612e2a565b93969395505050506040820135916060013590565b60008060408385031215612ffd57600080fd5b823561300881612e2a565b91506020830135612ed381612e2a565b6000806040838503121561302b57600080fd5b823561303681612e2a565b946020939093013593505050565b60a0810161096c828480518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b60008060008060008060c0878903121561309657600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b634e487b7160e01b600052604160045260246000fd5b60008082840360e08112156130ea57600080fd5b8335925060c0601f198201121561310057600080fd5b5060405160c0810181811067ffffffffffffffff8211171561313257634e487b7160e01b600052604160045260246000fd5b80604052506020840135815260408401356020820152606084013560408201526080840135606082015260a0840135608082015260c084013560a0820152809150509250929050565b60008060006060848603121561319057600080fd5b833561319b81612e2a565b925060208401356131ab81612e2a565b929592945050506040919091013590565b6020808252825182820181905260009190848201906040850190845b81811015612f555783516001600160a01b0316835292840192918401916001016131d8565b6020808252825182820181905260009190848201906040850190845b81811015612f555761325783855180518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b9284019260a09290920191600101613219565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8181038181111561096c5761096c613280565b8082018082111561096c5761096c613280565b6000600182016132ce576132ce613280565b5060010190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156132fd57600080fd5b8151611c6481612e2a565b92835260208301919091526001600160a01b0316604082015260600190565b60006020828403121561333957600080fd5b5051919050565b60006020828403121561335257600080fd5b81518015158114611c6457600080fd5b6000825160005b818110156133835760208186018101518583015201613369565b50600092019182525091905056fe35b65de3b579a9ce74763d33e74f08dcef72a66ee55fd214549ace2be760d16dbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b266c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1ce404ddc6d6772360eea3184c00b8a6bfc2a971e0bf4f48fdc3c56af5e3bf2cc4dea17103e6dca833246fe1c7037e20c1267b9ee9b25085a4f0ad6a66c6a1827204c6a47ae7910ef8b295215a97e8495a9eaf57b7b05bfd8bf951edb3fd4a16a306aa03964db1f7257357ef09714a5f0ca3633723df419e97015e0c7a3e83edb7a264697066735822122054af0277d7edb732c626f9bcf08fe76356ae830a7a5716f100be73ef99930f8564736f6c63430008140033",
1740
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061035d5760003560e01c80637a89a5f0116101d3578063c5f956af11610104578063e41b2036116100a2578063efca2eed1161007c578063efca2eed146108d8578063f0bd87cc146108e1578063f2bab2a514610908578063f90e65701461091b57600080fd5b8063e41b20361461089d578063e58730a1146108b0578063ef77527b146108c557600080fd5b8063c812bcaa116100de578063c812bcaa14610859578063d3c7c2c71461086c578063d547741f14610881578063e1f1c4a71461089457600080fd5b8063c5f956af1461082e578063c71378d614610846578063c737f2a6146106ca57600080fd5b80639b50172311610171578063a47b21011161014b578063a47b2101146107dc578063b51c1165146107f3578063c0a2526c14610806578063c4e6c6041461081b57600080fd5b80639b5017231461076a578063a217fddf146107c1578063a42c70ea146107c957600080fd5b8063911f60a5116101ad578063911f60a5146106f257806391d148541461073a578063968de9ab1461074d57806399cac5551461075757600080fd5b80637a89a5f0146106655780637d0b17f9146106ca5780638456cb59146106ea57600080fd5b806330dc281e116102ad57806354c79bb31161024b5780636382d9ad116102255780636382d9ad146106095780636a3d1d2c1461061c57806370d5ae051461062f57806375151b631461064257600080fd5b806354c79bb3146105cb5780635c975abb146105eb5780636033e315146105f657600080fd5b80633932e611116102875780633932e611146105865780633f4ba83a1461059b57806344ac0b17146105a357806347344e75146105b857600080fd5b806330dc281e14610521578063335477fc1461054c57806336568abe1461057357600080fd5b80630fe5e4f01161031a5780632a54caba116102f45780632a54caba146104b25780632d2c5565146104c35780632ed6b75d146104d85780632f2ff15d1461050e57600080fd5b80630fe5e4f01461046757806320df43591461047a578063248a9ca31461048f57600080fd5b806301ffc9a71461036257806305db2f411461038a5780630660f1e8146103ad57806309ed1510146103cd5780630d31767e1461043d5780630f8450b214610452575b600080fd5b610375610370366004612e00565b61093b565b60405190151581526020015b60405180910390f35b61039f6000805160206133d283398151915281565b604051908152602001610381565b61039f6103bb366004612e3f565b60146020526000908152604090205481565b6104106103db366004612e5c565b600b60205260009081526040902080546001820154600283015460038401546004850154600590950154939492939192909186565b604080519687526020870195909552938501929092526060840152608083015260a082015260c001610381565b61039f60008051602061339283398151915281565b610465610460366004612e5c565b610972565b005b610465610475366004612e75565b610aa1565b61039f6000805160206133b283398151915281565b61039f61049d366004612e5c565b60009081526020819052604090206001015490565b61039f69d3c21bcecceda100000081565b61039f60008051602061345283398151915281565b6016546017546104ef916001600160a01b03169082565b604080516001600160a01b039093168352602083019190915201610381565b61046561051c366004612eae565b610dbe565b61053461052f366004612e5c565b610de9565b6040516001600160a01b039091168152602001610381565b61039f7f1f49de3380557c514cedfeafa4b0515d7e744b9e861dd34381fe6813d97079ca81565b610465610581366004612eae565b610ec7565b61058e610efa565b6040516103819190612ede565b610465611045565b61039f60008051602061341283398151915281565b600354610534906001600160a01b031681565b6105de6105d9366004612e5c565b611068565b6040516103819190612f61565b60025460ff16610375565b610375610604366004612fa4565b6110fd565b610465610617366004612fea565b611215565b61046561062a366004612e3f565b611790565b600454610534906001600160a01b031681565b610375610650366004612e3f565b60086020526000908152604090205460ff1681565b6106a2610673366004612e5c565b600c60205260009081526040902080546001820154600283015460038401546004909401549293919290919085565b604080519586526020860194909452928401919091526060830152608082015260a001610381565b6106dd6106d8366004613018565b611896565b6040516103819190613044565b61046561192c565b6106a2610700366004613018565b6009602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401549293919290919085565b610375610748366004612eae565b61194c565b61039f6201518081565b61037561076536600461307d565b611975565b600d54600e54600f5460105460115460125460135461078c9695949392919087565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e001610381565b61039f600081565b61039f6107d7366004612e75565b611b1f565b6018546019546104ef916001600160a01b03169082565b610465610801366004612e3f565b611c6b565b61039f60008051602061343283398151915281565b600654610534906001600160a01b031681565b6002546105349061010090046001600160a01b031681565b6104656108543660046130d6565b611e3e565b61037561086736600461317b565b611f06565b610874612079565b60405161038191906131bc565b61046561088f366004612eae565b6120db565b61039f61271081565b600554610534906001600160a01b031681565b61039f6000805160206133f283398151915281565b6104656108d3366004612eae565b612100565b61039f60155481565b61039f7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c81565b610375610916366004612fa4565b612284565b61092e610929366004612e3f565b612415565b60405161038191906131fd565b60006001600160e01b03198216637965db0b60e01b148061096c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000805160206133d283398151915261098a81612565565b6000828152600b60205260408120818155600181018290556002810182905560038101829055600481018290556005018190555b600a54811015610a9c5782600a82815481106109dc576109dc61326a565b906000526020600020015403610a8a57805b600a546109fd90600190613296565b811015610a5d57600a610a118260016132a9565b81548110610a2157610a2161326a565b9060005260206000200154600a8281548110610a3f57610a3f61326a565b60009182526020909120015580610a55816132bc565b9150506109ee565b50600a805480610a6f57610a6f6132d5565b60019003818190600052602060002001600090559055505050565b80610a94816132bc565b9150506109be565b505050565b610aa961256f565b7ffbd454f36a7e1a388bd6fc3ab10d434aa4578f811acbbcf33afb1c697486313c610ad381612565565b6000848152600b6020526040902054610aff57604051633b1d164d60e01b815260040160405180910390fd5b82610b1d57604051631616b52b60e11b815260040160405180910390fd5b60405163186e140f60e11b81526004810184905260009030906330dc281e90602401602060405180830381865afa158015610b5c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b8091906132eb565b604051635216387560e11b8152909150600090309063a42c70ea90610bad90899089908990600401613308565b602060405180830381865afa158015610bca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bee9190613327565b90506001600160a01b03821615610d9d5760405163095ea7b360e01b81526001600160a01b0383811660048301526024820183905285169063095ea7b3906044016020604051808303816000875af1158015610c4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c729190613340565b50813b8015801590600090610d2057604080516001600160a01b038981166024830152604480830188905283518084039091018152606490920183526020820180516001600160e01b031663a8031a1d60e01b179052915191871691610cd89190613362565b6000604051808303816000865af19150503d8060008114610d15576040519150601f19603f3d011682016040523d82523d6000602084013e610d1a565b606091505b50909150505b811580610d2b575080155b15610d4457610d446001600160a01b0388168686612595565b610d50878a868b6125f4565b866001600160a01b0316888a7fcaa89f1183784e4b1671918b616c5bf64dc0097db662191486475080e46ebf1d87604051610d8d91815260200190565b60405180910390a4505050610db6565b60405163185f9d0960e01b815260040160405180910390fd5b505050505050565b600082815260208190526040902060010154610dd981612565565b610de38383612849565b50505050565b60006000805160206134528339815191528203610e1657505060025461010090046001600160a01b031690565b6000805160206134128339815191528203610e3c5750506003546001600160a01b031690565b6000805160206134328339815191528203610e625750506004546001600160a01b031690565b6000805160206133f28339815191528203610e885750506005546001600160a01b031690565b6000805160206133928339815191528203610eae5750506006546001600160a01b031690565b604051631616b52b60e11b815260040160405180910390fd5b6001600160a01b0381163314610ef05760405163334bd91960e11b815260040160405180910390fd5b610a9c82826128db565b600a5460609060009067ffffffffffffffff811115610f1b57610f1b6130c0565b604051908082528060200260200182016040528015610f8857816020015b610f756040518060c001604052806000801916815260200160008152602001600081526020016000815260200160008152602001600081525090565b815260200190600190039081610f395790505b50905060005b600a5481101561103f57600b6000600a8381548110610faf57610faf61326a565b906000526020600020015481526020019081526020016000206040518060c001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815250508282815181106110215761102161326a565b60200260200101819052508080611037906132bc565b915050610f8e565b50919050565b6000805160206133b283398151915261105d81612565565b611065612946565b50565b6110a46040518060c001604052806000801916815260200160008152602001600081526020016000815260200160008152602001600081525090565b506000908152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a082015290565b6000611107612998565b61110f61256f565b821580611125575069d3c21bcecceda100000083115b156111425760405162a4671960e71b815260040160405180910390fd5b6000828152600b602052604090205461116e57604051633b1d164d60e01b815260040160405180910390fd5b6001600160a01b03851660009081526008602052604090205460ff166111a757604051633dd1b30560e01b815260040160405180910390fd5b6111bc6001600160a01b0386168530866129c2565b6111c78583856129fb565b817f156e588d1067ba3c8a6a7f4376ef70794f8afed114dc9d1421e054b65743e630846040516111f991815260200190565b60405180910390a250600161120d60018055565b949350505050565b61121d612bce565b6000805160206133b283398151915261123581612565565b6001600160a01b03831661125c5760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa1580156112a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c79190613327565b90506112dd6001600160a01b0385168483612595565b60005b600a54811015611746576000306001600160a01b031663a42c70ea600a848154811061130e5761130e61326a565b9060005260206000200154600080516020613452833981519152896040518463ffffffff1660e01b815260040161134793929190613308565b602060405180830381865afa158015611364573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113889190613327565b905080156113c7576113c786600a84815481106113a7576113a761326a565b9060005260206000200154836000805160206134528339815191526125f4565b306001600160a01b031663a42c70ea600a84815481106113e9576113e961326a565b9060005260206000200154600080516020613412833981519152896040518463ffffffff1660e01b815260040161142293929190613308565b602060405180830381865afa15801561143f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114639190613327565b905080156114a2576114a286600a84815481106114825761148261326a565b9060005260206000200154836000805160206134128339815191526125f4565b306001600160a01b031663a42c70ea600a84815481106114c4576114c461326a565b9060005260206000200154600080516020613432833981519152896040518463ffffffff1660e01b81526004016114fd93929190613308565b602060405180830381865afa15801561151a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061153e9190613327565b9050801561157d5761157d86600a848154811061155d5761155d61326a565b9060005260206000200154836000805160206134328339815191526125f4565b306001600160a01b031663a42c70ea600a848154811061159f5761159f61326a565b90600052602060002001546000805160206133f2833981519152896040518463ffffffff1660e01b81526004016115d893929190613308565b602060405180830381865afa1580156115f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116199190613327565b905080156116585761165886600a84815481106116385761163861326a565b9060005260206000200154836000805160206133f28339815191526125f4565b306001600160a01b031663a42c70ea600a848154811061167a5761167a61326a565b9060005260206000200154600080516020613392833981519152896040518463ffffffff1660e01b81526004016116b393929190613308565b602060405180830381865afa1580156116d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116f49190613327565b905080156117335761173386600a84815481106117135761171361326a565b9060005260206000200154836000805160206133928339815191526125f4565b508061173e816132bc565b9150506112e0565b50836001600160a01b03167f23d6711a1d031134a36921253c75aa59e967d38e369ac625992824315e204f208260405161178291815260200190565b60405180910390a250505050565b6000805160206133d28339815191526117a881612565565b6001600160a01b0382166117cf5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03821660009081526008602052604090205460ff16156118095760405163c78e82ad60e01b815260040160405180910390fd5b6001600160a01b038216600081815260086020526040808220805460ff1916600190811790915560078054918201815583527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b03191684179055517f784c8f4dbf0ffedd6e72c76501c545a70f8b203b30a26ce542bf92ba87c248a49190a25050565b6118c86040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b0382166000908152600960209081526040808320848452825291829020825160a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600490910154608082015292915050565b6000805160206133b283398151915261194481612565565b611065612bf1565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b60006000805160206133d283398151915261198f81612565565b6000888152600b6020526040902054156119bc57604051633c884a3960e01b815260040160405180910390fd5b6040518060c0016040528089815260200188815260200187815260200186815260200185815260200184815250600b60008a8152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050155905050600a8890806001815401808255809150506001900390600052602060002001600090919091909150556040518060a00160405280600081526020016000815260200160008152602001600081526020016000815250600c60008a815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050507f1f62f4042c9d0687445c24d4340239988795b5163eea4f40e76a22af9a80918a88604051611b0991815260200190565b60405180910390a1506001979650505050505050565b60006000805160206134528339815191528303611b6057506001600160a01b0381166000908152600960209081526040808320868452909152902054611c64565b6000805160206134128339815191528303611ba257506001600160a01b0381166000908152600960209081526040808320868452909152902060010154611c64565b6000805160206134328339815191528303611be457506001600160a01b0381166000908152600960209081526040808320868452909152902060020154611c64565b6000805160206133f28339815191528303611c2657506001600160a01b0381166000908152600960209081526040808320868452909152902060030154611c64565b6000805160206133928339815191528303610eae57506001600160a01b03811660009081526009602090815260408083208684529091529020600401545b9392505050565b6000805160206133d2833981519152611c8381612565565b6001600160a01b03821660009081526008602052604090205460ff16611cbc57604051633dd1b30560e01b815260040160405180910390fd5b6001600160a01b0382166000908152600860205260408120805460ff191690555b600754811015611e0557826001600160a01b031660078281548110611d0457611d0461326a565b6000918252602090912001546001600160a01b031603611df357805b600754611d2f90600190613296565b811015611dba576007611d438260016132a9565b81548110611d5357611d5361326a565b600091825260209091200154600780546001600160a01b039092169183908110611d7f57611d7f61326a565b600091825260209091200180546001600160a01b0319166001600160a01b039290921691909117905580611db2816132bc565b915050611d20565b506007805480611dcc57611dcc6132d5565b600082815260209020810160001990810180546001600160a01b0319169055019055611e05565b80611dfd816132bc565b915050611cdd565b506040516001600160a01b038316907f4c910b69fe65a61f7531b9c5042b2329ca7179c77290aa7e2eb3afa3c8511fd390600090a25050565b6000805160206133d2833981519152611e5681612565565b6000838152600b6020526040902054611e8257604051633b1d164d60e01b815260040160405180910390fd5b6000838152600b602090815260409182902084518155908401516001820155818401516002820155606084015160038201556080840151600482015560a08401516005909101555183907f6b4f47836fff23be2d07ab675f5d4b10dc118552142b34f04f70db65e6a6419690611ef9908590612f61565b60405180910390a2505050565b6000611f10612998565b611f1861256f565b6001600160a01b03841660009081526008602052604090205460ff16611f5157604051633dd1b30560e01b815260040160405180910390fd5b60408051600481526024810182526020810180516001600160e01b031663a90d728f60e01b179052905160009182916001600160a01b03871691611f9491613362565b6000604051808303816000865af19150503d8060008114611fd1576040519150601f19603f3d011682016040523d82523d6000602084013e611fd6565b606091505b509150915081611ff957604051632bb978cf60e01b815260040160405180910390fd5b60008180602001905181019061200f9190613327565b905061201c8786836129fb565b856001600160a01b0316876001600160a01b03167ff2ecb5d3ae35532714be41e7338f5dd28ba159beae417aa48aad36d11a868b498360405161206191815260200190565b60405180910390a360019350505050611c6460018055565b606060078054806020026020016040519081016040528092919081815260200182805480156120d157602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116120b3575b5050505050905090565b6000828152602081905260409020600101546120f681612565565b610de383836128db565b6000805160206133d283398151915261211881612565565b6001600160a01b03821661213f5760405163e6c4247b60e01b815260040160405180910390fd5b60008051602061345283398151915283036121795760028054610100600160a81b0319166101006001600160a01b03851602179055612249565b60008051602061341283398151915283036121ae57600380546001600160a01b0319166001600160a01b038416179055612249565b60008051602061343283398151915283036121e357600480546001600160a01b0319166001600160a01b038416179055612249565b6000805160206133f2833981519152830361221857600580546001600160a01b0319166001600160a01b038416179055612249565b6000805160206133928339815191528303610eae57600680546001600160a01b0319166001600160a01b0384161790555b816001600160a01b03167f4952f88e1ac12e72cbe037dc5569f3a7803f8ed0de21288624ac3ae2e88fb35284604051611ef991815260200190565b600061228e612998565b61229661256f565b6001600160a01b03851660009081526008602052604090205460ff166122cf57604051633dd1b30560e01b815260040160405180910390fd5b826000036122ef5760405162a4671960e71b815260040160405180910390fd5b604080516001600160a01b038781166024830152306044830152606480830187905283518084039091018152608490920183526020820180516001600160e01b0316633165a76560e21b179052915160009287169161234d91613362565b6000604051808303816000865af19150503d806000811461238a576040519150601f19603f3d011682016040523d82523d6000602084013e61238f565b606091505b50509050806123b157604051630c95a54f60e01b815260040160405180910390fd5b6123bc8684866129fb565b846001600160a01b0316866001600160a01b03167fe1ee5b767f21f291732f3af94ead0ad2de6534cfd816eb4520698a812f2f816a8660405161240191815260200190565b60405180910390a35050600180805561120d565b600a5460609060009067ffffffffffffffff811115612436576124366130c0565b60405190808252806020026020018201604052801561249957816020015b6124866040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b8152602001906001900390816124545790505b50905060005b600a5481101561255e576001600160a01b0384166000908152600960205260408120600a8054919291849081106124d8576124d861326a565b906000526020600020015481526020019081526020016000206040518060a0016040529081600082015481526020016001820154815260200160028201548152602001600382015481526020016004820154815250508282815181106125405761254061326a565b60200260200101819052508080612556906132bc565b91505061249f565b5092915050565b6110658133612c2e565b60025460ff16156125935760405163d93c066560e01b815260040160405180910390fd5b565b6040516001600160a01b03838116602483015260448201839052610a9c91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050612c70565b604051635216387560e11b8152600090309063a42c70ea9061261e90879086908a90600401613308565b602060405180830381865afa15801561263b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061265f9190613327565b90508281101561268257604051631e9acf1760e31b815260040160405180910390fd5b600061268e8483613296565b6000868152600b6020908152604091829020825160c08101845281548152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a08201529091507ff955fc69b24e08da8ca810f68eb5a0f35c9cc8dc20be6168fea1f385c17c12498401612738576001600160a01b03871660009081526009602090815260408083208984529091529020829055612840565b600080516020613412833981519152840361277b576001600160a01b03871660009081526009602090815260408083208984529091529020600101829055612840565b60008051602061343283398151915284036127be576001600160a01b03871660009081526009602090815260408083208984529091529020600201829055612840565b6000805160206133f28339815191528403612801576001600160a01b03871660009081526009602090815260408083208984529091529020600301829055612840565b6000805160206133928339815191528403610eae576001600160a01b038716600090815260096020908152604080832089845290915290206004018290555b50505050505050565b6000612855838361194c565b6128d3576000838152602081815260408083206001600160a01b03861684529091529020805460ff1916600117905561288b3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600161096c565b50600061096c565b60006128e7838361194c565b156128d3576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a450600161096c565b61294e612bce565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6002600154036129bb57604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b6040516001600160a01b038481166024830152838116604483015260648201839052610de39186918216906323b872dd906084016125c2565b6000828152600b60209081526040808320815160c08101835281548152600182015493810184905260028201549281019290925260038101546060830152600481015460808301526005015460a08201529190612a59908490612cd3565b90506000612a74836040015185612cd390919063ffffffff16565b90506000612a8f846060015186612cd390919063ffffffff16565b90506000612aaa856080015187612cd390919063ffffffff16565b90506000612ac58660a0015188612cd390919063ffffffff16565b90506000818385612ad6888a6132a9565b612ae091906132a9565b612aea91906132a9565b612af491906132a9565b9050878114612b19576000612b09828a613296565b9050612b1581886132a9565b9650505b6001600160a01b038a1660009081526009602090815260408083208c84529091528120805490918891839190612b509084906132a9565b9250508190555085816001016000828254612b6b91906132a9565b9250508190555084816002016000828254612b8691906132a9565b9250508190555083816003016000828254612ba191906132a9565b9250508190555082816004016000828254612bbc91906132a9565b90915550505050505050505050505050565b60025460ff1661259357604051638dfc202b60e01b815260040160405180910390fd5b612bf961256f565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861297b3390565b612c38828261194c565b612c6c5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044015b60405180910390fd5b5050565b6000612c856001600160a01b03841683612cf9565b90508051600014158015612caa575080806020019051810190612ca89190613340565b155b15610a9c57604051635274afe760e01b81526001600160a01b0384166004820152602401612c63565b600081156113881983900484111517612ceb57600080fd5b506127109102611388010490565b6060611c648383600084600080856001600160a01b03168486604051612d1f9190613362565b60006040518083038185875af1925050503d8060008114612d5c576040519150601f19603f3d011682016040523d82523d6000602084013e612d61565b606091505b5091509150612d71868383612d7b565b9695505050505050565b606082612d9057612d8b82612dd7565b611c64565b8151158015612da757506001600160a01b0384163b155b15612dd057604051639996b31560e01b81526001600160a01b0385166004820152602401612c63565b5080611c64565b805115612de75780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600060208284031215612e1257600080fd5b81356001600160e01b031981168114611c6457600080fd5b6001600160a01b038116811461106557600080fd5b600060208284031215612e5157600080fd5b8135611c6481612e2a565b600060208284031215612e6e57600080fd5b5035919050565b600080600060608486031215612e8a57600080fd5b83359250602084013591506040840135612ea381612e2a565b809150509250925092565b60008060408385031215612ec157600080fd5b823591506020830135612ed381612e2a565b809150509250929050565b6020808252825182820181905260009190848201906040850190845b81811015612f5557612f42838551805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b9284019260c09290920191600101612efa565b50909695505050505050565b60c0810161096c8284805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a08301525050565b60008060008060808587031215612fba57600080fd5b8435612fc581612e2a565b93506020850135612fd581612e2a565b93969395505050506040820135916060013590565b60008060408385031215612ffd57600080fd5b823561300881612e2a565b91506020830135612ed381612e2a565b6000806040838503121561302b57600080fd5b823561303681612e2a565b946020939093013593505050565b60a0810161096c828480518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b60008060008060008060c0878903121561309657600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b634e487b7160e01b600052604160045260246000fd5b60008082840360e08112156130ea57600080fd5b8335925060c0601f198201121561310057600080fd5b5060405160c0810181811067ffffffffffffffff8211171561313257634e487b7160e01b600052604160045260246000fd5b80604052506020840135815260408401356020820152606084013560408201526080840135606082015260a0840135608082015260c084013560a0820152809150509250929050565b60008060006060848603121561319057600080fd5b833561319b81612e2a565b925060208401356131ab81612e2a565b929592945050506040919091013590565b6020808252825182820181905260009190848201906040850190845b81811015612f555783516001600160a01b0316835292840192918401916001016131d8565b6020808252825182820181905260009190848201906040850190845b81811015612f555761325783855180518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b9284019260a09290920191600101613219565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8181038181111561096c5761096c613280565b8082018082111561096c5761096c613280565b6000600182016132ce576132ce613280565b5060010190565b634e487b7160e01b600052603160045260246000fd5b6000602082840312156132fd57600080fd5b8151611c6481612e2a565b92835260208301919091526001600160a01b0316604082015260600190565b60006020828403121561333957600080fd5b5051919050565b60006020828403121561335257600080fd5b81518015158114611c6457600080fd5b6000825160005b818110156133835760208186018101518583015201613369565b50600092019182525091905056fe35b65de3b579a9ce74763d33e74f08dcef72a66ee55fd214549ace2be760d16dbf233dd2aafeb4d50879c4aa5c81e96d92f6e6945c906a58f9f2d1c1631b4b266c0757dc3e6b28b2580c03fd9e96c274acf4f99d91fbec9b418fa1d70604ff1ce404ddc6d6772360eea3184c00b8a6bfc2a971e0bf4f48fdc3c56af5e3bf2cc4dea17103e6dca833246fe1c7037e20c1267b9ee9b25085a4f0ad6a66c6a1827204c6a47ae7910ef8b295215a97e8495a9eaf57b7b05bfd8bf951edb3fd4a16a306aa03964db1f7257357ef09714a5f0ca3633723df419e97015e0c7a3e83edb7a264697066735822122054af0277d7edb732c626f9bcf08fe76356ae830a7a5716f100be73ef99930f8564736f6c63430008140033",
1741
+ "linkReferences": {},
1742
+ "deployedLinkReferences": {}
1743
1743
  }