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

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 (482) hide show
  1. package/dist/RPCLibrary.js +52 -21
  2. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +83 -29
  3. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.json +82 -31
  4. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.json +114 -5
  5. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.json +66 -4
  6. package/dist/artifacts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter.json +465 -0
  7. package/dist/artifacts/core/pools/LendingPool/ERC721AssetAdapter.sol/ERC721AssetAdapter.json +497 -0
  8. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.json +1065 -337
  9. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.json +180 -99
  10. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.json +39 -2
  11. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.json +2 -29
  12. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.json +158 -38
  13. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.json +2 -2
  14. package/dist/artifacts/core/tokens/RToken.sol/RToken.json +2 -81
  15. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +557 -223
  16. package/dist/artifacts/core/vaults/ERC20VaultAdapter.sol/ERC20VaultAdapter.json +354 -0
  17. package/dist/artifacts/core/vaults/ERC721VaultAdapter.sol/ERC721VaultAdapter.json +356 -0
  18. package/dist/artifacts/core/vaults/RWAVault.sol/RWAVault.json +1036 -0
  19. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.json +622 -207
  20. package/dist/artifacts/mocks/core/tokens/crvUSDToken.sol/crvUSDToken.json +2 -2
  21. package/dist/artifacts/zeno/Auction.sol/Auction.json +104 -15
  22. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.json +7 -2
  23. package/dist/artifacts/zeno/Zeno.sol/Zeno.json +108 -38
  24. package/dist/artifacts/zeno/ZenoFactory.sol/ZenoFactory.json +17 -2
  25. package/dist/configs/chains/17000.json +36 -0
  26. package/dist/configs/chains/8453.json +36 -0
  27. package/dist/pools/lendingPool/_helpers.js +29 -0
  28. package/dist/pools/lendingPool/adapters/erc20/getERC20AdapterBalance.js +20 -0
  29. package/dist/pools/lendingPool/adapters/erc20/getERC20AdapterInfo.js +32 -0
  30. package/dist/pools/lendingPool/adapters/erc721/getERC721AdapterDeposits.js +20 -0
  31. package/dist/pools/lendingPool/adapters/erc721/getERC721AdapterInfo.js +32 -0
  32. package/dist/pools/lendingPool/borrowFromLendingPool.js +2 -2
  33. package/dist/pools/lendingPool/borrowFromLendingPoolWithInsurance.js +4 -3
  34. package/dist/pools/lendingPool/calculateInsuranceFee.js +3 -2
  35. package/dist/pools/lendingPool/closeLiquidation.js +3 -2
  36. package/dist/pools/lendingPool/depositAssetToLendingPool.js +60 -0
  37. package/dist/pools/lendingPool/{getPendingReward.js → getAdapters.js} +10 -6
  38. package/dist/pools/lendingPool/getHealthFactor.js +2 -2
  39. package/dist/pools/lendingPool/getLendingPoolInfo.js +4 -13
  40. package/dist/pools/lendingPool/getParameters.js +33 -0
  41. package/dist/pools/lendingPool/getPositionDebt.js +3 -2
  42. package/dist/pools/lendingPool/getPositionScaledDebt.js +3 -2
  43. package/dist/pools/lendingPool/getPositionView.js +5 -2
  44. package/dist/pools/lendingPool/getPositionsScaledDebt.js +1 -0
  45. package/dist/pools/lendingPool/getUserCollateralValue.js +1 -0
  46. package/dist/pools/lendingPool/initializeLiquidation.js +2 -2
  47. package/dist/pools/lendingPool/repayToLendingPool.js +2 -2
  48. package/dist/pools/lendingPool/{withdrawNFTFromLendingPool.js → withdrawAssetFromLendingPool.js} +5 -5
  49. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterAssetValue.js +21 -0
  50. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterInfo.js +30 -0
  51. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterTotalValue.js +20 -0
  52. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterAssetValue.js +21 -0
  53. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterDeposits.js +20 -0
  54. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterInfo.js +30 -0
  55. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterTotalValue.js +20 -0
  56. package/dist/pools/rwaVault/depositToRWAVault.js +27 -0
  57. package/dist/pools/rwaVault/getNextRandomNFT.js +25 -0
  58. package/dist/pools/rwaVault/getRWAVaultInfo.js +52 -0
  59. package/dist/pools/rwaVault/redeemNFTFromRWAVault.js +27 -0
  60. package/dist/pools/rwaVault/requestRandomSeed.js +27 -0
  61. package/dist/scripts/index.js +219 -152
  62. package/dist/types/RPCLibrary.d.ts +40 -19
  63. package/dist/types/pools/lendingPool/_helpers.d.ts +8 -0
  64. package/dist/types/pools/lendingPool/adapters/erc20/getERC20AdapterBalance.d.ts +4 -0
  65. package/dist/types/pools/lendingPool/adapters/erc20/getERC20AdapterInfo.d.ts +11 -0
  66. package/dist/types/pools/lendingPool/adapters/erc721/getERC721AdapterDeposits.d.ts +4 -0
  67. package/dist/types/pools/lendingPool/adapters/erc721/getERC721AdapterInfo.d.ts +11 -0
  68. package/dist/types/pools/lendingPool/borrowFromLendingPool.d.ts +2 -2
  69. package/dist/types/pools/lendingPool/borrowFromLendingPoolWithInsurance.d.ts +2 -2
  70. package/dist/types/pools/lendingPool/calculateInsuranceFee.d.ts +2 -2
  71. package/dist/types/pools/lendingPool/closeLiquidation.d.ts +2 -2
  72. package/dist/types/pools/lendingPool/depositAssetToLendingPool.d.ts +4 -0
  73. package/dist/types/pools/lendingPool/getAdapters.d.ts +8 -0
  74. package/dist/types/pools/lendingPool/getHealthFactor.d.ts +2 -2
  75. package/dist/types/pools/lendingPool/getLendingPoolInfo.d.ts +1 -3
  76. package/dist/types/pools/lendingPool/getParameters.d.ts +17 -0
  77. package/dist/types/pools/lendingPool/getPositionDebt.d.ts +2 -2
  78. package/dist/types/pools/lendingPool/getPositionScaledDebt.d.ts +2 -2
  79. package/dist/types/pools/lendingPool/getPositionView.d.ts +17 -14
  80. package/dist/types/pools/lendingPool/initializeLiquidation.d.ts +2 -2
  81. package/dist/types/pools/lendingPool/repayToLendingPool.d.ts +2 -2
  82. package/dist/types/pools/lendingPool/withdrawAssetFromLendingPool.d.ts +4 -0
  83. package/dist/types/pools/rwaVault/adapters/erc20/getERC20VaultAdapterAssetValue.d.ts +4 -0
  84. package/dist/types/pools/rwaVault/adapters/erc20/getERC20VaultAdapterInfo.d.ts +10 -0
  85. package/dist/types/pools/rwaVault/adapters/erc20/getERC20VaultAdapterTotalValue.d.ts +4 -0
  86. package/dist/types/pools/rwaVault/adapters/erc721/getERC721VaultAdapterAssetValue.d.ts +4 -0
  87. package/dist/types/pools/rwaVault/adapters/erc721/getERC721VaultAdapterDeposits.d.ts +4 -0
  88. package/dist/types/pools/rwaVault/adapters/erc721/getERC721VaultAdapterInfo.d.ts +10 -0
  89. package/dist/types/pools/rwaVault/adapters/erc721/getERC721VaultAdapterTotalValue.d.ts +4 -0
  90. package/dist/types/pools/rwaVault/depositToRWAVault.d.ts +4 -0
  91. package/dist/types/pools/rwaVault/getNextRandomNFT.d.ts +8 -0
  92. package/dist/types/pools/rwaVault/getRWAVaultInfo.d.ts +20 -0
  93. package/dist/types/pools/rwaVault/redeemNFTFromRWAVault.d.ts +4 -0
  94. package/dist/types/pools/rwaVault/requestRandomSeed.d.ts +4 -0
  95. package/dist/types/scripts/index.d.ts +0 -1
  96. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.d.ts +103 -0
  97. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/shared/interfaces/IERC677Receiver.d.ts +37 -0
  98. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/shared/interfaces/LinkTokenInterface.d.ts +143 -0
  99. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/shared/interfaces/index.d.ts +3 -0
  100. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/SubscriptionAPI.d.ts +529 -0
  101. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/VRFConsumerBaseV2Plus.d.ts +109 -0
  102. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/index.d.ts +6 -0
  103. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/IVRFCoordinatorV2Plus.d.ts +192 -0
  104. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/IVRFMigratableConsumerV2Plus.d.ts +45 -0
  105. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/IVRFSubscriptionV2Plus.d.ts +155 -0
  106. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/index.d.ts +3 -0
  107. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/libraries/VRFV2PlusClient.d.ts +25 -0
  108. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/dev/libraries/index.d.ts +1 -0
  109. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/index.d.ts +4 -0
  110. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/mocks/VRFCoordinatorV2_5Mock.d.ts +731 -0
  111. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/mocks/index.d.ts +1 -0
  112. package/dist/types/typechain-types/@openzeppelin/contracts/access/Ownable2Step.d.ts +77 -0
  113. package/dist/types/typechain-types/@openzeppelin/contracts/access/index.d.ts +1 -0
  114. package/dist/types/typechain-types/@openzeppelin/contracts/interfaces/IERC1363.d.ts +231 -0
  115. package/dist/types/typechain-types/@openzeppelin/contracts/interfaces/IERC2981.d.ts +49 -0
  116. package/dist/types/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +2 -0
  117. package/dist/types/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts +0 -1
  118. package/dist/types/typechain-types/@openzeppelin/contracts/utils/Errors.d.ts +20 -0
  119. package/dist/types/typechain-types/@openzeppelin/contracts/utils/cryptography/MerkleProof.d.ts +20 -0
  120. package/dist/types/typechain-types/@openzeppelin/contracts/utils/cryptography/index.d.ts +1 -0
  121. package/dist/types/typechain-types/@openzeppelin/contracts/utils/index.d.ts +1 -0
  122. package/dist/types/typechain-types/@openzeppelin/contracts/utils/math/index.d.ts +0 -1
  123. package/dist/types/typechain-types/contracts/core/collectors/FeeCollector.d.ts +30 -1
  124. package/dist/types/typechain-types/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/IWETH10Minimal.d.ts +53 -0
  125. package/dist/types/typechain-types/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector.d.ts +115 -0
  126. package/dist/types/typechain-types/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/index.d.ts +2 -0
  127. package/dist/types/typechain-types/contracts/core/collectors/Treasury.d.ts +15 -1
  128. package/dist/types/typechain-types/contracts/core/collectors/index.d.ts +2 -0
  129. package/dist/types/typechain-types/contracts/core/governance/gauges/BaseGauge.d.ts +616 -142
  130. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeController.d.ts +396 -108
  131. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeRewardsDistributor.d.ts +623 -0
  132. package/dist/types/typechain-types/contracts/core/governance/gauges/RAACGauge.d.ts +609 -155
  133. package/dist/types/typechain-types/contracts/core/governance/gauges/RWAGauge.d.ts +610 -156
  134. package/dist/types/typechain-types/contracts/core/governance/gauges/index.d.ts +1 -0
  135. package/dist/types/typechain-types/contracts/core/governance/index.d.ts +0 -2
  136. package/dist/types/typechain-types/contracts/core/governance/proposals/Governance.d.ts +45 -67
  137. package/dist/types/typechain-types/contracts/core/index.d.ts +4 -0
  138. package/dist/types/typechain-types/contracts/core/lockers/LLamaTemple.d.ts +721 -0
  139. package/dist/types/typechain-types/contracts/core/lockers/index.d.ts +1 -0
  140. package/dist/types/typechain-types/contracts/core/minters/RAACMinter/RAACMinter.d.ts +69 -12
  141. package/dist/types/typechain-types/contracts/core/oracles/BaseChainlinkFunctionsOracle.d.ts +22 -4
  142. package/dist/types/typechain-types/contracts/core/oracles/BaseVRFv2Consumer.d.ts +40 -2
  143. package/dist/types/typechain-types/contracts/core/oracles/RAACHousePriceOracle.d.ts +41 -8
  144. package/dist/types/typechain-types/contracts/core/oracles/RAACPrimeRateOracle.d.ts +39 -7
  145. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter.d.ts +232 -0
  146. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/IERC20Adapter.d.ts +25 -0
  147. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/IPriceOracle.d.ts +25 -0
  148. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/index.d.ts +3 -0
  149. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/ERC721AssetAdapter.d.ts +254 -0
  150. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/IPriceOracle.d.ts +29 -0
  151. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/index.d.ts +2 -0
  152. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPool.d.ts +728 -205
  153. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPoolStorage.d.ts +440 -0
  154. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LiquidationProxy.d.ts +538 -0
  155. package/dist/types/typechain-types/contracts/core/pools/LendingPool/VaultProxy.d.ts +485 -0
  156. package/dist/types/typechain-types/contracts/core/pools/LendingPool/index.d.ts +7 -0
  157. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/LiquidationStrategyProxy.d.ts +158 -0
  158. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/LiquidationSwap.d.ts +124 -0
  159. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/StabilityPool.d.ts +135 -79
  160. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/StabilityPoolStorage.d.ts +140 -0
  161. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/index.d.ts +3 -1
  162. package/dist/types/typechain-types/contracts/core/primitives/ComplianceRegistry.d.ts +203 -0
  163. package/dist/types/typechain-types/contracts/core/primitives/RAACHousePrices.d.ts +23 -1
  164. package/dist/types/typechain-types/contracts/core/primitives/WithCompliance.d.ts +25 -0
  165. package/dist/types/typechain-types/contracts/core/primitives/index.d.ts +2 -0
  166. package/dist/types/typechain-types/contracts/core/tokens/DebtToken.d.ts +8 -8
  167. package/dist/types/typechain-types/contracts/core/tokens/RAACNFT.d.ts +94 -11
  168. package/dist/types/typechain-types/contracts/core/tokens/RToken.d.ts +1 -17
  169. package/dist/types/typechain-types/contracts/core/tokens/RWAIndexToken.d.ts +264 -0
  170. package/dist/types/typechain-types/contracts/core/tokens/VeRAACToken.d.ts +433 -172
  171. package/dist/types/typechain-types/contracts/core/tokens/index.d.ts +1 -1
  172. package/dist/types/typechain-types/contracts/core/vaults/ERC20VaultAdapter.sol/ERC20VaultAdapter.d.ts +174 -0
  173. package/dist/types/typechain-types/contracts/core/vaults/ERC20VaultAdapter.sol/IPriceOracle.d.ts +25 -0
  174. package/dist/types/typechain-types/contracts/core/vaults/ERC20VaultAdapter.sol/index.d.ts +2 -0
  175. package/dist/types/typechain-types/contracts/core/vaults/ERC721VaultAdapter.sol/ERC721VaultAdapter.d.ts +178 -0
  176. package/dist/types/typechain-types/contracts/core/vaults/ERC721VaultAdapter.sol/IPriceOracle.d.ts +29 -0
  177. package/dist/types/typechain-types/contracts/core/vaults/ERC721VaultAdapter.sol/index.d.ts +2 -0
  178. package/dist/types/typechain-types/contracts/core/vaults/RWAVault.d.ts +511 -0
  179. package/dist/types/typechain-types/contracts/core/vaults/index.d.ts +5 -0
  180. package/dist/types/typechain-types/contracts/interfaces/IComplianceRegistry.d.ts +63 -0
  181. package/dist/types/typechain-types/contracts/interfaces/INFTLiquidator.d.ts +190 -23
  182. package/dist/types/typechain-types/contracts/interfaces/INFTWhitelist.d.ts +75 -0
  183. package/dist/types/typechain-types/contracts/interfaces/core/collectors/IFeeCollector.d.ts +9 -0
  184. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IBaseGauge.d.ts +527 -0
  185. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGaugeController.d.ts +222 -40
  186. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGaugeRewardsDistributor.d.ts +351 -0
  187. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/index.d.ts +2 -1
  188. package/dist/types/typechain-types/contracts/interfaces/core/governance/index.d.ts +0 -1
  189. package/dist/types/typechain-types/contracts/interfaces/core/governance/proposals/IGovernance.d.ts +45 -67
  190. package/dist/types/typechain-types/contracts/interfaces/core/index.d.ts +2 -0
  191. package/dist/types/typechain-types/contracts/interfaces/core/lockers/ILLamaLocker.d.ts +332 -0
  192. package/dist/types/typechain-types/contracts/interfaces/core/lockers/ILLamaTemple.d.ts +302 -0
  193. package/dist/types/typechain-types/contracts/interfaces/core/lockers/index.d.ts +2 -0
  194. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACMinter/IRAACMinter.d.ts +30 -1
  195. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACMinter/IRAACMinterRewardsReceiver.d.ts +49 -0
  196. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACMinter/index.d.ts +1 -0
  197. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IBaseVRFv2Consumer.d.ts +5 -1
  198. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IRAACHousePrices.d.ts +31 -24
  199. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/IAssetAdapter.d.ts +143 -0
  200. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/IERC721Adapter.d.ts +51 -0
  201. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPool.d.ts +369 -150
  202. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPoolStorage.d.ts +102 -0
  203. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/index.d.ts +3 -0
  204. package/dist/types/typechain-types/contracts/interfaces/core/pools/StabilityPool/ILiquidationSwap.d.ts +51 -0
  205. package/dist/types/typechain-types/contracts/interfaces/core/pools/StabilityPool/IStabilityPool.d.ts +19 -64
  206. package/dist/types/typechain-types/contracts/interfaces/core/pools/StabilityPool/IStabilityPoolStorage.d.ts +49 -0
  207. package/dist/types/typechain-types/contracts/interfaces/core/pools/StabilityPool/index.d.ts +2 -0
  208. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IDebtToken.d.ts +6 -6
  209. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IRAACNFT.d.ts +70 -7
  210. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IVaultToken.d.ts +197 -0
  211. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IveRAACToken.d.ts +295 -36
  212. package/dist/types/typechain-types/contracts/interfaces/core/tokens/index.d.ts +1 -0
  213. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IBaseHybridVault.d.ts +208 -0
  214. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IVaultAssetAdapter.d.ts +89 -0
  215. package/dist/types/typechain-types/contracts/interfaces/core/vaults/index.d.ts +2 -0
  216. package/dist/types/typechain-types/contracts/interfaces/curve/ICurveLiquidityGaugeV5.d.ts +357 -0
  217. package/dist/types/typechain-types/contracts/interfaces/curve/index.d.ts +1 -0
  218. package/dist/types/typechain-types/contracts/interfaces/index.d.ts +2 -4
  219. package/dist/types/typechain-types/contracts/interfaces/zeno/IAuction.d.ts +18 -3
  220. package/dist/types/typechain-types/contracts/interfaces/zeno/IZENO.d.ts +31 -1
  221. package/dist/types/typechain-types/contracts/libraries/governance/LockManager.d.ts +9 -2
  222. package/dist/types/typechain-types/contracts/libraries/governance/PowerCheckpoint.d.ts +34 -1
  223. package/dist/types/typechain-types/contracts/libraries/governance/index.d.ts +0 -3
  224. package/dist/types/typechain-types/contracts/libraries/math/TimeWeightedAverage.d.ts +1 -25
  225. package/dist/types/typechain-types/contracts/mocks/core/collectors/MockWETH.d.ts +225 -0
  226. package/dist/types/typechain-types/contracts/mocks/core/collectors/index.d.ts +1 -0
  227. package/dist/types/typechain-types/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/CurveLiquidityGaugeV5Mock.d.ts +56 -0
  228. package/dist/types/typechain-types/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/ILiquidityGauge.d.ts +35 -0
  229. package/dist/types/typechain-types/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/index.d.ts +2 -0
  230. package/dist/types/typechain-types/contracts/mocks/core/curve/index.d.ts +2 -0
  231. package/dist/types/typechain-types/contracts/mocks/core/governance/gauges/MockGaugeController.d.ts +2 -6
  232. package/dist/types/typechain-types/contracts/mocks/core/governance/gauges/index.d.ts +0 -1
  233. package/dist/types/typechain-types/contracts/mocks/core/index.d.ts +4 -0
  234. package/dist/types/typechain-types/contracts/mocks/core/lockers/LLamaLocker.sol/LlamaLocker.d.ts +394 -0
  235. package/dist/types/typechain-types/contracts/mocks/core/lockers/LLamaLocker.sol/index.d.ts +1 -0
  236. package/dist/types/typechain-types/contracts/mocks/core/lockers/index.d.ts +2 -0
  237. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/IPriceOracle.d.ts +25 -0
  238. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/MockERC20PriceOracle.d.ts +33 -0
  239. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/index.d.ts +2 -0
  240. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter.d.ts +2 -2
  241. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockVRFCoordinatorV2.d.ts +349 -148
  242. package/dist/types/typechain-types/contracts/mocks/core/oracles/TestRAACHousePriceOracle.d.ts +41 -8
  243. package/dist/types/typechain-types/contracts/mocks/core/oracles/TestRAACPrimeRateOracle.d.ts +39 -7
  244. package/dist/types/typechain-types/contracts/mocks/core/oracles/index.d.ts +2 -0
  245. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolDebtToken.d.ts +367 -140
  246. package/dist/types/typechain-types/contracts/mocks/core/tokens/MockFeeCollectorToken.d.ts +1 -5
  247. package/dist/types/typechain-types/contracts/mocks/core/tokens/MockToken.d.ts +1 -5
  248. package/dist/types/typechain-types/contracts/mocks/core/tokens/index.d.ts +0 -1
  249. package/dist/types/typechain-types/contracts/mocks/libraries/governance/BoostCalculatorMock.d.ts +68 -139
  250. package/dist/types/typechain-types/contracts/mocks/libraries/governance/LockManagerMock.d.ts +19 -9
  251. package/dist/types/typechain-types/contracts/mocks/libraries/governance/PowerCheckpointMock.d.ts +37 -18
  252. package/dist/types/typechain-types/contracts/mocks/libraries/governance/index.d.ts +0 -3
  253. package/dist/types/typechain-types/contracts/mocks/tests/index.d.ts +0 -2
  254. package/dist/types/typechain-types/contracts/zeno/Auction.d.ts +37 -8
  255. package/dist/types/typechain-types/contracts/zeno/ZENO.d.ts +62 -6
  256. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/functions/v1_0_0/libraries/FunctionsRequest__factory.d.ts +1 -1
  257. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwnerWithProposal__factory.d.ts +1 -1
  258. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwner__factory.d.ts +1 -1
  259. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface__factory.d.ts +93 -0
  260. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/interfaces/IERC677Receiver__factory.d.ts +25 -0
  261. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/interfaces/LinkTokenInterface__factory.d.ts +191 -0
  262. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/interfaces/index.d.ts +3 -0
  263. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/SubscriptionAPI__factory.d.ts +663 -0
  264. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/VRFConsumerBaseV2Plus__factory.d.ts +139 -0
  265. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/index.d.ts +4 -0
  266. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/IVRFCoordinatorV2Plus__factory.d.ts +194 -0
  267. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/IVRFMigratableConsumerV2Plus__factory.d.ts +27 -0
  268. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/IVRFSubscriptionV2Plus__factory.d.ts +155 -0
  269. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/interfaces/index.d.ts +3 -0
  270. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/libraries/VRFV2PlusClient__factory.d.ts +32 -0
  271. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/libraries/index.d.ts +1 -0
  272. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/index.d.ts +2 -0
  273. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/mocks/VRFCoordinatorV2_5Mock__factory.d.ts +944 -0
  274. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/mocks/index.d.ts +1 -0
  275. package/dist/types/typechain-types/factories/@openzeppelin/contracts/access/Ownable2Step__factory.d.ts +95 -0
  276. package/dist/types/typechain-types/factories/@openzeppelin/contracts/access/index.d.ts +1 -0
  277. package/dist/types/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1363__factory.d.ts +289 -0
  278. package/dist/types/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC2981__factory.d.ts +43 -0
  279. package/dist/types/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +2 -0
  280. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts +1 -1
  281. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts +0 -1
  282. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +1 -13
  283. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts +50 -0
  284. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
  285. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +9 -1
  286. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.d.ts +1 -1
  287. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/MerkleProof__factory.d.ts +26 -0
  288. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.d.ts +1 -0
  289. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts +1 -0
  290. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts +1 -1
  291. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/index.d.ts +0 -1
  292. package/dist/types/typechain-types/factories/contracts/core/collectors/FeeCollector__factory.d.ts +65 -21
  293. package/dist/types/typechain-types/factories/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/IWETH10Minimal__factory.d.ts +49 -0
  294. package/dist/types/typechain-types/factories/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector__factory.d.ts +177 -0
  295. package/dist/types/typechain-types/factories/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/index.d.ts +2 -0
  296. package/dist/types/typechain-types/factories/contracts/core/collectors/Treasury__factory.d.ts +15 -1
  297. package/dist/types/typechain-types/factories/contracts/core/collectors/index.d.ts +1 -0
  298. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/BaseGauge__factory.d.ts +698 -144
  299. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +461 -137
  300. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeRewardsDistributor__factory.d.ts +848 -0
  301. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +686 -162
  302. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +689 -155
  303. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/index.d.ts +1 -0
  304. package/dist/types/typechain-types/factories/contracts/core/governance/index.d.ts +0 -1
  305. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/Governance__factory.d.ts +42 -80
  306. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/TimelockController__factory.d.ts +1 -1
  307. package/dist/types/typechain-types/factories/contracts/core/index.d.ts +2 -0
  308. package/dist/types/typechain-types/factories/contracts/core/lockers/LLamaTemple__factory.d.ts +1028 -0
  309. package/dist/types/typechain-types/factories/contracts/core/lockers/index.d.ts +1 -0
  310. package/dist/types/typechain-types/factories/contracts/core/minters/RAACMinter/RAACMinter__factory.d.ts +66 -25
  311. package/dist/types/typechain-types/factories/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator__factory.d.ts +5 -1
  312. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseChainlinkFunctionsOracle__factory.d.ts +37 -1
  313. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseVRFv2Consumer__factory.d.ts +90 -6
  314. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACHousePriceOracle__factory.d.ts +64 -9
  315. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACPrimeRateOracle__factory.d.ts +49 -3
  316. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter__factory.d.ts +369 -0
  317. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/IERC20Adapter__factory.d.ts +21 -0
  318. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/IPriceOracle__factory.d.ts +17 -0
  319. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/index.d.ts +3 -0
  320. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/ERC721AssetAdapter__factory.d.ts +393 -0
  321. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/IPriceOracle__factory.d.ts +21 -0
  322. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/index.d.ts +2 -0
  323. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPoolStorage__factory.d.ts +578 -0
  324. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPool__factory.d.ts +881 -306
  325. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LiquidationProxy__factory.d.ts +716 -0
  326. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/VaultProxy__factory.d.ts +636 -0
  327. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/index.d.ts +5 -0
  328. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/LiquidationStrategyProxy__factory.d.ts +281 -0
  329. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/LiquidationSwap__factory.d.ts +227 -0
  330. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPoolStorage__factory.d.ts +255 -0
  331. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPool__factory.d.ts +151 -85
  332. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/index.d.ts +3 -1
  333. package/dist/types/typechain-types/factories/contracts/core/primitives/ComplianceRegistry__factory.d.ts +276 -0
  334. package/dist/types/typechain-types/factories/contracts/core/primitives/RAACHousePrices__factory.d.ts +29 -1
  335. package/dist/types/typechain-types/factories/contracts/core/primitives/WithCompliance__factory.d.ts +17 -0
  336. package/dist/types/typechain-types/factories/contracts/core/primitives/index.d.ts +2 -0
  337. package/dist/types/typechain-types/factories/contracts/core/tokens/DEToken__factory.d.ts +1 -21
  338. package/dist/types/typechain-types/factories/contracts/core/tokens/DebtToken__factory.d.ts +8 -8
  339. package/dist/types/typechain-types/factories/contracts/core/tokens/LPToken__factory.d.ts +1 -1
  340. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACNFT__factory.d.ts +124 -31
  341. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACToken__factory.d.ts +1 -1
  342. package/dist/types/typechain-types/factories/contracts/core/tokens/RToken__factory.d.ts +1 -61
  343. package/dist/types/typechain-types/factories/contracts/core/tokens/RWAIndexToken__factory.d.ts +465 -0
  344. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACToken__factory.d.ts +446 -186
  345. package/dist/types/typechain-types/factories/contracts/core/tokens/index.d.ts +1 -1
  346. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC20VaultAdapter.sol/ERC20VaultAdapter__factory.d.ts +285 -0
  347. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC20VaultAdapter.sol/IPriceOracle__factory.d.ts +17 -0
  348. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC20VaultAdapter.sol/index.d.ts +2 -0
  349. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC721VaultAdapter.sol/ERC721VaultAdapter__factory.d.ts +287 -0
  350. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC721VaultAdapter.sol/IPriceOracle__factory.d.ts +21 -0
  351. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC721VaultAdapter.sol/index.d.ts +2 -0
  352. package/dist/types/typechain-types/factories/contracts/core/vaults/RWAVault__factory.d.ts +808 -0
  353. package/dist/types/typechain-types/factories/contracts/core/vaults/index.d.ts +3 -0
  354. package/dist/types/typechain-types/factories/contracts/interfaces/IComplianceRegistry__factory.d.ts +67 -0
  355. package/dist/types/typechain-types/factories/contracts/interfaces/INFTLiquidator__factory.d.ts +213 -6
  356. package/dist/types/typechain-types/factories/contracts/interfaces/INFTWhitelist__factory.d.ts +77 -0
  357. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/IFeeCollector__factory.d.ts +32 -0
  358. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IBaseGauge__factory.d.ts +643 -0
  359. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IGaugeController__factory.d.ts +239 -65
  360. package/dist/types/typechain-types/factories/{@openzeppelin/contracts/token/ERC721/extensions/ERC721Wrapper__factory.d.ts → contracts/interfaces/core/governance/gauges/IGaugeRewardsDistributor__factory.d.ts} +209 -201
  361. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/index.d.ts +2 -1
  362. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/index.d.ts +0 -1
  363. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/proposals/IGovernance__factory.d.ts +41 -79
  364. package/dist/types/typechain-types/factories/contracts/interfaces/core/index.d.ts +1 -0
  365. package/dist/types/typechain-types/factories/contracts/interfaces/core/lockers/ILLamaLocker__factory.d.ts +390 -0
  366. package/dist/types/typechain-types/factories/contracts/interfaces/core/lockers/ILLamaTemple__factory.d.ts +390 -0
  367. package/dist/types/typechain-types/factories/contracts/interfaces/core/lockers/index.d.ts +2 -0
  368. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACMinter/IRAACMinterRewardsReceiver__factory.d.ts +35 -0
  369. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACMinter/IRAACMinter__factory.d.ts +33 -0
  370. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACMinter/index.d.ts +1 -0
  371. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator__factory.d.ts +4 -0
  372. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IBaseVRFv2Consumer__factory.d.ts +14 -0
  373. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IRAACHousePrices__factory.d.ts +24 -29
  374. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/IAssetAdapter__factory.d.ts +189 -0
  375. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/IERC721Adapter__factory.d.ts +53 -0
  376. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPoolStorage__factory.d.ts +183 -0
  377. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPool__factory.d.ts +428 -143
  378. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/index.d.ts +3 -0
  379. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/ILiquidationSwap__factory.d.ts +53 -0
  380. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/IStabilityPoolStorage__factory.d.ts +56 -0
  381. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/IStabilityPool__factory.d.ts +26 -75
  382. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/index.d.ts +2 -0
  383. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IDebtToken__factory.d.ts +6 -6
  384. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IRAACNFT__factory.d.ts +79 -4
  385. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IVaultToken__factory.d.ts +223 -0
  386. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IveRAACToken__factory.d.ts +355 -29
  387. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/index.d.ts +1 -0
  388. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/IBaseHybridVault__factory.d.ts +256 -0
  389. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/IVaultAssetAdapter__factory.d.ts +119 -0
  390. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/index.d.ts +2 -0
  391. package/dist/types/typechain-types/factories/contracts/interfaces/curve/ICurveLiquidityGaugeV5__factory.d.ts +503 -0
  392. package/dist/types/typechain-types/factories/contracts/interfaces/curve/index.d.ts +1 -0
  393. package/dist/types/typechain-types/factories/contracts/interfaces/index.d.ts +2 -4
  394. package/dist/types/typechain-types/factories/contracts/interfaces/zeno/IAuction__factory.d.ts +44 -1
  395. package/dist/types/typechain-types/factories/contracts/interfaces/zeno/IZENO__factory.d.ts +42 -0
  396. package/dist/types/typechain-types/factories/contracts/libraries/governance/BoostCalculator__factory.d.ts +1 -1
  397. package/dist/types/typechain-types/factories/contracts/libraries/governance/LockManager__factory.d.ts +10 -1
  398. package/dist/types/typechain-types/factories/contracts/libraries/governance/PowerCheckpoint__factory.d.ts +47 -1
  399. package/dist/types/typechain-types/factories/contracts/libraries/governance/index.d.ts +0 -3
  400. package/dist/types/typechain-types/factories/contracts/libraries/math/TimeWeightedAverage__factory.d.ts +1 -29
  401. package/dist/types/typechain-types/factories/contracts/libraries/pools/ReserveLibrary__factory.d.ts +1 -1
  402. package/dist/types/typechain-types/factories/contracts/libraries/utils/StringUtils__factory.d.ts +1 -1
  403. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockTreasury__factory.d.ts +1 -1
  404. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockWETH__factory.d.ts +353 -0
  405. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/index.d.ts +1 -0
  406. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/CurveLiquidityGaugeV5Mock__factory.d.ts +65 -0
  407. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/ILiquidityGauge__factory.d.ts +21 -0
  408. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/index.d.ts +2 -0
  409. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/index.d.ts +1 -0
  410. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockGaugeController__factory.d.ts +1 -15
  411. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/index.d.ts +0 -1
  412. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockTestTarget__factory.d.ts +1 -1
  413. package/dist/types/typechain-types/factories/contracts/mocks/core/index.d.ts +2 -0
  414. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LLamaLocker.sol/LlamaLocker__factory.d.ts +591 -0
  415. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LLamaLocker.sol/index.d.ts +1 -0
  416. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/index.d.ts +1 -0
  417. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/IPriceOracle__factory.d.ts +17 -0
  418. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/MockERC20PriceOracle__factory.d.ts +42 -0
  419. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/index.d.ts +2 -0
  420. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter__factory.d.ts +2 -2
  421. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockOracle__factory.d.ts +1 -1
  422. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockVRFCoordinatorV2__factory.d.ts +490 -166
  423. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACHousePriceOracle__factory.d.ts +67 -12
  424. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACPrimeRateOracle__factory.d.ts +49 -3
  425. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/index.d.ts +1 -0
  426. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolCollector__factory.d.ts +1 -21
  427. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolDebtToken__factory.d.ts +427 -132
  428. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPool__factory.d.ts +1 -1
  429. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLiquidityPool__factory.d.ts +1 -21
  430. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockPool__factory.d.ts +1 -1
  431. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockStabilityPool__factory.d.ts +1 -1
  432. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContractWithConfig__factory.d.ts +1 -1
  433. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContract__factory.d.ts +1 -1
  434. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockDistributableContract__factory.d.ts +1 -21
  435. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/RAACHousePricesMock__factory.d.ts +1 -1
  436. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/CrvUSDToken__factory.d.ts +1 -1
  437. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC20Mock__factory.d.ts +8 -4
  438. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC721Mock__factory.d.ts +1 -1
  439. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockCollectableUnderlying__factory.d.ts +1 -21
  440. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockFeeCollectorToken__factory.d.ts +1 -15
  441. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockToken__factory.d.ts +1 -15
  442. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockUSDC__factory.d.ts +1 -1
  443. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/RAACMockERC20__factory.d.ts +1 -1
  444. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/index.d.ts +0 -1
  445. package/dist/types/typechain-types/factories/contracts/mocks/core/vaults/MockVault__factory.d.ts +1 -21
  446. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockStringUtils__factory.d.ts +1 -1
  447. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/BoostCalculatorMock__factory.d.ts +53 -122
  448. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/LockManagerMock__factory.d.ts +21 -12
  449. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/PowerCheckpointMock__factory.d.ts +39 -14
  450. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/index.d.ts +0 -3
  451. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/TimeWeightedAverageMock__factory.d.ts +1 -1
  452. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/WadRayMathMock__factory.d.ts +1 -1
  453. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMock__factory.d.ts +1 -1
  454. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousDeposit__factory.d.ts +1 -1
  455. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousWithdraw__factory.d.ts +1 -1
  456. package/dist/types/typechain-types/factories/contracts/mocks/tests/VeRAACFuzzHelper__factory.d.ts +1 -1
  457. package/dist/types/typechain-types/factories/contracts/mocks/tests/index.d.ts +0 -1
  458. package/dist/types/typechain-types/factories/contracts/zeno/AuctionFactory__factory.d.ts +5 -1
  459. package/dist/types/typechain-types/factories/contracts/zeno/Auction__factory.d.ts +83 -14
  460. package/dist/types/typechain-types/factories/contracts/zeno/ZENOFactory__factory.d.ts +13 -1
  461. package/dist/types/typechain-types/factories/contracts/zeno/ZENO__factory.d.ts +87 -31
  462. package/dist/types/typechain-types/index.d.ts +112 -42
  463. package/dist/types/utils/artifacts.d.ts +767 -226
  464. package/dist/utils/artifacts.js +13 -0
  465. package/package.json +1 -1
  466. package/dist/contracts/indexToken/getNextRandomNFT.js +0 -30
  467. package/dist/contracts/indexToken/redeemNFT.js +0 -39
  468. package/dist/pools/lendingPool/claimReward.js +0 -22
  469. package/dist/pools/lendingPool/depositNFTToLendingPool.js +0 -50
  470. package/dist/pools/lendingPool/getAllUserData.js +0 -28
  471. package/dist/pools/stabilityPool/calculateRAACRewards.js +0 -21
  472. package/dist/pools/stabilityPool/depositNFTToStabilityPool.js +0 -40
  473. package/dist/types/contracts/indexToken/getNextRandomNFT.d.ts +0 -7
  474. package/dist/types/contracts/indexToken/redeemNFT.d.ts +0 -4
  475. package/dist/types/pools/lendingPool/claimReward.d.ts +0 -4
  476. package/dist/types/pools/lendingPool/depositNFTToLendingPool.d.ts +0 -4
  477. package/dist/types/pools/lendingPool/getAllUserData.d.ts +0 -17
  478. package/dist/types/pools/lendingPool/getPendingReward.d.ts +0 -4
  479. package/dist/types/pools/lendingPool/withdrawNFTFromLendingPool.d.ts +0 -4
  480. package/dist/types/pools/stabilityPool/calculateRAACRewards.d.ts +0 -4
  481. package/dist/types/pools/stabilityPool/depositNFTToStabilityPool.d.ts +0 -4
  482. package/dist/types/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/ERC721Wrapper.d.ts +0 -261
