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

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 (369) hide show
  1. package/dist/RPCLibrary.js +2 -0
  2. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +1688 -1688
  3. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.json +1418 -1418
  4. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.json +247 -247
  5. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.json +368 -306
  6. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.json +2635 -2699
  7. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.json +1107 -1107
  8. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.json +277 -258
  9. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.json +856 -856
  10. package/dist/artifacts/core/tokens/IndexToken.sol/IndexToken.json +710 -710
  11. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.json +1391 -1391
  12. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.json +796 -796
  13. package/dist/artifacts/core/tokens/RToken.sol/RToken.json +1036 -1088
  14. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +1560 -1555
  15. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.json +772 -772
  16. package/dist/artifacts/mocks/core/tokens/crvUSDToken.sol/crvUSDToken.json +433 -433
  17. package/dist/artifacts/zeno/Auction.sol/Auction.json +367 -352
  18. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.json +286 -281
  19. package/dist/artifacts/zeno/Zeno.sol/Zeno.json +582 -582
  20. package/dist/artifacts/zeno/ZenoFactory.sol/ZenoFactory.json +264 -249
  21. package/dist/assets/getSupply.js +3 -0
  22. package/dist/methods/approveToken.js +1 -9
  23. package/dist/minter/tick.js +3 -7
  24. package/dist/pools/lendingPool/borrowFromLendingPool.js +1 -1
  25. package/dist/pools/lendingPool/depositNFTToLendingPool.js +2 -2
  26. package/dist/pools/lendingPool/depositToLendingPool.js +2 -6
  27. package/dist/pools/lendingPool/getPositionView.js +1 -0
  28. package/dist/pools/lendingPool/getUserOfDepositedNFT.js +27 -0
  29. package/dist/pools/lendingPool/withdrawFromLendingPool.js +1 -5
  30. package/dist/pools/stabilityPool/depositToStabilityPool.js +0 -6
  31. package/dist/pools/stabilityPool/withdrawFromStabilityPool.js +0 -6
  32. package/dist/scripts/index.js +12 -10
  33. package/dist/types/RPCLibrary.d.ts +2 -0
  34. package/dist/types/pools/lendingPool/getAllUserData.d.ts +1 -0
  35. package/dist/types/pools/lendingPool/getPositionView.d.ts +2 -0
  36. package/dist/types/pools/lendingPool/getUserOfDepositedNFT.d.ts +11 -0
  37. package/dist/types/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts +0 -1
  38. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPool.d.ts +2 -49
  39. package/dist/types/typechain-types/contracts/core/tokens/DebtToken.d.ts +14 -5
  40. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPool.d.ts +1 -40
  41. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IDebtToken.d.ts +12 -3
  42. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolDebtToken.d.ts +1 -40
  43. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/functions/v1_0_0/libraries/FunctionsRequest__factory.d.ts +1 -1
  44. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwnerWithProposal__factory.d.ts +1 -1
  45. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwner__factory.d.ts +1 -1
  46. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts +1 -1
  47. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts +0 -1
  48. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +1 -1
  49. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
  50. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +1 -1
  51. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.d.ts +1 -1
  52. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/Math__factory.d.ts +1 -1
  53. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts +1 -1
  54. package/dist/types/typechain-types/factories/contracts/core/collectors/FeeCollector__factory.d.ts +1 -1
  55. package/dist/types/typechain-types/factories/contracts/core/collectors/Treasury__factory.d.ts +1 -1
  56. package/dist/types/typechain-types/factories/contracts/core/governance/boost/BoostController__factory.d.ts +1 -1
  57. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +1 -1
  58. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +1 -1
  59. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +1 -1
  60. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/Governance__factory.d.ts +1 -1
  61. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/TimelockController__factory.d.ts +1 -1
  62. package/dist/types/typechain-types/factories/contracts/core/minters/RAACMinter/RAACMinter__factory.d.ts +1 -1
  63. package/dist/types/typechain-types/factories/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator__factory.d.ts +1 -1
  64. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseVRFv2Consumer__factory.d.ts +1 -1
  65. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACHousePriceOracle__factory.d.ts +1 -1
  66. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACPrimeRateOracle__factory.d.ts +1 -1
  67. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPool__factory.d.ts +1 -51
  68. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/NFTLiquidator__factory.d.ts +1 -1
  69. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPool__factory.d.ts +1 -1
  70. package/dist/types/typechain-types/factories/contracts/core/primitives/RAACHousePrices__factory.d.ts +1 -1
  71. package/dist/types/typechain-types/factories/contracts/core/tokens/DEToken__factory.d.ts +1 -1
  72. package/dist/types/typechain-types/factories/contracts/core/tokens/DebtToken__factory.d.ts +6 -2
  73. package/dist/types/typechain-types/factories/contracts/core/tokens/IndexToken__factory.d.ts +1 -1
  74. package/dist/types/typechain-types/factories/contracts/core/tokens/LPToken__factory.d.ts +1 -1
  75. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACNFT__factory.d.ts +1 -1
  76. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACToken__factory.d.ts +1 -1
  77. package/dist/types/typechain-types/factories/contracts/core/tokens/RToken__factory.d.ts +1 -1
  78. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACToken__factory.d.ts +1 -1
  79. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPool__factory.d.ts +0 -30
  80. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IDebtToken__factory.d.ts +4 -0
  81. package/dist/types/typechain-types/factories/contracts/libraries/governance/BoostCalculator__factory.d.ts +1 -1
  82. package/dist/types/typechain-types/factories/contracts/libraries/governance/Checkpoints__factory.d.ts +1 -1
  83. package/dist/types/typechain-types/factories/contracts/libraries/governance/LockManager__factory.d.ts +1 -1
  84. package/dist/types/typechain-types/factories/contracts/libraries/governance/PowerCheckpoint__factory.d.ts +1 -1
  85. package/dist/types/typechain-types/factories/contracts/libraries/governance/RAACVoting__factory.d.ts +1 -1
  86. package/dist/types/typechain-types/factories/contracts/libraries/governance/VotingPowerLib__factory.d.ts +1 -1
  87. package/dist/types/typechain-types/factories/contracts/libraries/math/TimeWeightedAverage__factory.d.ts +1 -1
  88. package/dist/types/typechain-types/factories/contracts/libraries/pools/ReserveLibrary__factory.d.ts +1 -1
  89. package/dist/types/typechain-types/factories/contracts/libraries/utils/StringUtils__factory.d.ts +1 -1
  90. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockTreasury__factory.d.ts +1 -1
  91. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockBaseGauge__factory.d.ts +1 -1
  92. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockGaugeController__factory.d.ts +1 -1
  93. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockTestTarget__factory.d.ts +1 -1
  94. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter__factory.d.ts +1 -1
  95. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockOracle__factory.d.ts +1 -1
  96. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockVRFCoordinatorV2__factory.d.ts +1 -1
  97. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACHousePriceOracle__factory.d.ts +1 -1
  98. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACPrimeRateOracle__factory.d.ts +1 -1
  99. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolCollector__factory.d.ts +1 -1
  100. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolDebtToken__factory.d.ts +1 -31
  101. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPool__factory.d.ts +1 -1
  102. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLiquidityPool__factory.d.ts +1 -1
  103. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockPool__factory.d.ts +1 -1
  104. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockStabilityPool__factory.d.ts +1 -1
  105. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContractWithConfig__factory.d.ts +1 -1
  106. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContract__factory.d.ts +1 -1
  107. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockDistributableContract__factory.d.ts +1 -1
  108. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/RAACHousePricesMock__factory.d.ts +1 -1
  109. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/CrvUSDToken__factory.d.ts +1 -1
  110. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC20Mock__factory.d.ts +1 -1
  111. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC721Mock__factory.d.ts +1 -1
  112. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockCollectableUnderlying__factory.d.ts +1 -1
  113. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockFeeCollectorToken__factory.d.ts +1 -1
  114. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockToken__factory.d.ts +1 -1
  115. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockUSDC__factory.d.ts +1 -1
  116. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockVeToken__factory.d.ts +1 -1
  117. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/RAACMockERC20__factory.d.ts +1 -1
  118. package/dist/types/typechain-types/factories/contracts/mocks/core/vaults/MockVault__factory.d.ts +1 -1
  119. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockStringUtils__factory.d.ts +1 -1
  120. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/BoostCalculatorMock__factory.d.ts +1 -1
  121. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/CheckpointsMock__factory.d.ts +1 -1
  122. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/LockManagerMock__factory.d.ts +1 -1
  123. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/PowerCheckpointMock__factory.d.ts +1 -1
  124. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/RAACVotingMock__factory.d.ts +1 -1
  125. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/VotingPowerMock__factory.d.ts +1 -1
  126. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/TimeWeightedAverageMock__factory.d.ts +1 -1
  127. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/WadRayMathMock__factory.d.ts +1 -1
  128. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMock__factory.d.ts +1 -1
  129. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousDeposit__factory.d.ts +1 -1
  130. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousWithdraw__factory.d.ts +1 -1
  131. package/dist/types/typechain-types/factories/contracts/mocks/tests/VeRAACFuzzHelper__factory.d.ts +1 -1
  132. package/dist/types/typechain-types/factories/contracts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper__factory.d.ts +1 -1
  133. package/dist/types/typechain-types/factories/contracts/zeno/AuctionFactory__factory.d.ts +1 -1
  134. package/dist/types/typechain-types/factories/contracts/zeno/Auction__factory.d.ts +1 -1
  135. package/dist/types/typechain-types/factories/contracts/zeno/ZENOFactory__factory.d.ts +1 -1
  136. package/dist/types/typechain-types/factories/contracts/zeno/ZENO__factory.d.ts +1 -1
  137. package/dist/types/typechain-types/index.d.ts +0 -2
  138. package/dist/types/utils/artifacts.d.ts +1195 -2
  139. package/dist/utils/artifacts.js +2 -2
  140. package/dist/wallet/assets/approveAsset.js +2 -6
  141. package/dist/wallet/assets/burnAsset.js +0 -6
  142. package/dist/wallet/assets/mintAsset.js +1 -6
  143. package/dist/wallet/assets/transferAsset.js +0 -7
  144. package/package.json +3 -3
  145. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.dbg.json +0 -4
  146. package/dist/artifacts/core/collectors/Treasury.sol/Treasury.dbg.json +0 -4
  147. package/dist/artifacts/core/collectors/Treasury.sol/Treasury.json +0 -481
  148. package/dist/artifacts/core/governance/boost/BoostController.sol/BoostController.dbg.json +0 -4
  149. package/dist/artifacts/core/governance/boost/BoostController.sol/BoostController.json +0 -905
  150. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.dbg.json +0 -4
  151. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.json +0 -1398
  152. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.dbg.json +0 -4
  153. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.json +0 -1435
  154. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.dbg.json +0 -4
  155. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.json +0 -1471
  156. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.dbg.json +0 -4
  157. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.json +0 -1471
  158. package/dist/artifacts/core/governance/proposals/Governance.sol/Governance.dbg.json +0 -4
  159. package/dist/artifacts/core/governance/proposals/Governance.sol/Governance.json +0 -1242
  160. package/dist/artifacts/core/governance/proposals/TimelockController.sol/TimelockController.dbg.json +0 -4
  161. package/dist/artifacts/core/governance/proposals/TimelockController.sol/TimelockController.json +0 -988
  162. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.dbg.json +0 -4
  163. package/dist/artifacts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator.sol/RAACReleaseOrchestrator.dbg.json +0 -4
  164. package/dist/artifacts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator.sol/RAACReleaseOrchestrator.json +0 -860
  165. package/dist/artifacts/core/oracles/BaseChainlinkFunctionsOracle.sol/BaseChainlinkFunctionsOracle.dbg.json +0 -4
  166. package/dist/artifacts/core/oracles/BaseChainlinkFunctionsOracle.sol/BaseChainlinkFunctionsOracle.json +0 -264
  167. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.dbg.json +0 -4
  168. package/dist/artifacts/core/oracles/RAACHousePriceOracle.sol/RAACHousePriceOracle.dbg.json +0 -4
  169. package/dist/artifacts/core/oracles/RAACHousePriceOracle.sol/RAACHousePriceOracle.json +0 -335
  170. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.dbg.json +0 -4
  171. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.dbg.json +0 -4
  172. package/dist/artifacts/core/pools/StabilityPool/NFTLiquidator.sol/NFTLiquidator.dbg.json +0 -4
  173. package/dist/artifacts/core/pools/StabilityPool/NFTLiquidator.sol/NFTLiquidator.json +0 -485
  174. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.dbg.json +0 -4
  175. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.dbg.json +0 -4
  176. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.dbg.json +0 -4
  177. package/dist/artifacts/core/tokens/DebtToken.sol/DebtToken.dbg.json +0 -4
  178. package/dist/artifacts/core/tokens/DebtToken.sol/DebtToken.json +0 -953
  179. package/dist/artifacts/core/tokens/IndexToken.sol/IndexToken.dbg.json +0 -4
  180. package/dist/artifacts/core/tokens/LPToken.sol/LPToken.dbg.json +0 -4
  181. package/dist/artifacts/core/tokens/LPToken.sol/LPToken.json +0 -507
  182. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.dbg.json +0 -4
  183. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.dbg.json +0 -4
  184. package/dist/artifacts/core/tokens/RToken.sol/RToken.dbg.json +0 -4
  185. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.dbg.json +0 -4
  186. package/dist/artifacts/interfaces/IERC20.sol/IERC20.dbg.json +0 -4
  187. package/dist/artifacts/interfaces/IERC20.sol/IERC20.json +0 -194
  188. package/dist/artifacts/interfaces/IHousePrices.sol/IHousePrices.dbg.json +0 -4
  189. package/dist/artifacts/interfaces/IHousePrices.sol/IHousePrices.json +0 -30
  190. package/dist/artifacts/interfaces/INFTLiquidator.sol/INFTLiquidator.dbg.json +0 -4
  191. package/dist/artifacts/interfaces/INFTLiquidator.sol/INFTLiquidator.json +0 -86
  192. package/dist/artifacts/interfaces/IPoolManager.sol/IPoolManager.dbg.json +0 -4
  193. package/dist/artifacts/interfaces/IPoolManager.sol/IPoolManager.json +0 -57
  194. package/dist/artifacts/interfaces/IReserveAllocationLibraryMock.sol/IReserveAllocationLibraryMock.dbg.json +0 -4
  195. package/dist/artifacts/interfaces/IReserveAllocationLibraryMock.sol/IReserveAllocationLibraryMock.json +0 -246
  196. package/dist/artifacts/interfaces/IUSDC.sol/IUSDC.dbg.json +0 -4
  197. package/dist/artifacts/interfaces/IUSDC.sol/IUSDC.json +0 -194
  198. package/dist/artifacts/interfaces/IveRAACDistributor.sol/IveRAACDistributor.dbg.json +0 -4
  199. package/dist/artifacts/interfaces/IveRAACDistributor.sol/IveRAACDistributor.json +0 -100
  200. package/dist/artifacts/interfaces/core/collectors/IBaseCollector.sol/IBaseCollector.dbg.json +0 -4
  201. package/dist/artifacts/interfaces/core/collectors/IBaseCollector.sol/IBaseCollector.json +0 -45
  202. package/dist/artifacts/interfaces/core/collectors/IFeeCollector.sol/IFeeCollector.dbg.json +0 -4
  203. package/dist/artifacts/interfaces/core/collectors/IFeeCollector.sol/IFeeCollector.json +0 -922
  204. package/dist/artifacts/interfaces/core/collectors/ITreasury.sol/ITreasury.dbg.json +0 -4
  205. package/dist/artifacts/interfaces/core/collectors/ITreasury.sol/ITreasury.json +0 -214
  206. package/dist/artifacts/interfaces/core/governance/IBoostController.sol/IBoostController.dbg.json +0 -4
  207. package/dist/artifacts/interfaces/core/governance/IBoostController.sol/IBoostController.json +0 -378
  208. package/dist/artifacts/interfaces/core/governance/gauges/IGauge.sol/IGauge.dbg.json +0 -4
  209. package/dist/artifacts/interfaces/core/governance/gauges/IGauge.sol/IGauge.json +0 -394
  210. package/dist/artifacts/interfaces/core/governance/gauges/IGaugeController.sol/IGaugeController.dbg.json +0 -4
  211. package/dist/artifacts/interfaces/core/governance/gauges/IGaugeController.sol/IGaugeController.json +0 -577
  212. package/dist/artifacts/interfaces/core/governance/proposals/IGovernance.sol/IGovernance.dbg.json +0 -4
  213. package/dist/artifacts/interfaces/core/governance/proposals/IGovernance.sol/IGovernance.json +0 -1134
  214. package/dist/artifacts/interfaces/core/governance/proposals/ITimelockController.sol/ITimelockController.dbg.json +0 -4
  215. package/dist/artifacts/interfaces/core/governance/proposals/ITimelockController.sol/ITimelockController.json +0 -612
  216. package/dist/artifacts/interfaces/core/minters/RAACMinter/IRAACMinter.sol/IRAACMinter.dbg.json +0 -4
  217. package/dist/artifacts/interfaces/core/minters/RAACMinter/IRAACMinter.sol/IRAACMinter.json +0 -542
  218. package/dist/artifacts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator.sol/IReleaseOrchestrator.dbg.json +0 -4
  219. package/dist/artifacts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator.sol/IReleaseOrchestrator.json +0 -358
  220. package/dist/artifacts/interfaces/core/oracles/IBaseVRFv2Consumer.sol/IBaseVRFv2Consumer.dbg.json +0 -4
  221. package/dist/artifacts/interfaces/core/oracles/IBaseVRFv2Consumer.sol/IBaseVRFv2Consumer.json +0 -102
  222. package/dist/artifacts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePrices.dbg.json +0 -4
  223. package/dist/artifacts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePrices.json +0 -193
  224. package/dist/artifacts/interfaces/core/pools/ILiquidityPool.sol/ILiquidityPool.dbg.json +0 -4
  225. package/dist/artifacts/interfaces/core/pools/ILiquidityPool.sol/ILiquidityPool.json +0 -310
  226. package/dist/artifacts/interfaces/core/pools/LendingPool/ILendingPool.sol/ILendingPool.dbg.json +0 -4
  227. package/dist/artifacts/interfaces/core/pools/LendingPool/ILendingPool.sol/ILendingPool.json +0 -1538
  228. package/dist/artifacts/interfaces/core/pools/StabilityPool/IStabilityPool.sol/IStabilityPool.dbg.json +0 -4
  229. package/dist/artifacts/interfaces/core/pools/StabilityPool/IStabilityPool.sol/IStabilityPool.json +0 -622
  230. package/dist/artifacts/interfaces/core/tokens/IDEToken.sol/IDEToken.dbg.json +0 -4
  231. package/dist/artifacts/interfaces/core/tokens/IDEToken.sol/IDEToken.json +0 -333
  232. package/dist/artifacts/interfaces/core/tokens/IDebtToken.sol/IDebtToken.dbg.json +0 -4
  233. package/dist/artifacts/interfaces/core/tokens/IDebtToken.sol/IDebtToken.json +0 -507
  234. package/dist/artifacts/interfaces/core/tokens/IIndexToken.sol/IIndexToken.dbg.json +0 -4
  235. package/dist/artifacts/interfaces/core/tokens/IIndexToken.sol/IIndexToken.json +0 -299
  236. package/dist/artifacts/interfaces/core/tokens/IRAACNFT.sol/IRAACNFT.dbg.json +0 -4
  237. package/dist/artifacts/interfaces/core/tokens/IRAACNFT.sol/IRAACNFT.json +0 -816
  238. package/dist/artifacts/interfaces/core/tokens/IRAACToken.sol/IRAACToken.dbg.json +0 -4
  239. package/dist/artifacts/interfaces/core/tokens/IRAACToken.sol/IRAACToken.json +0 -567
  240. package/dist/artifacts/interfaces/core/tokens/IRToken.sol/IRToken.dbg.json +0 -4
  241. package/dist/artifacts/interfaces/core/tokens/IRToken.sol/IRToken.json +0 -641
  242. package/dist/artifacts/interfaces/core/tokens/IveRAACToken.sol/IveRAACToken.dbg.json +0 -4
  243. package/dist/artifacts/interfaces/core/tokens/IveRAACToken.sol/IveRAACToken.json +0 -560
  244. package/dist/artifacts/interfaces/core/vaults/IBaseVault.sol/IBaseVault.dbg.json +0 -4
  245. package/dist/artifacts/interfaces/core/vaults/IBaseVault.sol/IBaseVault.json +0 -185
  246. package/dist/artifacts/interfaces/curve/ICurveCrvUSDVault.sol/ICurveCrvUSDVault.dbg.json +0 -4
  247. package/dist/artifacts/interfaces/curve/ICurveCrvUSDVault.sol/ICurveCrvUSDVault.json +0 -250
  248. package/dist/artifacts/interfaces/zeno/IAuction.sol/IAuction.dbg.json +0 -4
  249. package/dist/artifacts/interfaces/zeno/IAuction.sol/IAuction.json +0 -162
  250. package/dist/artifacts/interfaces/zeno/IZENO.sol/IZENO.dbg.json +0 -4
  251. package/dist/artifacts/interfaces/zeno/IZENO.sol/IZENO.json +0 -321
  252. package/dist/artifacts/libraries/governance/BoostCalculator.sol/BoostCalculator.dbg.json +0 -4
  253. package/dist/artifacts/libraries/governance/BoostCalculator.sol/BoostCalculator.json +0 -51
  254. package/dist/artifacts/libraries/governance/Checkpoints.sol/Checkpoints.dbg.json +0 -4
  255. package/dist/artifacts/libraries/governance/Checkpoints.sol/Checkpoints.json +0 -69
  256. package/dist/artifacts/libraries/governance/LockManager.sol/LockManager.dbg.json +0 -4
  257. package/dist/artifacts/libraries/governance/LockManager.sol/LockManager.json +0 -123
  258. package/dist/artifacts/libraries/governance/PowerCheckpoint.sol/PowerCheckpoint.dbg.json +0 -4
  259. package/dist/artifacts/libraries/governance/PowerCheckpoint.sol/PowerCheckpoint.json +0 -70
  260. package/dist/artifacts/libraries/governance/RAACVoting.sol/RAACVoting.dbg.json +0 -4
  261. package/dist/artifacts/libraries/governance/RAACVoting.sol/RAACVoting.json +0 -102
  262. package/dist/artifacts/libraries/governance/VotingPowerLib.sol/VotingPowerLib.dbg.json +0 -4
  263. package/dist/artifacts/libraries/governance/VotingPowerLib.sol/VotingPowerLib.json +0 -76
  264. package/dist/artifacts/libraries/math/PercentageMath.sol/PercentageMath.dbg.json +0 -4
  265. package/dist/artifacts/libraries/math/PercentageMath.sol/PercentageMath.json +0 -10
  266. package/dist/artifacts/libraries/math/TimeWeightedAverage.sol/TimeWeightedAverage.dbg.json +0 -4
  267. package/dist/artifacts/libraries/math/TimeWeightedAverage.sol/TimeWeightedAverage.json +0 -142
  268. package/dist/artifacts/libraries/math/WadRayMath.sol/WadRayMath.dbg.json +0 -4
  269. package/dist/artifacts/libraries/math/WadRayMath.sol/WadRayMath.json +0 -10
  270. package/dist/artifacts/libraries/pools/DataTypes.sol/DataTypes.dbg.json +0 -4
  271. package/dist/artifacts/libraries/pools/DataTypes.sol/DataTypes.json +0 -10
  272. package/dist/artifacts/libraries/pools/ReserveLibrary.sol/ReserveLibrary.dbg.json +0 -4
  273. package/dist/artifacts/libraries/pools/ReserveLibrary.sol/ReserveLibrary.json +0 -153
  274. package/dist/artifacts/libraries/utils/StringUtils.sol/StringUtils.dbg.json +0 -4
  275. package/dist/artifacts/libraries/utils/StringUtils.sol/StringUtils.json +0 -16
  276. package/dist/artifacts/mocks/core/collectors/MockTreasury.sol/MockTreasury.dbg.json +0 -4
  277. package/dist/artifacts/mocks/core/collectors/MockTreasury.sol/MockTreasury.json +0 -255
  278. package/dist/artifacts/mocks/core/governance/gauges/MockBaseGauge.sol/MockBaseGauge.dbg.json +0 -4
  279. package/dist/artifacts/mocks/core/governance/gauges/MockBaseGauge.sol/MockBaseGauge.json +0 -1522
  280. package/dist/artifacts/mocks/core/governance/gauges/MockGaugeController.sol/MockGaugeController.dbg.json +0 -4
  281. package/dist/artifacts/mocks/core/governance/gauges/MockGaugeController.sol/MockGaugeController.json +0 -49
  282. package/dist/artifacts/mocks/core/governance/proposals/TimelockTestTarget.sol/TimelockTestTarget.dbg.json +0 -4
  283. package/dist/artifacts/mocks/core/governance/proposals/TimelockTestTarget.sol/TimelockTestTarget.json +0 -112
  284. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/IFunctionsRouter.dbg.json +0 -4
  285. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/IFunctionsRouter.json +0 -50
  286. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter.dbg.json +0 -4
  287. package/dist/artifacts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter.json +0 -69
  288. package/dist/artifacts/mocks/core/oracles/MockOracle.sol/MockOracle.dbg.json +0 -4
  289. package/dist/artifacts/mocks/core/oracles/MockOracle.sol/MockOracle.json +0 -63
  290. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.dbg.json +0 -4
  291. package/dist/artifacts/mocks/core/oracles/TestRAACHousePriceOracle.sol/TestRAACHousePriceOracle.dbg.json +0 -4
  292. package/dist/artifacts/mocks/core/oracles/TestRAACHousePriceOracle.sol/TestRAACHousePriceOracle.json +0 -358
  293. package/dist/artifacts/mocks/core/oracles/TestRAACPrimeRateOracle.sol/TestRAACPrimeRateOracle.dbg.json +0 -4
  294. package/dist/artifacts/mocks/core/oracles/TestRAACPrimeRateOracle.sol/TestRAACPrimeRateOracle.json +0 -373
  295. package/dist/artifacts/mocks/core/pools/MockLendingPool.sol/MockLendingPool.dbg.json +0 -4
  296. package/dist/artifacts/mocks/core/pools/MockLendingPool.sol/MockLendingPool.json +0 -241
  297. package/dist/artifacts/mocks/core/pools/MockLendingPoolCollector.sol/MockLendingPoolCollector.dbg.json +0 -4
  298. package/dist/artifacts/mocks/core/pools/MockLendingPoolCollector.sol/MockLendingPoolCollector.json +0 -288
  299. package/dist/artifacts/mocks/core/pools/MockLendingPoolDebtToken.sol/MockLendingPoolDebtToken.dbg.json +0 -4
  300. package/dist/artifacts/mocks/core/pools/MockLendingPoolDebtToken.sol/MockLendingPoolDebtToken.json +0 -1560
  301. package/dist/artifacts/mocks/core/pools/MockLiquidityPool.sol/MockLiquidityPool.dbg.json +0 -4
  302. package/dist/artifacts/mocks/core/pools/MockLiquidityPool.sol/MockLiquidityPool.json +0 -1019
  303. package/dist/artifacts/mocks/core/pools/MockPool.sol/MockPool.dbg.json +0 -4
  304. package/dist/artifacts/mocks/core/pools/MockPool.sol/MockPool.json +0 -93
  305. package/dist/artifacts/mocks/core/pools/MockStabilityPool.sol/MockStabilityPool.dbg.json +0 -4
  306. package/dist/artifacts/mocks/core/pools/MockStabilityPool.sol/MockStabilityPool.json +0 -126
  307. package/dist/artifacts/mocks/core/primitives/MockContract.sol/MockContract.dbg.json +0 -4
  308. package/dist/artifacts/mocks/core/primitives/MockContract.sol/MockContract.json +0 -37
  309. package/dist/artifacts/mocks/core/primitives/MockContractWithConfig.sol/MockContractWithConfig.dbg.json +0 -4
  310. package/dist/artifacts/mocks/core/primitives/MockContractWithConfig.sol/MockContractWithConfig.json +0 -52
  311. package/dist/artifacts/mocks/core/primitives/MockDistributableContract.sol/MockDistributableContract.dbg.json +0 -4
  312. package/dist/artifacts/mocks/core/primitives/MockDistributableContract.sol/MockDistributableContract.json +0 -73
  313. package/dist/artifacts/mocks/core/primitives/RAACHousePricesMock.sol/RAACHousePricesMock.dbg.json +0 -4
  314. package/dist/artifacts/mocks/core/primitives/RAACHousePricesMock.sol/RAACHousePricesMock.json +0 -67
  315. package/dist/artifacts/mocks/core/tokens/ERC20Mock.sol/ERC20Mock.dbg.json +0 -4
  316. package/dist/artifacts/mocks/core/tokens/ERC20Mock.sol/ERC20Mock.json +0 -353
  317. package/dist/artifacts/mocks/core/tokens/ERC721Mock.sol/ERC721Mock.dbg.json +0 -4
  318. package/dist/artifacts/mocks/core/tokens/ERC721Mock.sol/ERC721Mock.json +0 -491
  319. package/dist/artifacts/mocks/core/tokens/MockCollectableUnderlying.sol/MockCollectableUnderlying.dbg.json +0 -4
  320. package/dist/artifacts/mocks/core/tokens/MockCollectableUnderlying.sol/MockCollectableUnderlying.json +0 -568
  321. package/dist/artifacts/mocks/core/tokens/MockFeeCollectorToken.sol/MockFeeCollectorToken.dbg.json +0 -4
  322. package/dist/artifacts/mocks/core/tokens/MockFeeCollectorToken.sol/MockFeeCollectorToken.json +0 -515
  323. package/dist/artifacts/mocks/core/tokens/MockToken.sol/MockToken.dbg.json +0 -4
  324. package/dist/artifacts/mocks/core/tokens/MockToken.sol/MockToken.json +0 -426
  325. package/dist/artifacts/mocks/core/tokens/MockUSDC.sol/MockUSDC.dbg.json +0 -4
  326. package/dist/artifacts/mocks/core/tokens/MockUSDC.sol/MockUSDC.json +0 -348
  327. package/dist/artifacts/mocks/core/tokens/MockVeToken.sol/MockVeToken.dbg.json +0 -4
  328. package/dist/artifacts/mocks/core/tokens/MockVeToken.sol/MockVeToken.json +0 -905
  329. package/dist/artifacts/mocks/core/tokens/RAACMockERC20.sol/RAACMockERC20.dbg.json +0 -4
  330. package/dist/artifacts/mocks/core/tokens/RAACMockERC20.sol/RAACMockERC20.json +0 -422
  331. package/dist/artifacts/mocks/core/tokens/crvUSDToken.sol/crvUSDToken.dbg.json +0 -4
  332. package/dist/artifacts/mocks/core/vaults/MockVault.sol/MockVault.dbg.json +0 -4
  333. package/dist/artifacts/mocks/core/vaults/MockVault.sol/MockVault.json +0 -672
  334. package/dist/artifacts/mocks/libraries/MockStringUtils.sol/MockStringUtils.dbg.json +0 -4
  335. package/dist/artifacts/mocks/libraries/MockStringUtils.sol/MockStringUtils.json +0 -35
  336. package/dist/artifacts/mocks/libraries/governance/BoostCalculatorMock.sol/BoostCalculatorMock.dbg.json +0 -4
  337. package/dist/artifacts/mocks/libraries/governance/BoostCalculatorMock.sol/BoostCalculatorMock.json +0 -431
  338. package/dist/artifacts/mocks/libraries/governance/CheckpointsMock.sol/CheckpointsMock.dbg.json +0 -4
  339. package/dist/artifacts/mocks/libraries/governance/CheckpointsMock.sol/CheckpointsMock.json +0 -144
  340. package/dist/artifacts/mocks/libraries/governance/LockManagerMock.sol/LockManagerMock.dbg.json +0 -4
  341. package/dist/artifacts/mocks/libraries/governance/LockManagerMock.sol/LockManagerMock.json +0 -237
  342. package/dist/artifacts/mocks/libraries/governance/PowerCheckpointMock.sol/PowerCheckpointMock.dbg.json +0 -4
  343. package/dist/artifacts/mocks/libraries/governance/PowerCheckpointMock.sol/PowerCheckpointMock.json +0 -221
  344. package/dist/artifacts/mocks/libraries/governance/RAACVotingMock.sol/RAACVotingMock.dbg.json +0 -4
  345. package/dist/artifacts/mocks/libraries/governance/RAACVotingMock.sol/RAACVotingMock.json +0 -95
  346. package/dist/artifacts/mocks/libraries/governance/VotingPowerMock.sol/VotingPowerMock.dbg.json +0 -4
  347. package/dist/artifacts/mocks/libraries/governance/VotingPowerMock.sol/VotingPowerMock.json +0 -442
  348. package/dist/artifacts/mocks/libraries/math/TimeWeightedAverageMock.sol/TimeWeightedAverageMock.dbg.json +0 -4
  349. package/dist/artifacts/mocks/libraries/math/TimeWeightedAverageMock.sol/TimeWeightedAverageMock.json +0 -309
  350. package/dist/artifacts/mocks/libraries/math/WadRayMathMock.sol/WadRayMathMock.dbg.json +0 -4
  351. package/dist/artifacts/mocks/libraries/math/WadRayMathMock.sol/WadRayMathMock.json +0 -188
  352. package/dist/artifacts/mocks/libraries/pools/ReserveLibraryMock.sol/ReserveLibraryMock.dbg.json +0 -4
  353. package/dist/artifacts/mocks/libraries/pools/ReserveLibraryMock.sol/ReserveLibraryMock.json +0 -339
  354. package/dist/artifacts/mocks/tests/MaliciousDeposit.sol/MaliciousDeposit.dbg.json +0 -4
  355. package/dist/artifacts/mocks/tests/MaliciousDeposit.sol/MaliciousDeposit.json +0 -52
  356. package/dist/artifacts/mocks/tests/MaliciousWithdraw.sol/MaliciousWithdraw.dbg.json +0 -4
  357. package/dist/artifacts/mocks/tests/MaliciousWithdraw.sol/MaliciousWithdraw.json +0 -52
  358. package/dist/artifacts/mocks/tests/VeRAACFuzzHelper.sol/VeRAACFuzzHelper.dbg.json +0 -4
  359. package/dist/artifacts/mocks/tests/VeRAACFuzzHelper.sol/VeRAACFuzzHelper.json +0 -88
  360. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/IVMTimeControl.dbg.json +0 -4
  361. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/IVMTimeControl.json +0 -24
  362. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper.dbg.json +0 -4
  363. package/dist/artifacts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper.json +0 -129
  364. package/dist/artifacts/zeno/Auction.sol/Auction.dbg.json +0 -4
  365. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.dbg.json +0 -4
  366. package/dist/artifacts/zeno/Zeno.sol/ZENO.dbg.json +0 -4
  367. package/dist/artifacts/zeno/ZenoFactory.sol/ZENOFactory.dbg.json +0 -4
  368. package/dist/types/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/ERC721Wrapper.d.ts +0 -261
  369. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/ERC721Wrapper__factory.d.ts +0 -417