@@ -152,6 +152,16 @@
152
152
  "name": "OwnershipTransferNotDue",
153
153
  "type": "error"
154
154
  },
155
+ {
156
+ "inputs": [],
157
+ "name": "PoolAlreadyExists",
158
+ "type": "error"
159
+ },
160
+ {
161
+ "inputs": [],
162
+ "name": "PoolDoesNotExist",
163
+ "type": "error"
164
+ },
155
165
  {
156
166
  "inputs": [],
157
167
  "name": "ReentrancyGuardReentrantCall",
@@ -224,6 +234,38 @@
224
234
  "name": "DistributionFailed",
225
235
  "type": "event"
226
236
  },
237
+ {
238
+ "anonymous": false,
239
+ "inputs": [
240
+ {
241
+ "indexed": false,
242
+ "internalType": "address",
243
+ "name": "pool",
244
+ "type": "address"
245
+ },
246
+ {
247
+ "indexed": false,
248
+ "internalType": "uint256",
249
+ "name": "weight",
250
+ "type": "uint256"
251
+ }
252
+ ],
253
+ "name": "DistributionPoolAdded",
254
+ "type": "event"
255
+ },
256
+ {
257
+ "anonymous": false,
258
+ "inputs": [
259
+ {
260
+ "indexed": false,
261
+ "internalType": "address",
262
+ "name": "pool",
263
+ "type": "address"
264
+ }
265
+ ],
266
+ "name": "DistributionPoolRemoved",
267
+ "type": "event"
268
+ },
227
269
  {
228
270
  "anonymous": false,
229
271
  "inputs": [
@@ -718,28 +760,33 @@
718
760
  },
719
761
  {
720
762
  "inputs": [],
721
- "name": "TIMELOCK_DURATION",
763
+ "name": "UPDATER_ROLE",
722
764
  "outputs": [
723
765
  {
724
- "internalType": "uint256",
766
+ "internalType": "bytes32",
725
767
  "name": "",
726
- "type": "uint256"
768
+ "type": "bytes32"
727
769
  }
728
770
  ],
729
771
  "stateMutability": "view",
730
772
  "type": "function"
731
773
  },
732
774
  {
733
- "inputs": [],
734
- "name": "UPDATER_ROLE",
735
- "outputs": [
775
+ "inputs": [
736
776
  {
737
- "internalType": "bytes32",
738
- "name": "",
739
- "type": "bytes32"
777
+ "internalType": "address",
778
+ "name": "pool",
779
+ "type": "address"
780
+ },
781
+ {
782
+ "internalType": "uint256",
783
+ "name": "weight",
784
+ "type": "uint256"
740
785
  }
741
786
  ],
742
- "stateMutability": "view",
787
+ "name": "addDistributionPool",
788
+ "outputs": [],
789
+ "stateMutability": "nonpayable",
743
790
  "type": "function"
744
791
  },
745
792
  {
@@ -1103,6 +1150,16 @@
1103
1150
  "internalType": "bool",
1104
1151
  "name": "exists",
1105
1152
  "type": "bool"
1153
+ },
1154
+ {
1155
+ "internalType": "address",
1156
+ "name": "pool",
1157
+ "type": "address"
1158
+ },
1159
+ {
1160
+ "internalType": "uint256",
1161
+ "name": "pendingRewards",
1162
+ "type": "uint256"
1106
1163
  }
1107
1164
  ],
1108
1165
  "stateMutability": "view",
@@ -1121,6 +1178,19 @@
1121
1178
  "stateMutability": "view",
1122
1179
  "type": "function"
1123
1180
  },
1181
+ {
1182
+ "inputs": [
1183
+ {
1184
+ "internalType": "address",
1185
+ "name": "pool",
1186
+ "type": "address"
1187
+ }
1188
+ ],
1189
+ "name": "removeDistributionPool",
1190
+ "outputs": [],
1191
+ "stateMutability": "nonpayable",
1192
+ "type": "function"
1193
+ },
1124
1194
  {
1125
1195
  "inputs": [],
1126
1196
  "name": "renounceOwnership",
@@ -1333,25 +1403,6 @@
1333
1403
  "stateMutability": "nonpayable",
1334
1404
  "type": "function"
1335
1405
  },
1336
- {
1337
- "inputs": [
1338
- {
1339
- "internalType": "bytes32",
1340
- "name": "",
1341
- "type": "bytes32"
1342
- }
1343
- ],
1344
- "name": "timeLocks",
1345
- "outputs": [
1346
- {
1347
- "internalType": "uint256",
1348
- "name": "",
1349
- "type": "uint256"
1350
- }
1351
- ],
1352
- "stateMutability": "view",
1353
- "type": "function"
1354
- },
1355
1406
  {
1356
1407
  "inputs": [],
1357
1408
  "name": "totalWeight",
@@ -1436,8 +1487,8 @@
1436
1487
  "type": "function"
1437
1488
  }
1438
1489
  ],