@@ -1,1472 +1,1472 @@
1
1
  {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "RAACNFT",
4
- "sourceName": "contracts/core/tokens/RAACNFT.sol",
5
- "abi": [
6
- {
7
- "inputs": [
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "RAACNFT",
4
+ "sourceName": "contracts/core/tokens/RAACNFT.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_token",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "_housePrices",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "address",
20
+ "name": "initialOwner",
21
+ "type": "address"
22
+ }
23
+ ],
24
+ "stateMutability": "nonpayable",
25
+ "type": "constructor"
26
+ },
8
27
  {
9
- "internalType": "address",
10
- "name": "_token",
11
- "type": "address"
28
+ "inputs": [],
29
+ "name": "AccessControlBadConfirmation",
30
+ "type": "error"
12
31
  },
13
32
  {
14
- "internalType": "address",
15
- "name": "_housePrices",
16
- "type": "address"
33
+ "inputs": [
34
+ {
35
+ "internalType": "address",
36
+ "name": "account",
37
+ "type": "address"
38
+ },
39
+ {
40
+ "internalType": "bytes32",
41
+ "name": "neededRole",
42
+ "type": "bytes32"
43
+ }
44
+ ],
45
+ "name": "AccessControlUnauthorizedAccount",
46
+ "type": "error"
17
47
  },
18
48
  {
19
- "internalType": "address",
20
- "name": "initialOwner",
21
- "type": "address"
22
- }
23
- ],
24
- "stateMutability": "nonpayable",
25
- "type": "constructor"
26
- },
27
- {
28
- "inputs": [],
29
- "name": "AccessControlBadConfirmation",
30
- "type": "error"
31
- },
32
- {
33
- "inputs": [
34
- {
35
- "internalType": "address",
36
- "name": "account",
37
- "type": "address"
38
- },
39
- {
40
- "internalType": "bytes32",
41
- "name": "neededRole",
42
- "type": "bytes32"
43
- }
44
- ],
45
- "name": "AccessControlUnauthorizedAccount",
46
- "type": "error"
47
- },
48
- {
49
- "inputs": [
50
- {
51
- "internalType": "address",
52
- "name": "target",
53
- "type": "address"
54
- }
55
- ],
56
- "name": "AddressEmptyCode",
57
- "type": "error"
58
- },
59
- {
60
- "inputs": [
61
- {
62
- "internalType": "address",
63
- "name": "account",
64
- "type": "address"
65
- }
66
- ],
67
- "name": "AddressInsufficientBalance",
68
- "type": "error"
69
- },
70
- {
71
- "inputs": [],
72
- "name": "ERC721EnumerableForbiddenBatchMint",
73
- "type": "error"
74
- },
75
- {
76
- "inputs": [
77
- {
78
- "internalType": "address",
79
- "name": "sender",
80
- "type": "address"
81
- },
82
- {
83
- "internalType": "uint256",
84
- "name": "tokenId",
85
- "type": "uint256"
86
- },
87
- {
88
- "internalType": "address",
89
- "name": "owner",
90
- "type": "address"
91
- }
92
- ],
93
- "name": "ERC721IncorrectOwner",
94
- "type": "error"
95
- },
96
- {
97
- "inputs": [
49
+ "inputs": [
50
+ {
51
+ "internalType": "address",
52
+ "name": "target",
53
+ "type": "address"
54
+ }
55
+ ],
56
+ "name": "AddressEmptyCode",
57
+ "type": "error"
58
+ },
98
59
  {
99
- "internalType": "address",
100
- "name": "operator",
101
- "type": "address"
60
+ "inputs": [
61
+ {
62
+ "internalType": "address",
63
+ "name": "account",
64
+ "type": "address"
65
+ }
66
+ ],
67
+ "name": "AddressInsufficientBalance",
68
+ "type": "error"
102
69
  },
103
70
  {
104
- "internalType": "uint256",
105
- "name": "tokenId",
106
- "type": "uint256"
107
- }
108
- ],
109
- "name": "ERC721InsufficientApproval",
110
- "type": "error"
111
- },
112
- {
113
- "inputs": [
114
- {
115
- "internalType": "address",
116
- "name": "approver",
117
- "type": "address"
118
- }
119
- ],
120
- "name": "ERC721InvalidApprover",
121
- "type": "error"
122
- },
123
- {
124
- "inputs": [
125
- {
126
- "internalType": "address",
127
- "name": "operator",
128
- "type": "address"
129
- }
130
- ],
131
- "name": "ERC721InvalidOperator",
132
- "type": "error"
133
- },
134
- {
135
- "inputs": [
136
- {
137
- "internalType": "address",
138
- "name": "owner",
139
- "type": "address"
140
- }
141
- ],
142
- "name": "ERC721InvalidOwner",
143
- "type": "error"
144
- },
145
- {
146
- "inputs": [
147
- {
148
- "internalType": "address",
149
- "name": "receiver",
150
- "type": "address"
151
- }
152
- ],
153
- "name": "ERC721InvalidReceiver",
154
- "type": "error"
155
- },
156
- {
157
- "inputs": [
158
- {
159
- "internalType": "address",
160
- "name": "sender",
161
- "type": "address"
162
- }
163
- ],
164
- "name": "ERC721InvalidSender",
165
- "type": "error"
166
- },
167
- {
168
- "inputs": [
169
- {
170
- "internalType": "uint256",
171
- "name": "tokenId",
172
- "type": "uint256"
173
- }
174
- ],
175
- "name": "ERC721NonexistentToken",
176
- "type": "error"
177
- },
178
- {
179
- "inputs": [
71
+ "inputs": [],
72
+ "name": "ERC721EnumerableForbiddenBatchMint",
73
+ "type": "error"
74
+ },
180
75
  {
181
- "internalType": "address",
182
- "name": "owner",
183
- "type": "address"
76
+ "inputs": [
77
+ {
78
+ "internalType": "address",
79
+ "name": "sender",
80
+ "type": "address"
81
+ },
82
+ {
83
+ "internalType": "uint256",
84
+ "name": "tokenId",
85
+ "type": "uint256"
86
+ },
87
+ {
88
+ "internalType": "address",
89
+ "name": "owner",
90
+ "type": "address"
91
+ }
92
+ ],
93
+ "name": "ERC721IncorrectOwner",
94
+ "type": "error"
184
95
  },
185
96
  {
186
- "internalType": "uint256",
187
- "name": "index",
188
- "type": "uint256"
189
- }
190
- ],
191
- "name": "ERC721OutOfBoundsIndex",
192
- "type": "error"
193
- },
194
- {
195
- "inputs": [],
196
- "name": "ExceedsMaxFee",
197
- "type": "error"
198
- },
199
- {
200
- "inputs": [],
201
- "name": "FailedInnerCall",
202
- "type": "error"
203
- },
204
- {
205
- "inputs": [],
206
- "name": "HousePrice",
207
- "type": "error"
208
- },
209
- {
210
- "inputs": [],
211
- "name": "InsufficientBalance",
212
- "type": "error"
213
- },
214
- {
215
- "inputs": [],
216
- "name": "InsufficientFundsMint",
217
- "type": "error"
218
- },
219
- {
220
- "inputs": [],
221
- "name": "InvalidAddress",
222
- "type": "error"
223
- },
224
- {
225
- "inputs": [],
226
- "name": "InvalidRange",
227
- "type": "error"
228
- },
229
- {
230
- "inputs": [
231
- {
232
- "internalType": "address",
233
- "name": "owner",
234
- "type": "address"
235
- }
236
- ],
237
- "name": "OwnableInvalidOwner",
238
- "type": "error"
239
- },
240
- {
241
- "inputs": [
242
- {
243
- "internalType": "address",
244
- "name": "account",
245
- "type": "address"
246
- }
247
- ],
248
- "name": "OwnableUnauthorizedAccount",
249
- "type": "error"
250
- },
251
- {
252
- "inputs": [],
253
- "name": "ReentrancyGuardReentrantCall",
254
- "type": "error"
255
- },
256
- {
257
- "inputs": [
258
- {
259
- "internalType": "address",
260
- "name": "token",
261
- "type": "address"
262
- }
263
- ],
264
- "name": "SafeERC20FailedOperation",
265
- "type": "error"
266
- },
267
- {
268
- "inputs": [],
269
- "name": "TokenAlreadyMinted",
270
- "type": "error"
271
- },
272
- {
273
- "inputs": [],
274
- "name": "ZeroAddress",
275
- "type": "error"
276
- },
277
- {
278
- "anonymous": false,
279
- "inputs": [
280
- {
281
- "indexed": false,
282
- "internalType": "bool",
283
- "name": "allowBurning",
284
- "type": "bool"
285
- }
286
- ],
287
- "name": "AllowBurningUpdated",
288
- "type": "event"
289
- },
290
- {
291
- "anonymous": false,
292
- "inputs": [
293
- {
294
- "indexed": true,
295
- "internalType": "address",
296
- "name": "owner",
297
- "type": "address"
298
- },
299
- {
300
- "indexed": true,
301
- "internalType": "address",
302
- "name": "approved",
303
- "type": "address"
304
- },
305
- {
306
- "indexed": true,
307
- "internalType": "uint256",
308
- "name": "tokenId",
309
- "type": "uint256"
310
- }
311
- ],
312
- "name": "Approval",
313
- "type": "event"
314
- },
315
- {
316
- "anonymous": false,
317
- "inputs": [
318
- {
319
- "indexed": true,
320
- "internalType": "address",
321
- "name": "owner",
322
- "type": "address"
323
- },
324
- {
325
- "indexed": true,
326
- "internalType": "address",
327
- "name": "operator",
328
- "type": "address"
329
- },
330
- {
331
- "indexed": false,
332
- "internalType": "bool",
333
- "name": "approved",
334
- "type": "bool"
335
- }
336
- ],
337
- "name": "ApprovalForAll",
338
- "type": "event"
339
- },
340
- {
341
- "anonymous": false,
342
- "inputs": [
343
- {
344
- "indexed": false,
345
- "internalType": "string",
346
- "name": "uri",
347
- "type": "string"
348
- }
349
- ],
350
- "name": "BaseURIUpdated",
351
- "type": "event"
352
- },
353
- {
354
- "anonymous": false,
355
- "inputs": [
356
- {
357
- "indexed": false,
358
- "internalType": "uint256",
359
- "name": "maxFee",
360
- "type": "uint256"
361
- }
362
- ],
363
- "name": "MaxFeeUpdated",
364
- "type": "event"
365
- },
366
- {
367
- "anonymous": false,
368
- "inputs": [
369
- {
370
- "indexed": false,
371
- "internalType": "uint256",
372
- "name": "mintFee",
373
- "type": "uint256"
374
- }
375
- ],
376
- "name": "MintFeeUpdated",
377
- "type": "event"
378
- },
379
- {
380
- "anonymous": false,
381
- "inputs": [
382
- {
383
- "indexed": true,
384
- "internalType": "bytes32",
385
- "name": "role",
386
- "type": "bytes32"
387
- },
388
- {
389
- "indexed": true,
390
- "internalType": "address",
391
- "name": "previousMinter",
392
- "type": "address"
393
- },
394
- {
395
- "indexed": true,
396
- "internalType": "address",
397
- "name": "newMinter",
398
- "type": "address"
399
- }
400
- ],
401
- "name": "MinterRoleTransferred",
402
- "type": "event"
403
- },
404
- {
405
- "anonymous": false,
406
- "inputs": [
407
- {
408
- "indexed": true,
409
- "internalType": "address",
410
- "name": "payer",
411
- "type": "address"
412
- },
413
- {
414
- "indexed": false,
415
- "internalType": "uint256",
416
- "name": "fee",
417
- "type": "uint256"
418
- }
419
- ],
420
- "name": "NFTFeePaid",
421
- "type": "event"
422
- },
423
- {
424
- "anonymous": false,
425
- "inputs": [
426
- {
427
- "indexed": false,
428
- "internalType": "uint256",
429
- "name": "fee",
430
- "type": "uint256"
431
- }
432
- ],
433
- "name": "NFTFeeUpdated",
434
- "type": "event"
435
- },
436
- {
437
- "anonymous": false,
438
- "inputs": [
97
+ "inputs": [
98
+ {
99
+ "internalType": "address",
100
+ "name": "operator",
101
+ "type": "address"
102
+ },
103
+ {
104
+ "internalType": "uint256",
105
+ "name": "tokenId",
106
+ "type": "uint256"
107
+ }
108
+ ],
109
+ "name": "ERC721InsufficientApproval",
110
+ "type": "error"
111
+ },
439
112
  {
440
- "indexed": true,
441
- "internalType": "address",
442
- "name": "minter",
443
- "type": "address"
113
+ "inputs": [
114
+ {
115
+ "internalType": "address",
116
+ "name": "approver",
117
+ "type": "address"
118
+ }
119
+ ],
120
+ "name": "ERC721InvalidApprover",
121
+ "type": "error"
444
122
  },
445
123
  {
446
- "indexed": false,
447
- "internalType": "uint256",
448
- "name": "tokenId",
449
- "type": "uint256"
124
+ "inputs": [
125
+ {
126
+ "internalType": "address",
127
+ "name": "operator",
128
+ "type": "address"
129
+ }
130
+ ],
131
+ "name": "ERC721InvalidOperator",
132
+ "type": "error"
450
133
  },
451
134
  {
452
- "indexed": false,
453
- "internalType": "uint256",
454
- "name": "price",
455
- "type": "uint256"
135
+ "inputs": [
136
+ {
137
+ "internalType": "address",
138
+ "name": "owner",
139
+ "type": "address"
140
+ }
141
+ ],
142
+ "name": "ERC721InvalidOwner",
143
+ "type": "error"
456
144
  },
457
145
  {
458
- "indexed": false,
459
- "internalType": "uint256",
460
- "name": "mintFee",
461
- "type": "uint256"
462
- }
463
- ],
464
- "name": "NFTMinted",
465
- "type": "event"
466
- },
467
- {
468
- "anonymous": false,
469
- "inputs": [
470
- {
471
- "indexed": true,
472
- "internalType": "address",
473
- "name": "previousOwner",
474
- "type": "address"
475
- },
476
- {
477
- "indexed": true,
478
- "internalType": "address",
479
- "name": "newOwner",
480
- "type": "address"
481
- }
482
- ],
483
- "name": "OwnershipTransferred",
484
- "type": "event"
485
- },
486
- {
487
- "anonymous": false,
488
- "inputs": [
489
- {
490
- "indexed": true,
491
- "internalType": "bytes32",
492
- "name": "role",
493
- "type": "bytes32"
494
- },
495
- {
496
- "indexed": true,
497
- "internalType": "bytes32",
498
- "name": "previousAdminRole",
499
- "type": "bytes32"
500
- },
501
- {
502
- "indexed": true,
503
- "internalType": "bytes32",
504
- "name": "newAdminRole",
505
- "type": "bytes32"
506
- }
507
- ],
508
- "name": "RoleAdminChanged",
509
- "type": "event"
510
- },
511
- {
512
- "anonymous": false,
513
- "inputs": [
514
- {
515
- "indexed": true,
516
- "internalType": "bytes32",
517
- "name": "role",
518
- "type": "bytes32"
519
- },
520
- {
521
- "indexed": true,
522
- "internalType": "address",
523
- "name": "account",
524
- "type": "address"
525
- },
526
- {
527
- "indexed": true,
528
- "internalType": "address",
529
- "name": "sender",
530
- "type": "address"
531
- }
532
- ],
533
- "name": "RoleGranted",
534
- "type": "event"
535
- },
536
- {
537
- "anonymous": false,
538
- "inputs": [
539
- {
540
- "indexed": true,
541
- "internalType": "bytes32",
542
- "name": "role",
543
- "type": "bytes32"
544
- },
545
- {
546
- "indexed": true,
547
- "internalType": "address",
548
- "name": "account",
549
- "type": "address"
550
- },
551
- {
552
- "indexed": true,
553
- "internalType": "address",
554
- "name": "sender",
555
- "type": "address"
556
- }
557
- ],
558
- "name": "RoleRevoked",
559
- "type": "event"
560
- },
561
- {
562
- "anonymous": false,
563
- "inputs": [
564
- {
565
- "indexed": true,
566
- "internalType": "address",
567
- "name": "from",
568
- "type": "address"
569
- },
570
- {
571
- "indexed": true,
572
- "internalType": "address",
573
- "name": "to",
574
- "type": "address"
575
- },
576
- {
577
- "indexed": true,
578
- "internalType": "uint256",
579
- "name": "tokenId",
580
- "type": "uint256"
581
- }
582
- ],
583
- "name": "Transfer",
584
- "type": "event"
585
- },
586
- {
587
- "inputs": [],
588
- "name": "ADMIN_ROLE",
589
- "outputs": [
590
- {
591
- "internalType": "bytes32",
592
- "name": "",
593
- "type": "bytes32"
594
- }
595
- ],
596
- "stateMutability": "view",
597
- "type": "function"
598
- },
599
- {
600
- "inputs": [],
601
- "name": "DEFAULT_ADMIN_ROLE",
602
- "outputs": [
603
- {
604
- "internalType": "bytes32",
605
- "name": "",
606
- "type": "bytes32"
607
- }
608
- ],
609
- "stateMutability": "view",
610
- "type": "function"
611
- },
612
- {
613
- "inputs": [],
614
- "name": "MAX_FEE_PERCENTAGE",
615
- "outputs": [
616
- {
617
- "internalType": "uint256",
618
- "name": "",
619
- "type": "uint256"
620
- }
621
- ],
622
- "stateMutability": "view",
623
- "type": "function"
624
- },
625
- {
626
- "inputs": [],
627
- "name": "MINTER_ROLE",
628
- "outputs": [
629
- {
630
- "internalType": "bytes32",
631
- "name": "",
632
- "type": "bytes32"
633
- }
634
- ],
635
- "stateMutability": "view",
636
- "type": "function"
637
- },
638
- {
639
- "inputs": [],
640
- "name": "MINT_FEE_PERCENTAGE",
641
- "outputs": [
642
- {
643
- "internalType": "uint256",
644
- "name": "",
645
- "type": "uint256"
646
- }
647
- ],
648
- "stateMutability": "view",
649
- "type": "function"
650
- },
651
- {
652
- "inputs": [],
653
- "name": "WITHDRAW_ROLE",
654
- "outputs": [
655
- {
656
- "internalType": "bytes32",
657
- "name": "",
658
- "type": "bytes32"
659
- }
660
- ],
661
- "stateMutability": "view",
662
- "type": "function"
663
- },
664
- {
665
- "inputs": [
666
- {
667
- "internalType": "address",
668
- "name": "minter",
669
- "type": "address"
670
- }
671
- ],
672
- "name": "addMinter",
673
- "outputs": [],
674
- "stateMutability": "nonpayable",
675
- "type": "function"
676
- },
677
- {
678
- "inputs": [],
679
- "name": "allowBurning",
680
- "outputs": [
681
- {
682
- "internalType": "bool",
683
- "name": "",
684
- "type": "bool"
685
- }
686
- ],
687
- "stateMutability": "view",
688
- "type": "function"
689
- },
690
- {
691
- "inputs": [
146
+ "inputs": [
147
+ {
148
+ "internalType": "address",
149
+ "name": "receiver",
150
+ "type": "address"
151
+ }
152
+ ],
153
+ "name": "ERC721InvalidReceiver",
154
+ "type": "error"
155
+ },
692
156
  {
693
- "internalType": "address",
694
- "name": "to",
695
- "type": "address"
157
+ "inputs": [
158
+ {
159
+ "internalType": "address",
160
+ "name": "sender",
161
+ "type": "address"
162
+ }
163
+ ],
164
+ "name": "ERC721InvalidSender",
165
+ "type": "error"
696
166
  },
697
167
  {
698
- "internalType": "uint256",
699
- "name": "tokenId",
700
- "type": "uint256"
701
- }
702
- ],
703
- "name": "approve",
704
- "outputs": [],
705
- "stateMutability": "nonpayable",
706
- "type": "function"
707
- },
708
- {
709
- "inputs": [
710
- {
711
- "internalType": "address",
712
- "name": "owner",
713
- "type": "address"
714
- }
715
- ],
716
- "name": "balanceOf",
717
- "outputs": [
168
+ "inputs": [
169
+ {
170
+ "internalType": "uint256",
171
+ "name": "tokenId",
172
+ "type": "uint256"
173
+ }
174
+ ],
175
+ "name": "ERC721NonexistentToken",
176
+ "type": "error"
177
+ },
718
178
  {
719
- "internalType": "uint256",
720
- "name": "",
721
- "type": "uint256"
722
- }
723
- ],
724
- "stateMutability": "view",
725
- "type": "function"
726
- },
727
- {
728
- "inputs": [],
729
- "name": "baseURI",
730
- "outputs": [
731
- {
732
- "internalType": "string",
733
- "name": "",
734
- "type": "string"
735
- }
736
- ],
737
- "stateMutability": "view",
738
- "type": "function"
739
- },
740
- {
741
- "inputs": [],
742
- "name": "getAllTokens",
743
- "outputs": [
744
- {
745
- "internalType": "uint256[]",
746
- "name": "",
747
- "type": "uint256[]"
748
- }
749
- ],
750
- "stateMutability": "view",
751
- "type": "function"
752
- },
753
- {
754
- "inputs": [
179
+ "inputs": [
180
+ {
181
+ "internalType": "address",
182
+ "name": "owner",
183
+ "type": "address"
184
+ },
185
+ {
186
+ "internalType": "uint256",
187
+ "name": "index",
188
+ "type": "uint256"
189
+ }
190
+ ],
191
+ "name": "ERC721OutOfBoundsIndex",
192
+ "type": "error"
193
+ },
755
194
  {
756
- "internalType": "uint256",
757
- "name": "start",
758
- "type": "uint256"
195
+ "inputs": [],
196
+ "name": "ExceedsMaxFee",
197
+ "type": "error"
759
198
  },
760
199
  {
761
- "internalType": "uint256",
762
- "name": "end",
763
- "type": "uint256"
764
- }
765
- ],
766
- "name": "getAllTokens",
767
- "outputs": [
200
+ "inputs": [],
201
+ "name": "FailedInnerCall",
202
+ "type": "error"
203
+ },
768
204
  {
769
- "internalType": "uint256[]",
770
- "name": "",
771
- "type": "uint256[]"
772
- }
773
- ],
774
- "stateMutability": "view",
775
- "type": "function"
776
- },
777
- {
778
- "inputs": [
779
- {
780
- "internalType": "uint256",
781
- "name": "tokenId",
782
- "type": "uint256"
783
- }
784
- ],
785
- "name": "getApproved",
786
- "outputs": [
205
+ "inputs": [],
206
+ "name": "HousePrice",
207
+ "type": "error"
208
+ },
787
209
  {
788
- "internalType": "address",
789
- "name": "",
790
- "type": "address"
791
- }
792
- ],
793
- "stateMutability": "view",
794
- "type": "function"
795
- },
796
- {
797
- "inputs": [
798
- {
799
- "internalType": "uint256",
800
- "name": "_tokenId",
801
- "type": "uint256"
802
- }
803
- ],
804
- "name": "getHousePrice",
805
- "outputs": [
210
+ "inputs": [],
211
+ "name": "InsufficientBalance",
212
+ "type": "error"
213
+ },
806
214
  {
807
- "internalType": "uint256",
808
- "name": "",
809
- "type": "uint256"
810
- }
811
- ],
812
- "stateMutability": "view",
813
- "type": "function"
814
- },
815
- {
816
- "inputs": [
817
- {
818
- "internalType": "uint256",
819
- "name": "_tokenId",
820
- "type": "uint256"
821
- }
822
- ],
823
- "name": "getMintPrice",
824
- "outputs": [
215
+ "inputs": [],
216
+ "name": "InsufficientFundsMint",
217
+ "type": "error"
218
+ },
825
219
  {
826
- "internalType": "uint256",
827
- "name": "",
828
- "type": "uint256"
829
- }
830
- ],
831
- "stateMutability": "view",
832
- "type": "function"
833
- },
834
- {
835
- "inputs": [
836
- {
837
- "internalType": "bytes32",
838
- "name": "role",
839
- "type": "bytes32"
840
- }
841
- ],
842
- "name": "getRoleAdmin",
843
- "outputs": [
220
+ "inputs": [],
221
+ "name": "InvalidAddress",
222
+ "type": "error"
223
+ },
844
224
  {
845
- "internalType": "bytes32",
846
- "name": "",
847
- "type": "bytes32"
848
- }
849
- ],
850
- "stateMutability": "view",
851
- "type": "function"
852
- },
853
- {
854
- "inputs": [
855
- {
856
- "internalType": "address",
857
- "name": "owner",
858
- "type": "address"
859
- }
860
- ],
861
- "name": "getTokensByOwner",
862
- "outputs": [
225
+ "inputs": [],
226
+ "name": "InvalidRange",
227
+ "type": "error"
228
+ },
863
229
  {
864
- "internalType": "uint256[]",
865
- "name": "",
866
- "type": "uint256[]"
867
- }
868
- ],
869
- "stateMutability": "view",
870
- "type": "function"
871
- },
872
- {
873
- "inputs": [
230
+ "inputs": [
231
+ {
232
+ "internalType": "address",
233
+ "name": "owner",
234
+ "type": "address"
235
+ }
236
+ ],
237
+ "name": "OwnableInvalidOwner",
238
+ "type": "error"
239
+ },
874
240
  {
875
- "internalType": "address",
876
- "name": "owner",
877
- "type": "address"
241
+ "inputs": [
242
+ {
243
+ "internalType": "address",
244
+ "name": "account",
245
+ "type": "address"
246
+ }
247
+ ],
248
+ "name": "OwnableUnauthorizedAccount",
249
+ "type": "error"
878
250
  },
879
251
  {
880
- "internalType": "uint256",
881
- "name": "start",
882
- "type": "uint256"
252
+ "inputs": [],
253
+ "name": "ReentrancyGuardReentrantCall",
254
+ "type": "error"
883
255
  },
884
256
  {
885
- "internalType": "uint256",
886
- "name": "end",
887
- "type": "uint256"
888
- }
889
- ],
890
- "name": "getTokensByOwner",
891
- "outputs": [
257
+ "inputs": [
258
+ {
259
+ "internalType": "address",
260
+ "name": "token",
261
+ "type": "address"
262
+ }
263
+ ],
264
+ "name": "SafeERC20FailedOperation",
265
+ "type": "error"
266
+ },
892
267
  {
893
- "internalType": "uint256[]",
894
- "name": "",
895
- "type": "uint256[]"
896
- }
897
- ],
898
- "stateMutability": "view",
899
- "type": "function"
900
- },
901
- {
902
- "inputs": [
268
+ "inputs": [],
269
+ "name": "TokenAlreadyMinted",
270
+ "type": "error"
271
+ },
903
272
  {
904
- "internalType": "bytes32",
905
- "name": "role",
906
- "type": "bytes32"
273
+ "inputs": [],
274
+ "name": "ZeroAddress",
275
+ "type": "error"
907
276
  },
908
277
  {
909
- "internalType": "address",
910
- "name": "account",
911
- "type": "address"
912
- }
913
- ],
914
- "name": "grantRole",
915
- "outputs": [],
916
- "stateMutability": "nonpayable",
917
- "type": "function"
918
- },
919
- {
920
- "inputs": [
921
- {
922
- "internalType": "bytes32",
923
- "name": "role",
924
- "type": "bytes32"
925
- },
926
- {
927
- "internalType": "address",
928
- "name": "account",
929
- "type": "address"
930
- }
931
- ],
932
- "name": "hasRole",
933
- "outputs": [
278
+ "anonymous": false,
279
+ "inputs": [
280
+ {
281
+ "indexed": false,
282
+ "internalType": "bool",
283
+ "name": "allowBurning",
284
+ "type": "bool"
285
+ }
286
+ ],
287
+ "name": "AllowBurningUpdated",
288
+ "type": "event"
289
+ },
934
290
  {
935
- "internalType": "bool",
936
- "name": "",
937
- "type": "bool"
938
- }
939
- ],
940
- "stateMutability": "view",
941
- "type": "function"
942
- },
943
- {
944
- "inputs": [
291
+ "anonymous": false,
292
+ "inputs": [
293
+ {
294
+ "indexed": true,
295
+ "internalType": "address",
296
+ "name": "owner",
297
+ "type": "address"
298
+ },
299
+ {
300
+ "indexed": true,
301
+ "internalType": "address",
302
+ "name": "approved",
303
+ "type": "address"
304
+ },
305
+ {
306
+ "indexed": true,
307
+ "internalType": "uint256",
308
+ "name": "tokenId",
309
+ "type": "uint256"
310
+ }
311
+ ],
312
+ "name": "Approval",
313
+ "type": "event"
314
+ },
945
315
  {
946
- "internalType": "address",
947
- "name": "owner",
948
- "type": "address"
316
+ "anonymous": false,
317
+ "inputs": [
318
+ {
319
+ "indexed": true,
320
+ "internalType": "address",
321
+ "name": "owner",
322
+ "type": "address"
323
+ },
324
+ {
325
+ "indexed": true,
326
+ "internalType": "address",
327
+ "name": "operator",
328
+ "type": "address"
329
+ },
330
+ {
331
+ "indexed": false,
332
+ "internalType": "bool",
333
+ "name": "approved",
334
+ "type": "bool"
335
+ }
336
+ ],
337
+ "name": "ApprovalForAll",
338
+ "type": "event"
949
339
  },
950
340
  {
951
- "internalType": "address",
952
- "name": "operator",
953
- "type": "address"
954
- }
955
- ],
956
- "name": "isApprovedForAll",
957
- "outputs": [
341
+ "anonymous": false,
342
+ "inputs": [
343
+ {
344
+ "indexed": false,
345
+ "internalType": "string",
346
+ "name": "uri",
347
+ "type": "string"
348
+ }
349
+ ],
350
+ "name": "BaseURIUpdated",
351
+ "type": "event"
352
+ },
958
353
  {
959
- "internalType": "bool",
960
- "name": "",
961
- "type": "bool"
962
- }
963
- ],
964
- "stateMutability": "view",
965
- "type": "function"
966
- },
967
- {
968
- "inputs": [
354
+ "anonymous": false,
355
+ "inputs": [
356
+ {
357
+ "indexed": false,
358
+ "internalType": "uint256",
359
+ "name": "maxFee",
360
+ "type": "uint256"
361
+ }
362
+ ],
363
+ "name": "MaxFeeUpdated",
364
+ "type": "event"
365
+ },
969
366
  {
970
- "internalType": "uint256",
971
- "name": "_tokenId",
972
- "type": "uint256"
367
+ "anonymous": false,
368
+ "inputs": [
369
+ {
370
+ "indexed": false,
371
+ "internalType": "uint256",
372
+ "name": "mintFee",
373
+ "type": "uint256"
374
+ }
375
+ ],
376
+ "name": "MintFeeUpdated",
377
+ "type": "event"
973
378
  },
974
379
  {
975
- "internalType": "uint256",
976
- "name": "_amount",
977
- "type": "uint256"
978
- }
979
- ],
980
- "name": "mint",
981
- "outputs": [],
982
- "stateMutability": "nonpayable",
983
- "type": "function"
984
- },
985
- {
986
- "inputs": [
987
- {
988
- "internalType": "address",
989
- "name": "to",
990
- "type": "address"
991
- },
992
- {
993
- "internalType": "uint256",
994
- "name": "tokenId",
995
- "type": "uint256"
996
- }
997
- ],
998
- "name": "minterMint",
999
- "outputs": [],
1000
- "stateMutability": "nonpayable",
1001
- "type": "function"
1002
- },
1003
- {
1004
- "inputs": [],
1005
- "name": "name",
1006
- "outputs": [
1007
- {
1008
- "internalType": "string",
1009
- "name": "",
1010
- "type": "string"
1011
- }
1012
- ],
1013
- "stateMutability": "view",
1014
- "type": "function"
1015
- },
1016
- {
1017
- "inputs": [],
1018
- "name": "owner",
1019
- "outputs": [
1020
- {
1021
- "internalType": "address",
1022
- "name": "",
1023
- "type": "address"
1024
- }
1025
- ],
1026
- "stateMutability": "view",
1027
- "type": "function"
1028
- },
1029
- {
1030
- "inputs": [
1031
- {
1032
- "internalType": "uint256",
1033
- "name": "tokenId",
1034
- "type": "uint256"
1035
- }
1036
- ],
1037
- "name": "ownerOf",
1038
- "outputs": [
380
+ "anonymous": false,
381
+ "inputs": [
382
+ {
383
+ "indexed": true,
384
+ "internalType": "bytes32",
385
+ "name": "role",
386
+ "type": "bytes32"
387
+ },
388
+ {
389
+ "indexed": true,
390
+ "internalType": "address",
391
+ "name": "previousMinter",
392
+ "type": "address"
393
+ },
394
+ {
395
+ "indexed": true,
396
+ "internalType": "address",
397
+ "name": "newMinter",
398
+ "type": "address"
399
+ }
400
+ ],
401
+ "name": "MinterRoleTransferred",
402
+ "type": "event"
403
+ },
1039
404
  {
1040
- "internalType": "address",
1041
- "name": "",
1042
- "type": "address"
1043
- }
1044
- ],
1045
- "stateMutability": "view",
1046
- "type": "function"
1047
- },
1048
- {
1049
- "inputs": [],
1050
- "name": "raac_hp",
1051
- "outputs": [
1052
- {
1053
- "internalType": "contract IRAACHousePrices",
1054
- "name": "",
1055
- "type": "address"
1056
- }
1057
- ],
1058
- "stateMutability": "view",
1059
- "type": "function"
1060
- },
1061
- {
1062
- "inputs": [
1063
- {
1064
- "internalType": "address",
1065
- "name": "minter",
1066
- "type": "address"
1067
- }
1068
- ],
1069
- "name": "removeMinter",
1070
- "outputs": [],
1071
- "stateMutability": "nonpayable",
1072
- "type": "function"
1073
- },
1074
- {
1075
- "inputs": [],
1076
- "name": "renounceOwnership",
1077
- "outputs": [],
1078
- "stateMutability": "nonpayable",
1079
- "type": "function"
1080
- },
1081
- {
1082
- "inputs": [
1083
- {
1084
- "internalType": "bytes32",
1085
- "name": "role",
1086
- "type": "bytes32"
1087
- },
1088
- {
1089
- "internalType": "address",
1090
- "name": "callerConfirmation",
1091
- "type": "address"
1092
- }
1093
- ],
1094
- "name": "renounceRole",
1095
- "outputs": [],
1096
- "stateMutability": "nonpayable",
1097
- "type": "function"
1098
- },
1099
- {
1100
- "inputs": [
1101
- {
1102
- "internalType": "bytes32",
1103
- "name": "role",
1104
- "type": "bytes32"
1105
- },
1106
- {
1107
- "internalType": "address",
1108
- "name": "account",
1109
- "type": "address"
1110
- }
1111
- ],
1112
- "name": "revokeRole",
1113
- "outputs": [],
1114
- "stateMutability": "nonpayable",
1115
- "type": "function"
1116
- },
1117
- {
1118
- "inputs": [
405
+ "anonymous": false,
406
+ "inputs": [
407
+ {
408
+ "indexed": true,
409
+ "internalType": "address",
410
+ "name": "payer",
411
+ "type": "address"
412
+ },
413
+ {
414
+ "indexed": false,
415
+ "internalType": "uint256",
416
+ "name": "fee",
417
+ "type": "uint256"
418
+ }
419
+ ],
420
+ "name": "NFTFeePaid",
421
+ "type": "event"
422
+ },
1119
423
  {
1120
- "internalType": "address",
1121
- "name": "from",
1122
- "type": "address"
424
+ "anonymous": false,
425
+ "inputs": [
426
+ {
427
+ "indexed": false,
428
+ "internalType": "uint256",
429
+ "name": "fee",
430
+ "type": "uint256"
431
+ }
432
+ ],
433
+ "name": "NFTFeeUpdated",
434
+ "type": "event"
1123
435
  },
1124
436
  {
1125
- "internalType": "address",
1126
- "name": "to",
1127
- "type": "address"
437
+ "anonymous": false,
438
+ "inputs": [
439
+ {
440
+ "indexed": true,
441
+ "internalType": "address",
442
+ "name": "minter",
443
+ "type": "address"
444
+ },
445
+ {
446
+ "indexed": false,
447
+ "internalType": "uint256",
448
+ "name": "tokenId",
449
+ "type": "uint256"
450
+ },
451
+ {
452
+ "indexed": false,
453
+ "internalType": "uint256",
454
+ "name": "price",
455
+ "type": "uint256"
456
+ },
457
+ {
458
+ "indexed": false,
459
+ "internalType": "uint256",
460
+ "name": "mintFee",
461
+ "type": "uint256"
462
+ }
463
+ ],
464
+ "name": "NFTMinted",
465
+ "type": "event"
1128
466
  },
1129
467
  {
1130
- "internalType": "uint256",
1131
- "name": "tokenId",
1132
- "type": "uint256"
1133
- }
1134
- ],
1135
- "name": "safeTransferFrom",
1136
- "outputs": [],
1137
- "stateMutability": "nonpayable",
1138
- "type": "function"
1139
- },
1140
- {
1141
- "inputs": [
468
+ "anonymous": false,
469
+ "inputs": [
470
+ {
471
+ "indexed": true,
472
+ "internalType": "address",
473
+ "name": "previousOwner",
474
+ "type": "address"
475
+ },
476
+ {
477
+ "indexed": true,
478
+ "internalType": "address",
479
+ "name": "newOwner",
480
+ "type": "address"
481
+ }
482
+ ],
483
+ "name": "OwnershipTransferred",
484
+ "type": "event"
485
+ },
1142
486
  {
1143
- "internalType": "address",
1144
- "name": "from",
1145
- "type": "address"
487
+ "anonymous": false,
488
+ "inputs": [
489
+ {
490
+ "indexed": true,
491
+ "internalType": "bytes32",
492
+ "name": "role",
493
+ "type": "bytes32"
494
+ },
495
+ {
496
+ "indexed": true,
497
+ "internalType": "bytes32",
498
+ "name": "previousAdminRole",
499
+ "type": "bytes32"
500
+ },
501
+ {
502
+ "indexed": true,
503
+ "internalType": "bytes32",
504
+ "name": "newAdminRole",
505
+ "type": "bytes32"
506
+ }
507
+ ],
508
+ "name": "RoleAdminChanged",
509
+ "type": "event"
1146
510
  },
1147
511
  {
1148
- "internalType": "address",
1149
- "name": "to",
1150
- "type": "address"
512
+ "anonymous": false,
513
+ "inputs": [
514
+ {
515
+ "indexed": true,
516
+ "internalType": "bytes32",
517
+ "name": "role",
518
+ "type": "bytes32"
519
+ },
520
+ {
521
+ "indexed": true,
522
+ "internalType": "address",
523
+ "name": "account",
524
+ "type": "address"
525
+ },
526
+ {
527
+ "indexed": true,
528
+ "internalType": "address",
529
+ "name": "sender",
530
+ "type": "address"
531
+ }
532
+ ],
533
+ "name": "RoleGranted",
534
+ "type": "event"
1151
535
  },
1152
536
  {
1153
- "internalType": "uint256",
1154
- "name": "tokenId",
1155
- "type": "uint256"
537
+ "anonymous": false,
538
+ "inputs": [
539
+ {
540
+ "indexed": true,
541
+ "internalType": "bytes32",
542
+ "name": "role",
543
+ "type": "bytes32"
544
+ },
545
+ {
546
+ "indexed": true,
547
+ "internalType": "address",
548
+ "name": "account",
549
+ "type": "address"
550
+ },
551
+ {
552
+ "indexed": true,
553
+ "internalType": "address",
554
+ "name": "sender",
555
+ "type": "address"
556
+ }
557
+ ],
558
+ "name": "RoleRevoked",
559
+ "type": "event"
1156
560
  },
1157
561
  {
1158
- "internalType": "bytes",
1159
- "name": "data",
1160
- "type": "bytes"
1161
- }
1162
- ],
1163
- "name": "safeTransferFrom",
1164
- "outputs": [],
1165
- "stateMutability": "nonpayable",
1166
- "type": "function"
1167
- },
1168
- {
1169
- "inputs": [
1170
- {
1171
- "internalType": "bool",
1172
- "name": "_allowBurning",
1173
- "type": "bool"
1174
- }
1175
- ],
1176
- "name": "setAllowBurning",
1177
- "outputs": [],
1178
- "stateMutability": "nonpayable",
1179
- "type": "function"
1180
- },
1181
- {
1182
- "inputs": [
1183
- {
1184
- "internalType": "address",
1185
- "name": "operator",
1186
- "type": "address"
1187
- },
1188
- {
1189
- "internalType": "bool",
1190
- "name": "approved",
1191
- "type": "bool"
1192
- }
1193
- ],
1194
- "name": "setApprovalForAll",
1195
- "outputs": [],
1196
- "stateMutability": "nonpayable",
1197
- "type": "function"
1198
- },
1199
- {
1200
- "inputs": [
1201
- {
1202
- "internalType": "string",
1203
- "name": "_uri",
1204
- "type": "string"
1205
- }
1206
- ],
1207
- "name": "setBaseUri",
1208
- "outputs": [],
1209
- "stateMutability": "nonpayable",
1210
- "type": "function"
1211
- },
1212
- {
1213
- "inputs": [
1214
- {
1215
- "internalType": "uint256",
1216
- "name": "_maxFeePercentage",
1217
- "type": "uint256"
1218
- }
1219
- ],
1220
- "name": "setMaxFee",
1221
- "outputs": [],
1222
- "stateMutability": "nonpayable",
1223
- "type": "function"
1224
- },
1225
- {
1226
- "inputs": [
1227
- {
1228
- "internalType": "uint256",
1229
- "name": "newFee",
1230
- "type": "uint256"
1231
- }
1232
- ],
1233
- "name": "setMintFee",
1234
- "outputs": [],
1235
- "stateMutability": "nonpayable",
1236
- "type": "function"
1237
- },
1238
- {
1239
- "inputs": [
1240
- {
1241
- "internalType": "address",
1242
- "name": "_treasury",
1243
- "type": "address"
1244
- }
1245
- ],
1246
- "name": "setTreasury",
1247
- "outputs": [],
1248
- "stateMutability": "nonpayable",
1249
- "type": "function"
1250
- },
1251
- {
1252
- "inputs": [
1253
- {
1254
- "internalType": "bytes4",
1255
- "name": "interfaceId",
1256
- "type": "bytes4"
1257
- }
1258
- ],
1259
- "name": "supportsInterface",
1260
- "outputs": [
562
+ "anonymous": false,
563
+ "inputs": [
564
+ {
565
+ "indexed": true,
566
+ "internalType": "address",
567
+ "name": "from",
568
+ "type": "address"
569
+ },
570
+ {
571
+ "indexed": true,
572
+ "internalType": "address",
573
+ "name": "to",
574
+ "type": "address"
575
+ },
576
+ {
577
+ "indexed": true,
578
+ "internalType": "uint256",
579
+ "name": "tokenId",
580
+ "type": "uint256"
581
+ }
582
+ ],
583
+ "name": "Transfer",
584
+ "type": "event"
585
+ },
1261
586
  {
1262
- "internalType": "bool",
1263
- "name": "",
1264
- "type": "bool"
1265
- }
1266
- ],
1267
- "stateMutability": "view",
1268
- "type": "function"
1269
- },
1270
- {
1271
- "inputs": [],
1272
- "name": "symbol",
1273
- "outputs": [
1274
- {
1275
- "internalType": "string",
1276
- "name": "",
1277
- "type": "string"
1278
- }
1279
- ],
1280
- "stateMutability": "view",
1281
- "type": "function"
1282
- },
1283
- {
1284
- "inputs": [],
1285
- "name": "token",
1286
- "outputs": [
1287
- {
1288
- "internalType": "contract IERC20",
1289
- "name": "",
1290
- "type": "address"
1291
- }
1292
- ],
1293
- "stateMutability": "view",
1294
- "type": "function"
1295
- },
1296
- {
1297
- "inputs": [
1298
- {
1299
- "internalType": "uint256",
1300
- "name": "index",
1301
- "type": "uint256"
1302
- }
1303
- ],
1304
- "name": "tokenByIndex",
1305
- "outputs": [
587
+ "inputs": [],
588
+ "name": "ADMIN_ROLE",
589
+ "outputs": [
590
+ {
591
+ "internalType": "bytes32",
592
+ "name": "",
593
+ "type": "bytes32"
594
+ }
595
+ ],
596
+ "stateMutability": "view",
597
+ "type": "function"
598
+ },
1306
599
  {
1307
- "internalType": "uint256",
1308
- "name": "",
1309
- "type": "uint256"
1310
- }
1311
- ],
1312
- "stateMutability": "view",
1313
- "type": "function"
1314
- },
1315
- {
1316
- "inputs": [
600
+ "inputs": [],
601
+ "name": "DEFAULT_ADMIN_ROLE",
602
+ "outputs": [
603
+ {
604
+ "internalType": "bytes32",
605
+ "name": "",
606
+ "type": "bytes32"
607
+ }
608
+ ],
609
+ "stateMutability": "view",
610
+ "type": "function"
611
+ },
1317
612
  {
1318
- "internalType": "address",
1319
- "name": "owner",
1320
- "type": "address"
613
+ "inputs": [],
614
+ "name": "MAX_FEE_PERCENTAGE",
615
+ "outputs": [
616
+ {
617
+ "internalType": "uint256",
618
+ "name": "",
619
+ "type": "uint256"
620
+ }
621
+ ],
622
+ "stateMutability": "view",
623
+ "type": "function"
1321
624
  },
1322
625
  {
1323
- "internalType": "uint256",
1324
- "name": "index",
1325
- "type": "uint256"
1326
- }
1327
- ],
1328
- "name": "tokenOfOwnerByIndex",
1329
- "outputs": [
626
+ "inputs": [],
627
+ "name": "MINTER_ROLE",
628
+ "outputs": [
629
+ {
630
+ "internalType": "bytes32",
631
+ "name": "",
632
+ "type": "bytes32"
633
+ }
634
+ ],
635
+ "stateMutability": "view",
636
+ "type": "function"
637
+ },
1330
638
  {
1331
- "internalType": "uint256",
1332
- "name": "",
1333
- "type": "uint256"
1334
- }
1335
- ],
1336
- "stateMutability": "view",
1337
- "type": "function"
1338
- },
1339
- {
1340
- "inputs": [
1341
- {
1342
- "internalType": "uint256",
1343
- "name": "_tokenId",
1344
- "type": "uint256"
1345
- }
1346
- ],
1347
- "name": "tokenURI",
1348
- "outputs": [
639
+ "inputs": [],
640
+ "name": "MINT_FEE_PERCENTAGE",
641
+ "outputs": [
642
+ {
643
+ "internalType": "uint256",
644
+ "name": "",
645
+ "type": "uint256"
646
+ }
647
+ ],
648
+ "stateMutability": "view",
649
+ "type": "function"
650
+ },
1349
651
  {
1350
- "internalType": "string",
1351
- "name": "",
1352
- "type": "string"
1353
- }
1354
- ],
1355
- "stateMutability": "view",
1356
- "type": "function"
1357
- },
1358
- {
1359
- "inputs": [],
1360
- "name": "totalSupply",
1361
- "outputs": [
1362
- {
1363
- "internalType": "uint256",
1364
- "name": "",
1365
- "type": "uint256"
1366
- }
1367
- ],
1368
- "stateMutability": "view",
1369
- "type": "function"
1370
- },
1371
- {
1372
- "inputs": [
652
+ "inputs": [],
653
+ "name": "WITHDRAW_ROLE",
654
+ "outputs": [
655
+ {
656
+ "internalType": "bytes32",
657
+ "name": "",
658
+ "type": "bytes32"
659
+ }
660
+ ],
661
+ "stateMutability": "view",
662
+ "type": "function"
663
+ },
1373
664
  {
1374
- "internalType": "address",
1375
- "name": "from",
1376
- "type": "address"
665
+ "inputs": [
666
+ {
667
+ "internalType": "address",
668
+ "name": "minter",
669
+ "type": "address"
670
+ }
671
+ ],
672
+ "name": "addMinter",
673
+ "outputs": [],
674
+ "stateMutability": "nonpayable",
675
+ "type": "function"
1377
676
  },
1378
677
  {
1379
- "internalType": "address",
1380
- "name": "to",
1381
- "type": "address"
678
+ "inputs": [],
679
+ "name": "allowBurning",
680
+ "outputs": [
681
+ {
682
+ "internalType": "bool",
683
+ "name": "",
684
+ "type": "bool"
685
+ }
686
+ ],
687
+ "stateMutability": "view",
688
+ "type": "function"
1382
689
  },
1383
690
  {
1384
- "internalType": "uint256",
1385
- "name": "tokenId",
1386
- "type": "uint256"
1387
- }
1388
- ],
1389
- "name": "transferFrom",
1390
- "outputs": [],
1391
- "stateMutability": "nonpayable",
1392
- "type": "function"
1393
- },
1394
- {
1395
- "inputs": [
1396
- {
1397
- "internalType": "address",
1398
- "name": "newOwner",
1399
- "type": "address"
1400
- }
1401
- ],
1402
- "name": "transferOwnership",
1403
- "outputs": [],
1404
- "stateMutability": "nonpayable",
1405
- "type": "function"
1406
- },
1407
- {
1408
- "inputs": [
1409
- {
1410
- "internalType": "bytes32",
1411
- "name": "role",
1412
- "type": "bytes32"
1413
- },
1414
- {
1415
- "internalType": "address",
1416
- "name": "newMinter",
1417
- "type": "address"
1418
- }
1419
- ],
1420
- "name": "transferRole",
1421
- "outputs": [],
1422
- "stateMutability": "nonpayable",
1423
- "type": "function"
1424
- },
1425
- {
1426
- "inputs": [],
1427
- "name": "treasury",
1428
- "outputs": [
1429
- {
1430
- "internalType": "address",
1431
- "name": "",
1432
- "type": "address"
1433
- }
1434
- ],
1435
- "stateMutability": "view",
1436
- "type": "function"
1437
- },
1438
- {
1439
- "inputs": [
691
+ "inputs": [
692
+ {
693
+ "internalType": "address",
694
+ "name": "to",
695
+ "type": "address"
696
+ },
697
+ {
698
+ "internalType": "uint256",
699
+ "name": "tokenId",
700
+ "type": "uint256"
701
+ }
702
+ ],
703
+ "name": "approve",
704
+ "outputs": [],
705
+ "stateMutability": "nonpayable",
706
+ "type": "function"
707
+ },
1440
708
  {
1441
- "internalType": "address",
1442
- "name": "tokenAddress",
1443
- "type": "address"
709
+ "inputs": [
710
+ {
711
+ "internalType": "address",
712
+ "name": "owner",
713
+ "type": "address"
714
+ }
715
+ ],
716
+ "name": "balanceOf",
717
+ "outputs": [
718
+ {
719
+ "internalType": "uint256",
720
+ "name": "",
721
+ "type": "uint256"
722
+ }
723
+ ],
724
+ "stateMutability": "view",
725
+ "type": "function"
1444
726
  },
1445
727
  {
1446
- "internalType": "address",
1447
- "name": "to",
1448
- "type": "address"
728
+ "inputs": [],
729
+ "name": "baseURI",
730
+ "outputs": [
731
+ {
732
+ "internalType": "string",
733
+ "name": "",
734
+ "type": "string"
735
+ }
736
+ ],
737
+ "stateMutability": "view",
738
+ "type": "function"
1449
739
  },
1450
740
  {
1451
- "internalType": "uint256",
1452
- "name": "amount",
1453
- "type": "uint256"
1454
- }
1455
- ],
1456
- "name": "withdrawUnderlying",
1457
- "outputs": [
741
+ "inputs": [],
742
+ "name": "getAllTokens",
743
+ "outputs": [
744
+ {
745
+ "internalType": "uint256[]",
746
+ "name": "",
747
+ "type": "uint256[]"
748
+ }
749
+ ],
750
+ "stateMutability": "view",
751
+ "type": "function"
752
+ },
1458
753
  {
1459
- "internalType": "bool",
1460
- "name": "",
1461
- "type": "bool"
1462
- }
1463
- ],
1464
- "stateMutability": "nonpayable",
1465
- "type": "function"
1466
- }
1467
- ],
1468
- "bytecode": "0x6000600f8190556010556011805460ff60a01b1916905560e060405260366080818152906200304460a039601290620000399082620003d1565b503480156200004757600080fd5b506040516200307a3803806200307a8339810160408190526200006a91620004ba565b806040518060400160405280600881526020016714905050c813919560c21b8152506040518060400160405280600781526020016614905050d3919560ca1b8152508160009081620000bd9190620003d1565b506001620000cc8282620003d1565b50506001600b55506001600160a01b0381166200010357604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6200010e8162000227565b506001600160a01b03831615806200012d57506001600160a01b038216155b806200014057506001600160a01b038116155b156200015f5760405163e6c4247b60e01b815260040160405180910390fd5b6200016c60003362000279565b50620001997fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217753362000279565b50620001c67f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec3362000279565b50620001f37f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a63362000279565b5050600d80546001600160a01b039384166001600160a01b031991821617909155600e805492909316911617905562000504565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000828152600a602090815260408083206001600160a01b038516845290915281205460ff1662000322576000838152600a602090815260408083206001600160a01b03861684529091529020805460ff19166001179055620002d93390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600162000326565b5060005b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200035757607f821691505b6020821081036200037857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003cc57600081815260208120601f850160051c81016020861015620003a75750805b601f850160051c820191505b81811015620003c857828155600101620003b3565b5050505b505050565b81516001600160401b03811115620003ed57620003ed6200032c565b6200040581620003fe845462000342565b846200037e565b602080601f8311600181146200043d5760008415620004245750858301515b600019600386901b1c1916600185901b178555620003c8565b600085815260208120601f198616915b828110156200046e578886015182559484019460019091019084016200044d565b50858210156200048d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b80516001600160a01b0381168114620004b557600080fd5b919050565b600080600060608486031215620004d057600080fd5b620004db846200049d565b9250620004eb602085016200049d565b9150620004fb604085016200049d565b90509250925092565b612b3080620005146000396000f3fe608060405234801561001057600080fd5b506004361061028c5760003560e01c8063710e5d2f1161015d578063b88d4fde116100c9578063b88d4fde1461056e578063c5969d9414610581578063c87b56dd14610594578063d5391393146105a7578063d547741f146105bc578063d5a162f1146105cf578063e02023a1146105e2578063e26c523c14610609578063e985e9c51461061c578063eddd0d9c1461062f578063f0f4426014610642578063f2fde38b14610655578063fc0c546a1461066857600080fd5b8063710e5d2f14610497578063715018a6146104aa57806375b238fc146104b25780638c0326af146104c75780638da5cb5b146104db57806391d14854146104ec57806395d89b41146104ff578063983b2d56146105075780639a0438321461051a5780639ee12c891461052d578063a0bcfc7f14610540578063a217fddf14610553578063a22cb4651461055b57600080fd5b806336568abe116101fc57806336568abe146103bf5780633f1db2d9146103d257806340398d67146103db578063415a0eba146103ee57806342842e0e146104015780634f6ccce714610414578063558e44d314610427578063559e775b146104305780635d81cde11461044357806361d027b3146104565780636352211e146104695780636c0360eb1461047c57806370a082311461048457600080fd5b806301ffc9a71461029157806306fdde03146102b9578063081812fc146102ce578063095ea7b3146102ee57806318160ddd146103035780631b2ef1ca1461031557806321f314ca1461032857806323b872dd1461033b578063248a9ca31461034e5780632a5c792a146103715780632f2ff15d146103865780632f745c59146103995780633092afd5146103ac575b600080fd5b6102a461029f36600461232f565b61067b565b60405190151581526020015b60405180910390f35b6102c161068c565b6040516102b0919061239c565b6102e16102dc3660046123af565b61071e565b6040516102b091906123c8565b6103016102fc3660046123f8565b610733565b005b6008545b6040519081526020016102b0565b610301610323366004612422565b610742565b6103016103363660046123f8565b6108d1565b610301610349366004612444565b610933565b61030761035c3660046123af565b6000908152600a602052604090206001015490565b6103796109c7565b6040516102b09190612480565b6103016103943660046124c4565b610a48565b6103076103a73660046123f8565b610a6d565b6103016103ba3660046124f0565b610ac4565b6103016103cd3660046124c4565b610af4565b610307600f5481565b6103796103e93660046124f0565b610b27565b6103076103fc3660046123af565b610bb4565b61030161040f366004612444565b610c22565b6103076104223660046123af565b610c3d565b61030760105481565b61030761043e3660046123af565b610c91565b600e546102e1906001600160a01b031681565b6011546102e1906001600160a01b031681565b6102e16104773660046123af565b610d44565b6102c1610d4f565b6103076104923660046124f0565b610ddd565b6103016104a53660046123af565b610e25565b610301610e7a565b610307600080516020612adb83398151915281565b6011546102a490600160a01b900460ff1681565b600c546001600160a01b03166102e1565b6102a46104fa3660046124c4565b610e8e565b6102c1610eb9565b6103016105153660046124f0565b610ec8565b610379610528366004612422565b610ef8565b61030161053b3660046124c4565b610ff6565b61030161054e3660046125a8565b611061565b610307600081565b6103016105693660046125fe565b6110b5565b61030161057c366004612635565b6110c0565b6102a461058f366004612444565b6110d7565b6102c16105a23660046123af565b6111dd565b610307600080516020612abb83398151915281565b6103016105ca3660046124c4565b611217565b6103016105dd3660046126b0565b61123c565b6103077f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec81565b6103796106173660046126cd565b6112a1565b6102a461062a366004612700565b6113a6565b61030161063d3660046123af565b6113d4565b6103016106503660046124f0565b611451565b6103016106633660046124f0565b61148c565b600d546102e1906001600160a01b031681565b6000610686826114ca565b92915050565b60606000805461069b9061272a565b80601f01602080910402602001604051908101604052809291908181526020018280546106c79061272a565b80156107145780601f106106e957610100808354040283529160200191610714565b820191906000526020600020905b8154815290600101906020018083116106f757829003601f168201915b5050505050905090565b6000610729826114ef565b5061068682611527565b61073e828233611542565b5050565b61074a61154f565b600e5460405163029f72bb60e31b8152600481018490526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610794573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b89190612764565b905060008082116107ca5760006107e5565b612710600f54836107db9190612793565b6107e591906127aa565b905060006107f382846127cc565b90508260000361081657604051633176f6ab60e21b815260040160405180910390fd5b83811115610837576040516308d69cfd60e31b815260040160405180910390fd5b600d5461084f906001600160a01b0316333084611579565b61085a3386856115e0565b81156108c4576011546001600160a01b03161561088e57601154600d5461088e916001600160a01b03918216911684611636565b60405182815233907f11fc6332cfccc2ce93014095f0b5a5b29e6a3028f76849e8214e00c3e1c2df089060200160405180910390a25b50505061073e6001600b55565b600080516020612abb8339815191526108e98161165c565b6108f161154f565b6001600160a01b0383166109185760405163d92e233d60e01b815260040160405180910390fd5b610924838360006115e0565b61092e6001600b55565b505050565b6001600160a01b038216610966576000604051633250574960e11b815260040161095d91906123c8565b60405180910390fd5b6000610973838333611666565b9050836001600160a01b0316816001600160a01b0316146109c1576040516364283d7b60e01b81526001600160a01b038086166004830152602482018490528216604482015260640161095d565b50505050565b606030639a04383260006109da60085490565b6040516001600160e01b031960e085901b16815260048101929092526024820152604401600060405180830381865afa158015610a1b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a4391908101906127df565b905090565b6000828152600a6020526040902060010154610a638161165c565b6109c1838361169a565b6000610a7883610ddd565b8210610a9b57828260405163295f44f760e21b815260040161095d929190612884565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b600080516020612adb833981519152610adc8161165c565b61092e600080516020612abb8339815191528361172e565b6001600160a01b0381163314610b1d5760405163334bd91960e11b815260040160405180910390fd5b61092e828261172e565b60603063e26c523c836000610b3b82610ddd565b6040516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381865afa158015610b8c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261068691908101906127df565b600e5460405163029f72bb60e31b8152600481018390526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610bfe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190612764565b61092e838383604051806020016040528060008152506110c0565b6000610c4860085490565b8210610c6c5760008260405163295f44f760e21b815260040161095d929190612884565b60088281548110610c7f57610c7f61289d565b90600052602060002001549050919050565b600e5460405163029f72bb60e31b81526004810183905260009182916001600160a01b03909116906314fb95d890602401602060405180830381865afa158015610cdf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d039190612764565b90506000808211610d15576000610d30565b612710600f5483610d269190612793565b610d3091906127aa565b9050610d3c81836127cc565b949350505050565b6000610686826114ef565b60128054610d5c9061272a565b80601f0160208091040260200160405190810160405280929190818152602001828054610d889061272a565b8015610dd55780601f10610daa57610100808354040283529160200191610dd5565b820191906000526020600020905b815481529060010190602001808311610db857829003601f168201915b505050505081565b60006001600160a01b038216610e095760006040516322718ad960e21b815260040161095d91906123c8565b506001600160a01b031660009081526003602052604090205490565b600080516020612adb833981519152610e3d8161165c565b60108290556040518281527f5d46f46c0e5b2045e0cb8c00367d35d9f3f1fc035950ac8f5c675f6c0a791ba0906020015b60405180910390a15050565b610e8261179b565b610e8c60006117c8565b565b6000918252600a602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60606001805461069b9061272a565b600080516020612adb833981519152610ee08161165c565b61092e600080516020612abb8339815191528361169a565b6060610f0360085490565b821115610f105760085491505b600854600003610f2f5750604080516000815260208101909152610686565b818310610f4f5760405163561ce9bb60e01b815260040160405180910390fd5b6000610f5b84846128b3565b6001600160401b03811115610f7257610f7261250b565b604051908082528060200260200182016040528015610f9b578160200160208202803683370190505b50905060005b610fab85856128b3565b811015610fee57610fbf61042286836127cc565b828281518110610fd157610fd161289d565b602090810291909101015280610fe6816128c6565b915050610fa1565b509392505050565b600080516020612adb83398151915261100e8161165c565b611018833361172e565b50611023838361169a565b506040516001600160a01b03831690339085907f8d8ac61e09adc57e16fcda3ff204447854c5a75bb3e7f7462337b8eccc2f28f190600090a4505050565b600080516020612adb8339815191526110798161165c565b6012611085838261292d565b507f6741b2fc379fad678116fe3d4d4b9a1a184ab53ba36b86ad0fa66340b1ab41ad82604051610e6e919061239c565b61073e33838361181a565b6110cb848484610933565b6109c1848484846118b0565b60007f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec6111038161165c565b6001600160a01b03851661112a5760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81526000906001600160a01b038716906370a08231906111599030906004016123c8565b602060405180830381865afa158015611176573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119a9190612764565b9050808411156111bd57604051631e9acf1760e31b815260040160405180910390fd5b6111d16001600160a01b0387168686611636565b50600195945050505050565b60606111e76119c7565b6111f0836119d6565b6040516020016112019291906129ec565b6040516020818303038152906040529050919050565b6000828152600a60205260409020600101546112328161165c565b6109c1838361172e565b600080516020612adb8339815191526112548161165c565b60118054831515600160a01b0260ff60a01b199091161790556040517f9258f5907b894a96ae246130a375e1f94b5426c41e63d65dc3ffe9c4e8d5fa9e90610e6e90841515815260200190565b606060006112ae85610ddd565b9050806000036112ce57505060408051600081526020810190915261139f565b808311156112da578092505b8284106112fa5760405163561ce9bb60e01b815260040160405180910390fd5b600061130685856128b3565b6001600160401b0381111561131d5761131d61250b565b604051908082528060200260200182016040528015611346578160200160208202803683370190505b50905060005b61135686866128b3565b81101561139a5761136b876103a788846127cc565b82828151811061137d5761137d61289d565b602090810291909101015280611392816128c6565b91505061134c565b509150505b9392505050565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b600080516020612adb8339815191526113ec8161165c565b601054821180156113fe575060105415155b1561141c576040516371b0df8f60e01b815260040160405180910390fd5b600f8290556040518281527ff2b0bf9819305cc8e01f2f7f632af2c1cc83e2c07d6125d995c62d682963edf190602001610e6e565b600080516020612adb8339815191526114698161165c565b50601180546001600160a01b0319166001600160a01b0392909216919091179055565b61149461179b565b6001600160a01b0381166114be576000604051631e4fbdf760e01b815260040161095d91906123c8565b6114c7816117c8565b50565b60006001600160e01b03198216637965db0b60e01b1480610686575061068682611a68565b6000806114fb83611a8d565b90506001600160a01b03811661068657604051637e27328960e01b81526004810184905260240161095d565b6000908152600460205260409020546001600160a01b031690565b61092e8383836001611aa8565b6002600b540361157257604051633ee5aeb560e01b815260040160405180910390fd5b6002600b55565b6040516001600160a01b0384811660248301528381166044830152606482018390526109c19186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611ba5565b6115ea8383611bff565b600f5460408051848152602081018490529081019190915233907f7bc3ddf0bf2ada973906c61001cd8f787646720bb7da90229e5bf81fa71bab6d9060600160405180910390a2505050565b61092e83846001600160a01b031663a9059cbb85856040516024016115ae929190612884565b6114c78133611c19565b60006001600160a01b03841661168f5760405163e6c4247b60e01b815260040160405180910390fd5b610d3c848484611c44565b60006116a68383610e8e565b611726576000838152600a602090815260408083206001600160a01b03861684529091529020805460ff191660011790556116de3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610686565b506000610686565b600061173a8383610e8e565b15611726576000838152600a602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610686565b600c546001600160a01b03163314610e8c573360405163118cdaa760e01b815260040161095d91906123c8565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166118435781604051630b61174360e31b815260040161095d91906123c8565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0383163b156109c157604051630a85bd0160e11b81526001600160a01b0384169063150b7a02906118f2903390889087908790600401612a1b565b6020604051808303816000875af192505050801561192d575060408051601f3d908101601f1916820190925261192a91810190612a4e565b60015b61198d573d80801561195b576040519150601f19603f3d011682016040523d82523d6000602084013e611960565b606091505b5080516000036119855783604051633250574960e11b815260040161095d91906123c8565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b146119c05783604051633250574960e11b815260040161095d91906123c8565b5050505050565b60606012805461069b9061272a565b606060006119e383611d11565b60010190506000816001600160401b03811115611a0257611a0261250b565b6040519080825280601f01601f191660200182016040528015611a2c576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611a3657509392505050565b60006001600160e01b0319821663780e9d6360e01b1480610686575061068682611de7565b6000908152600260205260409020546001600160a01b031690565b8080611abc57506001600160a01b03821615155b15611b75576000611acc846114ef565b90506001600160a01b03831615801590611af85750826001600160a01b0316816001600160a01b031614155b8015611b0b5750611b0981846113a6565b155b15611b2b578260405163a9fbf51f60e01b815260040161095d91906123c8565b8115611b735783856001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b5050600090815260046020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b6000611bba6001600160a01b03841683611e37565b90508051600014158015611bdf575080806020019051810190611bdd9190612a6b565b155b1561092e5782604051635274afe760e01b815260040161095d91906123c8565b61073e828260405180602001604052806000815250611e45565b611c238282610e8e565b61073e57808260405163e2517d3f60e01b815260040161095d929190612884565b600080611c52858585611e5c565b90506001600160a01b038116611caf57611caa84600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b611cd2565b846001600160a01b0316816001600160a01b031614611cd257611cd28185611f50565b6001600160a01b038516611cee57611ce984611fe1565b610d3c565b846001600160a01b0316816001600160a01b031614610d3c57610d3c8585612090565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611d505772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b8310611d7a576904ee2d6d415b85acef8160201b830492506020015b662386f26fc100008310611d9857662386f26fc10000830492506010015b6305f5e1008310611db0576305f5e100830492506008015b6127108310611dc457612710830492506004015b60648310611dd6576064830492506002015b600a83106106865760010192915050565b60006001600160e01b031982166380ac58cd60e01b1480611e1857506001600160e01b03198216635b5e139f60e01b145b8061068657506301ffc9a760e01b6001600160e01b0319831614610686565b606061139f838360006120e0565b611e4f838361217d565b61092e60008484846118b0565b600080611e6884611a8d565b90506001600160a01b03831615611e8457611e848184866121e2565b6001600160a01b03811615611ec257611ea1600085600080611aa8565b6001600160a01b038116600090815260036020526040902080546000190190555b6001600160a01b03851615611ef1576001600160a01b0385166000908152600360205260409020805460010190555b60008481526002602052604080822080546001600160a01b0319166001600160a01b0389811691821790925591518793918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4949350505050565b6000611f5b83610ddd565b600083815260076020526040902054909150808214611fae576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b600854600090611ff3906001906128b3565b6000838152600960205260408120546008805493945090928490811061201b5761201b61289d565b90600052602060002001549050806008838154811061203c5761203c61289d565b600091825260208083209091019290925582815260099091526040808220849055858252812055600880548061207457612074612a88565b6001900381819060005260206000200160009055905550505050565b6000600161209d84610ddd565b6120a791906128b3565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b606081471015612105573060405163cd78605960e01b815260040161095d91906123c8565b600080856001600160a01b031684866040516121219190612a9e565b60006040518083038185875af1925050503d806000811461215e576040519150601f19603f3d011682016040523d82523d6000602084013e612163565b606091505b5091509150612173868383612238565b9695505050505050565b6001600160a01b0382166121a7576000604051633250574960e11b815260040161095d91906123c8565b60006121b583836000611666565b90506001600160a01b0381161561092e5760006040516339e3563760e11b815260040161095d91906123c8565b6121ed83838361228b565b61092e576001600160a01b03831661221b57604051637e27328960e01b81526004810182905260240161095d565b818160405163177e802f60e01b815260040161095d929190612884565b60608261224d57612248826122f0565b61139f565b815115801561226457506001600160a01b0384163b155b156122845783604051639996b31560e01b815260040161095d91906123c8565b508061139f565b60006001600160a01b03831615801590610d3c5750826001600160a01b0316846001600160a01b031614806122c557506122c584846113a6565b80610d3c5750826001600160a01b03166122de83611527565b6001600160a01b031614949350505050565b8051156123005780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160e01b0319811681146114c757600080fd5b60006020828403121561234157600080fd5b813561139f81612319565b60005b8381101561236757818101518382015260200161234f565b50506000910152565b6000815180845261238881602086016020860161234c565b601f01601f19169290920160200192915050565b60208152600061139f6020830184612370565b6000602082840312156123c157600080fd5b5035919050565b6001600160a01b0391909116815260200190565b80356001600160a01b03811681146123f357600080fd5b919050565b6000806040838503121561240b57600080fd5b612414836123dc565b946020939093013593505050565b6000806040838503121561243557600080fd5b50508035926020909101359150565b60008060006060848603121561245957600080fd5b612462846123dc565b9250612470602085016123dc565b9150604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b818110156124b85783518352928401929184019160010161249c565b50909695505050505050565b600080604083850312156124d757600080fd5b823591506124e7602084016123dc565b90509250929050565b60006020828403121561250257600080fd5b61139f826123dc565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156125495761254961250b565b604052919050565b60006001600160401b0383111561256a5761256a61250b565b61257d601f8401601f1916602001612521565b905082815283838301111561259157600080fd5b828260208301376000602084830101529392505050565b6000602082840312156125ba57600080fd5b81356001600160401b038111156125d057600080fd5b8201601f810184136125e157600080fd5b610d3c84823560208401612551565b80151581146114c757600080fd5b6000806040838503121561261157600080fd5b61261a836123dc565b9150602083013561262a816125f0565b809150509250929050565b6000806000806080858703121561264b57600080fd5b612654856123dc565b9350612662602086016123dc565b92506040850135915060608501356001600160401b0381111561268457600080fd5b8501601f8101871361269557600080fd5b6126a487823560208401612551565b91505092959194509250565b6000602082840312156126c257600080fd5b813561139f816125f0565b6000806000606084860312156126e257600080fd5b6126eb846123dc565b95602085013595506040909401359392505050565b6000806040838503121561271357600080fd5b61271c836123dc565b91506124e7602084016123dc565b600181811c9082168061273e57607f821691505b60208210810361275e57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561277657600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176106865761068661277d565b6000826127c757634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156106865761068661277d565b600060208083850312156127f257600080fd5b82516001600160401b038082111561280957600080fd5b818501915085601f83011261281d57600080fd5b81518181111561282f5761282f61250b565b8060051b9150612840848301612521565b818152918301840191848101908884111561285a57600080fd5b938501935b838510156128785784518252938501939085019061285f565b98975050505050505050565b6001600160a01b03929092168252602082015260400190565b634e487b7160e01b600052603260045260246000fd5b818103818111156106865761068661277d565b6000600182016128d8576128d861277d565b5060010190565b601f82111561092e57600081815260208120601f850160051c810160208610156129065750805b601f850160051c820191505b8181101561292557828155600101612912565b505050505050565b81516001600160401b038111156129465761294661250b565b61295a81612954845461272a565b846128df565b602080601f83116001811461298f57600084156129775750858301515b600019600386901b1c1916600185901b178555612925565b600085815260208120601f198616915b828110156129be5788860151825594840194600190910190840161299f565b50858210156129dc5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600083516129fe81846020880161234c565b835190830190612a1281836020880161234c565b01949350505050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061217390830184612370565b600060208284031215612a6057600080fd5b815161139f81612319565b600060208284031215612a7d57600080fd5b815161139f816125f0565b634e487b7160e01b600052603160045260246000fd5b60008251612ab081846020870161234c565b919091019291505056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a264697066735822122036a0742bf39e9820371974f9bc22e3aac7f7df11a3c8aa23dc0d2f9f28377a4a64736f6c63430008140033697066733a2f2f516d5a7a4562546e555773354a447a724c4b513979476b316b76737a646e77644d61567739764e676a43464c6f322f",
1469
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061028c5760003560e01c8063710e5d2f1161015d578063b88d4fde116100c9578063b88d4fde1461056e578063c5969d9414610581578063c87b56dd14610594578063d5391393146105a7578063d547741f146105bc578063d5a162f1146105cf578063e02023a1146105e2578063e26c523c14610609578063e985e9c51461061c578063eddd0d9c1461062f578063f0f4426014610642578063f2fde38b14610655578063fc0c546a1461066857600080fd5b8063710e5d2f14610497578063715018a6146104aa57806375b238fc146104b25780638c0326af146104c75780638da5cb5b146104db57806391d14854146104ec57806395d89b41146104ff578063983b2d56146105075780639a0438321461051a5780639ee12c891461052d578063a0bcfc7f14610540578063a217fddf14610553578063a22cb4651461055b57600080fd5b806336568abe116101fc57806336568abe146103bf5780633f1db2d9146103d257806340398d67146103db578063415a0eba146103ee57806342842e0e146104015780634f6ccce714610414578063558e44d314610427578063559e775b146104305780635d81cde11461044357806361d027b3146104565780636352211e146104695780636c0360eb1461047c57806370a082311461048457600080fd5b806301ffc9a71461029157806306fdde03146102b9578063081812fc146102ce578063095ea7b3146102ee57806318160ddd146103035780631b2ef1ca1461031557806321f314ca1461032857806323b872dd1461033b578063248a9ca31461034e5780632a5c792a146103715780632f2ff15d146103865780632f745c59146103995780633092afd5146103ac575b600080fd5b6102a461029f36600461232f565b61067b565b60405190151581526020015b60405180910390f35b6102c161068c565b6040516102b0919061239c565b6102e16102dc3660046123af565b61071e565b6040516102b091906123c8565b6103016102fc3660046123f8565b610733565b005b6008545b6040519081526020016102b0565b610301610323366004612422565b610742565b6103016103363660046123f8565b6108d1565b610301610349366004612444565b610933565b61030761035c3660046123af565b6000908152600a602052604090206001015490565b6103796109c7565b6040516102b09190612480565b6103016103943660046124c4565b610a48565b6103076103a73660046123f8565b610a6d565b6103016103ba3660046124f0565b610ac4565b6103016103cd3660046124c4565b610af4565b610307600f5481565b6103796103e93660046124f0565b610b27565b6103076103fc3660046123af565b610bb4565b61030161040f366004612444565b610c22565b6103076104223660046123af565b610c3d565b61030760105481565b61030761043e3660046123af565b610c91565b600e546102e1906001600160a01b031681565b6011546102e1906001600160a01b031681565b6102e16104773660046123af565b610d44565b6102c1610d4f565b6103076104923660046124f0565b610ddd565b6103016104a53660046123af565b610e25565b610301610e7a565b610307600080516020612adb83398151915281565b6011546102a490600160a01b900460ff1681565b600c546001600160a01b03166102e1565b6102a46104fa3660046124c4565b610e8e565b6102c1610eb9565b6103016105153660046124f0565b610ec8565b610379610528366004612422565b610ef8565b61030161053b3660046124c4565b610ff6565b61030161054e3660046125a8565b611061565b610307600081565b6103016105693660046125fe565b6110b5565b61030161057c366004612635565b6110c0565b6102a461058f366004612444565b6110d7565b6102c16105a23660046123af565b6111dd565b610307600080516020612abb83398151915281565b6103016105ca3660046124c4565b611217565b6103016105dd3660046126b0565b61123c565b6103077f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec81565b6103796106173660046126cd565b6112a1565b6102a461062a366004612700565b6113a6565b61030161063d3660046123af565b6113d4565b6103016106503660046124f0565b611451565b6103016106633660046124f0565b61148c565b600d546102e1906001600160a01b031681565b6000610686826114ca565b92915050565b60606000805461069b9061272a565b80601f01602080910402602001604051908101604052809291908181526020018280546106c79061272a565b80156107145780601f106106e957610100808354040283529160200191610714565b820191906000526020600020905b8154815290600101906020018083116106f757829003601f168201915b5050505050905090565b6000610729826114ef565b5061068682611527565b61073e828233611542565b5050565b61074a61154f565b600e5460405163029f72bb60e31b8152600481018490526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610794573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b89190612764565b905060008082116107ca5760006107e5565b612710600f54836107db9190612793565b6107e591906127aa565b905060006107f382846127cc565b90508260000361081657604051633176f6ab60e21b815260040160405180910390fd5b83811115610837576040516308d69cfd60e31b815260040160405180910390fd5b600d5461084f906001600160a01b0316333084611579565b61085a3386856115e0565b81156108c4576011546001600160a01b03161561088e57601154600d5461088e916001600160a01b03918216911684611636565b60405182815233907f11fc6332cfccc2ce93014095f0b5a5b29e6a3028f76849e8214e00c3e1c2df089060200160405180910390a25b50505061073e6001600b55565b600080516020612abb8339815191526108e98161165c565b6108f161154f565b6001600160a01b0383166109185760405163d92e233d60e01b815260040160405180910390fd5b610924838360006115e0565b61092e6001600b55565b505050565b6001600160a01b038216610966576000604051633250574960e11b815260040161095d91906123c8565b60405180910390fd5b6000610973838333611666565b9050836001600160a01b0316816001600160a01b0316146109c1576040516364283d7b60e01b81526001600160a01b038086166004830152602482018490528216604482015260640161095d565b50505050565b606030639a04383260006109da60085490565b6040516001600160e01b031960e085901b16815260048101929092526024820152604401600060405180830381865afa158015610a1b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a4391908101906127df565b905090565b6000828152600a6020526040902060010154610a638161165c565b6109c1838361169a565b6000610a7883610ddd565b8210610a9b57828260405163295f44f760e21b815260040161095d929190612884565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b600080516020612adb833981519152610adc8161165c565b61092e600080516020612abb8339815191528361172e565b6001600160a01b0381163314610b1d5760405163334bd91960e11b815260040160405180910390fd5b61092e828261172e565b60603063e26c523c836000610b3b82610ddd565b6040516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381865afa158015610b8c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261068691908101906127df565b600e5460405163029f72bb60e31b8152600481018390526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610bfe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190612764565b61092e838383604051806020016040528060008152506110c0565b6000610c4860085490565b8210610c6c5760008260405163295f44f760e21b815260040161095d929190612884565b60088281548110610c7f57610c7f61289d565b90600052602060002001549050919050565b600e5460405163029f72bb60e31b81526004810183905260009182916001600160a01b03909116906314fb95d890602401602060405180830381865afa158015610cdf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d039190612764565b90506000808211610d15576000610d30565b612710600f5483610d269190612793565b610d3091906127aa565b9050610d3c81836127cc565b949350505050565b6000610686826114ef565b60128054610d5c9061272a565b80601f0160208091040260200160405190810160405280929190818152602001828054610d889061272a565b8015610dd55780601f10610daa57610100808354040283529160200191610dd5565b820191906000526020600020905b815481529060010190602001808311610db857829003601f168201915b505050505081565b60006001600160a01b038216610e095760006040516322718ad960e21b815260040161095d91906123c8565b506001600160a01b031660009081526003602052604090205490565b600080516020612adb833981519152610e3d8161165c565b60108290556040518281527f5d46f46c0e5b2045e0cb8c00367d35d9f3f1fc035950ac8f5c675f6c0a791ba0906020015b60405180910390a15050565b610e8261179b565b610e8c60006117c8565b565b6000918252600a602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60606001805461069b9061272a565b600080516020612adb833981519152610ee08161165c565b61092e600080516020612abb8339815191528361169a565b6060610f0360085490565b821115610f105760085491505b600854600003610f2f5750604080516000815260208101909152610686565b818310610f4f5760405163561ce9bb60e01b815260040160405180910390fd5b6000610f5b84846128b3565b6001600160401b03811115610f7257610f7261250b565b604051908082528060200260200182016040528015610f9b578160200160208202803683370190505b50905060005b610fab85856128b3565b811015610fee57610fbf61042286836127cc565b828281518110610fd157610fd161289d565b602090810291909101015280610fe6816128c6565b915050610fa1565b509392505050565b600080516020612adb83398151915261100e8161165c565b611018833361172e565b50611023838361169a565b506040516001600160a01b03831690339085907f8d8ac61e09adc57e16fcda3ff204447854c5a75bb3e7f7462337b8eccc2f28f190600090a4505050565b600080516020612adb8339815191526110798161165c565b6012611085838261292d565b507f6741b2fc379fad678116fe3d4d4b9a1a184ab53ba36b86ad0fa66340b1ab41ad82604051610e6e919061239c565b61073e33838361181a565b6110cb848484610933565b6109c1848484846118b0565b60007f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec6111038161165c565b6001600160a01b03851661112a5760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81526000906001600160a01b038716906370a08231906111599030906004016123c8565b602060405180830381865afa158015611176573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119a9190612764565b9050808411156111bd57604051631e9acf1760e31b815260040160405180910390fd5b6111d16001600160a01b0387168686611636565b50600195945050505050565b60606111e76119c7565b6111f0836119d6565b6040516020016112019291906129ec565b6040516020818303038152906040529050919050565b6000828152600a60205260409020600101546112328161165c565b6109c1838361172e565b600080516020612adb8339815191526112548161165c565b60118054831515600160a01b0260ff60a01b199091161790556040517f9258f5907b894a96ae246130a375e1f94b5426c41e63d65dc3ffe9c4e8d5fa9e90610e6e90841515815260200190565b606060006112ae85610ddd565b9050806000036112ce57505060408051600081526020810190915261139f565b808311156112da578092505b8284106112fa5760405163561ce9bb60e01b815260040160405180910390fd5b600061130685856128b3565b6001600160401b0381111561131d5761131d61250b565b604051908082528060200260200182016040528015611346578160200160208202803683370190505b50905060005b61135686866128b3565b81101561139a5761136b876103a788846127cc565b82828151811061137d5761137d61289d565b602090810291909101015280611392816128c6565b91505061134c565b509150505b9392505050565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b600080516020612adb8339815191526113ec8161165c565b601054821180156113fe575060105415155b1561141c576040516371b0df8f60e01b815260040160405180910390fd5b600f8290556040518281527ff2b0bf9819305cc8e01f2f7f632af2c1cc83e2c07d6125d995c62d682963edf190602001610e6e565b600080516020612adb8339815191526114698161165c565b50601180546001600160a01b0319166001600160a01b0392909216919091179055565b61149461179b565b6001600160a01b0381166114be576000604051631e4fbdf760e01b815260040161095d91906123c8565b6114c7816117c8565b50565b60006001600160e01b03198216637965db0b60e01b1480610686575061068682611a68565b6000806114fb83611a8d565b90506001600160a01b03811661068657604051637e27328960e01b81526004810184905260240161095d565b6000908152600460205260409020546001600160a01b031690565b61092e8383836001611aa8565b6002600b540361157257604051633ee5aeb560e01b815260040160405180910390fd5b6002600b55565b6040516001600160a01b0384811660248301528381166044830152606482018390526109c19186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611ba5565b6115ea8383611bff565b600f5460408051848152602081018490529081019190915233907f7bc3ddf0bf2ada973906c61001cd8f787646720bb7da90229e5bf81fa71bab6d9060600160405180910390a2505050565b61092e83846001600160a01b031663a9059cbb85856040516024016115ae929190612884565b6114c78133611c19565b60006001600160a01b03841661168f5760405163e6c4247b60e01b815260040160405180910390fd5b610d3c848484611c44565b60006116a68383610e8e565b611726576000838152600a602090815260408083206001600160a01b03861684529091529020805460ff191660011790556116de3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610686565b506000610686565b600061173a8383610e8e565b15611726576000838152600a602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610686565b600c546001600160a01b03163314610e8c573360405163118cdaa760e01b815260040161095d91906123c8565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166118435781604051630b61174360e31b815260040161095d91906123c8565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0383163b156109c157604051630a85bd0160e11b81526001600160a01b0384169063150b7a02906118f2903390889087908790600401612a1b565b6020604051808303816000875af192505050801561192d575060408051601f3d908101601f1916820190925261192a91810190612a4e565b60015b61198d573d80801561195b576040519150601f19603f3d011682016040523d82523d6000602084013e611960565b606091505b5080516000036119855783604051633250574960e11b815260040161095d91906123c8565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b146119c05783604051633250574960e11b815260040161095d91906123c8565b5050505050565b60606012805461069b9061272a565b606060006119e383611d11565b60010190506000816001600160401b03811115611a0257611a0261250b565b6040519080825280601f01601f191660200182016040528015611a2c576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611a3657509392505050565b60006001600160e01b0319821663780e9d6360e01b1480610686575061068682611de7565b6000908152600260205260409020546001600160a01b031690565b8080611abc57506001600160a01b03821615155b15611b75576000611acc846114ef565b90506001600160a01b03831615801590611af85750826001600160a01b0316816001600160a01b031614155b8015611b0b5750611b0981846113a6565b155b15611b2b578260405163a9fbf51f60e01b815260040161095d91906123c8565b8115611b735783856001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b5050600090815260046020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b6000611bba6001600160a01b03841683611e37565b90508051600014158015611bdf575080806020019051810190611bdd9190612a6b565b155b1561092e5782604051635274afe760e01b815260040161095d91906123c8565b61073e828260405180602001604052806000815250611e45565b611c238282610e8e565b61073e57808260405163e2517d3f60e01b815260040161095d929190612884565b600080611c52858585611e5c565b90506001600160a01b038116611caf57611caa84600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b611cd2565b846001600160a01b0316816001600160a01b031614611cd257611cd28185611f50565b6001600160a01b038516611cee57611ce984611fe1565b610d3c565b846001600160a01b0316816001600160a01b031614610d3c57610d3c8585612090565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611d505772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b8310611d7a576904ee2d6d415b85acef8160201b830492506020015b662386f26fc100008310611d9857662386f26fc10000830492506010015b6305f5e1008310611db0576305f5e100830492506008015b6127108310611dc457612710830492506004015b60648310611dd6576064830492506002015b600a83106106865760010192915050565b60006001600160e01b031982166380ac58cd60e01b1480611e1857506001600160e01b03198216635b5e139f60e01b145b8061068657506301ffc9a760e01b6001600160e01b0319831614610686565b606061139f838360006120e0565b611e4f838361217d565b61092e60008484846118b0565b600080611e6884611a8d565b90506001600160a01b03831615611e8457611e848184866121e2565b6001600160a01b03811615611ec257611ea1600085600080611aa8565b6001600160a01b038116600090815260036020526040902080546000190190555b6001600160a01b03851615611ef1576001600160a01b0385166000908152600360205260409020805460010190555b60008481526002602052604080822080546001600160a01b0319166001600160a01b0389811691821790925591518793918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4949350505050565b6000611f5b83610ddd565b600083815260076020526040902054909150808214611fae576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b600854600090611ff3906001906128b3565b6000838152600960205260408120546008805493945090928490811061201b5761201b61289d565b90600052602060002001549050806008838154811061203c5761203c61289d565b600091825260208083209091019290925582815260099091526040808220849055858252812055600880548061207457612074612a88565b6001900381819060005260206000200160009055905550505050565b6000600161209d84610ddd565b6120a791906128b3565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b606081471015612105573060405163cd78605960e01b815260040161095d91906123c8565b600080856001600160a01b031684866040516121219190612a9e565b60006040518083038185875af1925050503d806000811461215e576040519150601f19603f3d011682016040523d82523d6000602084013e612163565b606091505b5091509150612173868383612238565b9695505050505050565b6001600160a01b0382166121a7576000604051633250574960e11b815260040161095d91906123c8565b60006121b583836000611666565b90506001600160a01b0381161561092e5760006040516339e3563760e11b815260040161095d91906123c8565b6121ed83838361228b565b61092e576001600160a01b03831661221b57604051637e27328960e01b81526004810182905260240161095d565b818160405163177e802f60e01b815260040161095d929190612884565b60608261224d57612248826122f0565b61139f565b815115801561226457506001600160a01b0384163b155b156122845783604051639996b31560e01b815260040161095d91906123c8565b508061139f565b60006001600160a01b03831615801590610d3c5750826001600160a01b0316846001600160a01b031614806122c557506122c584846113a6565b80610d3c5750826001600160a01b03166122de83611527565b6001600160a01b031614949350505050565b8051156123005780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160e01b0319811681146114c757600080fd5b60006020828403121561234157600080fd5b813561139f81612319565b60005b8381101561236757818101518382015260200161234f565b50506000910152565b6000815180845261238881602086016020860161234c565b601f01601f19169290920160200192915050565b60208152600061139f6020830184612370565b6000602082840312156123c157600080fd5b5035919050565b6001600160a01b0391909116815260200190565b80356001600160a01b03811681146123f357600080fd5b919050565b6000806040838503121561240b57600080fd5b612414836123dc565b946020939093013593505050565b6000806040838503121561243557600080fd5b50508035926020909101359150565b60008060006060848603121561245957600080fd5b612462846123dc565b9250612470602085016123dc565b9150604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b818110156124b85783518352928401929184019160010161249c565b50909695505050505050565b600080604083850312156124d757600080fd5b823591506124e7602084016123dc565b90509250929050565b60006020828403121561250257600080fd5b61139f826123dc565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156125495761254961250b565b604052919050565b60006001600160401b0383111561256a5761256a61250b565b61257d601f8401601f1916602001612521565b905082815283838301111561259157600080fd5b828260208301376000602084830101529392505050565b6000602082840312156125ba57600080fd5b81356001600160401b038111156125d057600080fd5b8201601f810184136125e157600080fd5b610d3c84823560208401612551565b80151581146114c757600080fd5b6000806040838503121561261157600080fd5b61261a836123dc565b9150602083013561262a816125f0565b809150509250929050565b6000806000806080858703121561264b57600080fd5b612654856123dc565b9350612662602086016123dc565b92506040850135915060608501356001600160401b0381111561268457600080fd5b8501601f8101871361269557600080fd5b6126a487823560208401612551565b91505092959194509250565b6000602082840312156126c257600080fd5b813561139f816125f0565b6000806000606084860312156126e257600080fd5b6126eb846123dc565b95602085013595506040909401359392505050565b6000806040838503121561271357600080fd5b61271c836123dc565b91506124e7602084016123dc565b600181811c9082168061273e57607f821691505b60208210810361275e57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561277657600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176106865761068661277d565b6000826127c757634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156106865761068661277d565b600060208083850312156127f257600080fd5b82516001600160401b038082111561280957600080fd5b818501915085601f83011261281d57600080fd5b81518181111561282f5761282f61250b565b8060051b9150612840848301612521565b818152918301840191848101908884111561285a57600080fd5b938501935b838510156128785784518252938501939085019061285f565b98975050505050505050565b6001600160a01b03929092168252602082015260400190565b634e487b7160e01b600052603260045260246000fd5b818103818111156106865761068661277d565b6000600182016128d8576128d861277d565b5060010190565b601f82111561092e57600081815260208120601f850160051c810160208610156129065750805b601f850160051c820191505b8181101561292557828155600101612912565b505050505050565b81516001600160401b038111156129465761294661250b565b61295a81612954845461272a565b846128df565b602080601f83116001811461298f57600084156129775750858301515b600019600386901b1c1916600185901b178555612925565b600085815260208120601f198616915b828110156129be5788860151825594840194600190910190840161299f565b50858210156129dc5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600083516129fe81846020880161234c565b835190830190612a1281836020880161234c565b01949350505050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061217390830184612370565b600060208284031215612a6057600080fd5b815161139f81612319565b600060208284031215612a7d57600080fd5b815161139f816125f0565b634e487b7160e01b600052603160045260246000fd5b60008251612ab081846020870161234c565b919091019291505056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a264697066735822122036a0742bf39e9820371974f9bc22e3aac7f7df11a3c8aa23dc0d2f9f28377a4a64736f6c63430008140033",
1470
- "linkReferences": {},
1471
- "deployedLinkReferences": {}
754
+ "inputs": [
755
+ {
756
+ "internalType": "uint256",
757
+ "name": "start",
758
+ "type": "uint256"
759
+ },
760
+ {
761
+ "internalType": "uint256",
762
+ "name": "end",
763
+ "type": "uint256"
764
+ }
765
+ ],
766
+ "name": "getAllTokens",
767
+ "outputs": [
768
+ {
769
+ "internalType": "uint256[]",
770
+ "name": "",
771
+ "type": "uint256[]"
772
+ }
773
+ ],
774
+ "stateMutability": "view",
775
+ "type": "function"
776
+ },
777
+ {
778
+ "inputs": [
779
+ {
780
+ "internalType": "uint256",
781
+ "name": "tokenId",
782
+ "type": "uint256"
783
+ }
784
+ ],
785
+ "name": "getApproved",
786
+ "outputs": [
787
+ {
788
+ "internalType": "address",
789
+ "name": "",
790
+ "type": "address"
791
+ }
792
+ ],
793
+ "stateMutability": "view",
794
+ "type": "function"
795
+ },
796
+ {
797
+ "inputs": [
798
+ {
799
+ "internalType": "uint256",
800
+ "name": "_tokenId",
801
+ "type": "uint256"
802
+ }
803
+ ],
804
+ "name": "getHousePrice",
805
+ "outputs": [
806
+ {
807
+ "internalType": "uint256",
808
+ "name": "",
809
+ "type": "uint256"
810
+ }
811
+ ],
812
+ "stateMutability": "view",
813
+ "type": "function"
814
+ },
815
+ {
816
+ "inputs": [
817
+ {
818
+ "internalType": "uint256",
819
+ "name": "_tokenId",
820
+ "type": "uint256"
821
+ }
822
+ ],
823
+ "name": "getMintPrice",
824
+ "outputs": [
825
+ {
826
+ "internalType": "uint256",
827
+ "name": "",
828
+ "type": "uint256"
829
+ }
830
+ ],
831
+ "stateMutability": "view",
832
+ "type": "function"
833
+ },
834
+ {
835
+ "inputs": [
836
+ {
837
+ "internalType": "bytes32",
838
+ "name": "role",
839
+ "type": "bytes32"
840
+ }
841
+ ],
842
+ "name": "getRoleAdmin",
843
+ "outputs": [
844
+ {
845
+ "internalType": "bytes32",
846
+ "name": "",
847
+ "type": "bytes32"
848
+ }
849
+ ],
850
+ "stateMutability": "view",
851
+ "type": "function"
852
+ },
853
+ {
854
+ "inputs": [
855
+ {
856
+ "internalType": "address",
857
+ "name": "owner",
858
+ "type": "address"
859
+ }
860
+ ],
861
+ "name": "getTokensByOwner",
862
+ "outputs": [
863
+ {
864
+ "internalType": "uint256[]",
865
+ "name": "",
866
+ "type": "uint256[]"
867
+ }
868
+ ],
869
+ "stateMutability": "view",
870
+ "type": "function"
871
+ },
872
+ {
873
+ "inputs": [
874
+ {
875
+ "internalType": "address",
876
+ "name": "owner",
877
+ "type": "address"
878
+ },
879
+ {
880
+ "internalType": "uint256",
881
+ "name": "start",
882
+ "type": "uint256"
883
+ },
884
+ {
885
+ "internalType": "uint256",
886
+ "name": "end",
887
+ "type": "uint256"
888
+ }
889
+ ],
890
+ "name": "getTokensByOwner",
891
+ "outputs": [
892
+ {
893
+ "internalType": "uint256[]",
894
+ "name": "",
895
+ "type": "uint256[]"
896
+ }
897
+ ],
898
+ "stateMutability": "view",
899
+ "type": "function"
900
+ },
901
+ {
902
+ "inputs": [
903
+ {
904
+ "internalType": "bytes32",
905
+ "name": "role",
906
+ "type": "bytes32"
907
+ },
908
+ {
909
+ "internalType": "address",
910
+ "name": "account",
911
+ "type": "address"
912
+ }
913
+ ],
914
+ "name": "grantRole",
915
+ "outputs": [],
916
+ "stateMutability": "nonpayable",
917
+ "type": "function"
918
+ },
919
+ {
920
+ "inputs": [
921
+ {
922
+ "internalType": "bytes32",
923
+ "name": "role",
924
+ "type": "bytes32"
925
+ },
926
+ {
927
+ "internalType": "address",
928
+ "name": "account",
929
+ "type": "address"
930
+ }
931
+ ],
932
+ "name": "hasRole",
933
+ "outputs": [
934
+ {
935
+ "internalType": "bool",
936
+ "name": "",
937
+ "type": "bool"
938
+ }
939
+ ],
940
+ "stateMutability": "view",
941
+ "type": "function"
942
+ },
943
+ {
944
+ "inputs": [
945
+ {
946
+ "internalType": "address",
947
+ "name": "owner",
948
+ "type": "address"
949
+ },
950
+ {
951
+ "internalType": "address",
952
+ "name": "operator",
953
+ "type": "address"
954
+ }
955
+ ],
956
+ "name": "isApprovedForAll",
957
+ "outputs": [
958
+ {
959
+ "internalType": "bool",
960
+ "name": "",
961
+ "type": "bool"
962
+ }
963
+ ],
964
+ "stateMutability": "view",
965
+ "type": "function"
966
+ },
967
+ {
968
+ "inputs": [
969
+ {
970
+ "internalType": "uint256",
971
+ "name": "_tokenId",
972
+ "type": "uint256"
973
+ },
974
+ {
975
+ "internalType": "uint256",
976
+ "name": "_amount",
977
+ "type": "uint256"
978
+ }
979
+ ],
980
+ "name": "mint",
981
+ "outputs": [],
982
+ "stateMutability": "nonpayable",
983
+ "type": "function"
984
+ },
985
+ {
986
+ "inputs": [
987
+ {
988
+ "internalType": "address",
989
+ "name": "to",
990
+ "type": "address"
991
+ },
992
+ {
993
+ "internalType": "uint256",
994
+ "name": "tokenId",
995
+ "type": "uint256"
996
+ }
997
+ ],
998
+ "name": "minterMint",
999
+ "outputs": [],
1000
+ "stateMutability": "nonpayable",
1001
+ "type": "function"
1002
+ },
1003
+ {
1004
+ "inputs": [],
1005
+ "name": "name",
1006
+ "outputs": [
1007
+ {
1008
+ "internalType": "string",
1009
+ "name": "",
1010
+ "type": "string"
1011
+ }
1012
+ ],
1013
+ "stateMutability": "view",
1014
+ "type": "function"
1015
+ },
1016
+ {
1017
+ "inputs": [],
1018
+ "name": "owner",
1019
+ "outputs": [
1020
+ {
1021
+ "internalType": "address",
1022
+ "name": "",
1023
+ "type": "address"
1024
+ }
1025
+ ],
1026
+ "stateMutability": "view",
1027
+ "type": "function"
1028
+ },
1029
+ {
1030
+ "inputs": [
1031
+ {
1032
+ "internalType": "uint256",
1033
+ "name": "tokenId",
1034
+ "type": "uint256"
1035
+ }
1036
+ ],
1037
+ "name": "ownerOf",
1038
+ "outputs": [
1039
+ {
1040
+ "internalType": "address",
1041
+ "name": "",
1042
+ "type": "address"
1043
+ }
1044
+ ],
1045
+ "stateMutability": "view",
1046
+ "type": "function"
1047
+ },
1048
+ {
1049
+ "inputs": [],
1050
+ "name": "raac_hp",
1051
+ "outputs": [
1052
+ {
1053
+ "internalType": "contract IRAACHousePrices",
1054
+ "name": "",
1055
+ "type": "address"
1056
+ }
1057
+ ],
1058
+ "stateMutability": "view",
1059
+ "type": "function"
1060
+ },
1061
+ {
1062
+ "inputs": [
1063
+ {
1064
+ "internalType": "address",
1065
+ "name": "minter",
1066
+ "type": "address"
1067
+ }
1068
+ ],
1069
+ "name": "removeMinter",
1070
+ "outputs": [],
1071
+ "stateMutability": "nonpayable",
1072
+ "type": "function"
1073
+ },
1074
+ {
1075
+ "inputs": [],
1076
+ "name": "renounceOwnership",
1077
+ "outputs": [],
1078
+ "stateMutability": "nonpayable",
1079
+ "type": "function"
1080
+ },
1081
+ {
1082
+ "inputs": [
1083
+ {
1084
+ "internalType": "bytes32",
1085
+ "name": "role",
1086
+ "type": "bytes32"
1087
+ },
1088
+ {
1089
+ "internalType": "address",
1090
+ "name": "callerConfirmation",
1091
+ "type": "address"
1092
+ }
1093
+ ],
1094
+ "name": "renounceRole",
1095
+ "outputs": [],
1096
+ "stateMutability": "nonpayable",
1097
+ "type": "function"
1098
+ },
1099
+ {
1100
+ "inputs": [
1101
+ {
1102
+ "internalType": "bytes32",
1103
+ "name": "role",
1104
+ "type": "bytes32"
1105
+ },
1106
+ {
1107
+ "internalType": "address",
1108
+ "name": "account",
1109
+ "type": "address"
1110
+ }
1111
+ ],
1112
+ "name": "revokeRole",
1113
+ "outputs": [],
1114
+ "stateMutability": "nonpayable",
1115
+ "type": "function"
1116
+ },
1117
+ {
1118
+ "inputs": [
1119
+ {
1120
+ "internalType": "address",
1121
+ "name": "from",
1122
+ "type": "address"
1123
+ },
1124
+ {
1125
+ "internalType": "address",
1126
+ "name": "to",
1127
+ "type": "address"
1128
+ },
1129
+ {
1130
+ "internalType": "uint256",
1131
+ "name": "tokenId",
1132
+ "type": "uint256"
1133
+ }
1134
+ ],
1135
+ "name": "safeTransferFrom",
1136
+ "outputs": [],
1137
+ "stateMutability": "nonpayable",
1138
+ "type": "function"
1139
+ },
1140
+ {
1141
+ "inputs": [
1142
+ {
1143
+ "internalType": "address",
1144
+ "name": "from",
1145
+ "type": "address"
1146
+ },
1147
+ {
1148
+ "internalType": "address",
1149
+ "name": "to",
1150
+ "type": "address"
1151
+ },
1152
+ {
1153
+ "internalType": "uint256",
1154
+ "name": "tokenId",
1155
+ "type": "uint256"
1156
+ },
1157
+ {
1158
+ "internalType": "bytes",
1159
+ "name": "data",
1160
+ "type": "bytes"
1161
+ }
1162
+ ],
1163
+ "name": "safeTransferFrom",
1164
+ "outputs": [],
1165
+ "stateMutability": "nonpayable",
1166
+ "type": "function"
1167
+ },
1168
+ {
1169
+ "inputs": [
1170
+ {
1171
+ "internalType": "bool",
1172
+ "name": "_allowBurning",
1173
+ "type": "bool"
1174
+ }
1175
+ ],
1176
+ "name": "setAllowBurning",
1177
+ "outputs": [],
1178
+ "stateMutability": "nonpayable",
1179
+ "type": "function"
1180
+ },
1181
+ {
1182
+ "inputs": [
1183
+ {
1184
+ "internalType": "address",
1185
+ "name": "operator",
1186
+ "type": "address"
1187
+ },
1188
+ {
1189
+ "internalType": "bool",
1190
+ "name": "approved",
1191
+ "type": "bool"
1192
+ }
1193
+ ],
1194
+ "name": "setApprovalForAll",
1195
+ "outputs": [],
1196
+ "stateMutability": "nonpayable",
1197
+ "type": "function"
1198
+ },
1199
+ {
1200
+ "inputs": [
1201
+ {
1202
+ "internalType": "string",
1203
+ "name": "_uri",
1204
+ "type": "string"
1205
+ }
1206
+ ],
1207
+ "name": "setBaseUri",
1208
+ "outputs": [],
1209
+ "stateMutability": "nonpayable",
1210
+ "type": "function"
1211
+ },
1212
+ {
1213
+ "inputs": [
1214
+ {
1215
+ "internalType": "uint256",
1216
+ "name": "_maxFeePercentage",
1217
+ "type": "uint256"
1218
+ }
1219
+ ],
1220
+ "name": "setMaxFee",
1221
+ "outputs": [],
1222
+ "stateMutability": "nonpayable",
1223
+ "type": "function"
1224
+ },
1225
+ {
1226
+ "inputs": [
1227
+ {
1228
+ "internalType": "uint256",
1229
+ "name": "newFee",
1230
+ "type": "uint256"
1231
+ }
1232
+ ],
1233
+ "name": "setMintFee",
1234
+ "outputs": [],
1235
+ "stateMutability": "nonpayable",
1236
+ "type": "function"
1237
+ },
1238
+ {
1239
+ "inputs": [
1240
+ {
1241
+ "internalType": "address",
1242
+ "name": "_treasury",
1243
+ "type": "address"
1244
+ }
1245
+ ],
1246
+ "name": "setTreasury",
1247
+ "outputs": [],
1248
+ "stateMutability": "nonpayable",
1249
+ "type": "function"
1250
+ },
1251
+ {
1252
+ "inputs": [
1253
+ {
1254
+ "internalType": "bytes4",
1255
+ "name": "interfaceId",
1256
+ "type": "bytes4"
1257
+ }
1258
+ ],
1259
+ "name": "supportsInterface",
1260
+ "outputs": [
1261
+ {
1262
+ "internalType": "bool",
1263
+ "name": "",
1264
+ "type": "bool"
1265
+ }
1266
+ ],
1267
+ "stateMutability": "view",
1268
+ "type": "function"
1269
+ },
1270
+ {
1271
+ "inputs": [],
1272
+ "name": "symbol",
1273
+ "outputs": [
1274
+ {
1275
+ "internalType": "string",
1276
+ "name": "",
1277
+ "type": "string"
1278
+ }
1279
+ ],
1280
+ "stateMutability": "view",
1281
+ "type": "function"
1282
+ },
1283
+ {
1284
+ "inputs": [],
1285
+ "name": "token",
1286
+ "outputs": [
1287
+ {
1288
+ "internalType": "contract IERC20",
1289
+ "name": "",
1290
+ "type": "address"
1291
+ }
1292
+ ],
1293
+ "stateMutability": "view",
1294
+ "type": "function"
1295
+ },
1296
+ {
1297
+ "inputs": [
1298
+ {
1299
+ "internalType": "uint256",
1300
+ "name": "index",
1301
+ "type": "uint256"
1302
+ }
1303
+ ],
1304
+ "name": "tokenByIndex",
1305
+ "outputs": [
1306
+ {
1307
+ "internalType": "uint256",
1308
+ "name": "",
1309
+ "type": "uint256"
1310
+ }
1311
+ ],
1312
+ "stateMutability": "view",
1313
+ "type": "function"
1314
+ },
1315
+ {
1316
+ "inputs": [
1317
+ {
1318
+ "internalType": "address",
1319
+ "name": "owner",
1320
+ "type": "address"
1321
+ },
1322
+ {
1323
+ "internalType": "uint256",
1324
+ "name": "index",
1325
+ "type": "uint256"
1326
+ }
1327
+ ],
1328
+ "name": "tokenOfOwnerByIndex",
1329
+ "outputs": [
1330
+ {
1331
+ "internalType": "uint256",
1332
+ "name": "",
1333
+ "type": "uint256"
1334
+ }
1335
+ ],
1336
+ "stateMutability": "view",
1337
+ "type": "function"
1338
+ },
1339
+ {
1340
+ "inputs": [
1341
+ {
1342
+ "internalType": "uint256",
1343
+ "name": "_tokenId",
1344
+ "type": "uint256"
1345
+ }
1346
+ ],
1347
+ "name": "tokenURI",
1348
+ "outputs": [
1349
+ {
1350
+ "internalType": "string",
1351
+ "name": "",
1352
+ "type": "string"
1353
+ }
1354
+ ],
1355
+ "stateMutability": "view",
1356
+ "type": "function"
1357
+ },
1358
+ {
1359
+ "inputs": [],
1360
+ "name": "totalSupply",
1361
+ "outputs": [
1362
+ {
1363
+ "internalType": "uint256",
1364
+ "name": "",
1365
+ "type": "uint256"
1366
+ }
1367
+ ],
1368
+ "stateMutability": "view",
1369
+ "type": "function"
1370
+ },
1371
+ {
1372
+ "inputs": [
1373
+ {
1374
+ "internalType": "address",
1375
+ "name": "from",
1376
+ "type": "address"
1377
+ },
1378
+ {
1379
+ "internalType": "address",
1380
+ "name": "to",
1381
+ "type": "address"
1382
+ },
1383
+ {
1384
+ "internalType": "uint256",
1385
+ "name": "tokenId",
1386
+ "type": "uint256"
1387
+ }
1388
+ ],
1389
+ "name": "transferFrom",
1390
+ "outputs": [],
1391
+ "stateMutability": "nonpayable",
1392
+ "type": "function"
1393
+ },
1394
+ {
1395
+ "inputs": [
1396
+ {
1397
+ "internalType": "address",
1398
+ "name": "newOwner",
1399
+ "type": "address"
1400
+ }
1401
+ ],
1402
+ "name": "transferOwnership",
1403
+ "outputs": [],
1404
+ "stateMutability": "nonpayable",
1405
+ "type": "function"
1406
+ },
1407
+ {
1408
+ "inputs": [
1409
+ {
1410
+ "internalType": "bytes32",
1411
+ "name": "role",
1412
+ "type": "bytes32"
1413
+ },
1414
+ {
1415
+ "internalType": "address",
1416
+ "name": "newMinter",
1417
+ "type": "address"
1418
+ }
1419
+ ],
1420
+ "name": "transferRole",
1421
+ "outputs": [],
1422
+ "stateMutability": "nonpayable",
1423
+ "type": "function"
1424
+ },
1425
+ {
1426
+ "inputs": [],
1427
+ "name": "treasury",
1428
+ "outputs": [
1429
+ {
1430
+ "internalType": "address",
1431
+ "name": "",
1432
+ "type": "address"
1433
+ }
1434
+ ],
1435
+ "stateMutability": "view",
1436
+ "type": "function"
1437
+ },
1438
+ {
1439
+ "inputs": [
1440
+ {
1441
+ "internalType": "address",
1442
+ "name": "tokenAddress",
1443
+ "type": "address"
1444
+ },
1445
+ {
1446
+ "internalType": "address",
1447
+ "name": "to",
1448
+ "type": "address"
1449
+ },
1450
+ {
1451
+ "internalType": "uint256",
1452
+ "name": "amount",
1453
+ "type": "uint256"
1454
+ }
1455
+ ],
1456
+ "name": "withdrawUnderlying",
1457
+ "outputs": [
1458
+ {
1459
+ "internalType": "bool",
1460
+ "name": "",
1461
+ "type": "bool"
1462
+ }
1463
+ ],
1464
+ "stateMutability": "nonpayable",
1465
+ "type": "function"
1466
+ }
1467
+ ],
1468
+ "bytecode": "0x6000600f8190556010556011805460ff60a01b1916905560e06040526036608081815290620030f660a039601290620000399082620003d1565b503480156200004757600080fd5b506040516200312c3803806200312c8339810160408190526200006a91620004ba565b806040518060400160405280600881526020016714905050c813919560c21b8152506040518060400160405280600781526020016614905050d3919560ca1b8152508160009081620000bd9190620003d1565b506001620000cc8282620003d1565b50506001600b55506001600160a01b0381166200010357604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6200010e8162000227565b506001600160a01b03831615806200012d57506001600160a01b038216155b806200014057506001600160a01b038116155b156200015f5760405163e6c4247b60e01b815260040160405180910390fd5b6200016c60003362000279565b50620001997fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217753362000279565b50620001c67f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec3362000279565b50620001f37f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a63362000279565b5050600d80546001600160a01b039384166001600160a01b031991821617909155600e805492909316911617905562000504565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000828152600a602090815260408083206001600160a01b038516845290915281205460ff1662000322576000838152600a602090815260408083206001600160a01b03861684529091529020805460ff19166001179055620002d93390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600162000326565b5060005b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200035757607f821691505b6020821081036200037857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003cc57600081815260208120601f850160051c81016020861015620003a75750805b601f850160051c820191505b81811015620003c857828155600101620003b3565b5050505b505050565b81516001600160401b03811115620003ed57620003ed6200032c565b6200040581620003fe845462000342565b846200037e565b602080601f8311600181146200043d5760008415620004245750858301515b600019600386901b1c1916600185901b178555620003c8565b600085815260208120601f198616915b828110156200046e578886015182559484019460019091019084016200044d565b50858210156200048d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b80516001600160a01b0381168114620004b557600080fd5b919050565b600080600060608486031215620004d057600080fd5b620004db846200049d565b9250620004eb602085016200049d565b9150620004fb604085016200049d565b90509250925092565b612be280620005146000396000f3fe608060405234801561001057600080fd5b506004361061030c5760003560e01c8063710e5d2f1161019d578063b88d4fde116100e9578063e02023a1116100a2578063eddd0d9c1161007c578063eddd0d9c146106ba578063f0f44260146106cd578063f2fde38b146106e0578063fc0c546a146106f357600080fd5b8063e02023a11461066d578063e26c523c14610694578063e985e9c5146106a757600080fd5b8063b88d4fde146105f9578063c5969d941461060c578063c87b56dd1461061f578063d539139314610632578063d547741f14610647578063d5a162f11461065a57600080fd5b806395d89b41116101565780639ee12c89116101305780639ee12c89146105b8578063a0bcfc7f146105cb578063a217fddf146105de578063a22cb465146105e657600080fd5b806395d89b411461058a578063983b2d56146105925780639a043832146105a557600080fd5b8063710e5d2f14610522578063715018a61461053557806375b238fc1461053d5780638c0326af146105525780638da5cb5b1461056657806391d148541461057757600080fd5b806336568abe1161025c578063558e44d31161021557806361d027b3116101ef57806361d027b3146104e15780636352211e146104f45780636c0360eb1461050757806370a082311461050f57600080fd5b8063558e44d3146104b2578063559e775b146104bb5780635d81cde1146104ce57600080fd5b806336568abe1461044a5780633f1db2d91461045d57806340398d6714610466578063415a0eba1461047957806342842e0e1461048c5780634f6ccce71461049f57600080fd5b806321f314ca116102c95780632a5c792a116102a35780632a5c792a146103fc5780632f2ff15d146104115780632f745c59146104245780633092afd51461043757600080fd5b806321f314ca146103b357806323b872dd146103c6578063248a9ca3146103d957600080fd5b806301ffc9a71461031157806306fdde0314610339578063081812fc1461034e578063095ea7b31461037957806318160ddd1461038e5780631b2ef1ca146103a0575b600080fd5b61032461031f366004612408565b610706565b60405190151581526020015b60405180910390f35b610341610717565b6040516103309190612475565b61036161035c366004612488565b6107a9565b6040516001600160a01b039091168152602001610330565b61038c6103873660046124bd565b6107d2565b005b6008545b604051908152602001610330565b61038c6103ae3660046124e7565b6107e1565b61038c6103c13660046124bd565b610970565b61038c6103d4366004612509565b6109d2565b6103926103e7366004612488565b6000908152600a602052604090206001015490565b610404610a62565b6040516103309190612545565b61038c61041f366004612589565b610ae3565b6103926104323660046124bd565b610b08565b61038c6104453660046125b5565b610b6d565b61038c610458366004612589565b610b9d565b610392600f5481565b6104046104743660046125b5565b610bd0565b610392610487366004612488565b610c5d565b61038c61049a366004612509565b610ccb565b6103926104ad366004612488565b610ce6565b61039260105481565b6103926104c9366004612488565b610d3f565b600e54610361906001600160a01b031681565b601154610361906001600160a01b031681565b610361610502366004612488565b610df2565b610341610dfd565b61039261051d3660046125b5565b610e8b565b61038c610530366004612488565b610ed3565b61038c610f28565b610392600080516020612b8d83398151915281565b60115461032490600160a01b900460ff1681565b600c546001600160a01b0316610361565b610324610585366004612589565b610f3c565b610341610f67565b61038c6105a03660046125b5565b610f76565b6104046105b33660046124e7565b610fa6565b61038c6105c6366004612589565b6110a5565b61038c6105d936600461266f565b611110565b610392600081565b61038c6105f43660046126c6565b611164565b61038c6106073660046126fd565b61116f565b61032461061a366004612509565b611186565b61034161062d366004612488565b611287565b610392600080516020612b6d83398151915281565b61038c610655366004612589565b6112c1565b61038c610668366004612779565b6112e6565b6103927f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec81565b6104046106a2366004612796565b61134b565b6103246106b53660046127c9565b611451565b61038c6106c8366004612488565b61147f565b61038c6106db3660046125b5565b6114fc565b61038c6106ee3660046125b5565b611537565b600d54610361906001600160a01b031681565b600061071182611575565b92915050565b606060008054610726906127f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610752906127f3565b801561079f5780601f106107745761010080835404028352916020019161079f565b820191906000526020600020905b81548152906001019060200180831161078257829003601f168201915b5050505050905090565b60006107b48261159a565b506000828152600460205260409020546001600160a01b0316610711565b6107dd8282336115d3565b5050565b6107e96115e0565b600e5460405163029f72bb60e31b8152600481018490526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610833573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610857919061282d565b90506000808211610869576000610884565b612710600f548361087a919061285c565b6108849190612873565b905060006108928284612895565b9050826000036108b557604051633176f6ab60e21b815260040160405180910390fd5b838111156108d6576040516308d69cfd60e31b815260040160405180910390fd5b600d546108ee906001600160a01b031633308461160a565b6108f9338685611671565b8115610963576011546001600160a01b03161561092d57601154600d5461092d916001600160a01b039182169116846116c7565b60405182815233907f11fc6332cfccc2ce93014095f0b5a5b29e6a3028f76849e8214e00c3e1c2df089060200160405180910390a25b5050506107dd6001600b55565b600080516020612b6d833981519152610988816116f8565b6109906115e0565b6001600160a01b0383166109b75760405163d92e233d60e01b815260040160405180910390fd5b6109c383836000611671565b6109cd6001600b55565b505050565b6001600160a01b038216610a0157604051633250574960e11b8152600060048201526024015b60405180910390fd5b6000610a0e838333611702565b9050836001600160a01b0316816001600160a01b031614610a5c576040516364283d7b60e01b81526001600160a01b03808616600483015260248201849052821660448201526064016109f8565b50505050565b606030639a0438326000610a7560085490565b6040516001600160e01b031960e085901b16815260048101929092526024820152604401600060405180830381865afa158015610ab6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ade91908101906128a8565b905090565b6000828152600a6020526040902060010154610afe816116f8565b610a5c8383611736565b6000610b1383610e8b565b8210610b445760405163295f44f760e21b81526001600160a01b0384166004820152602481018390526044016109f8565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b600080516020612b8d833981519152610b85816116f8565b6109cd600080516020612b6d833981519152836117ca565b6001600160a01b0381163314610bc65760405163334bd91960e11b815260040160405180910390fd5b6109cd82826117ca565b60603063e26c523c836000610be482610e8b565b6040516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381865afa158015610c35573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261071191908101906128a8565b600e5460405163029f72bb60e31b8152600481018390526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610ca7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610711919061282d565b6109cd8383836040518060200160405280600081525061116f565b6000610cf160085490565b8210610d1a5760405163295f44f760e21b815260006004820152602481018390526044016109f8565b60088281548110610d2d57610d2d61294e565b90600052602060002001549050919050565b600e5460405163029f72bb60e31b81526004810183905260009182916001600160a01b03909116906314fb95d890602401602060405180830381865afa158015610d8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db1919061282d565b90506000808211610dc3576000610dde565b612710600f5483610dd4919061285c565b610dde9190612873565b9050610dea8183612895565b949350505050565b60006107118261159a565b60128054610e0a906127f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e36906127f3565b8015610e835780601f10610e5857610100808354040283529160200191610e83565b820191906000526020600020905b815481529060010190602001808311610e6657829003601f168201915b505050505081565b60006001600160a01b038216610eb7576040516322718ad960e21b8152600060048201526024016109f8565b506001600160a01b031660009081526003602052604090205490565b600080516020612b8d833981519152610eeb816116f8565b60108290556040518281527f5d46f46c0e5b2045e0cb8c00367d35d9f3f1fc035950ac8f5c675f6c0a791ba0906020015b60405180910390a15050565b610f30611837565b610f3a6000611864565b565b6000918252600a602090815260408084206001600160a01b0393909316845291905290205460ff1690565b606060018054610726906127f3565b600080516020612b8d833981519152610f8e816116f8565b6109cd600080516020612b6d83398151915283611736565b6060610fb160085490565b821115610fbe5760085491505b600854600003610fdd5750604080516000815260208101909152610711565b818310610ffd5760405163561ce9bb60e01b815260040160405180910390fd5b60006110098484612964565b67ffffffffffffffff811115611021576110216125d0565b60405190808252806020026020018201604052801561104a578160200160208202803683370190505b50905060005b61105a8585612964565b81101561109d5761106e6104ad8683612895565b8282815181106110805761108061294e565b60209081029190910101528061109581612977565b915050611050565b509392505050565b600080516020612b8d8339815191526110bd816116f8565b6110c783336117ca565b506110d28383611736565b506040516001600160a01b03831690339085907f8d8ac61e09adc57e16fcda3ff204447854c5a75bb3e7f7462337b8eccc2f28f190600090a4505050565b600080516020612b8d833981519152611128816116f8565b601261113483826129de565b507f6741b2fc379fad678116fe3d4d4b9a1a184ab53ba36b86ad0fa66340b1ab41ad82604051610f1c9190612475565b6107dd3383836118b6565b61117a8484846109d2565b610a5c84848484611955565b60007f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec6111b2816116f8565b6001600160a01b0385166111d95760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038716906370a0823190602401602060405180830381865afa158015611220573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611244919061282d565b90508084111561126757604051631e9acf1760e31b815260040160405180910390fd5b61127b6001600160a01b03871686866116c7565b50600195945050505050565b6060611291611a7e565b61129a83611a8d565b6040516020016112ab929190612a9e565b6040516020818303038152906040529050919050565b6000828152600a60205260409020600101546112dc816116f8565b610a5c83836117ca565b600080516020612b8d8339815191526112fe816116f8565b60118054831515600160a01b0260ff60a01b199091161790556040517f9258f5907b894a96ae246130a375e1f94b5426c41e63d65dc3ffe9c4e8d5fa9e90610f1c90841515815260200190565b6060600061135885610e8b565b90508060000361137857505060408051600081526020810190915261144a565b80831115611384578092505b8284106113a45760405163561ce9bb60e01b815260040160405180910390fd5b60006113b08585612964565b67ffffffffffffffff8111156113c8576113c86125d0565b6040519080825280602002602001820160405280156113f1578160200160208202803683370190505b50905060005b6114018686612964565b81101561144557611416876104328884612895565b8282815181106114285761142861294e565b60209081029190910101528061143d81612977565b9150506113f7565b509150505b9392505050565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b600080516020612b8d833981519152611497816116f8565b601054821180156114a9575060105415155b156114c7576040516371b0df8f60e01b815260040160405180910390fd5b600f8290556040518281527ff2b0bf9819305cc8e01f2f7f632af2c1cc83e2c07d6125d995c62d682963edf190602001610f1c565b600080516020612b8d833981519152611514816116f8565b50601180546001600160a01b0319166001600160a01b0392909216919091179055565b61153f611837565b6001600160a01b03811661156957604051631e4fbdf760e01b8152600060048201526024016109f8565b61157281611864565b50565b60006001600160e01b03198216637965db0b60e01b1480610711575061071182611b20565b6000818152600260205260408120546001600160a01b03168061071157604051637e27328960e01b8152600481018490526024016109f8565b6109cd8383836001611b45565b6002600b540361160357604051633ee5aeb560e01b815260040160405180910390fd5b6002600b55565b6040516001600160a01b038481166024830152838116604483015260648201839052610a5c9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611c4b565b61167b8383611cae565b600f5460408051848152602081018490529081019190915233907f7bc3ddf0bf2ada973906c61001cd8f787646720bb7da90229e5bf81fa71bab6d9060600160405180910390a2505050565b6040516001600160a01b038381166024830152604482018390526109cd91859182169063a9059cbb9060640161163f565b6115728133611cc8565b60006001600160a01b03841661172b5760405163e6c4247b60e01b815260040160405180910390fd5b610dea848484611d01565b60006117428383610f3c565b6117c2576000838152600a602090815260408083206001600160a01b03861684529091529020805460ff1916600117905561177a3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610711565b506000610711565b60006117d68383610f3c565b156117c2576000838152600a602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610711565b600c546001600160a01b03163314610f3a5760405163118cdaa760e01b81523360048201526024016109f8565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166118e857604051630b61174360e31b81526001600160a01b03831660048201526024016109f8565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0383163b15610a5c57604051630a85bd0160e11b81526001600160a01b0384169063150b7a0290611997903390889087908790600401612acd565b6020604051808303816000875af19250505080156119d2575060408051601f3d908101601f191682019092526119cf91810190612b00565b60015b611a3b573d808015611a00576040519150601f19603f3d011682016040523d82523d6000602084013e611a05565b606091505b508051600003611a3357604051633250574960e11b81526001600160a01b03851660048201526024016109f8565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b14611a7757604051633250574960e11b81526001600160a01b03851660048201526024016109f8565b5050505050565b606060128054610726906127f3565b60606000611a9a83611dce565b600101905060008167ffffffffffffffff811115611aba57611aba6125d0565b6040519080825280601f01601f191660200182016040528015611ae4576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611aee57509392505050565b60006001600160e01b0319821663780e9d6360e01b1480610711575061071182611ea6565b8080611b5957506001600160a01b03821615155b15611c1b576000611b698461159a565b90506001600160a01b03831615801590611b955750826001600160a01b0316816001600160a01b031614155b8015611ba85750611ba68184611451565b155b15611bd15760405163a9fbf51f60e01b81526001600160a01b03841660048201526024016109f8565b8115611c195783856001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b5050600090815260046020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b6000611c606001600160a01b03841683611ef6565b90508051600014158015611c85575080806020019051810190611c839190612b1d565b155b156109cd57604051635274afe760e01b81526001600160a01b03841660048201526024016109f8565b6107dd828260405180602001604052806000815250611f04565b611cd28282610f3c565b6107dd5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016109f8565b600080611d0f858585611f1b565b90506001600160a01b038116611d6c57611d6784600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b611d8f565b846001600160a01b0316816001600160a01b031614611d8f57611d8f8185612014565b6001600160a01b038516611dab57611da6846120a5565b610dea565b846001600160a01b0316816001600160a01b031614610dea57610dea8585612154565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611e0d5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310611e39576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611e5757662386f26fc10000830492506010015b6305f5e1008310611e6f576305f5e100830492506008015b6127108310611e8357612710830492506004015b60648310611e95576064830492506002015b600a83106107115760010192915050565b60006001600160e01b031982166380ac58cd60e01b1480611ed757506001600160e01b03198216635b5e139f60e01b145b8061071157506301ffc9a760e01b6001600160e01b0319831614610711565b606061144a838360006121a4565b611f0e8383612241565b6109cd6000848484611955565b6000828152600260205260408120546001600160a01b0390811690831615611f4857611f488184866122a6565b6001600160a01b03811615611f8657611f65600085600080611b45565b6001600160a01b038116600090815260036020526040902080546000190190555b6001600160a01b03851615611fb5576001600160a01b0385166000908152600360205260409020805460010190555b60008481526002602052604080822080546001600160a01b0319166001600160a01b0389811691821790925591518793918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4949350505050565b600061201f83610e8b565b600083815260076020526040902054909150808214612072576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b6008546000906120b790600190612964565b600083815260096020526040812054600880549394509092849081106120df576120df61294e565b9060005260206000200154905080600883815481106121005761210061294e565b600091825260208083209091019290925582815260099091526040808220849055858252812055600880548061213857612138612b3a565b6001900381819060005260206000200160009055905550505050565b6000600161216184610e8b565b61216b9190612964565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b6060814710156121c95760405163cd78605960e01b81523060048201526024016109f8565b600080856001600160a01b031684866040516121e59190612b50565b60006040518083038185875af1925050503d8060008114612222576040519150601f19603f3d011682016040523d82523d6000602084013e612227565b606091505b509150915061223786838361230a565b9695505050505050565b6001600160a01b03821661226b57604051633250574960e11b8152600060048201526024016109f8565b600061227983836000611702565b90506001600160a01b038116156109cd576040516339e3563760e11b8152600060048201526024016109f8565b6122b1838383612366565b6109cd576001600160a01b0383166122df57604051637e27328960e01b8152600481018290526024016109f8565b60405163177e802f60e01b81526001600160a01b0383166004820152602481018290526044016109f8565b60608261231f5761231a826123c9565b61144a565b815115801561233657506001600160a01b0384163b155b1561235f57604051639996b31560e01b81526001600160a01b03851660048201526024016109f8565b508061144a565b60006001600160a01b03831615801590610dea5750826001600160a01b0316846001600160a01b031614806123a057506123a08484611451565b80610dea5750506000908152600460205260409020546001600160a01b03908116911614919050565b8051156123d95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160e01b03198116811461157257600080fd5b60006020828403121561241a57600080fd5b813561144a816123f2565b60005b83811015612440578181015183820152602001612428565b50506000910152565b60008151808452612461816020860160208601612425565b601f01601f19169290920160200192915050565b60208152600061144a6020830184612449565b60006020828403121561249a57600080fd5b5035919050565b80356001600160a01b03811681146124b857600080fd5b919050565b600080604083850312156124d057600080fd5b6124d9836124a1565b946020939093013593505050565b600080604083850312156124fa57600080fd5b50508035926020909101359150565b60008060006060848603121561251e57600080fd5b612527846124a1565b9250612535602085016124a1565b9150604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b8181101561257d57835183529284019291840191600101612561565b50909695505050505050565b6000806040838503121561259c57600080fd5b823591506125ac602084016124a1565b90509250929050565b6000602082840312156125c757600080fd5b61144a826124a1565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561260f5761260f6125d0565b604052919050565b600067ffffffffffffffff831115612631576126316125d0565b612644601f8401601f19166020016125e6565b905082815283838301111561265857600080fd5b828260208301376000602084830101529392505050565b60006020828403121561268157600080fd5b813567ffffffffffffffff81111561269857600080fd5b8201601f810184136126a957600080fd5b610dea84823560208401612617565b801515811461157257600080fd5b600080604083850312156126d957600080fd5b6126e2836124a1565b915060208301356126f2816126b8565b809150509250929050565b6000806000806080858703121561271357600080fd5b61271c856124a1565b935061272a602086016124a1565b925060408501359150606085013567ffffffffffffffff81111561274d57600080fd5b8501601f8101871361275e57600080fd5b61276d87823560208401612617565b91505092959194509250565b60006020828403121561278b57600080fd5b813561144a816126b8565b6000806000606084860312156127ab57600080fd5b6127b4846124a1565b95602085013595506040909401359392505050565b600080604083850312156127dc57600080fd5b6127e5836124a1565b91506125ac602084016124a1565b600181811c9082168061280757607f821691505b60208210810361282757634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561283f57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761071157610711612846565b60008261289057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561071157610711612846565b600060208083850312156128bb57600080fd5b825167ffffffffffffffff808211156128d357600080fd5b818501915085601f8301126128e757600080fd5b8151818111156128f9576128f96125d0565b8060051b915061290a8483016125e6565b818152918301840191848101908884111561292457600080fd5b938501935b8385101561294257845182529385019390850190612929565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b8181038181111561071157610711612846565b60006001820161298957612989612846565b5060010190565b601f8211156109cd57600081815260208120601f850160051c810160208610156129b75750805b601f850160051c820191505b818110156129d6578281556001016129c3565b505050505050565b815167ffffffffffffffff8111156129f8576129f86125d0565b612a0c81612a0684546127f3565b84612990565b602080601f831160018114612a415760008415612a295750858301515b600019600386901b1c1916600185901b1785556129d6565b600085815260208120601f198616915b82811015612a7057888601518255948401946001909101908401612a51565b5085821015612a8e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008351612ab0818460208801612425565b835190830190612ac4818360208801612425565b01949350505050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061223790830184612449565b600060208284031215612b1257600080fd5b815161144a816123f2565b600060208284031215612b2f57600080fd5b815161144a816126b8565b634e487b7160e01b600052603160045260246000fd5b60008251612b62818460208701612425565b919091019291505056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a2646970667358221220d488096cdee0e1f66ed8ebe79f45ee8fe33aa8841a43c5c4eca88dd808c15d8f64736f6c63430008140033697066733a2f2f516d5a7a4562546e555773354a447a724c4b513979476b316b76737a646e77644d61567739764e676a43464c6f322f",
1469
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061030c5760003560e01c8063710e5d2f1161019d578063b88d4fde116100e9578063e02023a1116100a2578063eddd0d9c1161007c578063eddd0d9c146106ba578063f0f44260146106cd578063f2fde38b146106e0578063fc0c546a146106f357600080fd5b8063e02023a11461066d578063e26c523c14610694578063e985e9c5146106a757600080fd5b8063b88d4fde146105f9578063c5969d941461060c578063c87b56dd1461061f578063d539139314610632578063d547741f14610647578063d5a162f11461065a57600080fd5b806395d89b41116101565780639ee12c89116101305780639ee12c89146105b8578063a0bcfc7f146105cb578063a217fddf146105de578063a22cb465146105e657600080fd5b806395d89b411461058a578063983b2d56146105925780639a043832146105a557600080fd5b8063710e5d2f14610522578063715018a61461053557806375b238fc1461053d5780638c0326af146105525780638da5cb5b1461056657806391d148541461057757600080fd5b806336568abe1161025c578063558e44d31161021557806361d027b3116101ef57806361d027b3146104e15780636352211e146104f45780636c0360eb1461050757806370a082311461050f57600080fd5b8063558e44d3146104b2578063559e775b146104bb5780635d81cde1146104ce57600080fd5b806336568abe1461044a5780633f1db2d91461045d57806340398d6714610466578063415a0eba1461047957806342842e0e1461048c5780634f6ccce71461049f57600080fd5b806321f314ca116102c95780632a5c792a116102a35780632a5c792a146103fc5780632f2ff15d146104115780632f745c59146104245780633092afd51461043757600080fd5b806321f314ca146103b357806323b872dd146103c6578063248a9ca3146103d957600080fd5b806301ffc9a71461031157806306fdde0314610339578063081812fc1461034e578063095ea7b31461037957806318160ddd1461038e5780631b2ef1ca146103a0575b600080fd5b61032461031f366004612408565b610706565b60405190151581526020015b60405180910390f35b610341610717565b6040516103309190612475565b61036161035c366004612488565b6107a9565b6040516001600160a01b039091168152602001610330565b61038c6103873660046124bd565b6107d2565b005b6008545b604051908152602001610330565b61038c6103ae3660046124e7565b6107e1565b61038c6103c13660046124bd565b610970565b61038c6103d4366004612509565b6109d2565b6103926103e7366004612488565b6000908152600a602052604090206001015490565b610404610a62565b6040516103309190612545565b61038c61041f366004612589565b610ae3565b6103926104323660046124bd565b610b08565b61038c6104453660046125b5565b610b6d565b61038c610458366004612589565b610b9d565b610392600f5481565b6104046104743660046125b5565b610bd0565b610392610487366004612488565b610c5d565b61038c61049a366004612509565b610ccb565b6103926104ad366004612488565b610ce6565b61039260105481565b6103926104c9366004612488565b610d3f565b600e54610361906001600160a01b031681565b601154610361906001600160a01b031681565b610361610502366004612488565b610df2565b610341610dfd565b61039261051d3660046125b5565b610e8b565b61038c610530366004612488565b610ed3565b61038c610f28565b610392600080516020612b8d83398151915281565b60115461032490600160a01b900460ff1681565b600c546001600160a01b0316610361565b610324610585366004612589565b610f3c565b610341610f67565b61038c6105a03660046125b5565b610f76565b6104046105b33660046124e7565b610fa6565b61038c6105c6366004612589565b6110a5565b61038c6105d936600461266f565b611110565b610392600081565b61038c6105f43660046126c6565b611164565b61038c6106073660046126fd565b61116f565b61032461061a366004612509565b611186565b61034161062d366004612488565b611287565b610392600080516020612b6d83398151915281565b61038c610655366004612589565b6112c1565b61038c610668366004612779565b6112e6565b6103927f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec81565b6104046106a2366004612796565b61134b565b6103246106b53660046127c9565b611451565b61038c6106c8366004612488565b61147f565b61038c6106db3660046125b5565b6114fc565b61038c6106ee3660046125b5565b611537565b600d54610361906001600160a01b031681565b600061071182611575565b92915050565b606060008054610726906127f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610752906127f3565b801561079f5780601f106107745761010080835404028352916020019161079f565b820191906000526020600020905b81548152906001019060200180831161078257829003601f168201915b5050505050905090565b60006107b48261159a565b506000828152600460205260409020546001600160a01b0316610711565b6107dd8282336115d3565b5050565b6107e96115e0565b600e5460405163029f72bb60e31b8152600481018490526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610833573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610857919061282d565b90506000808211610869576000610884565b612710600f548361087a919061285c565b6108849190612873565b905060006108928284612895565b9050826000036108b557604051633176f6ab60e21b815260040160405180910390fd5b838111156108d6576040516308d69cfd60e31b815260040160405180910390fd5b600d546108ee906001600160a01b031633308461160a565b6108f9338685611671565b8115610963576011546001600160a01b03161561092d57601154600d5461092d916001600160a01b039182169116846116c7565b60405182815233907f11fc6332cfccc2ce93014095f0b5a5b29e6a3028f76849e8214e00c3e1c2df089060200160405180910390a25b5050506107dd6001600b55565b600080516020612b6d833981519152610988816116f8565b6109906115e0565b6001600160a01b0383166109b75760405163d92e233d60e01b815260040160405180910390fd5b6109c383836000611671565b6109cd6001600b55565b505050565b6001600160a01b038216610a0157604051633250574960e11b8152600060048201526024015b60405180910390fd5b6000610a0e838333611702565b9050836001600160a01b0316816001600160a01b031614610a5c576040516364283d7b60e01b81526001600160a01b03808616600483015260248201849052821660448201526064016109f8565b50505050565b606030639a0438326000610a7560085490565b6040516001600160e01b031960e085901b16815260048101929092526024820152604401600060405180830381865afa158015610ab6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ade91908101906128a8565b905090565b6000828152600a6020526040902060010154610afe816116f8565b610a5c8383611736565b6000610b1383610e8b565b8210610b445760405163295f44f760e21b81526001600160a01b0384166004820152602481018390526044016109f8565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b600080516020612b8d833981519152610b85816116f8565b6109cd600080516020612b6d833981519152836117ca565b6001600160a01b0381163314610bc65760405163334bd91960e11b815260040160405180910390fd5b6109cd82826117ca565b60603063e26c523c836000610be482610e8b565b6040516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091526044820152606401600060405180830381865afa158015610c35573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261071191908101906128a8565b600e5460405163029f72bb60e31b8152600481018390526000916001600160a01b0316906314fb95d890602401602060405180830381865afa158015610ca7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610711919061282d565b6109cd8383836040518060200160405280600081525061116f565b6000610cf160085490565b8210610d1a5760405163295f44f760e21b815260006004820152602481018390526044016109f8565b60088281548110610d2d57610d2d61294e565b90600052602060002001549050919050565b600e5460405163029f72bb60e31b81526004810183905260009182916001600160a01b03909116906314fb95d890602401602060405180830381865afa158015610d8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db1919061282d565b90506000808211610dc3576000610dde565b612710600f5483610dd4919061285c565b610dde9190612873565b9050610dea8183612895565b949350505050565b60006107118261159a565b60128054610e0a906127f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e36906127f3565b8015610e835780601f10610e5857610100808354040283529160200191610e83565b820191906000526020600020905b815481529060010190602001808311610e6657829003601f168201915b505050505081565b60006001600160a01b038216610eb7576040516322718ad960e21b8152600060048201526024016109f8565b506001600160a01b031660009081526003602052604090205490565b600080516020612b8d833981519152610eeb816116f8565b60108290556040518281527f5d46f46c0e5b2045e0cb8c00367d35d9f3f1fc035950ac8f5c675f6c0a791ba0906020015b60405180910390a15050565b610f30611837565b610f3a6000611864565b565b6000918252600a602090815260408084206001600160a01b0393909316845291905290205460ff1690565b606060018054610726906127f3565b600080516020612b8d833981519152610f8e816116f8565b6109cd600080516020612b6d83398151915283611736565b6060610fb160085490565b821115610fbe5760085491505b600854600003610fdd5750604080516000815260208101909152610711565b818310610ffd5760405163561ce9bb60e01b815260040160405180910390fd5b60006110098484612964565b67ffffffffffffffff811115611021576110216125d0565b60405190808252806020026020018201604052801561104a578160200160208202803683370190505b50905060005b61105a8585612964565b81101561109d5761106e6104ad8683612895565b8282815181106110805761108061294e565b60209081029190910101528061109581612977565b915050611050565b509392505050565b600080516020612b8d8339815191526110bd816116f8565b6110c783336117ca565b506110d28383611736565b506040516001600160a01b03831690339085907f8d8ac61e09adc57e16fcda3ff204447854c5a75bb3e7f7462337b8eccc2f28f190600090a4505050565b600080516020612b8d833981519152611128816116f8565b601261113483826129de565b507f6741b2fc379fad678116fe3d4d4b9a1a184ab53ba36b86ad0fa66340b1ab41ad82604051610f1c9190612475565b6107dd3383836118b6565b61117a8484846109d2565b610a5c84848484611955565b60007f5d8e12c39142ff96d79d04d15d1ba1269e4fe57bb9d26f43523628b34ba108ec6111b2816116f8565b6001600160a01b0385166111d95760405163e6c4247b60e01b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038716906370a0823190602401602060405180830381865afa158015611220573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611244919061282d565b90508084111561126757604051631e9acf1760e31b815260040160405180910390fd5b61127b6001600160a01b03871686866116c7565b50600195945050505050565b6060611291611a7e565b61129a83611a8d565b6040516020016112ab929190612a9e565b6040516020818303038152906040529050919050565b6000828152600a60205260409020600101546112dc816116f8565b610a5c83836117ca565b600080516020612b8d8339815191526112fe816116f8565b60118054831515600160a01b0260ff60a01b199091161790556040517f9258f5907b894a96ae246130a375e1f94b5426c41e63d65dc3ffe9c4e8d5fa9e90610f1c90841515815260200190565b6060600061135885610e8b565b90508060000361137857505060408051600081526020810190915261144a565b80831115611384578092505b8284106113a45760405163561ce9bb60e01b815260040160405180910390fd5b60006113b08585612964565b67ffffffffffffffff8111156113c8576113c86125d0565b6040519080825280602002602001820160405280156113f1578160200160208202803683370190505b50905060005b6114018686612964565b81101561144557611416876104328884612895565b8282815181106114285761142861294e565b60209081029190910101528061143d81612977565b9150506113f7565b509150505b9392505050565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b600080516020612b8d833981519152611497816116f8565b601054821180156114a9575060105415155b156114c7576040516371b0df8f60e01b815260040160405180910390fd5b600f8290556040518281527ff2b0bf9819305cc8e01f2f7f632af2c1cc83e2c07d6125d995c62d682963edf190602001610f1c565b600080516020612b8d833981519152611514816116f8565b50601180546001600160a01b0319166001600160a01b0392909216919091179055565b61153f611837565b6001600160a01b03811661156957604051631e4fbdf760e01b8152600060048201526024016109f8565b61157281611864565b50565b60006001600160e01b03198216637965db0b60e01b1480610711575061071182611b20565b6000818152600260205260408120546001600160a01b03168061071157604051637e27328960e01b8152600481018490526024016109f8565b6109cd8383836001611b45565b6002600b540361160357604051633ee5aeb560e01b815260040160405180910390fd5b6002600b55565b6040516001600160a01b038481166024830152838116604483015260648201839052610a5c9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611c4b565b61167b8383611cae565b600f5460408051848152602081018490529081019190915233907f7bc3ddf0bf2ada973906c61001cd8f787646720bb7da90229e5bf81fa71bab6d9060600160405180910390a2505050565b6040516001600160a01b038381166024830152604482018390526109cd91859182169063a9059cbb9060640161163f565b6115728133611cc8565b60006001600160a01b03841661172b5760405163e6c4247b60e01b815260040160405180910390fd5b610dea848484611d01565b60006117428383610f3c565b6117c2576000838152600a602090815260408083206001600160a01b03861684529091529020805460ff1916600117905561177a3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610711565b506000610711565b60006117d68383610f3c565b156117c2576000838152600a602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610711565b600c546001600160a01b03163314610f3a5760405163118cdaa760e01b81523360048201526024016109f8565b600c80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166118e857604051630b61174360e31b81526001600160a01b03831660048201526024016109f8565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0383163b15610a5c57604051630a85bd0160e11b81526001600160a01b0384169063150b7a0290611997903390889087908790600401612acd565b6020604051808303816000875af19250505080156119d2575060408051601f3d908101601f191682019092526119cf91810190612b00565b60015b611a3b573d808015611a00576040519150601f19603f3d011682016040523d82523d6000602084013e611a05565b606091505b508051600003611a3357604051633250574960e11b81526001600160a01b03851660048201526024016109f8565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b14611a7757604051633250574960e11b81526001600160a01b03851660048201526024016109f8565b5050505050565b606060128054610726906127f3565b60606000611a9a83611dce565b600101905060008167ffffffffffffffff811115611aba57611aba6125d0565b6040519080825280601f01601f191660200182016040528015611ae4576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611aee57509392505050565b60006001600160e01b0319821663780e9d6360e01b1480610711575061071182611ea6565b8080611b5957506001600160a01b03821615155b15611c1b576000611b698461159a565b90506001600160a01b03831615801590611b955750826001600160a01b0316816001600160a01b031614155b8015611ba85750611ba68184611451565b155b15611bd15760405163a9fbf51f60e01b81526001600160a01b03841660048201526024016109f8565b8115611c195783856001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b5050600090815260046020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b6000611c606001600160a01b03841683611ef6565b90508051600014158015611c85575080806020019051810190611c839190612b1d565b155b156109cd57604051635274afe760e01b81526001600160a01b03841660048201526024016109f8565b6107dd828260405180602001604052806000815250611f04565b611cd28282610f3c565b6107dd5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016109f8565b600080611d0f858585611f1b565b90506001600160a01b038116611d6c57611d6784600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b611d8f565b846001600160a01b0316816001600160a01b031614611d8f57611d8f8185612014565b6001600160a01b038516611dab57611da6846120a5565b610dea565b846001600160a01b0316816001600160a01b031614610dea57610dea8585612154565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611e0d5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310611e39576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611e5757662386f26fc10000830492506010015b6305f5e1008310611e6f576305f5e100830492506008015b6127108310611e8357612710830492506004015b60648310611e95576064830492506002015b600a83106107115760010192915050565b60006001600160e01b031982166380ac58cd60e01b1480611ed757506001600160e01b03198216635b5e139f60e01b145b8061071157506301ffc9a760e01b6001600160e01b0319831614610711565b606061144a838360006121a4565b611f0e8383612241565b6109cd6000848484611955565b6000828152600260205260408120546001600160a01b0390811690831615611f4857611f488184866122a6565b6001600160a01b03811615611f8657611f65600085600080611b45565b6001600160a01b038116600090815260036020526040902080546000190190555b6001600160a01b03851615611fb5576001600160a01b0385166000908152600360205260409020805460010190555b60008481526002602052604080822080546001600160a01b0319166001600160a01b0389811691821790925591518793918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4949350505050565b600061201f83610e8b565b600083815260076020526040902054909150808214612072576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b6008546000906120b790600190612964565b600083815260096020526040812054600880549394509092849081106120df576120df61294e565b9060005260206000200154905080600883815481106121005761210061294e565b600091825260208083209091019290925582815260099091526040808220849055858252812055600880548061213857612138612b3a565b6001900381819060005260206000200160009055905550505050565b6000600161216184610e8b565b61216b9190612964565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b6060814710156121c95760405163cd78605960e01b81523060048201526024016109f8565b600080856001600160a01b031684866040516121e59190612b50565b60006040518083038185875af1925050503d8060008114612222576040519150601f19603f3d011682016040523d82523d6000602084013e612227565b606091505b509150915061223786838361230a565b9695505050505050565b6001600160a01b03821661226b57604051633250574960e11b8152600060048201526024016109f8565b600061227983836000611702565b90506001600160a01b038116156109cd576040516339e3563760e11b8152600060048201526024016109f8565b6122b1838383612366565b6109cd576001600160a01b0383166122df57604051637e27328960e01b8152600481018290526024016109f8565b60405163177e802f60e01b81526001600160a01b0383166004820152602481018290526044016109f8565b60608261231f5761231a826123c9565b61144a565b815115801561233657506001600160a01b0384163b155b1561235f57604051639996b31560e01b81526001600160a01b03851660048201526024016109f8565b508061144a565b60006001600160a01b03831615801590610dea5750826001600160a01b0316846001600160a01b031614806123a057506123a08484611451565b80610dea5750506000908152600460205260409020546001600160a01b03908116911614919050565b8051156123d95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160e01b03198116811461157257600080fd5b60006020828403121561241a57600080fd5b813561144a816123f2565b60005b83811015612440578181015183820152602001612428565b50506000910152565b60008151808452612461816020860160208601612425565b601f01601f19169290920160200192915050565b60208152600061144a6020830184612449565b60006020828403121561249a57600080fd5b5035919050565b80356001600160a01b03811681146124b857600080fd5b919050565b600080604083850312156124d057600080fd5b6124d9836124a1565b946020939093013593505050565b600080604083850312156124fa57600080fd5b50508035926020909101359150565b60008060006060848603121561251e57600080fd5b612527846124a1565b9250612535602085016124a1565b9150604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b8181101561257d57835183529284019291840191600101612561565b50909695505050505050565b6000806040838503121561259c57600080fd5b823591506125ac602084016124a1565b90509250929050565b6000602082840312156125c757600080fd5b61144a826124a1565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561260f5761260f6125d0565b604052919050565b600067ffffffffffffffff831115612631576126316125d0565b612644601f8401601f19166020016125e6565b905082815283838301111561265857600080fd5b828260208301376000602084830101529392505050565b60006020828403121561268157600080fd5b813567ffffffffffffffff81111561269857600080fd5b8201601f810184136126a957600080fd5b610dea84823560208401612617565b801515811461157257600080fd5b600080604083850312156126d957600080fd5b6126e2836124a1565b915060208301356126f2816126b8565b809150509250929050565b6000806000806080858703121561271357600080fd5b61271c856124a1565b935061272a602086016124a1565b925060408501359150606085013567ffffffffffffffff81111561274d57600080fd5b8501601f8101871361275e57600080fd5b61276d87823560208401612617565b91505092959194509250565b60006020828403121561278b57600080fd5b813561144a816126b8565b6000806000606084860312156127ab57600080fd5b6127b4846124a1565b95602085013595506040909401359392505050565b600080604083850312156127dc57600080fd5b6127e5836124a1565b91506125ac602084016124a1565b600181811c9082168061280757607f821691505b60208210810361282757634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561283f57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761071157610711612846565b60008261289057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561071157610711612846565b600060208083850312156128bb57600080fd5b825167ffffffffffffffff808211156128d357600080fd5b818501915085601f8301126128e757600080fd5b8151818111156128f9576128f96125d0565b8060051b915061290a8483016125e6565b818152918301840191848101908884111561292457600080fd5b938501935b8385101561294257845182529385019390850190612929565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b8181038181111561071157610711612846565b60006001820161298957612989612846565b5060010190565b601f8211156109cd57600081815260208120601f850160051c810160208610156129b75750805b601f850160051c820191505b818110156129d6578281556001016129c3565b505050505050565b815167ffffffffffffffff8111156129f8576129f86125d0565b612a0c81612a0684546127f3565b84612990565b602080601f831160018114612a415760008415612a295750858301515b600019600386901b1c1916600185901b1785556129d6565b600085815260208120601f198616915b82811015612a7057888601518255948401946001909101908401612a51565b5085821015612a8e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008351612ab0818460208801612425565b835190830190612ac4818360208801612425565b01949350505050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061223790830184612449565b600060208284031215612b1257600080fd5b815161144a816123f2565b600060208284031215612b2f57600080fd5b815161144a816126b8565b634e487b7160e01b600052603160045260246000fd5b60008251612b62818460208701612425565b919091019291505056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a2646970667358221220d488096cdee0e1f66ed8ebe79f45ee8fe33aa8841a43c5c4eca88dd808c15d8f64736f6c63430008140033",
1470
+ "linkReferences": {},
1471
+ "deployedLinkReferences": {}
1472
1472
  }