1439
- "bytecode": "0x60a06040526200001b611be268056bc75e2d63100000620002b7565b60085562000036611be269043c33c1937564800000620002b7565b6009556005600a556046600b553480156200005057600080fd5b5060405162002261380380620022618339810160408190526200007391620002f7565b806001600160a01b038116620000a357604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b620000ae81620001b4565b50600180556002805460ff191690556001600160a01b0382161580620000db57506001600160a01b038116155b15620000fa5760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b0382166080526200011f611be2690221c991517328d00000620002b7565b600781905543600655600d556200013a62015180426200032f565b600e5562015180600f556200015160008262000204565b506200017e7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8262000204565b50620001ab7f73e573f9566d61418a34d5de3ff49360f9c51fec37f7486551670290f6285dab8262000204565b50505062000351565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008281526003602090815260408083206001600160a01b038516845290915281205460ff16620002ad5760008381526003602090815260408083206001600160a01b03861684529091529020805460ff19166001179055620002643390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001620002b1565b5060005b92915050565b600082620002d557634e487b7160e01b600052601260045260246000fd5b500490565b80516001600160a01b0381168114620002f257600080fd5b919050565b600080604083850312156200030b57600080fd5b6200031683620002da565b91506200032660208401620002da565b90509250929050565b81810381811115620002b157634e487b7160e01b600052601160045260246000fd5b608051611eb5620003ac6000396000818161076201528181610c5001528181610d1101528181610da301528181610e8a01528181610fed015281816113b9015281816114380152818161161001526118e60152611eb56000f3fe608060405234801561001057600080fd5b50600436106103af5760003560e01c806386ae8bac116101f4578063a59a99731161011a578063d9dbdd0f116100ad578063eaa18f271161007c578063eaa18f27146107ab578063efd12fc8146107b3578063eff81435146107c6578063f2fde38b146107d957600080fd5b8063d9dbdd0f14610737578063dc2db84d1461074a578063e40963f21461075d578063e63ab1e91461078457600080fd5b8063c4e41b22116100e9578063c4e41b221461070a578063cb6741ed14610712578063cdafa6491461071b578063d547741f1461072457600080fd5b8063a59a9973146106cf578063b88a3f7c146106e2578063bad49311146106a3578063c0a77da91461070257600080fd5b806396afc450116101925780639ba9e5c4116101615780639ba9e5c4146106a3578063a217fddf146106ab578063a218141b146106b3578063a42dce80146106bc57600080fd5b806396afc4501461063f57806396c82e571461064857806398d721e0146106515780639a7b5f111461066457600080fd5b80638d4564e9116101ce5780638d4564e9146106095780638da5cb5b146106125780638e5e11cb1461062357806391d148541461062c57600080fd5b806386ae8bac146105ec5780638c3aeb08146105f65780638c5f187a146105ec57600080fd5b80633b45911a116102d95780635794f9d4116102775780636bb987fe116102465780636bb987fe146105b35780636eaefec8146105bc578063715018a6146105cf578063732cc0d6146105d757600080fd5b80635794f9d41461056f5780635b396851146105825780635c975abb146105955780636822b8bb146105a057600080fd5b806347e63380116102b357806347e633801461052d5780634dbac733146105425780634dfbe6f114610553578063575014fa1461056657600080fd5b80633b45911a146105085780633eaf5d9f1461051b5780634623c81e1461052357600080fd5b8063142fc582116103515780632f2ff15d116103205780632f2ff15d146104bd578063313a7a71146104d057806332cb6b0c146104e357806336568abe146104f557600080fd5b8063142fc582146104805780632445c93714610489578063248a9ca31461049157806327d8c1bb146104b457600080fd5b80630ba84cd21161038d5780630ba84cd21461041e5780630bfc1f75146104335780630f648bca1461045a578063113aa8b11461046d57600080fd5b806301ffc9a7146103b45780630342cd21146103dc578063048c661d146103f3575b600080fd5b6103c76103c2366004611c35565b6107ec565b60405190151581526020015b60405180910390f35b6103e5600d5481565b6040519081526020016103d3565b600454610406906001600160a01b031681565b6040516001600160a01b0390911681526020016103d3565b61043161042c366004611c66565b610823565b005b6103e57f2ba088aeac4c69066badb5456997747974789cf8224c06112a8fa3d88cb8092981565b610431610468366004611c66565b6108c1565b61043161047b366004611c9b565b610939565b6103e560095481565b6103e56109f3565b6103e561049f366004611c66565b60009081526003602052604090206001015490565b6103e5600c5481565b6104316104cb366004611cb6565b610a0c565b6104316104de366004611ce2565b610a37565b6103e56a115eec47f6cf7e3500000081565b610431610503366004611cb6565b610b77565b610431610516366004611c66565b610baf565b610431610c32565b6103e56202a30081565b6103e5600080516020611e6083398151915281565b6103e5690221c991517328d0000081565b610431610561366004611c66565b610f07565b6103e5600f5481565b61043161057d366004611c66565b610f9c565b610431610590366004611c66565b6110a6565b60025460ff166103c7565b6104316105ae366004611d1a565b611127565b6103e5611be281565b6104316105ca366004611d1a565b611168565b6104316111cc565b6105df6111de565b6040516103d39190611d38565b6103e56201518081565b610431610604366004611c66565b611240565b6103e5600b5481565b6000546001600160a01b0316610406565b6103e560085481565b6103c761063a366004611cb6565b6112b8565b6103e560075481565b6103e560115481565b61043161065f366004611c9b565b6112e3565b61068e610672366004611c9b565b6013602052600090815260409020805460019091015460ff1682565b604080519283529015156020830152016103d3565b6103e5606481565b6103e5600081565b6103e560065481565b6104316106ca366004611c9b565b61135b565b600554610406906001600160a01b031681565b6103e56106f0366004611c66565b60106020526000908152604090205481565b6007546103e5565b6103e5611434565b6103e5600a5481565b6103e5600e5481565b610431610732366004611cb6565b6114bd565b610406610745366004611c66565b6114e2565b610431610758366004611c66565b61150c565b6104067f000000000000000000000000000000000000000000000000000000000000000081565b6103e57f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b600c546103e5565b6104316107c1366004611d1a565b61158d565b6104316107d4366004611c66565b6115bf565b6104316107e7366004611c9b565b611692565b60006001600160e01b03198216637965db0b60e01b148061081d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600080516020611e6083398151915261083b816116d5565b81158061085c5750610859611be269043c33c1937564800000611d9b565b82115b1561087a576040516305f840af60e31b815260040160405180910390fd5b600780549083905560408051828152602081018590527f144d30c57e277deb14c5d686b95cf61cfea257d9d551cef4288b2f7db418f87a91015b60405180910390a1505050565b600080516020611e608339815191526108d9816116d5565b60095482106108fb57604051638052912360e01b815260040160405180910390fd5b600880549083905560408051828152602081018590527f8359ab540da756ff7366c37f8853d542ab5fd94e865744e65be20ae91b02af7d91016108b4565b600080516020611e60833981519152610951816116d5565b6001600160a01b0382166109785760405163d92e233d60e01b815260040160405180910390fd5b600580546001600160a01b0319166001600160a01b0384161790556040516a1b195b991a5b99d41bdbdb60aa1b8152600b015b6040519081900381206001600160a01b0384168252907f3a64504f0bc0c335e2aecb78638a257e0351a3fe0370861fd54ee4190b920933906020015b60405180910390a25050565b610a09611be269043c33c1937564800000611d9b565b81565b600082815260036020526040902060010154610a27816116d5565b610a3183836116df565b50505050565b600080516020611e60833981519152610a4f816116d5565b6001600160a01b038316610a765760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b0383166000908152601360205260409020600181015460ff1615610abd5780546011548491610aab91611dbd565b610ab59190611dd0565b601155610b30565b601280546001808201835560009283527fbb8a6a4669ba250d26cd7a459eca9d215f8307e33aebe50379bc5a3617ec344490910180546001600160a01b0319166001600160a01b038816179055828101805460ff1916909117905560118054859290610b2a908490611dd0565b90915550505b8281556040518381526001600160a01b038516907ffd3821d09d5bb7849ca0472ac9fa1c4d37c85fb9b2f68f97e66419e2aaad21fa9060200160405180910390a250505050565b6001600160a01b0381163314610ba05760405163334bd91960e11b815260040160405180910390fd5b610baa8282611773565b505050565b600080516020611e60833981519152610bc7816116d5565b811580610bd657506201518082115b15610bf457604051631e0ea1f760e01b815260040160405180910390fd5b600f80549083905560408051828152602081018590527f44bdf4c27b08858bf057592811f06b65ae5019592d2491f1f02e332ded4db2a091016108b4565b610c3a6117e0565b610c4261180a565b6a115eec47f6cf7e350000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cd09190611de3565b1015610efc576006544390600090610ce89083611dbd565b90508015610ef957600081600754610d009190611dfc565b90506a115eec47f6cf7e35000000817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d919190611de3565b610d9b9190611dd0565b1115610e3b577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e239190611de3565b610e38906a115eec47f6cf7e35000000611dbd565b90505b600081118015610e4d57506000601154115b15610ef75780600c6000828254610e649190611dd0565b909155505060068390556040516340c10f1960e01b8152306004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906340c10f1990604401600060405180830381600087803b158015610ed657600080fd5b505af1158015610eea573d6000803e3d6000fd5b50505050610ef78161182e565b505b50505b610f0560018055565b565b600080516020611e60833981519152610f1f816116d5565b811580610f405750610f3d611be269043c33c1937564800000611d9b565b82115b15610f5e576040516305f840af60e31b815260040160405180910390fd5b600d80549083905560408051828152602081018590527fd0b2c4b0d8a73885e6af967e0873f2b6964d56f61cf06fcf57145162b153746591016108b4565b600080516020611e60833981519152610fb4816116d5565b6103e8821115610fd7576040516353d892d160e01b815260040160405180910390fd5b6040516315e53e7560e21b8152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635794f9d490602401600060405180830381600087803b15801561103957600080fd5b505af115801561104d573d6000803e3d6000fd5b5050505060405161106f906a737761705461785261746560a81b8152600b0190565b604051908190038120838252907f3a64504f0bc0c335e2aecb78638a257e0351a3fe0370861fd54ee4190b920933906020016109e7565b600080516020611e608339815191526110be816116d5565b8115806110cb5750606482115b156110e957604051632fb3045560e21b815260040160405180910390fd5b600b80549083905560408051828152602081018590527fee018a4b32d34638feed5025ed7c19ded938c601784251ee13fd898854f0d4b991016108b4565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a611151816116d5565b611159611a63565b8215610baa57610baa82611ab5565b6000611173816116d5565b6000600755611180611b1f565b821561118f5761118f82611ab5565b60065460405190815233907f077382e0341a6d8666d1f8ed15b8c933a01f5c1a3e6c5229e2db8c5dc1c06ae19060200160405180910390a2505050565b6111d4611b5c565b610f056000611b89565b6060601280548060200260200160405190810160405280929190818152602001828054801561123657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611218575b5050505050905090565b600080516020611e60833981519152611258816116d5565b600854821161127a5760405163acabfa6160e01b815260040160405180910390fd5b600980549083905560408051828152602081018590527fc75dfdf293290d7c0b82cd4bbd3e59891026c72807e6a904d60b099fdf76d3a691016108b4565b60009182526003602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600080516020611e608339815191526112fb816116d5565b6001600160a01b0382166113225760405163d92e233d60e01b815260040160405180910390fd5b600480546001600160a01b0319166001600160a01b0384161790556040516c1cdd18589a5b1a5d1e541bdbdb609a1b8152600d016109ab565b600080516020611e60833981519152611373816116d5565b6001600160a01b03821661139a576040516308b522ab60e11b815260040160405180910390fd5b6040516301485b9d60e71b81526001600160a01b0383811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063a42dce8090602401600060405180830381600087803b1580156113fd57600080fd5b505af1158015611411573d6000803e3d6000fd5b505050506040516109ab906b3332b2a1b7b63632b1ba37b960a11b8152600c0190565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611494573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114b89190611de3565b905090565b6000828152600360205260409020600101546114d8816116d5565b610a318383611773565b601281815481106114f257600080fd5b6000918252602090912001546001600160a01b0316905081565b600080516020611e60833981519152611524816116d5565b8115806115315750606482115b1561154f576040516329adebad60e21b815260040160405180910390fd5b600a80549083905560408051828152602081018590527f1fb3715671b01e7683667e5567b072e0309d5d13df0ef9f6446f0006c47c1c7391016108b4565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a6115b7816116d5565b611159611b1f565b600080516020611e608339815191526115d7816116d5565b6103e88211156115fa57604051637122fedf60e11b815260040160405180910390fd5b60405163eff8143560e01b8152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063eff8143590602401600060405180830381600087803b15801561165c57600080fd5b505af1158015611670573d6000803e3d6000fd5b5050505060405161106f906a6275726e5461785261746560a81b8152600b0190565b61169a611b5c565b6001600160a01b0381166116c957604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6116d281611b89565b50565b6116d28133611bd9565b60006116eb83836112b8565b61176b5760008381526003602090815260408083206001600160a01b03861684529091529020805460ff191660011790556117233390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600161081d565b50600061081d565b600061177f83836112b8565b1561176b5760008381526003602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a450600161081d565b60026001540361180357604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b60025460ff1615610f055760405163d93c066560e01b815260040160405180910390fd5b60005b601254811015611a5f5760006012828154811061185057611850611e13565b60009182526020808320909101546001600160a01b031680835260138252604092839020835180850190945280548085526001919091015460ff16151592840192909252925015611a4a576011548151600091906118ae9087611dfc565b6118b89190611d9b565b90508015611a485760405163095ea7b360e01b81526001600160a01b038481166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303816000875af115801561192f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119539190611e29565b5060405162b6310f60e51b8152600481018290526001600160a01b038416906316c621e090602401600060405180830381600087803b15801561199557600080fd5b505af19250505080156119a6575060015b611a045780600c60008282546119bc9190611dd0565b90915550506040518181526001600160a01b038416907fde8579262fcb2d1163177c317c51de94ee1f7f5475e2ac16298614fe5280972b9060200160405180910390a2611a48565b826001600160a01b03167fdf29796aad820e4bb192f3a8d631b76519bcd2cbe77cc85af20e9df53cece08682604051611a3f91815260200190565b60405180910390a25b505b50508080611a5790611e46565b915050611831565b5050565b611a6b611c12565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b43811115611ad657604051631391e11b60e21b815260040160405180910390fd5b8015611ae25780611ae4565b435b60068190556040519081527f233aad4436659905d00f94d1d3a39c2126a5088956fc9e02d714ce315d0de7f19060200160405180910390a150565b611b2761180a565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a983390565b6000546001600160a01b03163314610f055760405163118cdaa760e01b81523360048201526024016116c0565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611be382826112b8565b611a5f5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016116c0565b60025460ff16610f0557604051638dfc202b60e01b815260040160405180910390fd5b600060208284031215611c4757600080fd5b81356001600160e01b031981168114611c5f57600080fd5b9392505050565b600060208284031215611c7857600080fd5b5035919050565b80356001600160a01b0381168114611c9657600080fd5b919050565b600060208284031215611cad57600080fd5b611c5f82611c7f565b60008060408385031215611cc957600080fd5b82359150611cd960208401611c7f565b90509250929050565b60008060408385031215611cf557600080fd5b611cfe83611c7f565b946020939093013593505050565b80151581146116d257600080fd5b60008060408385031215611d2d57600080fd5b8235611cfe81611d0c565b6020808252825182820181905260009190848201906040850190845b81811015611d795783516001600160a01b031683529284019291840191600101611d54565b50909695505050505050565b634e487b7160e01b600052601160045260246000fd5b600082611db857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561081d5761081d611d85565b8082018082111561081d5761081d611d85565b600060208284031215611df557600080fd5b5051919050565b808202811582820484141761081d5761081d611d85565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611e3b57600080fd5b8151611c5f81611d0c565b600060018201611e5857611e58611d85565b506001019056fe73e573f9566d61418a34d5de3ff49360f9c51fec37f7486551670290f6285daba2646970667358221220b1bf9760021a10da980aff1206d4bfb65fde9a34f48c94c92027a15f153c217764736f6c63430008140033",
1440
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106103af5760003560e01c806386ae8bac116101f4578063a59a99731161011a578063d9dbdd0f116100ad578063eaa18f271161007c578063eaa18f27146107ab578063efd12fc8146107b3578063eff81435146107c6578063f2fde38b146107d957600080fd5b8063d9dbdd0f14610737578063dc2db84d1461074a578063e40963f21461075d578063e63ab1e91461078457600080fd5b8063c4e41b22116100e9578063c4e41b221461070a578063cb6741ed14610712578063cdafa6491461071b578063d547741f1461072457600080fd5b8063a59a9973146106cf578063b88a3f7c146106e2578063bad49311146106a3578063c0a77da91461070257600080fd5b806396afc450116101925780639ba9e5c4116101615780639ba9e5c4146106a3578063a217fddf146106ab578063a218141b146106b3578063a42dce80146106bc57600080fd5b806396afc4501461063f57806396c82e571461064857806398d721e0146106515780639a7b5f111461066457600080fd5b80638d4564e9116101ce5780638d4564e9146106095780638da5cb5b146106125780638e5e11cb1461062357806391d148541461062c57600080fd5b806386ae8bac146105ec5780638c3aeb08146105f65780638c5f187a146105ec57600080fd5b80633b45911a116102d95780635794f9d4116102775780636bb987fe116102465780636bb987fe146105b35780636eaefec8146105bc578063715018a6146105cf578063732cc0d6146105d757600080fd5b80635794f9d41461056f5780635b396851146105825780635c975abb146105955780636822b8bb146105a057600080fd5b806347e63380116102b357806347e633801461052d5780634dbac733146105425780634dfbe6f114610553578063575014fa1461056657600080fd5b80633b45911a146105085780633eaf5d9f1461051b5780634623c81e1461052357600080fd5b8063142fc582116103515780632f2ff15d116103205780632f2ff15d146104bd578063313a7a71146104d057806332cb6b0c146104e357806336568abe146104f557600080fd5b8063142fc582146104805780632445c93714610489578063248a9ca31461049157806327d8c1bb146104b457600080fd5b80630ba84cd21161038d5780630ba84cd21461041e5780630bfc1f75146104335780630f648bca1461045a578063113aa8b11461046d57600080fd5b806301ffc9a7146103b45780630342cd21146103dc578063048c661d146103f3575b600080fd5b6103c76103c2366004611c35565b6107ec565b60405190151581526020015b60405180910390f35b6103e5600d5481565b6040519081526020016103d3565b600454610406906001600160a01b031681565b6040516001600160a01b0390911681526020016103d3565b61043161042c366004611c66565b610823565b005b6103e57f2ba088aeac4c69066badb5456997747974789cf8224c06112a8fa3d88cb8092981565b610431610468366004611c66565b6108c1565b61043161047b366004611c9b565b610939565b6103e560095481565b6103e56109f3565b6103e561049f366004611c66565b60009081526003602052604090206001015490565b6103e5600c5481565b6104316104cb366004611cb6565b610a0c565b6104316104de366004611ce2565b610a37565b6103e56a115eec47f6cf7e3500000081565b610431610503366004611cb6565b610b77565b610431610516366004611c66565b610baf565b610431610c32565b6103e56202a30081565b6103e5600080516020611e6083398151915281565b6103e5690221c991517328d0000081565b610431610561366004611c66565b610f07565b6103e5600f5481565b61043161057d366004611c66565b610f9c565b610431610590366004611c66565b6110a6565b60025460ff166103c7565b6104316105ae366004611d1a565b611127565b6103e5611be281565b6104316105ca366004611d1a565b611168565b6104316111cc565b6105df6111de565b6040516103d39190611d38565b6103e56201518081565b610431610604366004611c66565b611240565b6103e5600b5481565b6000546001600160a01b0316610406565b6103e560085481565b6103c761063a366004611cb6565b6112b8565b6103e560075481565b6103e560115481565b61043161065f366004611c9b565b6112e3565b61068e610672366004611c9b565b6013602052600090815260409020805460019091015460ff1682565b604080519283529015156020830152016103d3565b6103e5606481565b6103e5600081565b6103e560065481565b6104316106ca366004611c9b565b61135b565b600554610406906001600160a01b031681565b6103e56106f0366004611c66565b60106020526000908152604090205481565b6007546103e5565b6103e5611434565b6103e5600a5481565b6103e5600e5481565b610431610732366004611cb6565b6114bd565b610406610745366004611c66565b6114e2565b610431610758366004611c66565b61150c565b6104067f000000000000000000000000000000000000000000000000000000000000000081565b6103e57f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b600c546103e5565b6104316107c1366004611d1a565b61158d565b6104316107d4366004611c66565b6115bf565b6104316107e7366004611c9b565b611692565b60006001600160e01b03198216637965db0b60e01b148061081d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b600080516020611e6083398151915261083b816116d5565b81158061085c5750610859611be269043c33c1937564800000611d9b565b82115b1561087a576040516305f840af60e31b815260040160405180910390fd5b600780549083905560408051828152602081018590527f144d30c57e277deb14c5d686b95cf61cfea257d9d551cef4288b2f7db418f87a91015b60405180910390a1505050565b600080516020611e608339815191526108d9816116d5565b60095482106108fb57604051638052912360e01b815260040160405180910390fd5b600880549083905560408051828152602081018590527f8359ab540da756ff7366c37f8853d542ab5fd94e865744e65be20ae91b02af7d91016108b4565b600080516020611e60833981519152610951816116d5565b6001600160a01b0382166109785760405163d92e233d60e01b815260040160405180910390fd5b600580546001600160a01b0319166001600160a01b0384161790556040516a1b195b991a5b99d41bdbdb60aa1b8152600b015b6040519081900381206001600160a01b0384168252907f3a64504f0bc0c335e2aecb78638a257e0351a3fe0370861fd54ee4190b920933906020015b60405180910390a25050565b610a09611be269043c33c1937564800000611d9b565b81565b600082815260036020526040902060010154610a27816116d5565b610a3183836116df565b50505050565b600080516020611e60833981519152610a4f816116d5565b6001600160a01b038316610a765760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b0383166000908152601360205260409020600181015460ff1615610abd5780546011548491610aab91611dbd565b610ab59190611dd0565b601155610b30565b601280546001808201835560009283527fbb8a6a4669ba250d26cd7a459eca9d215f8307e33aebe50379bc5a3617ec344490910180546001600160a01b0319166001600160a01b038816179055828101805460ff1916909117905560118054859290610b2a908490611dd0565b90915550505b8281556040518381526001600160a01b038516907ffd3821d09d5bb7849ca0472ac9fa1c4d37c85fb9b2f68f97e66419e2aaad21fa9060200160405180910390a250505050565b6001600160a01b0381163314610ba05760405163334bd91960e11b815260040160405180910390fd5b610baa8282611773565b505050565b600080516020611e60833981519152610bc7816116d5565b811580610bd657506201518082115b15610bf457604051631e0ea1f760e01b815260040160405180910390fd5b600f80549083905560408051828152602081018590527f44bdf4c27b08858bf057592811f06b65ae5019592d2491f1f02e332ded4db2a091016108b4565b610c3a6117e0565b610c4261180a565b6a115eec47f6cf7e350000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cd09190611de3565b1015610efc576006544390600090610ce89083611dbd565b90508015610ef957600081600754610d009190611dfc565b90506a115eec47f6cf7e35000000817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d919190611de3565b610d9b9190611dd0565b1115610e3b577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e239190611de3565b610e38906a115eec47f6cf7e35000000611dbd565b90505b600081118015610e4d57506000601154115b15610ef75780600c6000828254610e649190611dd0565b909155505060068390556040516340c10f1960e01b8152306004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906340c10f1990604401600060405180830381600087803b158015610ed657600080fd5b505af1158015610eea573d6000803e3d6000fd5b50505050610ef78161182e565b505b50505b610f0560018055565b565b600080516020611e60833981519152610f1f816116d5565b811580610f405750610f3d611be269043c33c1937564800000611d9b565b82115b15610f5e576040516305f840af60e31b815260040160405180910390fd5b600d80549083905560408051828152602081018590527fd0b2c4b0d8a73885e6af967e0873f2b6964d56f61cf06fcf57145162b153746591016108b4565b600080516020611e60833981519152610fb4816116d5565b6103e8821115610fd7576040516353d892d160e01b815260040160405180910390fd5b6040516315e53e7560e21b8152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635794f9d490602401600060405180830381600087803b15801561103957600080fd5b505af115801561104d573d6000803e3d6000fd5b5050505060405161106f906a737761705461785261746560a81b8152600b0190565b604051908190038120838252907f3a64504f0bc0c335e2aecb78638a257e0351a3fe0370861fd54ee4190b920933906020016109e7565b600080516020611e608339815191526110be816116d5565b8115806110cb5750606482115b156110e957604051632fb3045560e21b815260040160405180910390fd5b600b80549083905560408051828152602081018590527fee018a4b32d34638feed5025ed7c19ded938c601784251ee13fd898854f0d4b991016108b4565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a611151816116d5565b611159611a63565b8215610baa57610baa82611ab5565b6000611173816116d5565b6000600755611180611b1f565b821561118f5761118f82611ab5565b60065460405190815233907f077382e0341a6d8666d1f8ed15b8c933a01f5c1a3e6c5229e2db8c5dc1c06ae19060200160405180910390a2505050565b6111d4611b5c565b610f056000611b89565b6060601280548060200260200160405190810160405280929190818152602001828054801561123657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611218575b5050505050905090565b600080516020611e60833981519152611258816116d5565b600854821161127a5760405163acabfa6160e01b815260040160405180910390fd5b600980549083905560408051828152602081018590527fc75dfdf293290d7c0b82cd4bbd3e59891026c72807e6a904d60b099fdf76d3a691016108b4565b60009182526003602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600080516020611e608339815191526112fb816116d5565b6001600160a01b0382166113225760405163d92e233d60e01b815260040160405180910390fd5b600480546001600160a01b0319166001600160a01b0384161790556040516c1cdd18589a5b1a5d1e541bdbdb609a1b8152600d016109ab565b600080516020611e60833981519152611373816116d5565b6001600160a01b03821661139a576040516308b522ab60e11b815260040160405180910390fd5b6040516301485b9d60e71b81526001600160a01b0383811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063a42dce8090602401600060405180830381600087803b1580156113fd57600080fd5b505af1158015611411573d6000803e3d6000fd5b505050506040516109ab906b3332b2a1b7b63632b1ba37b960a11b8152600c0190565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611494573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114b89190611de3565b905090565b6000828152600360205260409020600101546114d8816116d5565b610a318383611773565b601281815481106114f257600080fd5b6000918252602090912001546001600160a01b0316905081565b600080516020611e60833981519152611524816116d5565b8115806115315750606482115b1561154f576040516329adebad60e21b815260040160405180910390fd5b600a80549083905560408051828152602081018590527f1fb3715671b01e7683667e5567b072e0309d5d13df0ef9f6446f0006c47c1c7391016108b4565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a6115b7816116d5565b611159611b1f565b600080516020611e608339815191526115d7816116d5565b6103e88211156115fa57604051637122fedf60e11b815260040160405180910390fd5b60405163eff8143560e01b8152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063eff8143590602401600060405180830381600087803b15801561165c57600080fd5b505af1158015611670573d6000803e3d6000fd5b5050505060405161106f906a6275726e5461785261746560a81b8152600b0190565b61169a611b5c565b6001600160a01b0381166116c957604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6116d281611b89565b50565b6116d28133611bd9565b60006116eb83836112b8565b61176b5760008381526003602090815260408083206001600160a01b03861684529091529020805460ff191660011790556117233390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600161081d565b50600061081d565b600061177f83836112b8565b1561176b5760008381526003602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a450600161081d565b60026001540361180357604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b60025460ff1615610f055760405163d93c066560e01b815260040160405180910390fd5b60005b601254811015611a5f5760006012828154811061185057611850611e13565b60009182526020808320909101546001600160a01b031680835260138252604092839020835180850190945280548085526001919091015460ff16151592840192909252925015611a4a576011548151600091906118ae9087611dfc565b6118b89190611d9b565b90508015611a485760405163095ea7b360e01b81526001600160a01b038481166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303816000875af115801561192f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119539190611e29565b5060405162b6310f60e51b8152600481018290526001600160a01b038416906316c621e090602401600060405180830381600087803b15801561199557600080fd5b505af19250505080156119a6575060015b611a045780600c60008282546119bc9190611dd0565b90915550506040518181526001600160a01b038416907fde8579262fcb2d1163177c317c51de94ee1f7f5475e2ac16298614fe5280972b9060200160405180910390a2611a48565b826001600160a01b03167fdf29796aad820e4bb192f3a8d631b76519bcd2cbe77cc85af20e9df53cece08682604051611a3f91815260200190565b60405180910390a25b505b50508080611a5790611e46565b915050611831565b5050565b611a6b611c12565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b43811115611ad657604051631391e11b60e21b815260040160405180910390fd5b8015611ae25780611ae4565b435b60068190556040519081527f233aad4436659905d00f94d1d3a39c2126a5088956fc9e02d714ce315d0de7f19060200160405180910390a150565b611b2761180a565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a983390565b6000546001600160a01b03163314610f055760405163118cdaa760e01b81523360048201526024016116c0565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611be382826112b8565b611a5f5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016116c0565b60025460ff16610f0557604051638dfc202b60e01b815260040160405180910390fd5b600060208284031215611c4757600080fd5b81356001600160e01b031981168114611c5f57600080fd5b9392505050565b600060208284031215611c7857600080fd5b5035919050565b80356001600160a01b0381168114611c9657600080fd5b919050565b600060208284031215611cad57600080fd5b611c5f82611c7f565b60008060408385031215611cc957600080fd5b82359150611cd960208401611c7f565b90509250929050565b60008060408385031215611cf557600080fd5b611cfe83611c7f565b946020939093013593505050565b80151581146116d257600080fd5b60008060408385031215611d2d57600080fd5b8235611cfe81611d0c565b6020808252825182820181905260009190848201906040850190845b81811015611d795783516001600160a01b031683529284019291840191600101611d54565b50909695505050505050565b634e487b7160e01b600052601160045260246000fd5b600082611db857634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561081d5761081d611d85565b8082018082111561081d5761081d611d85565b600060208284031215611df557600080fd5b5051919050565b808202811582820484141761081d5761081d611d85565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611e3b57600080fd5b8151611c5f81611d0c565b600060018201611e5857611e58611d85565b506001019056fe73e573f9566d61418a34d5de3ff49360f9c51fec37f7486551670290f6285daba2646970667358221220b1bf9760021a10da980aff1206d4bfb65fde9a34f48c94c92027a15f153c217764736f6c63430008140033",
1490
+ "bytecode": "0x60a034620001c157601f620023bc38819003918201601f19168301916001600160401b03831184841017620001c6578084926040948552833981010312620001c1576200005a60206200005283620001dc565b9201620001dc565b6001600160a01b03818116908115620001a857600080546001600160a01b0319811684178255604051919591939083167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08780a3600180556631c597113163336008556726e25e056e95802d6009556005600a556046600b55169081158015620001a0575b620001915750608052671393074ab8be40fc8060075543600655600d556201517f1942014281116200017d57620001399250600e5562015180600f556200012681620001f1565b50620001328162000272565b5062000315565b50604051611fe89081620003b4823960805181818161048c015281816105fa015281816108390152818161094701528181610f9f01528181611a280152611d400152f35b634e487b7160e01b83526011600452602483fd5b63d92e233d60e01b8152600490fd5b5083620000df565b604051631e4fbdf760e01b815260006004820152602490fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b0382168203620001c157565b6001600160a01b031660008181527f3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff602052604081205490919060ff166200026e5781805260036020526040822081835260205260408220600160ff1982541617905533916000805160206200239c8339815191528180a4600190565b5090565b6001600160a01b031660008181527f30adeb818ef77f204f5a603c30fa5332397b6e28fb3b7f9d937ae6a6914716de60205260408120549091907f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9060ff16620003105780835260036020526040832082845260205260408320600160ff198254161790556000805160206200239c833981519152339380a4600190565b505090565b6001600160a01b031660008181527f705976d2a2c155a0b54ca0c2b7cabc2010840e9a89b81adebc8b7b790b76d29560205260408120549091907f73e573f9566d61418a34d5de3ff49360f9c51fec37f7486551670290f6285dab9060ff16620003105780835260036020526040832082845260205260408320600160ff198254161790556000805160206200239c833981519152339380a460019056fe608060409080825260048036101561001657600080fd5b600091823560e01c90816301ffc9a7146115f0575080630342cd21146115d1578063048c661d146115a85780630ba84cd2146115315780630bfc1f75146114f65780630f648bca14611485578063113aa8b1146113ed578063142fc582146113ce5780632445c937146113ab578063248a9ca31461137f57806327d8c1bb1461059d5780632f2ff15d14611356578063313a7a711461128c57806332cb6b0c1461126657806336568abe146112205780633b45911a146111a05780633eaf5d9f1461115a57806347e63380146111315780634dbac7331461110c5780634dfbe6f114611087578063575014fa146110685780635794f9d414610f755780635b39685114610ef75780635c975abb14610ed35780636822b8bb14610e625780636bb987fe14610e455780636eaefec814610d7d578063715018a614610d35578063732cc0d614610c7057806386ae8bac14610bfa5780638c3aeb0814610bff5780638c5f187a14610bfa5780638d4564e914610bdb5780638da5cb5b14610bb35780638e5e11cb14610b9457806391d1485414610b4d57806396afc450146108be57806396c82e5714610b2e57806398d721e014610a895780639a7b5f1114610a275780639ba9e5c4146108dd578063a217fddf14610a0c578063a218141b146109ed578063a42dce801461090b578063a59a9973146108e2578063bad49311146108dd578063c0a77da9146108be578063c4e41b2214610812578063cb6741ed146107f3578063cdafa649146107d4578063d547741f14610795578063d9dbdd0f14610750578063dc2db84d146106d2578063de6267e614610629578063e40963f2146105e5578063e63ab1e9146105bc578063eaa18f271461059d578063efd12fc814610542578063eff8143514610460578063f2fde38b146103e45763f518f026146102c357600080fd5b346103e057826003193601126103e0576102db611644565b602435916102e76116fa565b6001600160a01b0382169081156103d257818552601260205260ff60018787200154166103c45750846103be9160027f3cdf4dd043c8cee1d98e28e63fc6f94e550d53e4a116340120f1c2c3cb0698649697519161034483611992565b868352602083016001815284840182815260608501928b84528b526012602052858b209451855560018501915115159060ff835491610100600160a81b03905160081b1692169060018060a81b03191617179055519101556103a583611eb5565b6103b184601054611a06565b6010555192839283611c41565b0390a180f35b8551630188c99160e11b8152fd5b855163d92e233d60e01b8152fd5b5080fd5b5082903461045c57602036600319011261045c57610400611644565b906104096118c9565b6001600160a01b039182169283156104465750506000548260018060a01b031982161760005516600080516020611f73833981519152600080a380f35b51631e4fbdf760e01b8152908101849052602490fd5b8280fd5b5082903461045c57602036600319011261045c5780359061047f6116fa565b6103e882116105345783907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b1561045c578360248492838851958694859363eff8143560e01b85528401525af1801561052a57610516575b50506020600080516020611f1383398151915291600b84516a6275726e5461785261746560a81b8152209351908152a280f35b61051f90611969565b61045c5782846104e3565b84513d84823e3d90fd5b8251637122fedf60e11b8152fd5b8284346103e057602090600080516020611f9383398151915261056436611670565b93909261056f611762565b6105776118f5565b600160ff19600254161760025551338152a1610591575080f35b61059a90611913565b80f35b8284346103e057816003193601126103e057602090600c549051908152f35b8284346103e057816003193601126103e05760209051600080516020611f538339815191528152f35b8284346103e057816003193601126103e057517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b50823461045c57602036600319011261045c57610644611644565b61064c6116fa565b6001600160a01b031680845260126020528184206001015490929060ff16156106c45750816020917fd6cd6cc69e93b15025325731d2f2d821600523b00356acbc3704682e12c44e3b9385526012835284600282822082815582600182015501556106b9856010546119d0565b60105551908152a180f35b90516302721e1f60e61b8152fd5b5082903461045c57602036600319011261045c578035906106f16116fa565b81158015610746575b6107385750907f1fb3715671b01e7683667e5567b072e0309d5d13df0ef9f6446f0006c47c1c7391600a549080600a5582519182526020820152a180f35b82516329adebad60e21b8152fd5b50606482116106fa565b5082903461045c57602036600319011261045c573591601154831015610792575061077c6020926116c9565b905491519160018060a01b039160031b1c168152f35b80fd5b50823461045c578060031936011261045c576107d091356107cb60016107b961165a565b938387526003602052862001546117ac565b611852565b5080f35b8284346103e057816003193601126103e057602090600e549051908152f35b8284346103e057816003193601126103e057602090600a549051908152f35b5091346103e057816003193601126103e05780516318160ddd60e01b8152926020908490817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9182156108b3579161087a575b6020925051908152f35b90506020823d82116108ab575b81610894602093836119ad565b810103126108a6576020915190610870565b600080fd5b3d9150610887565b9051903d90823e3d90fd5b8284346103e057816003193601126103e0576020906007549051908152f35b6116ad565b8284346103e057816003193601126103e05760055490516001600160a01b039091168152602090f35b5082903461045c57602036600319011261045c57610927611644565b906109306116fa565b6001600160a01b039182169182156109de579084917f00000000000000000000000000000000000000000000000000000000000000001690813b1561045c57836024849283885195869485936301485b9d60e71b85528401525af1801561052a576109ca575b50506020600080516020611f1383398151915291600c84516b3332b2a1b7b63632b1ba37b960a11b8152209351908152a280f35b6109d390611969565b61045c578284610996565b5082516308b522ab60e11b8152fd5b8284346103e057816003193601126103e0576020906006549051908152f35b8284346103e057816003193601126103e05751908152602090f35b8284346103e05760203660031901126103e0576080916001600160a01b039190819083610a52611644565b168152601260205220908154926002600184015493015492825194855260ff81161515602086015260081c16908301526060820152f35b5082903461045c57602036600319011261045c57610aa5611644565b610aad6116fa565b6001600160a01b0316908115610b205780546001600160a01b0319168217905581516c1cdd18589a5b1a5d1e541bdbdb609a1b905290519081527fbac5a2908c8e68865491ec2c343760aa08acd41de7cbee9b8258d05c5b8a30d990600080516020611f1383398151915290602090a280f35b825163d92e233d60e01b8152fd5b8284346103e057816003193601126103e0576020906010549051908152f35b5082903461045c578160031936011261045c5781602093610b6c61165a565b9235815260038552209060018060a01b0316600052825260ff81600020541690519015158152f35b8284346103e057816003193601126103e0576020906008549051908152f35b8284346103e057816003193601126103e057905490516001600160a01b039091168152602090f35b8284346103e057816003193601126103e057602090600b549051908152f35b61168f565b5082903461045c57602036600319011261045c57803590610c1e6116fa565b600854821115610c625750907fc75dfdf293290d7c0b82cd4bbd3e59891026c72807e6a904d60b099fdf76d3a691600954908060095582519182526020820152a180f35b825163acabfa6160e01b8152fd5b5050346107925780600319360112610792578151601180548083529083526020939284830192909183907f31ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c6890845b818110610d185750505081610cd49103826119ad565b83519485948186019282875251809352850193925b828110610cf857505050500390f35b83516001600160a01b031685528695509381019392810192600101610ce9565b82546001600160a01b031684529288019260019283019201610cbe565b8234610792578060031936011261079257610d4e6118c9565b600080546001600160a01b0319811682556001600160a01b0316600080516020611f738339815191528280a380f35b5082903461045c57610d8e36611670565b91600080526003602052836000203360005260205260ff84600020541615610e27575083600755610dbd6118f5565b600160ff196002541617600255600080516020611f9383398151915260208451338152a1610e18575b5060065490519081527f077382e0341a6d8666d1f8ed15b8c933a01f5c1a3e6c5229e2db8c5dc1c06ae160203392a280f35b610e2190611913565b82610de6565b60449084519063e2517d3f60e01b8252339082015260006024820152fd5b8284346103e057816003193601126103e05760209051611be28152f35b5082903461045c57610e7336611670565b929091610e7e611762565b6002549060ff821615610ec5575060ff1916600255513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a1610591575080f35b8251638dfc202b60e01b8152fd5b8284346103e057816003193601126103e05760209060ff6002541690519015158152f35b5082903461045c57602036600319011261045c57803590610f166116fa565b81158015610f6b575b610f5d5750907fee018a4b32d34638feed5025ed7c19ded938c601784251ee13fd898854f0d4b991600b549080600b5582519182526020820152a180f35b8251632fb3045560e21b8152fd5b5060648211610f1f565b5082903461045c57602036600319011261045c57803590610f946116fa565b6103e8821161105a577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316908490823b156103e0576024849183875195869485936315e53e7560e21b85528401525af1801561104d57611029575b506020600080516020611f1383398151915291600b84516a737761705461785261746560a81b8152209351908152a280f35b600080516020611f138339815191529193611045602092611969565b939150610ff7565b50505051903d90823e3d90fd5b82516353d892d160e01b8152fd5b8284346103e057816003193601126103e057602090600f549051908152f35b5082903461045c57602036600319011261045c578035906110a66116fa565b811580156110fb575b6110ed5750907fd0b2c4b0d8a73885e6af967e0873f2b6964d56f61cf06fcf57145162b153746591600d549080600d5582519182526020820152a180f35b82516305f840af60e31b8152fd5b506726e25e056e95802d82116110af565b8284346103e057816003193601126103e05760209051690221c991517328d000008152f35b8284346103e057816003193601126103e05760209051600080516020611f338339815191528152f35b50823461045c578260031936011261045c57600260015414611193578260026001556111846118f5565b61118c611a13565b6001805580f35b51633ee5aeb560e01b8152fd5b5082903461045c57602036600319011261045c578035906111bf6116fa565b81158015611214575b6112065750907f44bdf4c27b08858bf057592811f06b65ae5019592d2491f1f02e332ded4db2a091600f549080600f5582519182526020820152a180f35b8251631e0ea1f760e01b8152fd5b506201518082116111c8565b5091346103e057806003193601126103e05761123a61165a565b90336001600160a01b0383160361125757506107d0919235611852565b5163334bd91960e11b81528390fd5b8284346103e057816003193601126103e057602090516a115eec47f6cf7e350000008152f35b50823461045c578060031936011261045c576112a6611644565b90602435916112b36116fa565b6001600160a01b038116938415610b20575091602091817ffd3821d09d5bb7849ca0472ac9fa1c4d37c85fb9b2f68f97e66419e2aaad21fa948688526012855282882090600182019060ff82541660001461132e5750506113218261131c6010548454906119d0565b611a06565b6010555b5551908152a280f35b61133790611eb5565b600160ff1982541617905561134e82601054611a06565b601055611325565b50823461045c578060031936011261045c576107d0913561137a60016107b961165a565b6117d2565b5082903461045c57602036600319011261045c5781602093600192358152600385522001549051908152f35b8284346103e057816003193601126103e057602090516726e25e056e95802d8152f35b8284346103e057816003193601126103e0576020906009549051908152f35b5082903461045c57602036600319011261045c57611409611644565b6114116116fa565b6001600160a01b0316908115610b205750600580546001600160a01b0319168217905581516a1b195b991a5b99d41bdbdb60aa1b905290519081527f03f05a55cb08789e5817d015569b10c3bb5472640159aee4ba73945ed003a7d790600080516020611f1383398151915290602090a280f35b5082903461045c57602036600319011261045c578035906114a46116fa565b6009548210156114e85750907f8359ab540da756ff7366c37f8853d542ab5fd94e865744e65be20ae91b02af7d91600854908060085582519182526020820152a180f35b8251638052912360e01b8152fd5b8284346103e057816003193601126103e057602090517f2ba088aeac4c69066badb5456997747974789cf8224c06112a8fa3d88cb809298152f35b5082903461045c57602036600319011261045c578035906115506116fa565b81158015611597575b6110ed5750907f144d30c57e277deb14c5d686b95cf61cfea257d9d551cef4288b2f7db418f87a91600754908060075582519182526020820152a180f35b506726e25e056e95802d8211611559565b5082903461045c578260031936011261045c575490516001600160a01b03909116815260209150f35b8284346103e057816003193601126103e057602090600d549051908152f35b9190503461045c57602036600319011261045c573563ffffffff60e01b811680910361045c5760209250637965db0b60e01b8114908115611633575b5015158152f35b6301ffc9a760e01b1490508361162c565b600435906001600160a01b03821682036108a657565b602435906001600160a01b03821682036108a657565b60409060031901126108a65760043580151581036108a6579060243590565b346108a65760003660031901126108a6576020604051620151808152f35b346108a65760003660031901126108a657602060405160648152f35b6011548110156116e457601160005260206000200190600090565b634e487b7160e01b600052603260045260246000fd5b3360009081527f705976d2a2c155a0b54ca0c2b7cabc2010840e9a89b81adebc8b7b790b76d2956020526040902054600080516020611f338339815191529060ff16156117445750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b3360009081527f30adeb818ef77f204f5a603c30fa5332397b6e28fb3b7f9d937ae6a6914716de6020526040902054600080516020611f538339815191529060ff16156117445750565b80600052600360205260406000203360005260205260ff60406000205416156117445750565b906000918083526003602052604083209160018060a01b03169182845260205260ff6040842054161560001461184d5780835260036020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b906000918083526003602052604083209160018060a01b03169182845260205260ff60408420541660001461184d578083526003602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b6000546001600160a01b031633036118dd57565b60405163118cdaa760e01b8152336004820152602490fd5b60ff6002541661190157565b60405163d93c066560e01b8152600490fd5b43811161195757806119405750600080516020611ef38339815191526020435b80600655604051908152a1565b6020600080516020611ef383398151915291611933565b604051631391e11b60e21b8152600490fd5b6001600160401b03811161197c57604052565b634e487b7160e01b600052604160045260246000fd5b608081019081106001600160401b0382111761197c57604052565b601f909101601f19168101906001600160401b0382119082101761197c57604052565b919082039182116119dd57565b634e487b7160e01b600052601160045260246000fd5b818102929181159184041417156119dd57565b919082018092116119dd57565b604080516318160ddd60e01b808252602092917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316918482600481865afa918215611bc157600092611c12575b506a115eec47f6cf7e3500000080921015611c0b57611a89600654436119d0565b80611a97575b505050505050565b611aa3906007546119f3565b9484518281528181600481885afa8015611c0057878591600090611bcc575b611acd929350611a06565b11611b5f575b50505082611ae4575b808080611a8f565b611af083600c54611a06565b600c5543600655803b156108a65781516340c10f1960e01b8152926000918491829084908290611b24903060048401611c41565b03925af1908115611b555750611b46575b50611b3e611c5c565b388080611adc565b611b4f90611969565b38611b35565b513d6000823e3d90fd5b909192945083519182528082600481885afa908115611bc157600091611b95575b50905081039081116119dd5791388080611ad3565b82813d8311611bba575b611ba981836119ad565b810103126107925750518038611b80565b503d611b9f565b84513d6000823e3d90fd5b9150508282813d8311611bf9575b611be481836119ad565b81010312610792575051839081908890611ac2565b503d611bda565b86513d6000823e3d90fd5b5050505050565b90918582813d8311611c3a575b611c2981836119ad565b810103126107925750519038611a68565b503d611c1f565b6001600160a01b039091168152602081019190915260400190565b6010548015611eb257600c5404908115611eae579060009182600c55825b601154841015611ea857611c8d846116c9565b90546001600160a01b0360039290921b1c81168252601260209081526040808420815190979390929190611cc084611992565b885480855260018a01549960ff8b16151585870152828487019b60081c168b526002015494606001948552611cf590896119f3565b845190611d0191611a06565b9889855289611d3d575b505050505090919293506000198114611d2957600101929190611c7a565b634e487b7160e01b82526011600452602482fd5b817f000000000000000000000000000000000000000000000000000000000000000016998785611d898d8686511694885194858094819363095ea7b360e01b83526004998a8401611c41565b03925af18015611e9e57611e63575b50828251169a8651918c3b15611e5f5791899a9b9c8a999a9283611dd0958951968795869485936311f9fbc960e21b85528401611c41565b03925af19081611e50575b50611e1d577fde8579262fcb2d1163177c317c51de94ee1f7f5475e2ac16298614fe5280972b949550511693519051908152a25b908392913880808080611d0b565b518451925192835216917fdf29796aad820e4bb192f3a8d631b76519bcd2cbe77cc85af20e9df53cece08691a252611e0f565b611e5990611969565b38611ddb565b8980fd5b8581813d8311611e97575b611e7881836119ad565b81010312611e93575180151503611e8f5738611d98565b8780fd5b8880fd5b503d611e6e565b85513d8b823e3d90fd5b50915050565b9050565b50565b601154600160401b81101561197c57806001611ed492016011556116c9565b819291549060031b9160018060a01b03809116831b921b191617905556fe233aad4436659905d00f94d1d3a39c2126a5088956fc9e02d714ce315d0de7f13a64504f0bc0c335e2aecb78638a257e0351a3fe0370861fd54ee4190b92093373e573f9566d61418a34d5de3ff49360f9c51fec37f7486551670290f6285dab65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e062e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258a2646970667358221220141cd460b5145431e3f21756ad9d6293943214ddcb1bd3a0c8b1b28cf8011bd064736f6c634300081400332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d",
1491
+ "deployedBytecode": "0x608060409080825260048036101561001657600080fd5b600091823560e01c90816301ffc9a7146115f0575080630342cd21146115d1578063048c661d146115a85780630ba84cd2146115315780630bfc1f75146114f65780630f648bca14611485578063113aa8b1146113ed578063142fc582146113ce5780632445c937146113ab578063248a9ca31461137f57806327d8c1bb1461059d5780632f2ff15d14611356578063313a7a711461128c57806332cb6b0c1461126657806336568abe146112205780633b45911a146111a05780633eaf5d9f1461115a57806347e63380146111315780634dbac7331461110c5780634dfbe6f114611087578063575014fa146110685780635794f9d414610f755780635b39685114610ef75780635c975abb14610ed35780636822b8bb14610e625780636bb987fe14610e455780636eaefec814610d7d578063715018a614610d35578063732cc0d614610c7057806386ae8bac14610bfa5780638c3aeb0814610bff5780638c5f187a14610bfa5780638d4564e914610bdb5780638da5cb5b14610bb35780638e5e11cb14610b9457806391d1485414610b4d57806396afc450146108be57806396c82e5714610b2e57806398d721e014610a895780639a7b5f1114610a275780639ba9e5c4146108dd578063a217fddf14610a0c578063a218141b146109ed578063a42dce801461090b578063a59a9973146108e2578063bad49311146108dd578063c0a77da9146108be578063c4e41b2214610812578063cb6741ed146107f3578063cdafa649146107d4578063d547741f14610795578063d9dbdd0f14610750578063dc2db84d146106d2578063de6267e614610629578063e40963f2146105e5578063e63ab1e9146105bc578063eaa18f271461059d578063efd12fc814610542578063eff8143514610460578063f2fde38b146103e45763f518f026146102c357600080fd5b346103e057826003193601126103e0576102db611644565b602435916102e76116fa565b6001600160a01b0382169081156103d257818552601260205260ff60018787200154166103c45750846103be9160027f3cdf4dd043c8cee1d98e28e63fc6f94e550d53e4a116340120f1c2c3cb0698649697519161034483611992565b868352602083016001815284840182815260608501928b84528b526012602052858b209451855560018501915115159060ff835491610100600160a81b03905160081b1692169060018060a81b03191617179055519101556103a583611eb5565b6103b184601054611a06565b6010555192839283611c41565b0390a180f35b8551630188c99160e11b8152fd5b855163d92e233d60e01b8152fd5b5080fd5b5082903461045c57602036600319011261045c57610400611644565b906104096118c9565b6001600160a01b039182169283156104465750506000548260018060a01b031982161760005516600080516020611f73833981519152600080a380f35b51631e4fbdf760e01b8152908101849052602490fd5b8280fd5b5082903461045c57602036600319011261045c5780359061047f6116fa565b6103e882116105345783907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b1561045c578360248492838851958694859363eff8143560e01b85528401525af1801561052a57610516575b50506020600080516020611f1383398151915291600b84516a6275726e5461785261746560a81b8152209351908152a280f35b61051f90611969565b61045c5782846104e3565b84513d84823e3d90fd5b8251637122fedf60e11b8152fd5b8284346103e057602090600080516020611f9383398151915261056436611670565b93909261056f611762565b6105776118f5565b600160ff19600254161760025551338152a1610591575080f35b61059a90611913565b80f35b8284346103e057816003193601126103e057602090600c549051908152f35b8284346103e057816003193601126103e05760209051600080516020611f538339815191528152f35b8284346103e057816003193601126103e057517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b50823461045c57602036600319011261045c57610644611644565b61064c6116fa565b6001600160a01b031680845260126020528184206001015490929060ff16156106c45750816020917fd6cd6cc69e93b15025325731d2f2d821600523b00356acbc3704682e12c44e3b9385526012835284600282822082815582600182015501556106b9856010546119d0565b60105551908152a180f35b90516302721e1f60e61b8152fd5b5082903461045c57602036600319011261045c578035906106f16116fa565b81158015610746575b6107385750907f1fb3715671b01e7683667e5567b072e0309d5d13df0ef9f6446f0006c47c1c7391600a549080600a5582519182526020820152a180f35b82516329adebad60e21b8152fd5b50606482116106fa565b5082903461045c57602036600319011261045c573591601154831015610792575061077c6020926116c9565b905491519160018060a01b039160031b1c168152f35b80fd5b50823461045c578060031936011261045c576107d091356107cb60016107b961165a565b938387526003602052862001546117ac565b611852565b5080f35b8284346103e057816003193601126103e057602090600e549051908152f35b8284346103e057816003193601126103e057602090600a549051908152f35b5091346103e057816003193601126103e05780516318160ddd60e01b8152926020908490817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9182156108b3579161087a575b6020925051908152f35b90506020823d82116108ab575b81610894602093836119ad565b810103126108a6576020915190610870565b600080fd5b3d9150610887565b9051903d90823e3d90fd5b8284346103e057816003193601126103e0576020906007549051908152f35b6116ad565b8284346103e057816003193601126103e05760055490516001600160a01b039091168152602090f35b5082903461045c57602036600319011261045c57610927611644565b906109306116fa565b6001600160a01b039182169182156109de579084917f00000000000000000000000000000000000000000000000000000000000000001690813b1561045c57836024849283885195869485936301485b9d60e71b85528401525af1801561052a576109ca575b50506020600080516020611f1383398151915291600c84516b3332b2a1b7b63632b1ba37b960a11b8152209351908152a280f35b6109d390611969565b61045c578284610996565b5082516308b522ab60e11b8152fd5b8284346103e057816003193601126103e0576020906006549051908152f35b8284346103e057816003193601126103e05751908152602090f35b8284346103e05760203660031901126103e0576080916001600160a01b039190819083610a52611644565b168152601260205220908154926002600184015493015492825194855260ff81161515602086015260081c16908301526060820152f35b5082903461045c57602036600319011261045c57610aa5611644565b610aad6116fa565b6001600160a01b0316908115610b205780546001600160a01b0319168217905581516c1cdd18589a5b1a5d1e541bdbdb609a1b905290519081527fbac5a2908c8e68865491ec2c343760aa08acd41de7cbee9b8258d05c5b8a30d990600080516020611f1383398151915290602090a280f35b825163d92e233d60e01b8152fd5b8284346103e057816003193601126103e0576020906010549051908152f35b5082903461045c578160031936011261045c5781602093610b6c61165a565b9235815260038552209060018060a01b0316600052825260ff81600020541690519015158152f35b8284346103e057816003193601126103e0576020906008549051908152f35b8284346103e057816003193601126103e057905490516001600160a01b039091168152602090f35b8284346103e057816003193601126103e057602090600b549051908152f35b61168f565b5082903461045c57602036600319011261045c57803590610c1e6116fa565b600854821115610c625750907fc75dfdf293290d7c0b82cd4bbd3e59891026c72807e6a904d60b099fdf76d3a691600954908060095582519182526020820152a180f35b825163acabfa6160e01b8152fd5b5050346107925780600319360112610792578151601180548083529083526020939284830192909183907f31ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c6890845b818110610d185750505081610cd49103826119ad565b83519485948186019282875251809352850193925b828110610cf857505050500390f35b83516001600160a01b031685528695509381019392810192600101610ce9565b82546001600160a01b031684529288019260019283019201610cbe565b8234610792578060031936011261079257610d4e6118c9565b600080546001600160a01b0319811682556001600160a01b0316600080516020611f738339815191528280a380f35b5082903461045c57610d8e36611670565b91600080526003602052836000203360005260205260ff84600020541615610e27575083600755610dbd6118f5565b600160ff196002541617600255600080516020611f9383398151915260208451338152a1610e18575b5060065490519081527f077382e0341a6d8666d1f8ed15b8c933a01f5c1a3e6c5229e2db8c5dc1c06ae160203392a280f35b610e2190611913565b82610de6565b60449084519063e2517d3f60e01b8252339082015260006024820152fd5b8284346103e057816003193601126103e05760209051611be28152f35b5082903461045c57610e7336611670565b929091610e7e611762565b6002549060ff821615610ec5575060ff1916600255513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a1610591575080f35b8251638dfc202b60e01b8152fd5b8284346103e057816003193601126103e05760209060ff6002541690519015158152f35b5082903461045c57602036600319011261045c57803590610f166116fa565b81158015610f6b575b610f5d5750907fee018a4b32d34638feed5025ed7c19ded938c601784251ee13fd898854f0d4b991600b549080600b5582519182526020820152a180f35b8251632fb3045560e21b8152fd5b5060648211610f1f565b5082903461045c57602036600319011261045c57803590610f946116fa565b6103e8821161105a577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316908490823b156103e0576024849183875195869485936315e53e7560e21b85528401525af1801561104d57611029575b506020600080516020611f1383398151915291600b84516a737761705461785261746560a81b8152209351908152a280f35b600080516020611f138339815191529193611045602092611969565b939150610ff7565b50505051903d90823e3d90fd5b82516353d892d160e01b8152fd5b8284346103e057816003193601126103e057602090600f549051908152f35b5082903461045c57602036600319011261045c578035906110a66116fa565b811580156110fb575b6110ed5750907fd0b2c4b0d8a73885e6af967e0873f2b6964d56f61cf06fcf57145162b153746591600d549080600d5582519182526020820152a180f35b82516305f840af60e31b8152fd5b506726e25e056e95802d82116110af565b8284346103e057816003193601126103e05760209051690221c991517328d000008152f35b8284346103e057816003193601126103e05760209051600080516020611f338339815191528152f35b50823461045c578260031936011261045c57600260015414611193578260026001556111846118f5565b61118c611a13565b6001805580f35b51633ee5aeb560e01b8152fd5b5082903461045c57602036600319011261045c578035906111bf6116fa565b81158015611214575b6112065750907f44bdf4c27b08858bf057592811f06b65ae5019592d2491f1f02e332ded4db2a091600f549080600f5582519182526020820152a180f35b8251631e0ea1f760e01b8152fd5b506201518082116111c8565b5091346103e057806003193601126103e05761123a61165a565b90336001600160a01b0383160361125757506107d0919235611852565b5163334bd91960e11b81528390fd5b8284346103e057816003193601126103e057602090516a115eec47f6cf7e350000008152f35b50823461045c578060031936011261045c576112a6611644565b90602435916112b36116fa565b6001600160a01b038116938415610b20575091602091817ffd3821d09d5bb7849ca0472ac9fa1c4d37c85fb9b2f68f97e66419e2aaad21fa948688526012855282882090600182019060ff82541660001461132e5750506113218261131c6010548454906119d0565b611a06565b6010555b5551908152a280f35b61133790611eb5565b600160ff1982541617905561134e82601054611a06565b601055611325565b50823461045c578060031936011261045c576107d0913561137a60016107b961165a565b6117d2565b5082903461045c57602036600319011261045c5781602093600192358152600385522001549051908152f35b8284346103e057816003193601126103e057602090516726e25e056e95802d8152f35b8284346103e057816003193601126103e0576020906009549051908152f35b5082903461045c57602036600319011261045c57611409611644565b6114116116fa565b6001600160a01b0316908115610b205750600580546001600160a01b0319168217905581516a1b195b991a5b99d41bdbdb60aa1b905290519081527f03f05a55cb08789e5817d015569b10c3bb5472640159aee4ba73945ed003a7d790600080516020611f1383398151915290602090a280f35b5082903461045c57602036600319011261045c578035906114a46116fa565b6009548210156114e85750907f8359ab540da756ff7366c37f8853d542ab5fd94e865744e65be20ae91b02af7d91600854908060085582519182526020820152a180f35b8251638052912360e01b8152fd5b8284346103e057816003193601126103e057602090517f2ba088aeac4c69066badb5456997747974789cf8224c06112a8fa3d88cb809298152f35b5082903461045c57602036600319011261045c578035906115506116fa565b81158015611597575b6110ed5750907f144d30c57e277deb14c5d686b95cf61cfea257d9d551cef4288b2f7db418f87a91600754908060075582519182526020820152a180f35b506726e25e056e95802d8211611559565b5082903461045c578260031936011261045c575490516001600160a01b03909116815260209150f35b8284346103e057816003193601126103e057602090600d549051908152f35b9190503461045c57602036600319011261045c573563ffffffff60e01b811680910361045c5760209250637965db0b60e01b8114908115611633575b5015158152f35b6301ffc9a760e01b1490508361162c565b600435906001600160a01b03821682036108a657565b602435906001600160a01b03821682036108a657565b60409060031901126108a65760043580151581036108a6579060243590565b346108a65760003660031901126108a6576020604051620151808152f35b346108a65760003660031901126108a657602060405160648152f35b6011548110156116e457601160005260206000200190600090565b634e487b7160e01b600052603260045260246000fd5b3360009081527f705976d2a2c155a0b54ca0c2b7cabc2010840e9a89b81adebc8b7b790b76d2956020526040902054600080516020611f338339815191529060ff16156117445750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b3360009081527f30adeb818ef77f204f5a603c30fa5332397b6e28fb3b7f9d937ae6a6914716de6020526040902054600080516020611f538339815191529060ff16156117445750565b80600052600360205260406000203360005260205260ff60406000205416156117445750565b906000918083526003602052604083209160018060a01b03169182845260205260ff6040842054161560001461184d5780835260036020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b906000918083526003602052604083209160018060a01b03169182845260205260ff60408420541660001461184d578083526003602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b6000546001600160a01b031633036118dd57565b60405163118cdaa760e01b8152336004820152602490fd5b60ff6002541661190157565b60405163d93c066560e01b8152600490fd5b43811161195757806119405750600080516020611ef38339815191526020435b80600655604051908152a1565b6020600080516020611ef383398151915291611933565b604051631391e11b60e21b8152600490fd5b6001600160401b03811161197c57604052565b634e487b7160e01b600052604160045260246000fd5b608081019081106001600160401b0382111761197c57604052565b601f909101601f19168101906001600160401b0382119082101761197c57604052565b919082039182116119dd57565b634e487b7160e01b600052601160045260246000fd5b818102929181159184041417156119dd57565b919082018092116119dd57565b604080516318160ddd60e01b808252602092917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316918482600481865afa918215611bc157600092611c12575b506a115eec47f6cf7e3500000080921015611c0b57611a89600654436119d0565b80611a97575b505050505050565b611aa3906007546119f3565b9484518281528181600481885afa8015611c0057878591600090611bcc575b611acd929350611a06565b11611b5f575b50505082611ae4575b808080611a8f565b611af083600c54611a06565b600c5543600655803b156108a65781516340c10f1960e01b8152926000918491829084908290611b24903060048401611c41565b03925af1908115611b555750611b46575b50611b3e611c5c565b388080611adc565b611b4f90611969565b38611b35565b513d6000823e3d90fd5b909192945083519182528082600481885afa908115611bc157600091611b95575b50905081039081116119dd5791388080611ad3565b82813d8311611bba575b611ba981836119ad565b810103126107925750518038611b80565b503d611b9f565b84513d6000823e3d90fd5b9150508282813d8311611bf9575b611be481836119ad565b81010312610792575051839081908890611ac2565b503d611bda565b86513d6000823e3d90fd5b5050505050565b90918582813d8311611c3a575b611c2981836119ad565b810103126107925750519038611a68565b503d611c1f565b6001600160a01b039091168152602081019190915260400190565b6010548015611eb257600c5404908115611eae579060009182600c55825b601154841015611ea857611c8d846116c9565b90546001600160a01b0360039290921b1c81168252601260209081526040808420815190979390929190611cc084611992565b885480855260018a01549960ff8b16151585870152828487019b60081c168b526002015494606001948552611cf590896119f3565b845190611d0191611a06565b9889855289611d3d575b505050505090919293506000198114611d2957600101929190611c7a565b634e487b7160e01b82526011600452602482fd5b817f000000000000000000000000000000000000000000000000000000000000000016998785611d898d8686511694885194858094819363095ea7b360e01b83526004998a8401611c41565b03925af18015611e9e57611e63575b50828251169a8651918c3b15611e5f5791899a9b9c8a999a9283611dd0958951968795869485936311f9fbc960e21b85528401611c41565b03925af19081611e50575b50611e1d577fde8579262fcb2d1163177c317c51de94ee1f7f5475e2ac16298614fe5280972b949550511693519051908152a25b908392913880808080611d0b565b518451925192835216917fdf29796aad820e4bb192f3a8d631b76519bcd2cbe77cc85af20e9df53cece08691a252611e0f565b611e5990611969565b38611ddb565b8980fd5b8581813d8311611e97575b611e7881836119ad565b81010312611e93575180151503611e8f5738611d98565b8780fd5b8880fd5b503d611e6e565b85513d8b823e3d90fd5b50915050565b9050565b50565b601154600160401b81101561197c57806001611ed492016011556116c9565b819291549060031b9160018060a01b03809116831b921b191617905556fe233aad4436659905d00f94d1d3a39c2126a5088956fc9e02d714ce315d0de7f13a64504f0bc0c335e2aecb78638a257e0351a3fe0370861fd54ee4190b92093373e573f9566d61418a34d5de3ff49360f9c51fec37f7486551670290f6285dab65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e062e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258a2646970667358221220141cd460b5145431e3f21756ad9d6293943214ddcb1bd3a0c8b1b28cf8011bd064736f6c63430008140033",
1441
1492
  "linkReferences": {},
1442
1493
  "deployedLinkReferences": {}
1443
1494
  }
@@ -6,9 +6,9 @@
6
6
  {
7
7
  "inputs": [
8
8
  {
9
- "internalType": "uint64",
9
+ "internalType": "uint256",
10
10
  "name": "subscriptionId",
11
- "type": "uint64"
11
+ "type": "uint256"
12
12
  },
13
13
  {
14
14
  "internalType": "address",
@@ -37,7 +37,7 @@
37
37
  },
38
38
  {
39
39
  "internalType": "address",
40
- "name": "_initialOwner",
40
+ "name": "_token",
41
41
  "type": "address"
42
42
  }
43
43
  ],
@@ -60,6 +60,27 @@
60
60
  "name": "OnlyCoordinatorCanFulfill",
61
61
  "type": "error"
62
62
  },
63
+ {
64
+ "inputs": [
65
+ {
66
+ "internalType": "address",
67
+ "name": "have",
68
+ "type": "address"
69
+ },
70
+ {
71
+ "internalType": "address",
72
+ "name": "owner",
73
+ "type": "address"
74
+ },
75
+ {
76
+ "internalType": "address",
77
+ "name": "coordinator",
78
+ "type": "address"
79
+ }
80
+ ],
81
+ "name": "OnlyOwnerOrCoordinator",
82
+ "type": "error"
83
+ },
63
84
  {
64
85
  "inputs": [],
65
86
  "name": "RequestNotFound",
@@ -70,6 +91,29 @@
70
91
  "name": "RequestNotFulfilled",
71
92
  "type": "error"
72
93
  },
94
+ {
95
+ "inputs": [],
96
+ "name": "Unauthorized",
97
+ "type": "error"
98
+ },
99
+ {
100
+ "inputs": [],
101
+ "name": "ZeroAddress",
102
+ "type": "error"
103
+ },
104
+ {
105
+ "anonymous": false,
106
+ "inputs": [
107
+ {
108
+ "indexed": false,
109
+ "internalType": "address",
110
+ "name": "vrfCoordinator",
111
+ "type": "address"
112
+ }
113
+ ],
114
+ "name": "CoordinatorSet",
115
+ "type": "event"
116
+ },
73
117
  {
74
118
  "anonymous": false,
75
119
  "inputs": [
@@ -153,6 +197,19 @@
153
197
  "stateMutability": "nonpayable",
154
198
  "type": "function"
155
199
  },
200
+ {
201
+ "inputs": [],
202
+ "name": "getLastFulfillTimestamp",
203
+ "outputs": [
204
+ {
205
+ "internalType": "uint256",
206
+ "name": "",
207
+ "type": "uint256"
208
+ }
209
+ ],
210
+ "stateMutability": "view",
211
+ "type": "function"
212
+ },
156
213
  {
157
214
  "inputs": [],
158
215
  "name": "getRequestStatus",
@@ -258,6 +315,58 @@
258
315
  "stateMutability": "view",
259
316
  "type": "function"
260
317
  },
318
+ {
319
+ "inputs": [],
320
+ "name": "s_vrfCoordinator",
321
+ "outputs": [
322
+ {
323
+ "internalType": "contract IVRFCoordinatorV2Plus",
324
+ "name": "",
325
+ "type": "address"
326
+ }
327
+ ],
328
+ "stateMutability": "view",
329
+ "type": "function"
330
+ },
331
+ {
332
+ "inputs": [
333
+ {
334
+ "internalType": "address",
335
+ "name": "_vrfCoordinator",
336
+ "type": "address"
337
+ }
338
+ ],
339
+ "name": "setCoordinator",
340
+ "outputs": [],
341
+ "stateMutability": "nonpayable",
342
+ "type": "function"
343
+ },
344
+ {
345
+ "inputs": [
346
+ {
347
+ "internalType": "address",
348
+ "name": "_token",
349
+ "type": "address"
350
+ }
351
+ ],
352
+ "name": "setToken",
353
+ "outputs": [],
354
+ "stateMutability": "nonpayable",
355
+ "type": "function"
356
+ },
357
+ {
358
+ "inputs": [],
359
+ "name": "token",
360
+ "outputs": [
361
+ {
362
+ "internalType": "address",
363
+ "name": "",
364
+ "type": "address"
365
+ }
366
+ ],
367
+ "stateMutability": "view",
368
+ "type": "function"
369
+ },
261
370
  {
262
371
  "inputs": [
263
372
  {
@@ -272,8 +381,8 @@
272
381
  "type": "function"
273
382
  }
274
383
  ],
275
- "bytecode": "0x60a0604052600780546001600160501b03191666010003000186a017905534801561002957600080fd5b50604051610bca380380610bca83398101604081905261004891610246565b6001600160a01b038087166080528190819060009082166100b05760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f000000000000000060448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b03848116919091179091558116156100e0576100e08161016d565b5050600480546001600160401b03909916600160a01b026001600160e01b03199099166001600160a01b0390981697909717979097179095556006939093556007805463ffffffff94851666010000000000000263ffffffff60301b1961ffff9094166401000000000265ffffffffffff1990921695909416949094179390931716179055506102dc9050565b336001600160a01b038216036101c55760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c6600000000000000000060448201526064016100a7565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b80516001600160a01b038116811461022d57600080fd5b919050565b805163ffffffff8116811461022d57600080fd5b600080600080600080600060e0888a03121561026157600080fd5b87516001600160401b038116811461027857600080fd5b965061028660208901610216565b95506040880151945061029b60608901610232565b9350608088015161ffff811681146102b257600080fd5b92506102c060a08901610232565b91506102ce60c08901610216565b905092959891949750929550565b6080516108cc6102fe6000396000818161014d015261018f01526108cc6000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a189b4211161005b578063a189b421146100e3578063e0c8628914610110578063f2fde38b14610126578063fc2a88c31461013957600080fd5b80631fe543e31461008d5780637253575d146100a257806379ba5097146100c05780638da5cb5b146100c8575b600080fd5b6100a061009b3660046106cb565b610142565b005b6100aa6101cf565b6040516100b79190610795565b60405180910390f35b6100a0610294565b6000546040516001600160a01b0390911681526020016100b7565b6002546100f99060ff8082169161010090041682565b6040805192151583529015156020830152016100b7565b61011861033e565b6040519081526020016100b7565b6100a06101343660046107ff565b6104bd565b61011860055481565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146101c15760405163073e64fd60e21b81523360048201526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660248201526044015b60405180910390fd5b6101cb82826104d1565b5050565b60408051606080820183526000808352602083015291810191909152600254610100900460ff1661021357604051632589d98f60e11b815260040160405180910390fd5b604080516060810182526002805460ff8082161515845261010090910416151560208084019190915260038054855181840281018401875281815294959394938601939283018282801561028657602002820191906000526020600020905b815481526020019060010190808311610272575b505050505081525050905090565b6001546001600160a01b031633146102e75760405162461bcd60e51b815260206004820152601660248201527526bab9ba10313290383937b837b9b2b21037bbb732b960511b60448201526064016101b8565b60008054336001600160a01b0319808316821784556001805490911690556040516001600160a01b0390921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b6000610348610557565b600480546006546007546040516305d3b1d360e41b815293840191909152600160a01b820467ffffffffffffffff166024840152640100000000810461ffff16604484015263ffffffff808216606485015266010000000000009091041660848301526001600160a01b031690635d3b1d309060a4016020604051808303816000875af11580156103dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610401919061082f565b6040805160608101825260008082526001602080840191825284519283528201808552938301829052825160028054925115156101000261ff00199215159290921661ffff19909316929092171781559051939450909290916104679160039190610655565b505050600581905560075460408051838152660100000000000090920463ffffffff1660208301527fcc58b13ad3eab50626c6a6300b1d139cd6ebb1688a7cced9461c2f7e762665ee910160405180910390a190565b6104c5610557565b6104ce816105ac565b50565b600254610100900460ff166104f957604051632589d98f60e11b815260040160405180910390fd5b6002805460ff191660011790558051610519906003906020840190610655565b507ffe2e2d779dba245964d4e3ef9b994be63856fd568bf7d3ca9e224755cb1bd54d828260405161054b929190610848565b60405180910390a15050565b6000546001600160a01b031633146105aa5760405162461bcd60e51b815260206004820152601660248201527527b7363c9031b0b63630b1363290313c9037bbb732b960511b60448201526064016101b8565b565b336001600160a01b038216036106045760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c6600000000000000000060448201526064016101b8565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b828054828255906000526020600020908101928215610690579160200282015b82811115610690578251825591602001919060010190610675565b5061069c9291506106a0565b5090565b5b8082111561069c57600081556001016106a1565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156106de57600080fd5b8235915060208084013567ffffffffffffffff808211156106fe57600080fd5b818601915086601f83011261071257600080fd5b813581811115610724576107246106b5565b8060051b604051601f19603f83011681018181108582111715610749576107496106b5565b60405291825284820192508381018501918983111561076757600080fd5b938501935b828510156107855784358452938501939285019261076c565b8096505050505050509250929050565b600060208083526080830184511515828501528185015115156040850152604085015160608086015281815180845260a0870191508483019350600092505b808310156107f457835182529284019260019290920191908401906107d4565b509695505050505050565b60006020828403121561081157600080fd5b81356001600160a01b038116811461082857600080fd5b9392505050565b60006020828403121561084157600080fd5b5051919050565b6000604082018483526020604081850152818551808452606086019150828701935060005b818110156108895784518352938301939183019160010161086d565b509097965050505050505056fea2646970667358221220c7342e174553afed0348fe4b0c55e75f0c174e09b2bc43fd80999d42a84486af64736f6c63430008140033",
276
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a189b4211161005b578063a189b421146100e3578063e0c8628914610110578063f2fde38b14610126578063fc2a88c31461013957600080fd5b80631fe543e31461008d5780637253575d146100a257806379ba5097146100c05780638da5cb5b146100c8575b600080fd5b6100a061009b3660046106cb565b610142565b005b6100aa6101cf565b6040516100b79190610795565b60405180910390f35b6100a0610294565b6000546040516001600160a01b0390911681526020016100b7565b6002546100f99060ff8082169161010090041682565b6040805192151583529015156020830152016100b7565b61011861033e565b6040519081526020016100b7565b6100a06101343660046107ff565b6104bd565b61011860055481565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146101c15760405163073e64fd60e21b81523360048201526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660248201526044015b60405180910390fd5b6101cb82826104d1565b5050565b60408051606080820183526000808352602083015291810191909152600254610100900460ff1661021357604051632589d98f60e11b815260040160405180910390fd5b604080516060810182526002805460ff8082161515845261010090910416151560208084019190915260038054855181840281018401875281815294959394938601939283018282801561028657602002820191906000526020600020905b815481526020019060010190808311610272575b505050505081525050905090565b6001546001600160a01b031633146102e75760405162461bcd60e51b815260206004820152601660248201527526bab9ba10313290383937b837b9b2b21037bbb732b960511b60448201526064016101b8565b60008054336001600160a01b0319808316821784556001805490911690556040516001600160a01b0390921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b6000610348610557565b600480546006546007546040516305d3b1d360e41b815293840191909152600160a01b820467ffffffffffffffff166024840152640100000000810461ffff16604484015263ffffffff808216606485015266010000000000009091041660848301526001600160a01b031690635d3b1d309060a4016020604051808303816000875af11580156103dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610401919061082f565b6040805160608101825260008082526001602080840191825284519283528201808552938301829052825160028054925115156101000261ff00199215159290921661ffff19909316929092171781559051939450909290916104679160039190610655565b505050600581905560075460408051838152660100000000000090920463ffffffff1660208301527fcc58b13ad3eab50626c6a6300b1d139cd6ebb1688a7cced9461c2f7e762665ee910160405180910390a190565b6104c5610557565b6104ce816105ac565b50565b600254610100900460ff166104f957604051632589d98f60e11b815260040160405180910390fd5b6002805460ff191660011790558051610519906003906020840190610655565b507ffe2e2d779dba245964d4e3ef9b994be63856fd568bf7d3ca9e224755cb1bd54d828260405161054b929190610848565b60405180910390a15050565b6000546001600160a01b031633146105aa5760405162461bcd60e51b815260206004820152601660248201527527b7363c9031b0b63630b1363290313c9037bbb732b960511b60448201526064016101b8565b565b336001600160a01b038216036106045760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c6600000000000000000060448201526064016101b8565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b828054828255906000526020600020908101928215610690579160200282015b82811115610690578251825591602001919060010190610675565b5061069c9291506106a0565b5090565b5b8082111561069c57600081556001016106a1565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156106de57600080fd5b8235915060208084013567ffffffffffffffff808211156106fe57600080fd5b818601915086601f83011261071257600080fd5b813581811115610724576107246106b5565b8060051b604051601f19603f83011681018181108582111715610749576107496106b5565b60405291825284820192508381018501918983111561076757600080fd5b938501935b828510156107855784358452938501939285019261076c565b8096505050505050509250929050565b600060208083526080830184511515828501528185015115156040850152604085015160608086015281815180845260a0870191508483019350600092505b808310156107f457835182529284019260019290920191908401906107d4565b509695505050505050565b60006020828403121561081157600080fd5b81356001600160a01b038116811461082857600080fd5b9392505050565b60006020828403121561084157600080fd5b5051919050565b6000604082018483526020604081850152818551808452606086019150828701935060005b818110156108895784518352938301939183019160010161086d565b509097965050505050505056fea2646970667358221220c7342e174553afed0348fe4b0c55e75f0c174e09b2bc43fd80999d42a84486af64736f6c63430008140033",
384
+ "bytecode": "0x60803461017c57601f610c0338819003918201601f19168301916001600160401b038311848410176101815780849260e09460405283398101031261017c5780519061004d60208201610197565b60408201519061005f606084016101ab565b9060808401519161ffff8316830361017c5761008960c061008260a088016101ab565b9601610197565b91331561013757600080546001600160a01b031990811633179091556001600160a01b03919091169283156101255769ffffffff0000000000009565ffff000000009463ffffffff936002541617600255600954986005556008556a0100000000000000000000600160f01b039060501b169661ffff60f01b169116179160201b16179160301b161717600955604051610a4690816101bd8239f35b60405163d92e233d60e01b8152600490fd5b60405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f00000000000000006044820152606490fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b038216820361017c57565b519063ffffffff8216820361017c5756fe6080604052600436101561001257600080fd5b60003560e01c8063144fa6d7146108e35780631fe543e3146107b55780632278424a146107975780637253575d1461068957806379ba5097146105e05780638da5cb5b146105b75780638ea98117146104ed5780639eccacf6146104c4578063a189b42114610495578063e0c86289146101ac578063f2fde38b146100fb578063fc0c546a146100ce5763fc2a88c3146100ab57600080fd5b346100c95760003660031901126100c9576020600654604051908152f35b600080fd5b346100c95760003660031901126100c95760095460405160509190911c6001600160a01b03168152602090f35b346100c95760203660031901126100c9576004356001600160a01b03818116918290036100c95761012a61093a565b33821461016d578160018060a01b03196001541617600155600054167fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae1278600080a3005b60405162461bcd60e51b815260206004820152601760248201527621b0b73737ba103a3930b739b332b9103a379039b2b63360491b6044820152606490fd5b346100c95760003660031901126100c9576000546001600160a01b0390811633141580610484575b6104735760025416600854906005549160095490604051916020830183811060018060401b0382111761040657604052600083526040519263125fa26760e31b602085015251151560248401526024835261022e8361098c565b6040519460c08601926001600160401b03841187851017610406579063ffffffff929160a09795946040528552602085015261ffff8160201c166040850152818116606085015260301c16608083015283820152604051928391634d8e1c2f60e11b835260206004840152805160248401526020810151604484015261ffff604082015116606484015263ffffffff606082015116608484015263ffffffff60808201511660a4840152015160c060c48301528051908160e484015260005b82811061045a57505091816000602094826101049183838284010152601f801991011681010301925af190811561044e5760009161041c575b506040516020810191906001600160401b03831181841017610406578260405260008152604051906103578261098c565b6000825260016020830181905260409092018190526003805461ffff191661010017905551926001600160401b03841161040657610394846109ca565b92600460005260206000209360005b8281106103f357602085806006557fcc58b13ad3eab50626c6a6300b1d139cd6ebb1688a7cced9461c2f7e762665ee604063ffffffff60095460301c1681519084825285820152a1604051908152f35b83906020835193019281880155016103a3565b634e487b7160e01b600052604160045260246000fd5b90506020813d602011610446575b81610437602093836109a7565b810103126100c9575181610326565b3d915061042a565b6040513d6000823e3d90fd5b60208282018101516101048884010152869450016102ed565b6040516282b42960e81b8152600490fd5b508060095460501c163314156101d4565b346100c95760003660031901126100c957604060035460ff8251918181161515835260081c1615156020820152f35b346100c95760003660031901126100c9576002546040516001600160a01b039091168152602090f35b346100c95760203660031901126100c9576004356001600160a01b03818116918290036100c95780600054169081331415806105a9575b6105815782801561056f57600280546001600160a01b031916821790556040519081527fd1a6a14209a385a964d036e404cb5cfb71f4000cdb03c9366292430787261be690602090a1005b60405163d92e233d60e01b8152600490fd5b60649250600254166040519163061db9c160e01b835233600484015260248301526044820152fd5b508060025416331415610524565b346100c95760003660031901126100c9576000546040516001600160a01b039091168152602090f35b346100c95760003660031901126100c9576001546001600160a01b03808216330361064b57600080546001600160a01b0319808216339081178455941660015591909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b60405162461bcd60e51b815260206004820152601660248201527526bab9ba10313290383937b837b9b2b21037bbb732b960511b6044820152606490fd5b346100c95760003660031901126100c9576040516106a68161098c565b600081526060604060209260008482015201526003549060ff8260081c16156107855760ff604051926106d88461098c565b16151582528082019060019081835260405180826004549182815201906004600052836000209060005b81811061077257505050816107189103826109a7565b60408501908152604051938285526080850195511515838601525115156040850152519360608085015284518091528160a0850195019160005b82811061075f5785870386f35b8351875295810195928101928401610752565b8254845292850192918601918601610702565b604051632589d98f60e11b8152600490fd5b346100c95760003660031901126100c9576020600754604051908152f35b346100c95760403660031901126100c9576024356001600160401b038082116100c957366023830112156100c95781600401359081116100c95760248201918160051b9060248236920101116100c9576002546001600160a01b0316338190036108c557506003549160ff8360081c1615610785576001809360ff19161760035561083f816109ca565b83926004600052602093846000209060005b8481106108b457505042600755505060408051600435815293840181905283018190526001600160fb1b03106100c95781816060927ffe2e2d779dba245964d4e3ef9b994be63856fd568bf7d3ca9e224755cb1bd54d95848401378101030190a1005b813583820155908601908301610851565b6044906040519063073e64fd60e21b82523360048301526024820152fd5b346100c95760203660031901126100c9576004356001600160a01b03811681036100c95761090f61093a565b60098054600160501b600160f01b03191660509290921b600160501b600160f01b0316919091179055005b6000546001600160a01b0316330361094e57565b60405162461bcd60e51b815260206004820152601660248201527527b7363c9031b0b63630b1363290313c9037bbb732b960511b6044820152606490fd5b606081019081106001600160401b0382111761040657604052565b601f909101601f19168101906001600160401b0382119082101761040657604052565b600160401b81116104065760045490806004558181106109e8575050565b600090600482526020822092830192015b828110610a0557505050565b8181556001016109f956fea2646970667358221220316b18eb1d418d948e9465eb6ad90b5783aa1109c0b05c27a5342fd922b5953564736f6c63430008140033",
385
+ "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c8063144fa6d7146108e35780631fe543e3146107b55780632278424a146107975780637253575d1461068957806379ba5097146105e05780638da5cb5b146105b75780638ea98117146104ed5780639eccacf6146104c4578063a189b42114610495578063e0c86289146101ac578063f2fde38b146100fb578063fc0c546a146100ce5763fc2a88c3146100ab57600080fd5b346100c95760003660031901126100c9576020600654604051908152f35b600080fd5b346100c95760003660031901126100c95760095460405160509190911c6001600160a01b03168152602090f35b346100c95760203660031901126100c9576004356001600160a01b03818116918290036100c95761012a61093a565b33821461016d578160018060a01b03196001541617600155600054167fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae1278600080a3005b60405162461bcd60e51b815260206004820152601760248201527621b0b73737ba103a3930b739b332b9103a379039b2b63360491b6044820152606490fd5b346100c95760003660031901126100c9576000546001600160a01b0390811633141580610484575b6104735760025416600854906005549160095490604051916020830183811060018060401b0382111761040657604052600083526040519263125fa26760e31b602085015251151560248401526024835261022e8361098c565b6040519460c08601926001600160401b03841187851017610406579063ffffffff929160a09795946040528552602085015261ffff8160201c166040850152818116606085015260301c16608083015283820152604051928391634d8e1c2f60e11b835260206004840152805160248401526020810151604484015261ffff604082015116606484015263ffffffff606082015116608484015263ffffffff60808201511660a4840152015160c060c48301528051908160e484015260005b82811061045a57505091816000602094826101049183838284010152601f801991011681010301925af190811561044e5760009161041c575b506040516020810191906001600160401b03831181841017610406578260405260008152604051906103578261098c565b6000825260016020830181905260409092018190526003805461ffff191661010017905551926001600160401b03841161040657610394846109ca565b92600460005260206000209360005b8281106103f357602085806006557fcc58b13ad3eab50626c6a6300b1d139cd6ebb1688a7cced9461c2f7e762665ee604063ffffffff60095460301c1681519084825285820152a1604051908152f35b83906020835193019281880155016103a3565b634e487b7160e01b600052604160045260246000fd5b90506020813d602011610446575b81610437602093836109a7565b810103126100c9575181610326565b3d915061042a565b6040513d6000823e3d90fd5b60208282018101516101048884010152869450016102ed565b6040516282b42960e81b8152600490fd5b508060095460501c163314156101d4565b346100c95760003660031901126100c957604060035460ff8251918181161515835260081c1615156020820152f35b346100c95760003660031901126100c9576002546040516001600160a01b039091168152602090f35b346100c95760203660031901126100c9576004356001600160a01b03818116918290036100c95780600054169081331415806105a9575b6105815782801561056f57600280546001600160a01b031916821790556040519081527fd1a6a14209a385a964d036e404cb5cfb71f4000cdb03c9366292430787261be690602090a1005b60405163d92e233d60e01b8152600490fd5b60649250600254166040519163061db9c160e01b835233600484015260248301526044820152fd5b508060025416331415610524565b346100c95760003660031901126100c9576000546040516001600160a01b039091168152602090f35b346100c95760003660031901126100c9576001546001600160a01b03808216330361064b57600080546001600160a01b0319808216339081178455941660015591909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b60405162461bcd60e51b815260206004820152601660248201527526bab9ba10313290383937b837b9b2b21037bbb732b960511b6044820152606490fd5b346100c95760003660031901126100c9576040516106a68161098c565b600081526060604060209260008482015201526003549060ff8260081c16156107855760ff604051926106d88461098c565b16151582528082019060019081835260405180826004549182815201906004600052836000209060005b81811061077257505050816107189103826109a7565b60408501908152604051938285526080850195511515838601525115156040850152519360608085015284518091528160a0850195019160005b82811061075f5785870386f35b8351875295810195928101928401610752565b8254845292850192918601918601610702565b604051632589d98f60e11b8152600490fd5b346100c95760003660031901126100c9576020600754604051908152f35b346100c95760403660031901126100c9576024356001600160401b038082116100c957366023830112156100c95781600401359081116100c95760248201918160051b9060248236920101116100c9576002546001600160a01b0316338190036108c557506003549160ff8360081c1615610785576001809360ff19161760035561083f816109ca565b83926004600052602093846000209060005b8481106108b457505042600755505060408051600435815293840181905283018190526001600160fb1b03106100c95781816060927ffe2e2d779dba245964d4e3ef9b994be63856fd568bf7d3ca9e224755cb1bd54d95848401378101030190a1005b813583820155908601908301610851565b6044906040519063073e64fd60e21b82523360048301526024820152fd5b346100c95760203660031901126100c9576004356001600160a01b03811681036100c95761090f61093a565b60098054600160501b600160f01b03191660509290921b600160501b600160f01b0316919091179055005b6000546001600160a01b0316330361094e57565b60405162461bcd60e51b815260206004820152601660248201527527b7363c9031b0b63630b1363290313c9037bbb732b960511b6044820152606490fd5b606081019081106001600160401b0382111761040657604052565b601f909101601f19168101906001600160401b0382119082101761040657604052565b600160401b81116104065760045490806004558181106109e8575050565b600090600482526020822092830192015b828110610a0557505050565b8181556001016109f956fea2646970667358221220316b18eb1d418d948e9465eb6ad90b5783aa1109c0b05c27a5342fd922b5953564736f6c63430008140033",
277
386
  "linkReferences": {},
278
387
  "deployedLinkReferences": {}
279
388
  }