@raac/rpc 1.1.0-beta.8 → 1.1.0-beta.80

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 (564) hide show
  1. package/dist/RPCLibrary.js +53 -6
  2. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +279 -309
  3. package/dist/artifacts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector.json +246 -0
  4. package/dist/artifacts/core/collectors/RAACTokenCollector.sol/RAACTokenCollector.json +458 -0
  5. package/dist/artifacts/core/collectors/RWAIndexTokenCollector.sol/RWAIndexTokenCollector.json +458 -0
  6. package/dist/artifacts/core/collectors/Treasury.sol/Treasury.json +529 -0
  7. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.json +2 -93
  8. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.json +169 -13
  9. package/dist/artifacts/core/oracles/CrvUSDToUSDOracle.sol/CrvUSDToUSDOracle.json +556 -0
  10. package/dist/artifacts/core/oracles/RAACHousePriceOracle.sol/RAACHousePriceOracle.json +637 -0
  11. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.json +190 -29
  12. package/dist/artifacts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter.json +20 -2
  13. package/dist/artifacts/core/pools/LendingPool/ERC721AssetAdapter.sol/ERC721AssetAdapter.json +55 -3
  14. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.json +267 -220
  15. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.json +421 -124
  16. package/dist/artifacts/core/primitives/ComplianceRegistry.sol/ComplianceRegistry.json +397 -0
  17. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.json +223 -7
  18. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.json +111 -8
  19. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.json +272 -28
  20. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.json +2 -2
  21. package/dist/artifacts/core/tokens/RToken.sol/RToken.json +50 -39
  22. package/dist/artifacts/core/tokens/RWAIndexToken.sol/RWAIndexToken.json +25 -2
  23. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +2 -2
  24. package/dist/artifacts/core/vaults/ERC20VaultAdapter.sol/ERC20VaultAdapter.json +17 -9
  25. package/dist/artifacts/core/vaults/ERC721VaultAdapter.sol/ERC721VaultAdapter.json +89 -9
  26. package/dist/artifacts/core/vaults/RWAVault.sol/RWAVault.json +405 -108
  27. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.json +2 -2
  28. package/dist/artifacts/mocks/core/tokens/crvUSDToken.sol/crvUSDToken.json +2 -2
  29. package/dist/artifacts/zeno/Auction.sol/Auction.json +57 -2
  30. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.json +44 -2
  31. package/dist/artifacts/zeno/Zeno.sol/Zeno.json +2 -2
  32. package/dist/artifacts/zeno/ZenoFactory.sol/ZenoFactory.json +2 -2
  33. package/dist/configs/chains/11155111.json +80 -20
  34. package/dist/configs/chains/17000.json +25 -0
  35. package/dist/configs/chains/18453.json +187 -0
  36. package/dist/configs/chains/8453.json +66 -18
  37. package/dist/configs/chains/index.js +2 -0
  38. package/dist/minter/get.js +1 -3
  39. package/dist/minter/getApy.js +2 -2
  40. package/dist/nfts/approveNFT.js +25 -0
  41. package/dist/nfts/getApprovalForAll.js +32 -0
  42. package/dist/nfts/getNFTApproval.js +33 -0
  43. package/dist/nfts/getOwnerOfNFT.js +39 -0
  44. package/dist/nfts/setApprovalForAll.js +34 -0
  45. package/dist/oracles/chainlink-networks-config.js +252 -0
  46. package/dist/oracles/encryptSecretURLs.js +25 -0
  47. package/dist/oracles/encryptSecrets.js +29 -0
  48. package/dist/oracles/houses/config.js +19 -0
  49. package/dist/oracles/houses/request.js +176 -0
  50. package/dist/oracles/houses/simulate.js +21 -0
  51. package/dist/oracles/prime-rate/config.js +16 -0
  52. package/dist/oracles/prime-rate/request.js +149 -0
  53. package/dist/oracles/prime-rate/simulate.js +25 -0
  54. package/dist/pools/lendingPool/_helpers.js +2 -3
  55. package/dist/pools/lendingPool/adapters/erc721/getERC721AdapterDeposits.js +4 -3
  56. package/dist/pools/lendingPool/adapters/erc721/getERC721AdapterInfo.js +4 -3
  57. package/dist/pools/lendingPool/borrowFromLendingPool.js +5 -3
  58. package/dist/pools/lendingPool/borrowFromLendingPoolWithInsurance.js +34 -3
  59. package/dist/pools/lendingPool/calculateInsuranceFee.js +2 -2
  60. package/dist/pools/lendingPool/closeLiquidation.js +2 -2
  61. package/dist/pools/lendingPool/depositAssetToLendingPool.js +2 -2
  62. package/dist/pools/lendingPool/depositToLendingPool.js +4 -2
  63. package/dist/pools/lendingPool/getAdapterAddress.js +8 -10
  64. package/dist/pools/lendingPool/getAdapters.js +1 -1
  65. package/dist/pools/lendingPool/getEligibleUserDeposits.js +1 -1
  66. package/dist/pools/lendingPool/getHealthFactor.js +2 -2
  67. package/dist/pools/lendingPool/getLendingPoolInfo.js +24 -15
  68. package/dist/pools/lendingPool/getLendingPoolTotalLiquidity.js +1 -1
  69. package/dist/pools/lendingPool/getParameters.js +3 -4
  70. package/dist/pools/lendingPool/getPositionDebt.js +2 -2
  71. package/dist/pools/lendingPool/getPositionScaledDebt.js +2 -2
  72. package/dist/pools/lendingPool/getPositionView.js +1 -1
  73. package/dist/pools/lendingPool/getPositionsScaledDebt.js +1 -1
  74. package/dist/pools/lendingPool/getRawUserDepositsInLendingPool.js +1 -1
  75. package/dist/pools/lendingPool/getUserCollateralValue.js +1 -1
  76. package/dist/pools/lendingPool/initializeLiquidation.js +2 -2
  77. package/dist/pools/lendingPool/openVaultPosition.js +2 -4
  78. package/dist/pools/lendingPool/repayToLendingPool.js +2 -2
  79. package/dist/pools/lendingPool/vaultOpened.js +22 -0
  80. package/dist/pools/lendingPool/withdrawAssetFromLendingPool.js +3 -4
  81. package/dist/pools/lendingPool/withdrawFromLendingPool.js +7 -4
  82. package/dist/pools/rwaVault/_helpers.js +2 -3
  83. package/dist/pools/rwaVault/depositToRWAVault.js +6 -5
  84. package/dist/pools/rwaVault/getNextRandomNFT.js +1 -1
  85. package/dist/pools/rwaVault/getRWAVaultInfo.js +3 -14
  86. package/dist/pools/rwaVault/previewDeposit.js +16 -0
  87. package/dist/pools/rwaVault/previewWithdraw.js +16 -0
  88. package/dist/pools/rwaVault/redeemNFTFromRWAVault.js +9 -5
  89. package/dist/pools/rwaVault/requestRandomSeed.js +1 -1
  90. package/dist/pools/stabilityPool/_helpers.js +11 -0
  91. package/dist/pools/stabilityPool/getStabilityPoolInfo.js +2 -39
  92. package/dist/pools/stabilityPool/getWithdrawRequestInfo.js +28 -0
  93. package/dist/pools/{lendingPool → stabilityPool}/requestWithdraw.js +2 -7
  94. package/dist/scripts/analyze_lending_positions.js +277 -0
  95. package/dist/scripts/analyze_transfers.js +247 -0
  96. package/dist/scripts/calculate_portfolio.js +167 -0
  97. package/dist/scripts/generateErrorMap.js +180 -0
  98. package/dist/scripts/index.js +211 -78
  99. package/dist/scripts/liquidation.js +176 -0
  100. package/dist/scripts/run_analysis.js +115 -0
  101. package/dist/scripts/test_lending_analysis.js +105 -0
  102. package/dist/scripts/users.js +305 -0
  103. package/dist/test.js +323 -0
  104. package/dist/types/RPCLibrary.d.ts +37 -9
  105. package/dist/types/configs/chains/index.d.ts +5 -3
  106. package/dist/types/configs/index.d.ts +2 -1
  107. package/dist/types/nfts/approveNFT.d.ts +9 -0
  108. package/dist/types/nfts/getApprovalForAll.d.ts +14 -0
  109. package/dist/types/nfts/getNFTApproval.d.ts +14 -0
  110. package/dist/types/nfts/getOwnerOfNFT.d.ts +13 -0
  111. package/dist/types/nfts/setApprovalForAll.d.ts +14 -0
  112. package/dist/types/oracles/chainlink-networks-config.d.ts +222 -0
  113. package/dist/types/oracles/encryptSecretURLs.d.ts +5 -0
  114. package/dist/types/oracles/encryptSecrets.d.ts +4 -0
  115. package/dist/types/oracles/houses/config.d.ts +13 -0
  116. package/dist/types/oracles/houses/request.d.ts +5 -0
  117. package/dist/types/oracles/houses/simulate.d.ts +1 -0
  118. package/dist/types/oracles/prime-rate/config.d.ts +14 -0
  119. package/dist/types/oracles/prime-rate/request.d.ts +2 -0
  120. package/dist/types/oracles/prime-rate/simulate.d.ts +1 -0
  121. package/dist/types/pools/lendingPool/_helpers.d.ts +2 -2
  122. package/dist/types/pools/lendingPool/adapters/erc721/getERC721AdapterDeposits.d.ts +4 -2
  123. package/dist/types/pools/lendingPool/adapters/erc721/getERC721AdapterInfo.d.ts +4 -2
  124. package/dist/types/pools/lendingPool/borrowFromLendingPool.d.ts +2 -2
  125. package/dist/types/pools/lendingPool/borrowFromLendingPoolWithInsurance.d.ts +2 -2
  126. package/dist/types/pools/lendingPool/closeLiquidation.d.ts +2 -2
  127. package/dist/types/pools/lendingPool/depositAssetToLendingPool.d.ts +2 -2
  128. package/dist/types/pools/lendingPool/getHealthFactor.d.ts +2 -2
  129. package/dist/types/pools/lendingPool/getLendingPoolInfo.d.ts +2 -0
  130. package/dist/types/pools/lendingPool/getParameters.d.ts +1 -2
  131. package/dist/types/pools/lendingPool/getPositionDebt.d.ts +2 -2
  132. package/dist/types/pools/lendingPool/getPositionScaledDebt.d.ts +2 -2
  133. package/dist/types/pools/lendingPool/initializeLiquidation.d.ts +2 -2
  134. package/dist/types/pools/lendingPool/repayToLendingPool.d.ts +2 -2
  135. package/dist/types/pools/lendingPool/vaultOpened.d.ts +11 -0
  136. package/dist/types/pools/lendingPool/withdrawAssetFromLendingPool.d.ts +2 -3
  137. package/dist/types/pools/rwaVault/_helpers.d.ts +2 -2
  138. package/dist/types/pools/rwaVault/depositToRWAVault.d.ts +2 -2
  139. package/dist/types/pools/rwaVault/getRWAVaultInfo.d.ts +2 -6
  140. package/dist/types/pools/rwaVault/previewDeposit.d.ts +4 -0
  141. package/dist/types/pools/rwaVault/previewWithdraw.d.ts +4 -0
  142. package/dist/types/pools/rwaVault/redeemNFTFromRWAVault.d.ts +3 -2
  143. package/dist/types/pools/stabilityPool/_helpers.d.ts +4 -0
  144. package/dist/types/pools/stabilityPool/getStabilityPoolInfo.d.ts +0 -3
  145. package/dist/types/pools/stabilityPool/getWithdrawRequestInfo.d.ts +13 -0
  146. package/dist/types/scripts/analyze_lending_positions.d.ts +1 -0
  147. package/dist/types/scripts/analyze_transfers.d.ts +1 -0
  148. package/dist/types/scripts/calculate_portfolio.d.ts +1 -0
  149. package/dist/types/scripts/generateErrorMap.d.ts +1 -0
  150. package/dist/types/scripts/liquidation.d.ts +1 -0
  151. package/dist/types/scripts/run_analysis.d.ts +1 -0
  152. package/dist/types/scripts/test_lending_analysis.d.ts +1 -0
  153. package/dist/types/scripts/users.d.ts +1 -0
  154. package/dist/types/test.d.ts +1 -0
  155. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/index.d.ts +0 -3
  156. package/dist/types/typechain-types/@openzeppelin/contracts/index.d.ts +2 -0
  157. package/dist/types/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.d.ts +65 -0
  158. package/dist/types/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +1 -0
  159. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.d.ts +36 -0
  160. package/dist/types/typechain-types/@openzeppelin/contracts/{utils/math/Math.d.ts → proxy/ERC1967/ERC1967Utils.d.ts} +4 -4
  161. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
  162. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/Proxy.d.ts +20 -0
  163. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.d.ts +25 -0
  164. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/beacon/index.d.ts +1 -0
  165. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/index.d.ts +7 -0
  166. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.d.ts +74 -0
  167. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.d.ts +80 -0
  168. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.d.ts +51 -0
  169. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +2 -0
  170. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/index.d.ts +3 -0
  171. package/dist/types/typechain-types/@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.d.ts +36 -0
  172. package/dist/types/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.d.ts +1 -0
  173. package/dist/types/typechain-types/contracts/core/collectors/ERC20Collector.d.ts +264 -0
  174. package/dist/types/typechain-types/contracts/core/collectors/FeeCollector.d.ts +180 -178
  175. package/dist/types/typechain-types/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector.d.ts +17 -5
  176. package/dist/types/typechain-types/contracts/core/collectors/RAACTokenCollector.d.ts +264 -0
  177. package/dist/types/typechain-types/contracts/core/collectors/RWAIndexTokenCollector.d.ts +264 -0
  178. package/dist/types/typechain-types/contracts/core/collectors/Treasury.d.ts +53 -52
  179. package/dist/types/typechain-types/contracts/core/collectors/index.d.ts +3 -0
  180. package/dist/types/typechain-types/contracts/core/governance/gauges/BaseGauge.d.ts +119 -5
  181. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeRewardsDistributor.d.ts +19 -1
  182. package/dist/types/typechain-types/contracts/core/governance/gauges/RAACGauge.d.ts +119 -5
  183. package/dist/types/typechain-types/contracts/core/governance/gauges/RWAGauge.d.ts +119 -5
  184. package/dist/types/typechain-types/contracts/core/governance/proposals/Governance.d.ts +2 -6
  185. package/dist/types/typechain-types/contracts/core/governance/proposals/TimelockController.d.ts +33 -3
  186. package/dist/types/typechain-types/contracts/core/minters/RAACMinter/RAACMinter.d.ts +1 -41
  187. package/dist/types/typechain-types/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator.d.ts +36 -20
  188. package/dist/types/typechain-types/contracts/core/oracles/BaseChainlinkFunctionsOracle.d.ts +112 -27
  189. package/dist/types/typechain-types/contracts/core/oracles/BaseVRFv2Consumer.d.ts +116 -10
  190. package/dist/types/typechain-types/contracts/core/oracles/CrvUSDToUSDOracle.sol/CrvUSDToUSDOracle.d.ts +338 -0
  191. package/dist/types/typechain-types/contracts/core/oracles/CrvUSDToUSDOracle.sol/ICrvUSDToUSDOracle.d.ts +55 -0
  192. package/dist/types/typechain-types/contracts/{mocks/tests/VotingPowerFuzzHelper.sol/IVMTimeControl.d.ts → core/oracles/CrvUSDToUSDOracle.sol/ICrvUsdCurveOracle.d.ts} +9 -9
  193. package/dist/types/typechain-types/contracts/core/oracles/CrvUSDToUSDOracle.sol/index.d.ts +3 -0
  194. package/dist/types/typechain-types/contracts/core/oracles/RAACHousePriceOracle.d.ts +128 -27
  195. package/dist/types/typechain-types/contracts/core/oracles/RAACPrimeRateOracle.d.ts +112 -27
  196. package/dist/types/typechain-types/contracts/core/oracles/RWAIndexTokenOracle.sol/RWAIndexTokenOracle.d.ts +37 -0
  197. package/dist/types/typechain-types/contracts/core/oracles/RWAIndexTokenOracle.sol/index.d.ts +2 -0
  198. package/dist/types/typechain-types/contracts/core/oracles/crvUSDPriceOracle.sol/CrvUSDPriceOracle.d.ts +33 -0
  199. package/dist/types/typechain-types/contracts/{mocks/core/oracles/MockERC20PriceOracle.sol → core/oracles/crvUSDPriceOracle.sol}/IPriceOracle.d.ts +1 -1
  200. package/dist/types/typechain-types/contracts/core/oracles/crvUSDPriceOracle.sol/index.d.ts +2 -0
  201. package/dist/types/typechain-types/contracts/core/oracles/index.d.ts +6 -0
  202. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter.d.ts +10 -1
  203. package/dist/types/typechain-types/contracts/core/pools/LendingPool/{ERC721AssetAdapter.sol/ERC721AssetAdapter.d.ts → ERC721AssetAdapter.d.ts} +29 -2
  204. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPool.d.ts +145 -153
  205. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPoolStorage.d.ts +94 -63
  206. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LiquidationProxy.d.ts +94 -63
  207. package/dist/types/typechain-types/contracts/core/pools/LendingPool/VaultProxy.d.ts +105 -62
  208. package/dist/types/typechain-types/contracts/core/pools/LendingPool/index.d.ts +1 -2
  209. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/LiquidationStrategyProxy.d.ts +66 -28
  210. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/LiquidationSwap.d.ts +36 -8
  211. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/StabilityPool.d.ts +312 -81
  212. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/StabilityPoolStorage.d.ts +61 -25
  213. package/dist/types/typechain-types/contracts/core/primitives/{ComplianceRegistry.d.ts → ComplianceRegistry.sol/ComplianceRegistry.d.ts} +30 -2
  214. package/dist/types/typechain-types/contracts/core/primitives/ComplianceRegistry.sol/SanctionsList.d.ts +25 -0
  215. package/dist/types/typechain-types/contracts/core/primitives/ComplianceRegistry.sol/index.d.ts +2 -0
  216. package/dist/types/typechain-types/contracts/core/primitives/RAACHousePrices.d.ts +129 -7
  217. package/dist/types/typechain-types/contracts/core/primitives/index.d.ts +2 -1
  218. package/dist/types/typechain-types/contracts/core/tokens/DEToken.d.ts +39 -9
  219. package/dist/types/typechain-types/contracts/core/tokens/DebtToken.d.ts +12 -111
  220. package/dist/types/typechain-types/contracts/core/tokens/RAACNFT.d.ts +191 -31
  221. package/dist/types/typechain-types/contracts/core/tokens/RToken.d.ts +15 -33
  222. package/dist/types/typechain-types/contracts/core/tokens/RWAIndexToken.d.ts +5 -1
  223. package/dist/types/typechain-types/contracts/core/vaults/{ERC20VaultAdapter.sol/ERC20VaultAdapter.d.ts → ERC20VaultAdapter.d.ts} +10 -8
  224. package/dist/types/typechain-types/contracts/core/vaults/{ERC721VaultAdapter.sol/ERC721VaultAdapter.d.ts → ERC721VaultAdapter.d.ts} +40 -8
  225. package/dist/types/typechain-types/contracts/core/vaults/RAACNFTVaultAdapterV2.d.ts +262 -0
  226. package/dist/types/typechain-types/contracts/core/vaults/RWAVault.d.ts +321 -65
  227. package/dist/types/typechain-types/contracts/core/vaults/index.d.ts +3 -4
  228. package/dist/types/typechain-types/contracts/{mocks/libraries/governance/RAACVotingMock.d.ts → interfaces/core/collectors/IDistributionTarget.d.ts} +25 -23
  229. package/dist/types/typechain-types/contracts/interfaces/core/collectors/IFeeCollector.d.ts +136 -44
  230. package/dist/types/typechain-types/contracts/interfaces/core/collectors/ITreasury.d.ts +23 -42
  231. package/dist/types/typechain-types/contracts/interfaces/core/collectors/index.d.ts +1 -0
  232. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IBaseGauge.d.ts +101 -5
  233. package/dist/types/typechain-types/contracts/interfaces/core/governance/proposals/IGovernance.d.ts +2 -6
  234. package/dist/types/typechain-types/contracts/interfaces/core/governance/proposals/ITimelockController.d.ts +33 -3
  235. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACMinter/IRAACMinter.d.ts +1 -37
  236. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator.d.ts +21 -20
  237. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IBaseVRFv2Consumer.d.ts +47 -1
  238. package/dist/types/typechain-types/contracts/{core/pools/LendingPool/ERC721AssetAdapter.sol/IPriceOracle.d.ts → interfaces/core/oracles/IERC20PriceOracle.d.ts} +9 -13
  239. package/dist/types/typechain-types/contracts/{core/vaults/ERC721VaultAdapter.sol/IPriceOracle.d.ts → interfaces/core/oracles/IERC721PriceOracle.d.ts} +6 -6
  240. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IRAACHousePriceOracle.d.ts +29 -0
  241. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePriceSyncer.d.ts +71 -0
  242. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePrices.d.ts +49 -0
  243. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IRAACHousePrices.sol/index.d.ts +2 -0
  244. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IZKMEVerifyUpgradeable.d.ts +35 -0
  245. package/dist/types/typechain-types/contracts/interfaces/core/oracles/index.d.ts +6 -1
  246. package/dist/types/typechain-types/contracts/interfaces/core/pools/ILiquidityPool.d.ts +26 -12
  247. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/IAssetAdapter.d.ts +10 -1
  248. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPool.d.ts +80 -70
  249. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPoolStorage.d.ts +52 -1
  250. package/dist/types/typechain-types/contracts/interfaces/core/pools/StabilityPool/IStabilityPool.d.ts +205 -42
  251. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IDEToken.d.ts +31 -1
  252. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IDebtToken.d.ts +7 -15
  253. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IRAACNFT.d.ts +127 -29
  254. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IRToken.d.ts +11 -33
  255. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IBaseHybridVault.d.ts +315 -23
  256. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IERC721VaultAdapter.d.ts +37 -0
  257. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IVaultAssetAdapter.d.ts +1 -3
  258. package/dist/types/typechain-types/contracts/interfaces/core/vaults/index.d.ts +1 -0
  259. package/dist/types/typechain-types/contracts/interfaces/curve/ICurveCrvUSDVault.d.ts +33 -1
  260. package/dist/types/typechain-types/contracts/libraries/pools/LendingPoolFeeLibrary.d.ts +20 -0
  261. package/dist/types/typechain-types/contracts/libraries/pools/index.d.ts +1 -0
  262. package/dist/types/typechain-types/contracts/mocks/core/collectors/MockTreasury.d.ts +23 -58
  263. package/dist/types/typechain-types/contracts/mocks/core/curve/CurveCrvUSDVaultMock.d.ts +358 -0
  264. package/dist/types/typechain-types/contracts/mocks/core/curve/index.d.ts +1 -0
  265. package/dist/types/typechain-types/contracts/mocks/core/governance/proposals/TimelockPayableTestTarget.d.ts +37 -0
  266. package/dist/types/typechain-types/contracts/mocks/core/governance/proposals/index.d.ts +1 -0
  267. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockChainlinkAggregator.d.ts +151 -0
  268. package/dist/types/typechain-types/contracts/{interfaces/IHousePrices.d.ts → mocks/core/oracles/MockCurveEMA.sol/ICrvUsdCurveOracle.d.ts} +10 -14
  269. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockCurveEMA.sol/MockCurveEMA.d.ts +59 -0
  270. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockCurveEMA.sol/index.d.ts +2 -0
  271. package/dist/types/typechain-types/contracts/mocks/core/oracles/{MockERC20PriceOracle.sol/MockERC20PriceOracle.d.ts → MockERC20PriceOracle.d.ts} +1 -1
  272. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockRAACNFTVaultAdapterNAVOracle.d.ts +169 -0
  273. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockZKMEVerifyUpgradeable.d.ts +171 -0
  274. package/dist/types/typechain-types/contracts/mocks/core/oracles/TestRAACHousePriceOracle.d.ts +128 -27
  275. package/dist/types/typechain-types/contracts/mocks/core/oracles/TestRAACPrimeRateOracle.d.ts +112 -27
  276. package/dist/types/typechain-types/contracts/mocks/core/oracles/index.d.ts +6 -2
  277. package/dist/types/typechain-types/contracts/mocks/core/pools/CurveStyleCrvUSDiRAACPool.d.ts +593 -0
  278. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPool.d.ts +11 -17
  279. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolCollector.d.ts +10 -7
  280. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolDebtToken.d.ts +80 -70
  281. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLiquidityPool.d.ts +26 -12
  282. package/dist/types/typechain-types/contracts/mocks/core/pools/index.d.ts +1 -0
  283. package/dist/types/typechain-types/{@chainlink/contracts/src/v0.8/vrf/VRFConsumerBaseV2.d.ts → contracts/mocks/core/primitives/MockChainAnalysis.sol/MockChainAnalysis.d.ts} +18 -14
  284. package/dist/types/typechain-types/contracts/mocks/core/primitives/MockChainAnalysis.sol/SanctionsList.d.ts +25 -0
  285. package/dist/types/typechain-types/contracts/mocks/core/primitives/MockChainAnalysis.sol/index.d.ts +2 -0
  286. package/dist/types/typechain-types/contracts/mocks/core/primitives/MockDistributableContract.d.ts +9 -1
  287. package/dist/types/typechain-types/contracts/mocks/core/primitives/index.d.ts +2 -0
  288. package/dist/types/typechain-types/contracts/{core/tokens/IndexToken.d.ts → mocks/core/tokens/CrvUSDTokenLimited.d.ts} +53 -155
  289. package/dist/types/typechain-types/contracts/mocks/core/tokens/index.d.ts +1 -0
  290. package/dist/types/typechain-types/contracts/mocks/libraries/pools/ReserveLibraryMock.d.ts +5 -1
  291. package/dist/types/typechain-types/contracts/mocks/libraries/pools/ReserveLibraryMockCalculation.d.ts +185 -0
  292. package/dist/types/typechain-types/contracts/mocks/libraries/pools/index.d.ts +1 -0
  293. package/dist/types/typechain-types/contracts/zeno/Auction.d.ts +33 -2
  294. package/dist/types/typechain-types/contracts/zeno/AuctionFactory.d.ts +34 -2
  295. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/functions/v1_0_0/libraries/FunctionsRequest__factory.d.ts +1 -1
  296. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwnerWithProposal__factory.d.ts +1 -1
  297. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwner__factory.d.ts +1 -1
  298. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/libraries/VRFV2PlusClient__factory.d.ts +1 -1
  299. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/index.d.ts +0 -2
  300. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/mocks/VRFCoordinatorV2_5Mock__factory.d.ts +1 -1
  301. package/dist/types/typechain-types/factories/@openzeppelin/contracts/index.d.ts +1 -0
  302. package/dist/types/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.d.ts +42 -0
  303. package/dist/types/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +1 -0
  304. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.d.ts +71 -0
  305. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.d.ts +50 -0
  306. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
  307. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/Proxy__factory.d.ts +10 -0
  308. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.d.ts +17 -0
  309. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.d.ts +1 -0
  310. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/index.d.ts +4 -0
  311. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.d.ts +115 -0
  312. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.d.ts +56 -0
  313. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.d.ts +102 -0
  314. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +2 -0
  315. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/index.d.ts +2 -0
  316. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts +1 -1
  317. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +1 -1
  318. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts +1 -1
  319. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
  320. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +1 -1
  321. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.d.ts +1 -1
  322. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/MerkleProof__factory.d.ts +1 -1
  323. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts +1 -1
  324. package/dist/types/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable__factory.d.ts +29 -0
  325. package/dist/types/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts +1 -0
  326. package/dist/types/typechain-types/factories/contracts/core/collectors/ERC20Collector__factory.d.ts +373 -0
  327. package/dist/types/typechain-types/factories/contracts/core/collectors/FeeCollector__factory.d.ts +214 -238
  328. package/dist/types/typechain-types/factories/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector__factory.d.ts +29 -3
  329. package/dist/types/typechain-types/factories/contracts/core/collectors/RAACTokenCollector__factory.d.ts +369 -0
  330. package/dist/types/typechain-types/factories/contracts/core/collectors/RWAIndexTokenCollector__factory.d.ts +369 -0
  331. package/dist/types/typechain-types/factories/contracts/core/collectors/Treasury__factory.d.ts +80 -59
  332. package/dist/types/typechain-types/factories/contracts/core/collectors/index.d.ts +3 -0
  333. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/BaseGauge__factory.d.ts +159 -1
  334. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +1 -1
  335. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeRewardsDistributor__factory.d.ts +29 -1
  336. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +160 -2
  337. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +160 -2
  338. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/Governance__factory.d.ts +14 -2
  339. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/TimelockController__factory.d.ts +25 -1
  340. package/dist/types/typechain-types/factories/contracts/core/lockers/LLamaTemple__factory.d.ts +1 -1
  341. package/dist/types/typechain-types/factories/contracts/core/minters/RAACMinter/RAACMinter__factory.d.ts +1 -71
  342. package/dist/types/typechain-types/factories/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator__factory.d.ts +43 -10
  343. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseChainlinkFunctionsOracle__factory.d.ts +128 -23
  344. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseVRFv2Consumer__factory.d.ts +135 -14
  345. package/dist/types/typechain-types/factories/contracts/core/oracles/CrvUSDToUSDOracle.sol/CrvUSDToUSDOracle__factory.d.ts +443 -0
  346. package/dist/types/typechain-types/factories/contracts/core/oracles/CrvUSDToUSDOracle.sol/ICrvUSDToUSDOracle__factory.d.ts +45 -0
  347. package/dist/types/typechain-types/factories/contracts/{interfaces/IHousePrices__factory.d.ts → core/oracles/CrvUSDToUSDOracle.sol/ICrvUsdCurveOracle__factory.d.ts} +6 -6
  348. package/dist/types/typechain-types/factories/contracts/core/oracles/CrvUSDToUSDOracle.sol/index.d.ts +3 -0
  349. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACHousePriceOracle__factory.d.ts +203 -28
  350. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACPrimeRateOracle__factory.d.ts +153 -28
  351. package/dist/types/typechain-types/factories/contracts/{mocks/core/oracles/MockERC20PriceOracle.sol → core/oracles/RWAIndexTokenOracle.sol}/IPriceOracle__factory.d.ts +1 -1
  352. package/dist/types/typechain-types/factories/contracts/core/oracles/RWAIndexTokenOracle.sol/RWAIndexTokenOracle__factory.d.ts +74 -0
  353. package/dist/types/typechain-types/factories/contracts/core/oracles/RWAIndexTokenOracle.sol/index.d.ts +2 -0
  354. package/dist/types/typechain-types/factories/contracts/core/oracles/crvUSDPriceOracle.sol/CrvUSDPriceOracle__factory.d.ts +52 -0
  355. package/dist/types/typechain-types/factories/contracts/core/{vaults/ERC20VaultAdapter.sol → oracles/crvUSDPriceOracle.sol}/IPriceOracle__factory.d.ts +1 -1
  356. package/dist/types/typechain-types/factories/contracts/core/{vaults/ERC20VaultAdapter.sol → oracles/crvUSDPriceOracle.sol}/index.d.ts +1 -1
  357. package/dist/types/typechain-types/factories/contracts/core/oracles/index.d.ts +3 -0
  358. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter__factory.d.ts +15 -1
  359. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/{ERC721AssetAdapter.sol/ERC721AssetAdapter__factory.d.ts → ERC721AssetAdapter__factory.d.ts} +44 -4
  360. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPoolStorage__factory.d.ts +103 -50
  361. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPool__factory.d.ts +186 -173
  362. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LiquidationProxy__factory.d.ts +101 -56
  363. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/VaultProxy__factory.d.ts +117 -48
  364. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/index.d.ts +1 -1
  365. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/LiquidationStrategyProxy__factory.d.ts +70 -34
  366. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/LiquidationSwap__factory.d.ts +82 -8
  367. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPoolStorage__factory.d.ts +58 -34
  368. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPool__factory.d.ts +344 -109
  369. package/dist/types/typechain-types/factories/contracts/core/primitives/{ComplianceRegistry__factory.d.ts → ComplianceRegistry.sol/ComplianceRegistry__factory.d.ts} +47 -3
  370. package/dist/types/typechain-types/factories/contracts/core/primitives/ComplianceRegistry.sol/SanctionsList__factory.d.ts +21 -0
  371. package/dist/types/typechain-types/factories/contracts/core/primitives/ComplianceRegistry.sol/index.d.ts +2 -0
  372. package/dist/types/typechain-types/factories/contracts/core/primitives/RAACHousePrices__factory.d.ts +174 -8
  373. package/dist/types/typechain-types/factories/contracts/core/primitives/index.d.ts +1 -1
  374. package/dist/types/typechain-types/factories/contracts/core/tokens/DEToken__factory.d.ts +87 -9
  375. package/dist/types/typechain-types/factories/contracts/core/tokens/DebtToken__factory.d.ts +15 -168
  376. package/dist/types/typechain-types/factories/contracts/core/tokens/LPToken__factory.d.ts +1 -1
  377. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACNFT__factory.d.ts +213 -24
  378. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACToken__factory.d.ts +1 -1
  379. package/dist/types/typechain-types/factories/contracts/core/tokens/RToken__factory.d.ts +40 -32
  380. package/dist/types/typechain-types/factories/contracts/core/tokens/RWAIndexToken__factory.d.ts +22 -4
  381. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACToken__factory.d.ts +1 -1
  382. package/dist/types/typechain-types/factories/contracts/core/vaults/{ERC20VaultAdapter.sol/ERC20VaultAdapter__factory.d.ts → ERC20VaultAdapter__factory.d.ts} +15 -9
  383. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC721VaultAdapter__factory.d.ts +347 -0
  384. package/dist/types/typechain-types/factories/contracts/core/vaults/RAACNFTVaultAdapterV2__factory.d.ts +417 -0
  385. package/dist/types/typechain-types/factories/contracts/core/vaults/RWAVault__factory.d.ts +318 -86
  386. package/dist/types/typechain-types/factories/contracts/core/vaults/index.d.ts +3 -2
  387. package/dist/types/typechain-types/factories/contracts/interfaces/IComplianceRegistry__factory.d.ts +4 -0
  388. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/IDistributionTarget__factory.d.ts +39 -0
  389. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/IFeeCollector__factory.d.ts +131 -95
  390. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/ITreasury__factory.d.ts +20 -49
  391. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/index.d.ts +1 -0
  392. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IBaseGauge__factory.d.ts +133 -1
  393. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/proposals/IGovernance__factory.d.ts +13 -1
  394. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/proposals/ITimelockController__factory.d.ts +24 -0
  395. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACMinter/IRAACMinter__factory.d.ts +0 -60
  396. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator__factory.d.ts +19 -16
  397. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IBaseVRFv2Consumer__factory.d.ts +52 -1
  398. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IERC20PriceOracle__factory.d.ts +17 -0
  399. package/dist/types/typechain-types/factories/contracts/{core/vaults/ERC721VaultAdapter.sol/IPriceOracle__factory.d.ts → interfaces/core/oracles/IERC721PriceOracle__factory.d.ts} +8 -4
  400. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IRAACHousePriceOracle__factory.d.ts +21 -0
  401. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePriceSyncer__factory.d.ts +59 -0
  402. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IRAACHousePrices.sol/IRAACHousePrices__factory.d.ts +67 -0
  403. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IRAACHousePrices.sol/index.d.ts +2 -0
  404. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IZKMEVerifyUpgradeable__factory.d.ts +25 -0
  405. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/index.d.ts +5 -1
  406. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/ILiquidityPool__factory.d.ts +26 -10
  407. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/IAssetAdapter__factory.d.ts +14 -0
  408. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPoolStorage__factory.d.ts +53 -0
  409. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPool__factory.d.ts +113 -92
  410. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/ILiquidationSwap__factory.d.ts +12 -0
  411. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/IStabilityPool__factory.d.ts +236 -41
  412. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IDEToken__factory.d.ts +70 -0
  413. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IDebtToken__factory.d.ts +10 -16
  414. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IRAACNFT__factory.d.ts +122 -22
  415. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IRToken__factory.d.ts +19 -29
  416. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/IBaseHybridVault__factory.d.ts +301 -19
  417. package/dist/types/typechain-types/factories/contracts/interfaces/{IPoolManager__factory.d.ts → core/vaults/IERC721VaultAdapter__factory.d.ts} +20 -22
  418. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/IVaultAssetAdapter__factory.d.ts +0 -4
  419. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/index.d.ts +1 -0
  420. package/dist/types/typechain-types/factories/contracts/interfaces/curve/ICurveCrvUSDVault__factory.d.ts +64 -0
  421. package/dist/types/typechain-types/factories/contracts/interfaces/zeno/IAuction__factory.d.ts +4 -0
  422. package/dist/types/typechain-types/factories/contracts/libraries/governance/BoostCalculator__factory.d.ts +1 -1
  423. package/dist/types/typechain-types/factories/contracts/libraries/governance/LockManager__factory.d.ts +1 -1
  424. package/dist/types/typechain-types/factories/contracts/libraries/governance/PowerCheckpoint__factory.d.ts +1 -1
  425. package/dist/types/typechain-types/factories/contracts/libraries/math/TimeWeightedAverage__factory.d.ts +1 -1
  426. package/dist/types/typechain-types/factories/contracts/libraries/pools/LendingPoolFeeLibrary__factory.d.ts +42 -0
  427. package/dist/types/typechain-types/factories/contracts/libraries/pools/ReserveLibrary__factory.d.ts +1 -1
  428. package/dist/types/typechain-types/factories/contracts/libraries/pools/index.d.ts +1 -0
  429. package/dist/types/typechain-types/factories/contracts/libraries/utils/StringUtils__factory.d.ts +1 -1
  430. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockTreasury__factory.d.ts +21 -68
  431. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockWETH__factory.d.ts +1 -1
  432. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/CurveCrvUSDVaultMock__factory.d.ts +651 -0
  433. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/CurveLiquidityGaugeV5Mock__factory.d.ts +1 -1
  434. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/index.d.ts +1 -0
  435. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockGaugeController__factory.d.ts +1 -1
  436. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockPayableTestTarget__factory.d.ts +65 -0
  437. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockTestTarget__factory.d.ts +1 -1
  438. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/index.d.ts +1 -0
  439. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LLamaLocker.sol/LlamaLocker__factory.d.ts +1 -1
  440. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockChainlinkAggregator__factory.d.ts +168 -0
  441. package/dist/types/typechain-types/factories/contracts/{core/pools/LendingPool/ERC721AssetAdapter.sol/IPriceOracle__factory.d.ts → mocks/core/oracles/MockCurveEMA.sol/ICrvUsdCurveOracle__factory.d.ts} +7 -7
  442. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockCurveEMA.sol/MockCurveEMA__factory.d.ts +98 -0
  443. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockCurveEMA.sol/index.d.ts +2 -0
  444. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/{MockERC20PriceOracle.sol/MockERC20PriceOracle__factory.d.ts → MockERC20PriceOracle__factory.d.ts} +3 -3
  445. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter__factory.d.ts +1 -1
  446. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockOracle__factory.d.ts +1 -1
  447. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockRAACNFTVaultAdapterNAVOracle__factory.d.ts +242 -0
  448. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockVRFCoordinatorV2__factory.d.ts +1 -1
  449. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockZKMEVerifyUpgradeable__factory.d.ts +184 -0
  450. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACHousePriceOracle__factory.d.ts +203 -28
  451. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACPrimeRateOracle__factory.d.ts +153 -28
  452. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/index.d.ts +5 -1
  453. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/CurveStyleCrvUSDiRAACPool__factory.d.ts +938 -0
  454. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolCollector__factory.d.ts +9 -11
  455. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolDebtToken__factory.d.ts +114 -83
  456. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPool__factory.d.ts +15 -19
  457. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLiquidityPool__factory.d.ts +27 -11
  458. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockPool__factory.d.ts +1 -1
  459. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockStabilityPool__factory.d.ts +1 -1
  460. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/index.d.ts +1 -0
  461. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockChainAnalysis.sol/MockChainAnalysis__factory.d.ts +50 -0
  462. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockChainAnalysis.sol/SanctionsList__factory.d.ts +21 -0
  463. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockChainAnalysis.sol/index.d.ts +2 -0
  464. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContractWithConfig__factory.d.ts +1 -1
  465. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContract__factory.d.ts +1 -1
  466. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockDistributableContract__factory.d.ts +15 -1
  467. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/RAACHousePricesMock__factory.d.ts +1 -1
  468. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/index.d.ts +1 -0
  469. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/CrvUSDTokenLimited__factory.d.ts +431 -0
  470. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/CrvUSDToken__factory.d.ts +1 -1
  471. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC20Mock__factory.d.ts +1 -1
  472. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC721Mock__factory.d.ts +1 -1
  473. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockCollectableUnderlying__factory.d.ts +1 -1
  474. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockFeeCollectorToken__factory.d.ts +1 -1
  475. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockToken__factory.d.ts +1 -1
  476. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockUSDC__factory.d.ts +1 -1
  477. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/RAACMockERC20__factory.d.ts +1 -1
  478. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/index.d.ts +1 -0
  479. package/dist/types/typechain-types/factories/contracts/mocks/core/vaults/MockVault__factory.d.ts +1 -1
  480. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockStringUtils__factory.d.ts +1 -1
  481. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/BoostCalculatorMock__factory.d.ts +1 -1
  482. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/LockManagerMock__factory.d.ts +1 -1
  483. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/PowerCheckpointMock__factory.d.ts +1 -1
  484. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/TimeWeightedAverageMock__factory.d.ts +1 -1
  485. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/WadRayMathMock__factory.d.ts +1 -1
  486. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMockCalculation__factory.d.ts +228 -0
  487. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMock__factory.d.ts +23 -5
  488. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/index.d.ts +1 -0
  489. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousDeposit__factory.d.ts +1 -1
  490. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousWithdraw__factory.d.ts +1 -1
  491. package/dist/types/typechain-types/factories/contracts/mocks/tests/VeRAACFuzzHelper__factory.d.ts +1 -1
  492. package/dist/types/typechain-types/factories/contracts/zeno/AuctionFactory__factory.d.ts +34 -1
  493. package/dist/types/typechain-types/factories/contracts/zeno/Auction__factory.d.ts +44 -1
  494. package/dist/types/typechain-types/factories/contracts/zeno/ZENOFactory__factory.d.ts +1 -1
  495. package/dist/types/typechain-types/factories/contracts/zeno/ZENO__factory.d.ts +1 -1
  496. package/dist/types/typechain-types/index.d.ts +88 -18
  497. package/dist/types/utils/artifacts.d.ts +997 -284
  498. package/dist/types/utils/contracts.d.ts +4 -2
  499. package/dist/types/utils/errorDecoder.d.ts +37 -0
  500. package/dist/types/wallet/assets/approveNFT.d.ts +0 -0
  501. package/dist/types/wallet/assets/getAllowance.d.ts +1 -1
  502. package/dist/types/wallet/assets/getBalance.d.ts +3 -3
  503. package/dist/utils/artifacts.js +16 -0
  504. package/dist/utils/errorDecoder.js +137 -0
  505. package/dist/wallet/assets/approveNFT.js +0 -0
  506. package/dist/wallet/assets/getAllowance.js +3 -3
  507. package/dist/wallet/assets/getBalance.js +14 -6
  508. package/package.json +8 -4
  509. package/dist/pools/lendingPool/getWithdrawRequestInfo.js +0 -25
  510. package/dist/types/pools/lendingPool/getWithdrawRequestInfo.d.ts +0 -8
  511. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/interfaces/VRFCoordinatorV2Interface.d.ts +0 -156
  512. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/interfaces/index.d.ts +0 -1
  513. package/dist/types/typechain-types/contracts/core/governance/boost/BoostController.d.ts +0 -573
  514. package/dist/types/typechain-types/contracts/core/governance/boost/index.d.ts +0 -1
  515. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/index.d.ts +0 -2
  516. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/NFTLiquidator.d.ts +0 -283
  517. package/dist/types/typechain-types/contracts/core/vaults/ERC20VaultAdapter.sol/index.d.ts +0 -2
  518. package/dist/types/typechain-types/contracts/core/vaults/ERC721VaultAdapter.sol/index.d.ts +0 -2
  519. package/dist/types/typechain-types/contracts/interfaces/IPoolManager.d.ts +0 -37
  520. package/dist/types/typechain-types/contracts/interfaces/IReserveAllocationLibraryMock.d.ts +0 -164
  521. package/dist/types/typechain-types/contracts/interfaces/IveRAACDistributor.d.ts +0 -59
  522. package/dist/types/typechain-types/contracts/interfaces/core/governance/IBoostController.d.ts +0 -269
  523. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGauge.d.ts +0 -235
  524. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IRAACHousePrices.d.ts +0 -117
  525. package/dist/types/typechain-types/contracts/libraries/governance/Checkpoints.d.ts +0 -55
  526. package/dist/types/typechain-types/contracts/libraries/governance/RAACVoting.d.ts +0 -45
  527. package/dist/types/typechain-types/contracts/libraries/governance/VotingPowerLib.d.ts +0 -66
  528. package/dist/types/typechain-types/contracts/mocks/core/governance/gauges/MockBaseGauge.d.ts +0 -845
  529. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/index.d.ts +0 -2
  530. package/dist/types/typechain-types/contracts/mocks/core/tokens/MockVeToken.d.ts +0 -510
  531. package/dist/types/typechain-types/contracts/mocks/libraries/governance/CheckpointsMock.d.ts +0 -83
  532. package/dist/types/typechain-types/contracts/mocks/libraries/governance/VotingPowerMock.d.ts +0 -281
  533. package/dist/types/typechain-types/contracts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper.d.ts +0 -100
  534. package/dist/types/typechain-types/contracts/mocks/tests/VotingPowerFuzzHelper.sol/index.d.ts +0 -2
  535. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/VRFConsumerBaseV2__factory.d.ts +0 -33
  536. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/interfaces/VRFCoordinatorV2Interface__factory.d.ts +0 -171
  537. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/interfaces/index.d.ts +0 -1
  538. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/Math__factory.d.ts +0 -26
  539. package/dist/types/typechain-types/factories/contracts/core/governance/boost/BoostController__factory.d.ts +0 -716
  540. package/dist/types/typechain-types/factories/contracts/core/governance/boost/index.d.ts +0 -1
  541. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC721AssetAdapter.sol/index.d.ts +0 -2
  542. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/NFTLiquidator__factory.d.ts +0 -390
  543. package/dist/types/typechain-types/factories/contracts/core/tokens/IndexToken__factory.d.ts +0 -602
  544. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC721VaultAdapter.sol/ERC721VaultAdapter__factory.d.ts +0 -287
  545. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC721VaultAdapter.sol/index.d.ts +0 -2
  546. package/dist/types/typechain-types/factories/contracts/interfaces/IReserveAllocationLibraryMock__factory.d.ts +0 -189
  547. package/dist/types/typechain-types/factories/contracts/interfaces/IveRAACDistributor__factory.d.ts +0 -75
  548. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/IBoostController__factory.d.ts +0 -295
  549. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IGauge__factory.d.ts +0 -307
  550. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IRAACHousePrices__factory.d.ts +0 -141
  551. package/dist/types/typechain-types/factories/contracts/libraries/governance/Checkpoints__factory.d.ts +0 -68
  552. package/dist/types/typechain-types/factories/contracts/libraries/governance/RAACVoting__factory.d.ts +0 -92
  553. package/dist/types/typechain-types/factories/contracts/libraries/governance/VotingPowerLib__factory.d.ts +0 -74
  554. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockBaseGauge__factory.d.ts +0 -1194
  555. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockERC20PriceOracle.sol/index.d.ts +0 -2
  556. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockVeToken__factory.d.ts +0 -714
  557. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/CheckpointsMock__factory.d.ts +0 -124
  558. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/RAACVotingMock__factory.d.ts +0 -70
  559. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/VotingPowerMock__factory.d.ts +0 -341
  560. package/dist/types/typechain-types/factories/contracts/mocks/tests/VotingPowerFuzzHelper.sol/IVMTimeControl__factory.d.ts +0 -17
  561. package/dist/types/typechain-types/factories/contracts/mocks/tests/VotingPowerFuzzHelper.sol/VotingPowerFuzzHelper__factory.d.ts +0 -113
  562. package/dist/types/typechain-types/factories/contracts/mocks/tests/VotingPowerFuzzHelper.sol/index.d.ts +0 -2
  563. /package/dist/types/pools/{lendingPool → stabilityPool}/requestWithdraw.d.ts +0 -0
  564. /package/dist/types/typechain-types/contracts/core/{vaults/ERC20VaultAdapter.sol → oracles/RWAIndexTokenOracle.sol}/IPriceOracle.d.ts +0 -0
@@ -9,11 +9,6 @@
9
9
  "internalType": "address",
10
10
  "name": "_complianceRegistry",
11
11
  "type": "address"
12
- },
13
- {
14
- "internalType": "address",
15
- "name": "initialOwner",
16
- "type": "address"
17
12
  }
18
13
  ],
19
14
  "stateMutability": "nonpayable",
@@ -39,6 +34,11 @@
39
34
  "name": "BlacklistedAddress",
40
35
  "type": "error"
41
36
  },
37
+ {
38
+ "inputs": [],
39
+ "name": "CannotDepositAndWithdrawSameBlock",
40
+ "type": "error"
41
+ },
42
42
  {
43
43
  "inputs": [],
44
44
  "name": "CollateralAndParamterDataMismatch",
@@ -114,6 +114,11 @@
114
114
  "name": "MarketNotFound",
115
115
  "type": "error"
116
116
  },
117
+ {
118
+ "inputs": [],
119
+ "name": "NoPendingWithdraw",
120
+ "type": "error"
121
+ },
117
122
  {
118
123
  "inputs": [],
119
124
  "name": "NotInitializing",
@@ -162,6 +167,11 @@
162
167
  "name": "SameAddressNotAllowed",
163
168
  "type": "error"
164
169
  },
170
+ {
171
+ "inputs": [],
172
+ "name": "TimelockDisabled",
173
+ "type": "error"
174
+ },
165
175
  {
166
176
  "inputs": [],
167
177
  "name": "TransferFailed",
@@ -172,6 +182,31 @@
172
182
  "name": "UnauthorizedAccess",
173
183
  "type": "error"
174
184
  },
185
+ {
186
+ "inputs": [],
187
+ "name": "WithdrawAmountTooHigh",
188
+ "type": "error"
189
+ },
190
+ {
191
+ "inputs": [],
192
+ "name": "WithdrawTimelockExpired",
193
+ "type": "error"
194
+ },
195
+ {
196
+ "inputs": [],
197
+ "name": "WithdrawTimelockInvalid",
198
+ "type": "error"
199
+ },
200
+ {
201
+ "inputs": [],
202
+ "name": "WithdrawTimelockNotExpired",
203
+ "type": "error"
204
+ },
205
+ {
206
+ "inputs": [],
207
+ "name": "WithdrawTimelockNotReady",
208
+ "type": "error"
209
+ },
175
210
  {
176
211
  "anonymous": false,
177
212
  "inputs": [
@@ -247,6 +282,50 @@
247
282
  "name": "Deposit",
248
283
  "type": "event"
249
284
  },
285
+ {
286
+ "anonymous": false,
287
+ "inputs": [
288
+ {
289
+ "indexed": true,
290
+ "internalType": "address",
291
+ "name": "token",
292
+ "type": "address"
293
+ },
294
+ {
295
+ "indexed": true,
296
+ "internalType": "address",
297
+ "name": "recipient",
298
+ "type": "address"
299
+ },
300
+ {
301
+ "indexed": false,
302
+ "internalType": "uint256",
303
+ "name": "amount",
304
+ "type": "uint256"
305
+ }
306
+ ],
307
+ "name": "DustCollected",
308
+ "type": "event"
309
+ },
310
+ {
311
+ "anonymous": false,
312
+ "inputs": [
313
+ {
314
+ "indexed": false,
315
+ "internalType": "address",
316
+ "name": "previous",
317
+ "type": "address"
318
+ },
319
+ {
320
+ "indexed": false,
321
+ "internalType": "address",
322
+ "name": "latest",
323
+ "type": "address"
324
+ }
325
+ ],
326
+ "name": "FeeCollectorUpdated",
327
+ "type": "event"
328
+ },
250
329
  {
251
330
  "anonymous": false,
252
331
  "inputs": [
@@ -279,6 +358,56 @@
279
358
  "name": "LiquidationStrategyProxyUpdated",
280
359
  "type": "event"
281
360
  },
361
+ {
362
+ "anonymous": false,
363
+ "inputs": [
364
+ {
365
+ "indexed": false,
366
+ "internalType": "address",
367
+ "name": "previous",
368
+ "type": "address"
369
+ },
370
+ {
371
+ "indexed": false,
372
+ "internalType": "address",
373
+ "name": "latest",
374
+ "type": "address"
375
+ }
376
+ ],
377
+ "name": "LiquidationSwapUpdated",
378
+ "type": "event"
379
+ },
380
+ {
381
+ "anonymous": false,
382
+ "inputs": [
383
+ {
384
+ "indexed": false,
385
+ "internalType": "uint256",
386
+ "name": "mintPercentage",
387
+ "type": "uint256"
388
+ },
389
+ {
390
+ "indexed": false,
391
+ "internalType": "uint256",
392
+ "name": "burnPercentage",
393
+ "type": "uint256"
394
+ },
395
+ {
396
+ "indexed": false,
397
+ "internalType": "uint256",
398
+ "name": "swapPercentage",
399
+ "type": "uint256"
400
+ },
401
+ {
402
+ "indexed": false,
403
+ "internalType": "uint256",
404
+ "name": "liquidityPercentage",
405
+ "type": "uint256"
406
+ }
407
+ ],
408
+ "name": "LiquidationVaultTokenSplitUpdated",
409
+ "type": "event"
410
+ },
282
411
  {
283
412
  "anonymous": false,
284
413
  "inputs": [
@@ -439,6 +568,25 @@
439
568
  "name": "RAACDepositedFromPool",
440
569
  "type": "event"
441
570
  },
571
+ {
572
+ "anonymous": false,
573
+ "inputs": [
574
+ {
575
+ "indexed": false,
576
+ "internalType": "address",
577
+ "name": "previous",
578
+ "type": "address"
579
+ },
580
+ {
581
+ "indexed": false,
582
+ "internalType": "address",
583
+ "name": "latest",
584
+ "type": "address"
585
+ }
586
+ ],
587
+ "name": "RWAVaultUpdated",
588
+ "type": "event"
589
+ },
442
590
  {
443
591
  "anonymous": false,
444
592
  "inputs": [
@@ -472,66 +620,98 @@
472
620
  "internalType": "uint256",
473
621
  "name": "deCRVUSDAmount",
474
622
  "type": "uint256"
475
- },
476
- {
477
- "indexed": false,
478
- "internalType": "uint256",
479
- "name": "raacRewards",
480
- "type": "uint256"
481
623
  }
482
624
  ],
483
625
  "name": "Withdraw",
484
626
  "type": "event"
485
627
  },
486
628
  {
629
+ "anonymous": false,
487
630
  "inputs": [
488
631
  {
632
+ "indexed": true,
489
633
  "internalType": "address",
490
- "name": "manager",
634
+ "name": "user",
491
635
  "type": "address"
492
636
  }
493
637
  ],
494
- "name": "addManager",
495
- "outputs": [],
496
- "stateMutability": "nonpayable",
497
- "type": "function"
638
+ "name": "WithdrawCancelled",
639
+ "type": "event"
498
640
  },
499
641
  {
642
+ "anonymous": false,
500
643
  "inputs": [
501
644
  {
645
+ "indexed": true,
502
646
  "internalType": "address",
503
647
  "name": "user",
504
648
  "type": "address"
505
- }
506
- ],
507
- "name": "balanceOf",
508
- "outputs": [
649
+ },
509
650
  {
651
+ "indexed": false,
510
652
  "internalType": "uint256",
511
- "name": "",
653
+ "name": "amount",
654
+ "type": "uint256"
655
+ },
656
+ {
657
+ "indexed": false,
658
+ "internalType": "uint256",
659
+ "name": "readyAt",
512
660
  "type": "uint256"
513
661
  }
514
662
  ],
515
- "stateMutability": "view",
516
- "type": "function"
663
+ "name": "WithdrawQueued",
664
+ "type": "event"
517
665
  },
518
666
  {
667
+ "anonymous": false,
519
668
  "inputs": [
520
669
  {
670
+ "indexed": false,
671
+ "internalType": "uint256",
672
+ "name": "previous",
673
+ "type": "uint256"
674
+ },
675
+ {
676
+ "indexed": false,
521
677
  "internalType": "uint256",
522
- "name": "rcrvUSDAmount",
678
+ "name": "latest",
523
679
  "type": "uint256"
524
680
  }
525
681
  ],
526
- "name": "calculateDeCRVUSDAmount",
527
- "outputs": [
682
+ "name": "WithdrawTimelockDelayUpdated",
683
+ "type": "event"
684
+ },
685
+ {
686
+ "anonymous": false,
687
+ "inputs": [
688
+ {
689
+ "indexed": false,
690
+ "internalType": "uint256",
691
+ "name": "previous",
692
+ "type": "uint256"
693
+ },
528
694
  {
695
+ "indexed": false,
529
696
  "internalType": "uint256",
530
- "name": "",
697
+ "name": "latest",
531
698
  "type": "uint256"
532
699
  }
533
700
  ],
534
- "stateMutability": "view",
701
+ "name": "WithdrawTimelockDurationUpdated",
702
+ "type": "event"
703
+ },
704
+ {
705
+ "inputs": [
706
+ {
707
+ "internalType": "address",
708
+ "name": "manager",
709
+ "type": "address"
710
+ }
711
+ ],
712
+ "name": "addManager",
713
+ "outputs": [],
714
+ "stateMutability": "nonpayable",
535
715
  "type": "function"
536
716
  },
537
717
  {
@@ -542,7 +722,7 @@
542
722
  "type": "address"
543
723
  }
544
724
  ],
545
- "name": "calculateRaacRewards",
725
+ "name": "balanceOf",
546
726
  "outputs": [
547
727
  {
548
728
  "internalType": "uint256",
@@ -556,20 +736,24 @@
556
736
  {
557
737
  "inputs": [
558
738
  {
559
- "internalType": "uint256",
560
- "name": "deCRVUSDAmount",
561
- "type": "uint256"
562
- }
563
- ],
564
- "name": "calculateRcrvUSDAmount",
565
- "outputs": [
739
+ "internalType": "address",
740
+ "name": "token",
741
+ "type": "address"
742
+ },
743
+ {
744
+ "internalType": "address",
745
+ "name": "recipient",
746
+ "type": "address"
747
+ },
566
748
  {
567
749
  "internalType": "uint256",
568
- "name": "",
750
+ "name": "amount",
569
751
  "type": "uint256"
570
752
  }
571
753
  ],
572
- "stateMutability": "view",
754
+ "name": "collectDust",
755
+ "outputs": [],
756
+ "stateMutability": "nonpayable",
573
757
  "type": "function"
574
758
  },
575
759
  {
@@ -612,29 +796,48 @@
612
796
  "type": "function"
613
797
  },
614
798
  {
615
- "inputs": [],
616
- "name": "deTokenDecimals",
617
- "outputs": [
799
+ "inputs": [
618
800
  {
619
- "internalType": "uint8",
620
- "name": "",
621
- "type": "uint8"
801
+ "internalType": "uint256",
802
+ "name": "scaledAmount",
803
+ "type": "uint256"
622
804
  }
623
805
  ],
624
- "stateMutability": "view",
806
+ "name": "deposit",
807
+ "outputs": [],
808
+ "stateMutability": "nonpayable",
625
809
  "type": "function"
626
810
  },
627
811
  {
628
812
  "inputs": [
813
+ {
814
+ "internalType": "address",
815
+ "name": "",
816
+ "type": "address"
817
+ }
818
+ ],
819
+ "name": "depositBlock",
820
+ "outputs": [
629
821
  {
630
822
  "internalType": "uint256",
631
- "name": "amount",
823
+ "name": "",
632
824
  "type": "uint256"
633
825
  }
634
826
  ],
635
- "name": "deposit",
636
- "outputs": [],
637
- "stateMutability": "nonpayable",
827
+ "stateMutability": "view",
828
+ "type": "function"
829
+ },
830
+ {
831
+ "inputs": [],
832
+ "name": "feeCollector",
833
+ "outputs": [
834
+ {
835
+ "internalType": "address",
836
+ "name": "",
837
+ "type": "address"
838
+ }
839
+ ],
840
+ "stateMutability": "view",
638
841
  "type": "function"
639
842
  },
640
843
  {
@@ -650,6 +853,32 @@
650
853
  "stateMutability": "view",
651
854
  "type": "function"
652
855
  },
856
+ {
857
+ "inputs": [],
858
+ "name": "getPoolIndex",
859
+ "outputs": [
860
+ {
861
+ "internalType": "uint256",
862
+ "name": "",
863
+ "type": "uint256"
864
+ }
865
+ ],
866
+ "stateMutability": "view",
867
+ "type": "function"
868
+ },
869
+ {
870
+ "inputs": [],
871
+ "name": "getRawTotalDeposits",
872
+ "outputs": [
873
+ {
874
+ "internalType": "uint256",
875
+ "name": "",
876
+ "type": "uint256"
877
+ }
878
+ ],
879
+ "stateMutability": "view",
880
+ "type": "function"
881
+ },
653
882
  {
654
883
  "inputs": [
655
884
  {
@@ -658,7 +887,7 @@
658
887
  "type": "address"
659
888
  }
660
889
  ],
661
- "name": "getPendingRewards",
890
+ "name": "getScaledDeposit",
662
891
  "outputs": [
663
892
  {
664
893
  "internalType": "uint256",
@@ -705,17 +934,31 @@
705
934
  "inputs": [
706
935
  {
707
936
  "internalType": "address",
708
- "name": "_rToken",
937
+ "name": "user",
709
938
  "type": "address"
710
- },
939
+ }
940
+ ],
941
+ "name": "getUserIndex",
942
+ "outputs": [
943
+ {
944
+ "internalType": "uint256",
945
+ "name": "",
946
+ "type": "uint256"
947
+ }
948
+ ],
949
+ "stateMutability": "view",
950
+ "type": "function"
951
+ },
952
+ {
953
+ "inputs": [
711
954
  {
712
955
  "internalType": "address",
713
- "name": "_deToken",
956
+ "name": "_rToken",
714
957
  "type": "address"
715
958
  },
716
959
  {
717
960
  "internalType": "address",
718
- "name": "_raacToken",
961
+ "name": "_deToken",
719
962
  "type": "address"
720
963
  },
721
964
  {
@@ -737,6 +980,11 @@
737
980
  "internalType": "address",
738
981
  "name": "_liquidationStrategyProxy",
739
982
  "type": "address"
983
+ },
984
+ {
985
+ "internalType": "address",
986
+ "name": "_initialOwner",
987
+ "type": "address"
740
988
  }
741
989
  ],
742
990
  "name": "initialize",
@@ -782,6 +1030,25 @@
782
1030
  "stateMutability": "view",
783
1031
  "type": "function"
784
1032
  },
1033
+ {
1034
+ "inputs": [
1035
+ {
1036
+ "internalType": "address",
1037
+ "name": "user",
1038
+ "type": "address"
1039
+ }
1040
+ ],
1041
+ "name": "isUserDepositInSameBlock",
1042
+ "outputs": [
1043
+ {
1044
+ "internalType": "bool",
1045
+ "name": "",
1046
+ "type": "bool"
1047
+ }
1048
+ ],
1049
+ "stateMutability": "view",
1050
+ "type": "function"
1051
+ },
785
1052
  {
786
1053
  "inputs": [],
787
1054
  "name": "lendingPool",
@@ -816,6 +1083,11 @@
816
1083
  "internalType": "bytes",
817
1084
  "name": "data",
818
1085
  "type": "bytes"
1086
+ },
1087
+ {
1088
+ "internalType": "uint256",
1089
+ "name": "minSharesOut",
1090
+ "type": "uint256"
819
1091
  }
820
1092
  ],
821
1093
  "name": "liquidateBorrower",
@@ -877,19 +1149,6 @@
877
1149
  "stateMutability": "view",
878
1150
  "type": "function"
879
1151
  },
880
- {
881
- "inputs": [],
882
- "name": "liquidityGauge",
883
- "outputs": [
884
- {
885
- "internalType": "address",
886
- "name": "",
887
- "type": "address"
888
- }
889
- ],
890
- "stateMutability": "view",
891
- "type": "function"
892
- },
893
1152
  {
894
1153
  "inputs": [
895
1154
  {
@@ -909,19 +1168,6 @@
909
1168
  "stateMutability": "view",
910
1169
  "type": "function"
911
1170
  },
912
- {
913
- "inputs": [],
914
- "name": "minter",
915
- "outputs": [
916
- {
917
- "internalType": "contract IRAACMinter",
918
- "name": "",
919
- "type": "address"
920
- }
921
- ],
922
- "stateMutability": "view",
923
- "type": "function"
924
- },
925
1171
  {
926
1172
  "inputs": [
927
1173
  {
@@ -1002,32 +1248,6 @@
1002
1248
  "stateMutability": "view",
1003
1249
  "type": "function"
1004
1250
  },
1005
- {
1006
- "inputs": [],
1007
- "name": "rTokenDecimals",
1008
- "outputs": [
1009
- {
1010
- "internalType": "uint8",
1011
- "name": "",
1012
- "type": "uint8"
1013
- }
1014
- ],
1015
- "stateMutability": "view",
1016
- "type": "function"
1017
- },
1018
- {
1019
- "inputs": [],
1020
- "name": "raacToken",
1021
- "outputs": [
1022
- {
1023
- "internalType": "contract IRAACToken",
1024
- "name": "",
1025
- "type": "address"
1026
- }
1027
- ],
1028
- "stateMutability": "view",
1029
- "type": "function"
1030
- },
1031
1251
  {
1032
1252
  "inputs": [
1033
1253
  {
@@ -1048,6 +1268,19 @@
1048
1268
  "stateMutability": "nonpayable",
1049
1269
  "type": "function"
1050
1270
  },
1271
+ {
1272
+ "inputs": [
1273
+ {
1274
+ "internalType": "uint256",
1275
+ "name": "amount",
1276
+ "type": "uint256"
1277
+ }
1278
+ ],
1279
+ "name": "requestWithdraw",
1280
+ "outputs": [],
1281
+ "stateMutability": "nonpayable",
1282
+ "type": "function"
1283
+ },
1051
1284
  {
1052
1285
  "inputs": [],
1053
1286
  "name": "rwaVault",
@@ -1061,6 +1294,19 @@
1061
1294
  "stateMutability": "view",
1062
1295
  "type": "function"
1063
1296
  },
1297
+ {
1298
+ "inputs": [
1299
+ {
1300
+ "internalType": "address",
1301
+ "name": "_feeCollector",
1302
+ "type": "address"
1303
+ }
1304
+ ],
1305
+ "name": "setFeeCollector",
1306
+ "outputs": [],
1307
+ "stateMutability": "nonpayable",
1308
+ "type": "function"
1309
+ },
1064
1310
  {
1065
1311
  "inputs": [
1066
1312
  {
@@ -1119,11 +1365,11 @@
1119
1365
  "inputs": [
1120
1366
  {
1121
1367
  "internalType": "address",
1122
- "name": "_liquidityGauge",
1368
+ "name": "_rwaVault",
1123
1369
  "type": "address"
1124
1370
  }
1125
1371
  ],
1126
- "name": "setLiquidityGauge",
1372
+ "name": "setRWAVault",
1127
1373
  "outputs": [],
1128
1374
  "stateMutability": "nonpayable",
1129
1375
  "type": "function"
@@ -1131,12 +1377,12 @@
1131
1377
  {
1132
1378
  "inputs": [
1133
1379
  {
1134
- "internalType": "address",
1135
- "name": "_minter",
1136
- "type": "address"
1380
+ "internalType": "uint256",
1381
+ "name": "_withdrawTimelockDelay",
1382
+ "type": "uint256"
1137
1383
  }
1138
1384
  ],
1139
- "name": "setMinter",
1385
+ "name": "setWithdrawTimelockDelay",
1140
1386
  "outputs": [],
1141
1387
  "stateMutability": "nonpayable",
1142
1388
  "type": "function"
@@ -1144,12 +1390,12 @@
1144
1390
  {
1145
1391
  "inputs": [
1146
1392
  {
1147
- "internalType": "address",
1148
- "name": "_rwaVault",
1149
- "type": "address"
1393
+ "internalType": "uint256",
1394
+ "name": "_withdrawTimelockDuration",
1395
+ "type": "uint256"
1150
1396
  }
1151
1397
  ],
1152
- "name": "setRWAVault",
1398
+ "name": "setWithdrawTimelockDuration",
1153
1399
  "outputs": [],
1154
1400
  "stateMutability": "nonpayable",
1155
1401
  "type": "function"
@@ -1187,6 +1433,19 @@
1187
1433
  "stateMutability": "nonpayable",
1188
1434
  "type": "function"
1189
1435
  },
1436
+ {
1437
+ "inputs": [
1438
+ {
1439
+ "internalType": "uint256",
1440
+ "name": "deTokenAmount",
1441
+ "type": "uint256"
1442
+ }
1443
+ ],
1444
+ "name": "withdraw",
1445
+ "outputs": [],
1446
+ "stateMutability": "nonpayable",
1447
+ "type": "function"
1448
+ },
1190
1449
  {
1191
1450
  "inputs": [
1192
1451
  {
@@ -1195,7 +1454,45 @@
1195
1454
  "type": "address"
1196
1455
  }
1197
1456
  ],
1198
- "name": "userDeposits",
1457
+ "name": "withdrawTimelock",
1458
+ "outputs": [
1459
+ {
1460
+ "internalType": "uint256",
1461
+ "name": "amount",
1462
+ "type": "uint256"
1463
+ },
1464
+ {
1465
+ "internalType": "uint256",
1466
+ "name": "indexAtRequest",
1467
+ "type": "uint256"
1468
+ },
1469
+ {
1470
+ "internalType": "uint256",
1471
+ "name": "balanceAtRequest",
1472
+ "type": "uint256"
1473
+ },
1474
+ {
1475
+ "internalType": "uint256",
1476
+ "name": "userIndexAtRequest",
1477
+ "type": "uint256"
1478
+ },
1479
+ {
1480
+ "internalType": "uint256",
1481
+ "name": "readyAt",
1482
+ "type": "uint256"
1483
+ },
1484
+ {
1485
+ "internalType": "uint256",
1486
+ "name": "expireAt",
1487
+ "type": "uint256"
1488
+ }
1489
+ ],
1490
+ "stateMutability": "view",
1491
+ "type": "function"
1492
+ },
1493
+ {
1494
+ "inputs": [],
1495
+ "name": "withdrawTimelockDelay",
1199
1496
  "outputs": [
1200
1497
  {
1201
1498
  "internalType": "uint256",
@@ -1207,21 +1504,21 @@
1207
1504
  "type": "function"
1208
1505
  },
1209
1506
  {
1210
- "inputs": [
1507
+ "inputs": [],
1508
+ "name": "withdrawTimelockDuration",
1509
+ "outputs": [
1211
1510
  {
1212
1511
  "internalType": "uint256",
1213
- "name": "deCRVUSDAmount",
1512
+ "name": "",
1214
1513
  "type": "uint256"
1215
1514
  }
1216
1515
  ],
1217
- "name": "withdraw",
1218
- "outputs": [],
1219
- "stateMutability": "nonpayable",
1516
+ "stateMutability": "view",
1220
1517
  "type": "function"
1221
1518
  }
1222
1519
  ],
1223
- "bytecode": "0x60c034620000d457601f620020fc38819003918201601f19168301916001600160401b03831184841017620000d9578084926040948552833981010312620000d4576200005a60206200005283620000ef565b9201620000ef565b6001601155906001600160a01b031680156200009f5760805260a052604051611ff79081620001058239608051818181611173015261133e015260a051816116620152f35b60405162461bcd60e51b815260206004820152600d60248201526c5a65726f20726567697374727960981b6044820152606490fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b0382168203620000d45756fe6080604052600436101561001257600080fd5b60003560e01c806303df1954146102e3578063048bf085146102de57806307546172146102d95780630ba36dcd14610248578063150b7a02146102d4578063168a4822146102cf578063201d69e2146102ca57806328f7a355146102c55780632d06177a146102c05780632e1a7d4d146102bb57806331cc0278146102b657806335876476146102b15780633f4ba83a146102ac57806340c65f72146102a75780635c975abb146102a257806361d027b31461029d578063631ca5b71461029857806370a0823114610248578063715018a61461029357806371dccd241461022057806375d412891461028e5780637c2b606a146102255780638456cb59146102895780638da5cb5b1461028457806392c4c25f1461027f578063934114e91461027a5780639766e7b014610275578063a59a997314610270578063ac18de431461026b578063b00451d814610266578063b01cd32314610261578063b6b55f251461025c578063b7d3e97a14610257578063baaa3ca314610252578063bb2436b01461024d578063c084b10b14610248578063cac89c5c14610243578063d4bb70181461023e578063db56ea3514610239578063e40963f214610234578063e94f729a1461022f578063f2fde38b1461022a578063f3ae241514610225578063f6ed201714610220578063f9a0be681461021b5763fca3b5aa1461021657600080fd5b6114fb565b6114d2565b610d54565b610d9d565b6114a9565b611485565b61145c565b611413565b61136d565b611328565b610533565b61130a565b6112d3565b611216565b61112e565b611085565b61105c565b610f2b565b610f02565b610ed9565b610eb0565b610e8c565b610e56565b610ddc565b610d7f565b610cf8565b610ccf565b610ca6565b610c76565b610c4d565b610bd6565b610a70565b610a2d565b610827565b61075c565b610733565b6106f0565b610667565b6105d9565b6104d6565b610488565b346103dd5760803660031901126103dd57600435602435604435906064359133600052600960205260ff6040600020541615806103bb575b6103a9578184018085116103a4578181018091116103a4578381018091116103a457612710036103695761035d6103629261035861036796600d55565b600e55565b600f55565b601055565b005b60405162461bcd60e51b8152602060048201526013602482015272696e76616c69642070657263656e746167657360681b6044820152606490fd5b61191e565b604051631a27eac360e11b8152600490fd5b50600080516020611f42833981519152546001600160a01b031633141561031b565b600080fd5b6001600160a01b031690565b600435906001600160a01b03821682036103dd57565b602435906001600160a01b03821682036103dd57565b604435906001600160a01b03821682036103dd57565b606435906001600160a01b03821682036103dd57565b608435906001600160a01b03821682036103dd57565b60a435906001600160a01b03821682036103dd57565b60c435906001600160a01b03821682036103dd57565b346103dd5760203660031901126103dd576104a16103ee565b6104a961153e565b600580546001600160a01b0319166001600160a01b0392909216919091179055005b60009103126103dd57565b346103dd5760003660031901126103dd57600c546040516001600160a01b039091168152602090f35b6001600160a01b0316600090815260096020526040902090565b6001600160a01b03166000908152600b6020526040902090565b346103dd5760203660031901126103dd576001600160a01b036105546103ee565b16600052600b6020526020604060002054604051908152f35b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161059657604052565b61056d565b601f909101601f19168101906001600160401b0382119082101761059657604052565b6001600160401b03811161059657601f01601f191660200190565b346103dd5760803660031901126103dd576105f26103ee565b506105fb610404565b506064356001600160401b0381116103dd57366023820112156103dd57806004013590610627826105be565b91610635604051938461059b565b80835236602482840101116103dd576000928160246020940184830137010152604051630a85bd0160e11b8152602090f35b346103dd5760003660031901126103dd57600054604051630481930d60e21b815230600482015290602090829060249082906001600160a01b03165afa80156106eb576020916000916106be575b50604051908152f35b6106de9150823d81116106e4575b6106d6818361059b565b810190611b07565b386106b5565b503d6106cc565b6115f2565b346103dd5760203660031901126103dd576107096103ee565b61071161153e565b600680546001600160a01b0319166001600160a01b0392909216919091179055005b346103dd5760003660031901126103dd576001546040516001600160a01b039091168152602090f35b346103dd5760203660031901126103dd576107756103ee565b61077d61153e565b6001600160a01b03811660008181526009602052604081205490929060ff166107e957806107bd6107b06107c2936104ff565b805460ff19166001179055565b611c97565b7f3b4a40cccf2058c593542587329dd385be4f0b588db5471fbd9598e56dd7093a8280a280f35b60405162461bcd60e51b81526020600482015260166024820152754d616e6167657220616c72656164792065786973747360501b6044820152606490fd5b346103dd5760203660031901126103dd576004803590610845611ae4565b61084d611a5d565b8115610a1e5761085b611d50565b61086e6108696001546103e2565b6103e2565b602060405180926370a0823160e01b8252818061088d33888301610e43565b03915afa80156106eb578391600091610a00575b50106109f1576108b082611dff565b916108ba33611e3e565b90836108c533610519565b54106109e0576108d433610519565b6108df858254611b25565b90556108ea33610519565b54156109cf575b6108ff6108696001546103e2565b803b156103dd578160009161092b9583604051809881958294632770a7eb60e21b845233908401611903565b03925af19283156106eb577f02f25270a4d87bea75db541cdfe559334a275b4a233520ed6c0a2429667cca94936109b6575b5061097684336109716108696000546103e2565b611b32565b8161099e575b6040805194855260208501919091528301523391606090a26103676001601155565b6109b182336109716108696002546103e2565b61097c565b806109c36109c992610583565b806104cb565b3861095d565b60006109da33610519565b556108f1565b604051631e9acf1760e31b81528390fd5b604051631e9acf1760e31b8152fd5b610a18915060203d81116106e4576106d6818361059b565b386108a1565b60405163162908e360e11b8152fd5b346103dd5760203660031901126103dd57610a466103ee565b610a4e61153e565b600780546001600160a01b0319166001600160a01b0392909216919091179055005b346103dd5760e03660031901126103dd57610a896103ee565b610a91610404565b90610a9a61041a565b610aa2610430565b610aaa610446565b610ab261045c565b91610abb610472565b600080516020611fa283398151915254604081901c60ff161597919591906001600160401b031680159081610bce575b6001149081610bc4575b159081610bbb575b50610ba957600080516020611fa283398151915280546001600160401b0319166001179055610b309688610b84576115fe565b610b3657005b600080516020611fa2833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29080602081015b0390a1005b600080516020611fa2833981519152805460ff60401b1916600160401b1790556115fe565b60405163f92ee8a960e01b8152600490fd5b90501538610afd565b303b159150610af5565b899150610aeb565b346103dd5760003660031901126103dd57610bef61153e565b600080516020611f82833981519152805460ff811615610c3b5760ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b604051638dfc202b60e01b8152600490fd5b346103dd5760003660031901126103dd576000546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd57602060ff600080516020611f8283398151915254166040519015158152f35b346103dd5760003660031901126103dd576008546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576007546040516001600160a01b039091168152602090f35b346103dd57600080600319360112610d5157610d1261153e565b600080516020611f4283398151915280546001600160a01b0319811690915581906001600160a01b0316600080516020611f628339815191528280a380f35b80fd5b346103dd5760203660031901126103dd576020610d77610d726103ee565b611e3e565b604051908152f35b346103dd5760203660031901126103dd576020610d77600435611dff565b346103dd5760203660031901126103dd576001600160a01b03610dbe6103ee565b166000526009602052602060ff604060002054166040519015158152f35b346103dd5760003660031901126103dd57610df561153e565b610dfd611a5d565b600080516020611f82833981519152600160ff198254161790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b6001600160a01b03909116815260200190565b346103dd5760003660031901126103dd57600080516020611f42833981519152546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd57602060ff600c5460a81c16604051908152f35b346103dd5760003660031901126103dd576006546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576004546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576003546040516001600160a01b039091168152602090f35b346103dd5760203660031901126103dd57610f446103ee565b610f4c61153e565b610f66610f62610f5b836104ff565b5460ff1690565b1590565b61104a57610f80610f76826104ff565b805460ff19169055565b6001600160a01b039081169060005b600a5480821015611042578383610fbd610fa8856113f3565b905460039190911b1c6001600160a01b031690565b1614610fd25750610fcd90611ce9565b610f8f565b6110139250610fee610fa8610fe9610ff493611b16565b6113f3565b916113f3565b90919082549060031b9160018060a01b03809116831b921b1916179055565b61101b611cf8565b7fef69f7d97228658c92417be1b16b19058315de71fecb435d07b7d23728b6bd31600080a2005b50505061101b565b6040516322a5e34b60e01b8152600490fd5b346103dd5760003660031901126103dd576012546040516001600160a01b039091168152602090f35b346103dd57600080600319360112610d51576040518091600a549081835260208093018092600a835284832090835b81811061111157505050846110ca91038561059b565b60405193838594850191818652518092526040850193925b8281106110f157505050500390f35b83516001600160a01b0316855286955093810193928101926001016110e2565b82546001600160a01b0316845292860192600192830192016110b4565b346103dd5760203660031901126103dd5760043561114a611ae4565b611152611a5d565b80156112045760405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9081156106eb576000916111d6575b506111c4576111ba90611941565b6103676001601155565b604051632652747360e21b8152600490fd5b6111f7915060203d81116111fd575b6111ef818361059b565b8101906118eb565b386111ac565b503d6111e5565b60405163162908e360e11b8152600490fd5b346103dd5760203660031901126103dd5761122f6103ee565b61123761153e565b6001600160a01b039080821680156112c157601254928316908181146112af576001600160a01b031990931692909217601255604080516001600160a01b0393841681529190921660208201527fee76f64ea0204b40f46a632a9c93079e8225b5a6983c82fcb269aa46949f487d9181908101610b7f565b60405163aba916dd60e01b8152600490fd5b6040516303988b8160e61b8152600490fd5b346103dd5760003660031901126103dd576080600d54600e54600f5460105491604051938452602084015260408301526060820152f35b346103dd5760203660031901126103dd576020610d77600435611dd2565b346103dd5760003660031901126103dd576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346103dd5760803660031901126103dd576113866103ee565b61138e610404565b61139661041a565b606435926001600160401b03929091908385116103dd57366023860112156103dd5784600401359384116103dd5736602485870101116103dd576024610367950192611b6c565b634e487b7160e01b600052603260045260246000fd5b600a5481101561140e57600a60005260206000200190600090565b6113dd565b346103dd5760203660031901126103dd57600435600a548110156103dd57600a600052600080516020611f2283398151915201546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576002546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd57602060ff600c5460a01c16604051908152f35b346103dd5760203660031901126103dd576103676114c56103ee565b6114cd61153e565b611577565b346103dd5760003660031901126103dd576005546040516001600160a01b039091168152602090f35b346103dd5760203660031901126103dd576115146103ee565b61151c61153e565b600c80546001600160a01b0319166001600160a01b0392909216919091179055005b600080516020611f42833981519152546001600160a01b0316330361155f57565b60405163118cdaa760e01b8152336004820152602490fd5b6001600160a01b039081169081156115c057600080516020611f4283398151915280546001600160a01b03198116841790915516600080516020611f62833981519152600080a3565b604051631e4fbdf760e01b815260006004820152602490fd5b908160209103126103dd575160ff811681036103dd5790565b6040513d6000823e3d90fd5b6001600160a01b039081169693959091871580156118a2575b8015611898575b801561188e575b8015611884575b801561187a575b8015611870575b61185e57826117809661171a826116d69a6116f88261175e9a8f61173c996116b084926116867f00000000000000000000000000000000000000000000000000000000000000006118ac565b61168e6118bc565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600180546001600160a01b0319166001600160a01b03939092169283169190911790559e565b60028054919092166001600160a01b03166001600160a01b0319909116179055565b60048054919092166001600160a01b03166001600160a01b0319909116179055565b60038054919092166001600160a01b03166001600160a01b0319909116179055565b60088054919092166001600160a01b03166001600160a01b0319909116179055565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b60405163313ce56760e01b8082526020938490839060049082905afa9182156106eb5784926117d191600091611841575b50600c805460ff60a01b191660a09290921b60ff60a01b16919091179055565b60046040518094819382525afa9081156106eb5761181292600092611814575b5050600c805460ff60a81b191660a89290921b60ff60a81b16919091179055565b565b6118339250803d1061183a575b61182b818361059b565b8101906115d9565b38806117f1565b503d611821565b6118589150843d861161183a5761182b818361059b565b386117b1565b60405163e6c4247b60e01b8152600490fd5b508285161561163a565b5082821615611633565b508286161561162c565b5082871615611625565b508284161561161e565b5082811615611617565b611812906118b86118bc565b6114cd5b60ff600080516020611fa28339815191525460401c16156118d957565b604051631afcd79f60e31b8152600490fd5b908160209103126103dd575180151581036103dd5790565b6001600160a01b039091168152602081019190915260400190565b634e487b7160e01b600052601160045260246000fd5b919082018092116103a457565b611949611d50565b6000546040516323b872dd60e01b60208201523360248201523060448201526064808201849052815260a08101916001600160a01b03166001600160401b038311828410176105965761199e92604052611a88565b6119a781611dd2565b6119b56108696001546103e2565b90813b156103dd57600060405180936340c10f1960e01b82528183816119df873360048401611903565b03925af19081156106eb577f90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a1592611a4592611a4a575b50611a1f33610519565b611a2a858254611934565b90556040805194855260208501919091523393918291820190565b0390a2565b806109c3611a5792610583565b38611a15565b60ff600080516020611f828339815191525416611a7657565b60405163d93c066560e01b8152600490fd5b906000602091828151910182855af1156115f2576000513d611adb57506001600160a01b0381163b155b611ab95750565b604051635274afe760e01b81526001600160a01b039091166004820152602490fd5b60011415611ab2565b600260115414611af5576002601155565b604051633ee5aeb560e01b8152600490fd5b908160209103126103dd575190565b6000198101919082116103a457565b919082039182116103a457565b611b676118129392611b5960405194859263a9059cbb60e01b602085015260248401611903565b03601f19810184528361059b565b611a88565b9391909293600094338652600960205260ff6040872054161580611c45575b6103a957611c1860c487968796611ba0611ae4565b611ba8611a5d565b611bb0611d50565b8060018060a01b03958680601254169960405198899681602089019c8d631a976e0360e31b9052166024890152166044870152166064850152608060848501528160a48501528484013787838284010152601f801991011681010360a481018452018261059b565b51915af4611c24611c67565b9015611c365750506118126001601155565b8051918215610d515750602001fd5b50600080516020611f42833981519152546001600160a01b0316331415611b8b565b3d15611c92573d90611c78826105be565b91611c86604051938461059b565b82523d6000602084013e565b606090565b600a54600160401b811015610596576001810180600a5581101561140e57600a600052600080516020611f228339815191520180546001600160a01b0319166001600160a01b03909216919091179055565b60001981146103a45760010190565b600a548015611d3a57600019818101918083101561140e57600a60008190529101600080516020611f228339815191520180546001600160a01b031916905555565b634e487b7160e01b600052603160045260246000fd5b600c546001600160a01b031680611d645750565b803b156103dd5760008091600460405180948193633eaf5d9f60e01b83525af180156106eb57611d915750565b61181290610583565b9060ff8091169116039060ff82116103a457565b60ff16604d81116103a457600a0a90565b818102929181159184041417156103a457565b611dfc90611df6611df1600c5460ff808260a01c169160a81c16611d9a565b611dae565b90611dbf565b90565b611dfc90611df6611df1600c5460ff808260a81c169160a01c16611d9a565b8115611e28570490565b634e487b7160e01b600052601260045260246000fd5b611e4790610519565b54611e566108696001546103e2565b60405180916318160ddd60e01b825281600460209384935afa9182156106eb57600092611f02575b50611e8d6108696002546103e2565b8160405180926370a0823160e01b82528180611eac3060048301610e43565b03915afa9182156106eb57600092611ee5575b5050620f42408210611edd57611dfc92611ed891611dbf565b611e1e565b505050600090565b611efb9250803d106106e4576106d6818361059b565b3880611ebf565b81611f1a9293503d84116106e4576106d6818361059b565b9038611e7e56fec65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a89016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c1993008be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220abe9f565eaa272120d324529038d8cc908392b41c8a106f2bf657698f2e54b7f64736f6c63430008140033",
1224
- "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c806303df1954146102e3578063048bf085146102de57806307546172146102d95780630ba36dcd14610248578063150b7a02146102d4578063168a4822146102cf578063201d69e2146102ca57806328f7a355146102c55780632d06177a146102c05780632e1a7d4d146102bb57806331cc0278146102b657806335876476146102b15780633f4ba83a146102ac57806340c65f72146102a75780635c975abb146102a257806361d027b31461029d578063631ca5b71461029857806370a0823114610248578063715018a61461029357806371dccd241461022057806375d412891461028e5780637c2b606a146102255780638456cb59146102895780638da5cb5b1461028457806392c4c25f1461027f578063934114e91461027a5780639766e7b014610275578063a59a997314610270578063ac18de431461026b578063b00451d814610266578063b01cd32314610261578063b6b55f251461025c578063b7d3e97a14610257578063baaa3ca314610252578063bb2436b01461024d578063c084b10b14610248578063cac89c5c14610243578063d4bb70181461023e578063db56ea3514610239578063e40963f214610234578063e94f729a1461022f578063f2fde38b1461022a578063f3ae241514610225578063f6ed201714610220578063f9a0be681461021b5763fca3b5aa1461021657600080fd5b6114fb565b6114d2565b610d54565b610d9d565b6114a9565b611485565b61145c565b611413565b61136d565b611328565b610533565b61130a565b6112d3565b611216565b61112e565b611085565b61105c565b610f2b565b610f02565b610ed9565b610eb0565b610e8c565b610e56565b610ddc565b610d7f565b610cf8565b610ccf565b610ca6565b610c76565b610c4d565b610bd6565b610a70565b610a2d565b610827565b61075c565b610733565b6106f0565b610667565b6105d9565b6104d6565b610488565b346103dd5760803660031901126103dd57600435602435604435906064359133600052600960205260ff6040600020541615806103bb575b6103a9578184018085116103a4578181018091116103a4578381018091116103a457612710036103695761035d6103629261035861036796600d55565b600e55565b600f55565b601055565b005b60405162461bcd60e51b8152602060048201526013602482015272696e76616c69642070657263656e746167657360681b6044820152606490fd5b61191e565b604051631a27eac360e11b8152600490fd5b50600080516020611f42833981519152546001600160a01b031633141561031b565b600080fd5b6001600160a01b031690565b600435906001600160a01b03821682036103dd57565b602435906001600160a01b03821682036103dd57565b604435906001600160a01b03821682036103dd57565b606435906001600160a01b03821682036103dd57565b608435906001600160a01b03821682036103dd57565b60a435906001600160a01b03821682036103dd57565b60c435906001600160a01b03821682036103dd57565b346103dd5760203660031901126103dd576104a16103ee565b6104a961153e565b600580546001600160a01b0319166001600160a01b0392909216919091179055005b60009103126103dd57565b346103dd5760003660031901126103dd57600c546040516001600160a01b039091168152602090f35b6001600160a01b0316600090815260096020526040902090565b6001600160a01b03166000908152600b6020526040902090565b346103dd5760203660031901126103dd576001600160a01b036105546103ee565b16600052600b6020526020604060002054604051908152f35b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161059657604052565b61056d565b601f909101601f19168101906001600160401b0382119082101761059657604052565b6001600160401b03811161059657601f01601f191660200190565b346103dd5760803660031901126103dd576105f26103ee565b506105fb610404565b506064356001600160401b0381116103dd57366023820112156103dd57806004013590610627826105be565b91610635604051938461059b565b80835236602482840101116103dd576000928160246020940184830137010152604051630a85bd0160e11b8152602090f35b346103dd5760003660031901126103dd57600054604051630481930d60e21b815230600482015290602090829060249082906001600160a01b03165afa80156106eb576020916000916106be575b50604051908152f35b6106de9150823d81116106e4575b6106d6818361059b565b810190611b07565b386106b5565b503d6106cc565b6115f2565b346103dd5760203660031901126103dd576107096103ee565b61071161153e565b600680546001600160a01b0319166001600160a01b0392909216919091179055005b346103dd5760003660031901126103dd576001546040516001600160a01b039091168152602090f35b346103dd5760203660031901126103dd576107756103ee565b61077d61153e565b6001600160a01b03811660008181526009602052604081205490929060ff166107e957806107bd6107b06107c2936104ff565b805460ff19166001179055565b611c97565b7f3b4a40cccf2058c593542587329dd385be4f0b588db5471fbd9598e56dd7093a8280a280f35b60405162461bcd60e51b81526020600482015260166024820152754d616e6167657220616c72656164792065786973747360501b6044820152606490fd5b346103dd5760203660031901126103dd576004803590610845611ae4565b61084d611a5d565b8115610a1e5761085b611d50565b61086e6108696001546103e2565b6103e2565b602060405180926370a0823160e01b8252818061088d33888301610e43565b03915afa80156106eb578391600091610a00575b50106109f1576108b082611dff565b916108ba33611e3e565b90836108c533610519565b54106109e0576108d433610519565b6108df858254611b25565b90556108ea33610519565b54156109cf575b6108ff6108696001546103e2565b803b156103dd578160009161092b9583604051809881958294632770a7eb60e21b845233908401611903565b03925af19283156106eb577f02f25270a4d87bea75db541cdfe559334a275b4a233520ed6c0a2429667cca94936109b6575b5061097684336109716108696000546103e2565b611b32565b8161099e575b6040805194855260208501919091528301523391606090a26103676001601155565b6109b182336109716108696002546103e2565b61097c565b806109c36109c992610583565b806104cb565b3861095d565b60006109da33610519565b556108f1565b604051631e9acf1760e31b81528390fd5b604051631e9acf1760e31b8152fd5b610a18915060203d81116106e4576106d6818361059b565b386108a1565b60405163162908e360e11b8152fd5b346103dd5760203660031901126103dd57610a466103ee565b610a4e61153e565b600780546001600160a01b0319166001600160a01b0392909216919091179055005b346103dd5760e03660031901126103dd57610a896103ee565b610a91610404565b90610a9a61041a565b610aa2610430565b610aaa610446565b610ab261045c565b91610abb610472565b600080516020611fa283398151915254604081901c60ff161597919591906001600160401b031680159081610bce575b6001149081610bc4575b159081610bbb575b50610ba957600080516020611fa283398151915280546001600160401b0319166001179055610b309688610b84576115fe565b610b3657005b600080516020611fa2833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29080602081015b0390a1005b600080516020611fa2833981519152805460ff60401b1916600160401b1790556115fe565b60405163f92ee8a960e01b8152600490fd5b90501538610afd565b303b159150610af5565b899150610aeb565b346103dd5760003660031901126103dd57610bef61153e565b600080516020611f82833981519152805460ff811615610c3b5760ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b604051638dfc202b60e01b8152600490fd5b346103dd5760003660031901126103dd576000546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd57602060ff600080516020611f8283398151915254166040519015158152f35b346103dd5760003660031901126103dd576008546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576007546040516001600160a01b039091168152602090f35b346103dd57600080600319360112610d5157610d1261153e565b600080516020611f4283398151915280546001600160a01b0319811690915581906001600160a01b0316600080516020611f628339815191528280a380f35b80fd5b346103dd5760203660031901126103dd576020610d77610d726103ee565b611e3e565b604051908152f35b346103dd5760203660031901126103dd576020610d77600435611dff565b346103dd5760203660031901126103dd576001600160a01b03610dbe6103ee565b166000526009602052602060ff604060002054166040519015158152f35b346103dd5760003660031901126103dd57610df561153e565b610dfd611a5d565b600080516020611f82833981519152600160ff198254161790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b6001600160a01b03909116815260200190565b346103dd5760003660031901126103dd57600080516020611f42833981519152546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd57602060ff600c5460a81c16604051908152f35b346103dd5760003660031901126103dd576006546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576004546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576003546040516001600160a01b039091168152602090f35b346103dd5760203660031901126103dd57610f446103ee565b610f4c61153e565b610f66610f62610f5b836104ff565b5460ff1690565b1590565b61104a57610f80610f76826104ff565b805460ff19169055565b6001600160a01b039081169060005b600a5480821015611042578383610fbd610fa8856113f3565b905460039190911b1c6001600160a01b031690565b1614610fd25750610fcd90611ce9565b610f8f565b6110139250610fee610fa8610fe9610ff493611b16565b6113f3565b916113f3565b90919082549060031b9160018060a01b03809116831b921b1916179055565b61101b611cf8565b7fef69f7d97228658c92417be1b16b19058315de71fecb435d07b7d23728b6bd31600080a2005b50505061101b565b6040516322a5e34b60e01b8152600490fd5b346103dd5760003660031901126103dd576012546040516001600160a01b039091168152602090f35b346103dd57600080600319360112610d51576040518091600a549081835260208093018092600a835284832090835b81811061111157505050846110ca91038561059b565b60405193838594850191818652518092526040850193925b8281106110f157505050500390f35b83516001600160a01b0316855286955093810193928101926001016110e2565b82546001600160a01b0316845292860192600192830192016110b4565b346103dd5760203660031901126103dd5760043561114a611ae4565b611152611a5d565b80156112045760405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9081156106eb576000916111d6575b506111c4576111ba90611941565b6103676001601155565b604051632652747360e21b8152600490fd5b6111f7915060203d81116111fd575b6111ef818361059b565b8101906118eb565b386111ac565b503d6111e5565b60405163162908e360e11b8152600490fd5b346103dd5760203660031901126103dd5761122f6103ee565b61123761153e565b6001600160a01b039080821680156112c157601254928316908181146112af576001600160a01b031990931692909217601255604080516001600160a01b0393841681529190921660208201527fee76f64ea0204b40f46a632a9c93079e8225b5a6983c82fcb269aa46949f487d9181908101610b7f565b60405163aba916dd60e01b8152600490fd5b6040516303988b8160e61b8152600490fd5b346103dd5760003660031901126103dd576080600d54600e54600f5460105491604051938452602084015260408301526060820152f35b346103dd5760203660031901126103dd576020610d77600435611dd2565b346103dd5760003660031901126103dd576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346103dd5760803660031901126103dd576113866103ee565b61138e610404565b61139661041a565b606435926001600160401b03929091908385116103dd57366023860112156103dd5784600401359384116103dd5736602485870101116103dd576024610367950192611b6c565b634e487b7160e01b600052603260045260246000fd5b600a5481101561140e57600a60005260206000200190600090565b6113dd565b346103dd5760203660031901126103dd57600435600a548110156103dd57600a600052600080516020611f2283398151915201546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd576002546040516001600160a01b039091168152602090f35b346103dd5760003660031901126103dd57602060ff600c5460a01c16604051908152f35b346103dd5760203660031901126103dd576103676114c56103ee565b6114cd61153e565b611577565b346103dd5760003660031901126103dd576005546040516001600160a01b039091168152602090f35b346103dd5760203660031901126103dd576115146103ee565b61151c61153e565b600c80546001600160a01b0319166001600160a01b0392909216919091179055005b600080516020611f42833981519152546001600160a01b0316330361155f57565b60405163118cdaa760e01b8152336004820152602490fd5b6001600160a01b039081169081156115c057600080516020611f4283398151915280546001600160a01b03198116841790915516600080516020611f62833981519152600080a3565b604051631e4fbdf760e01b815260006004820152602490fd5b908160209103126103dd575160ff811681036103dd5790565b6040513d6000823e3d90fd5b6001600160a01b039081169693959091871580156118a2575b8015611898575b801561188e575b8015611884575b801561187a575b8015611870575b61185e57826117809661171a826116d69a6116f88261175e9a8f61173c996116b084926116867f00000000000000000000000000000000000000000000000000000000000000006118ac565b61168e6118bc565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600180546001600160a01b0319166001600160a01b03939092169283169190911790559e565b60028054919092166001600160a01b03166001600160a01b0319909116179055565b60048054919092166001600160a01b03166001600160a01b0319909116179055565b60038054919092166001600160a01b03166001600160a01b0319909116179055565b60088054919092166001600160a01b03166001600160a01b0319909116179055565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b60405163313ce56760e01b8082526020938490839060049082905afa9182156106eb5784926117d191600091611841575b50600c805460ff60a01b191660a09290921b60ff60a01b16919091179055565b60046040518094819382525afa9081156106eb5761181292600092611814575b5050600c805460ff60a81b191660a89290921b60ff60a81b16919091179055565b565b6118339250803d1061183a575b61182b818361059b565b8101906115d9565b38806117f1565b503d611821565b6118589150843d861161183a5761182b818361059b565b386117b1565b60405163e6c4247b60e01b8152600490fd5b508285161561163a565b5082821615611633565b508286161561162c565b5082871615611625565b508284161561161e565b5082811615611617565b611812906118b86118bc565b6114cd5b60ff600080516020611fa28339815191525460401c16156118d957565b604051631afcd79f60e31b8152600490fd5b908160209103126103dd575180151581036103dd5790565b6001600160a01b039091168152602081019190915260400190565b634e487b7160e01b600052601160045260246000fd5b919082018092116103a457565b611949611d50565b6000546040516323b872dd60e01b60208201523360248201523060448201526064808201849052815260a08101916001600160a01b03166001600160401b038311828410176105965761199e92604052611a88565b6119a781611dd2565b6119b56108696001546103e2565b90813b156103dd57600060405180936340c10f1960e01b82528183816119df873360048401611903565b03925af19081156106eb577f90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a1592611a4592611a4a575b50611a1f33610519565b611a2a858254611934565b90556040805194855260208501919091523393918291820190565b0390a2565b806109c3611a5792610583565b38611a15565b60ff600080516020611f828339815191525416611a7657565b60405163d93c066560e01b8152600490fd5b906000602091828151910182855af1156115f2576000513d611adb57506001600160a01b0381163b155b611ab95750565b604051635274afe760e01b81526001600160a01b039091166004820152602490fd5b60011415611ab2565b600260115414611af5576002601155565b604051633ee5aeb560e01b8152600490fd5b908160209103126103dd575190565b6000198101919082116103a457565b919082039182116103a457565b611b676118129392611b5960405194859263a9059cbb60e01b602085015260248401611903565b03601f19810184528361059b565b611a88565b9391909293600094338652600960205260ff6040872054161580611c45575b6103a957611c1860c487968796611ba0611ae4565b611ba8611a5d565b611bb0611d50565b8060018060a01b03958680601254169960405198899681602089019c8d631a976e0360e31b9052166024890152166044870152166064850152608060848501528160a48501528484013787838284010152601f801991011681010360a481018452018261059b565b51915af4611c24611c67565b9015611c365750506118126001601155565b8051918215610d515750602001fd5b50600080516020611f42833981519152546001600160a01b0316331415611b8b565b3d15611c92573d90611c78826105be565b91611c86604051938461059b565b82523d6000602084013e565b606090565b600a54600160401b811015610596576001810180600a5581101561140e57600a600052600080516020611f228339815191520180546001600160a01b0319166001600160a01b03909216919091179055565b60001981146103a45760010190565b600a548015611d3a57600019818101918083101561140e57600a60008190529101600080516020611f228339815191520180546001600160a01b031916905555565b634e487b7160e01b600052603160045260246000fd5b600c546001600160a01b031680611d645750565b803b156103dd5760008091600460405180948193633eaf5d9f60e01b83525af180156106eb57611d915750565b61181290610583565b9060ff8091169116039060ff82116103a457565b60ff16604d81116103a457600a0a90565b818102929181159184041417156103a457565b611dfc90611df6611df1600c5460ff808260a01c169160a81c16611d9a565b611dae565b90611dbf565b90565b611dfc90611df6611df1600c5460ff808260a81c169160a01c16611d9a565b8115611e28570490565b634e487b7160e01b600052601260045260246000fd5b611e4790610519565b54611e566108696001546103e2565b60405180916318160ddd60e01b825281600460209384935afa9182156106eb57600092611f02575b50611e8d6108696002546103e2565b8160405180926370a0823160e01b82528180611eac3060048301610e43565b03915afa9182156106eb57600092611ee5575b5050620f42408210611edd57611dfc92611ed891611dbf565b611e1e565b505050600090565b611efb9250803d106106e4576106d6818361059b565b3880611ebf565b81611f1a9293503d84116106e4576106d6818361059b565b9038611e7e56fec65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a89016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c1993008be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220abe9f565eaa272120d324529038d8cc908392b41c8a106f2bf657698f2e54b7f64736f6c63430008140033",
1520
+ "bytecode": "0x60a03461017c57601f612cb338819003918201601f19168301916001600160401b038311848410176101815780849260209460405283398101031261017c57516001600160a01b0381169081900361017c578015610147576080527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460ff8160401c16610136576002600160401b03196001600160401b038216016100cd575b604051612b1b90816101988239608051818181610b3801528181611254015281816118230152611a810152f35b6001600160401b0319166001600160401b039081177ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1386100a0565b63f92ee8a960e01b60005260046000fd5b60405162461bcd60e51b815260206004820152600d60248201526c5a65726f20726567697374727960981b6044820152606490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b60003560e01c806303df19541461031d578063150b7a0214610318578063168a4822146103135780631eaa7a7b1461030e578063201d69e214610309578063202019a61461030457806322c14db9146102ff57806328f7a355146102fa5780632d06177a146102f55780632e1a7d4d146102f057806331cc0278146102eb57806335876476146102e65780633f4ba83a146102e1578063407003bb146102dc57806340c65f72146102d75780634b9d7775146102d2578063523266b9146102cd5780635c975abb146102c857806361d027b3146102c3578063631ca5b7146102be5780636b1cbe99146102b957806370a0823114610255578063715018a6146102b4578063745400c9146102af5780637c2b606a146102375780638456cb59146102aa5780638da5cb5b146102a5578063914b748a146102a0578063934114e91461029b5780639612071f146102965780639766e7b014610291578063a013f9c61461028c578063a14e19d514610287578063a42dce8014610282578063a4ad3e9f1461027d578063a59a997314610278578063ac18de4314610273578063b00451d81461026e578063b01cd32314610269578063b6b55f2514610264578063b7d3e97a1461025f578063baaa3ca31461025a578063c084b10b14610255578063c415b95c14610250578063cac89c5c1461024b578063db56ea3514610246578063ee9907a414610241578063f2fde38b1461023c5763f3ae24151461023757600080fd5b6112ba565b611bb8565b611b2f565b611ae6565b611a6b565b611a42565b61113f565b611a14565b611950565b6117de565b611765565b6116f9565b6115da565b6115b1565b611586565b611515565b6114c4565b611453565b61142a565b6113fd565b6113d4565b6113b6565b611380565b6112f9565b611215565b6111bd565b6110ec565b6110c3565b61109a565b61106a565b61104c565b610ff9565b610fd0565b610f58565b610ed5565b610d67565b610cf6565b610af3565b610a55565b610a2c565b6109db565b6109a1565b6108fc565b610675565b6105ef565b610551565b3461044d57608036600319011261044d57600435602435604435916064359233600052600860205260ff60406000205416158061042b575b61041a57828201808311610415578181018091116104155784810180911161041557612710036103da577f0e8daa20b0a832fcebda985cc6ebc5ba969c162681cec173e37fd2c9b76c42b5936103d5916103ae84600a55565b6103b785600b55565b6103c081600c55565b6103c982600d55565b604051948594856119f8565b0390a1005b60405162461bcd60e51b8152602060048201526013602482015272696e76616c69642070657263656e746167657360681b6044820152606490fd5b611be1565b631a27eac360e11b60005260046000fd5b506000805160206129e6833981519152546001600160a01b0316331415610355565b600080fd5b6001600160a01b031690565b600435906001600160a01b038216820361044d57565b602435906001600160a01b038216820361044d57565b604435906001600160a01b038216820361044d57565b606435906001600160a01b038216820361044d57565b608435906001600160a01b038216820361044d57565b60a435906001600160a01b038216820361044d57565b60c435906001600160a01b038216820361044d57565b634e487b7160e01b600052604160045260246000fd5b601f909101601f19168101906001600160401b0382119082101761053157604052565b6104f8565b6001600160401b03811161053157601f01601f191660200190565b3461044d57608036600319011261044d5761056a61045e565b50610573610474565b506064356001600160401b03811161044d573660238201121561044d5780600401359061059f82610536565b916105ad604051938461050e565b808352366024828401011161044d576000928160246020940184830137010152604051630a85bd0160e11b815280602081015b0390f35b600091031261044d57565b3461044d57600036600319011261044d576001546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa90811561067057600091610641575b50604051908152602090f35b610663915060203d602011610669575b61065b818361050e565b810190611c04565b38610635565b503d610651565b611c13565b3461044d57606036600319011261044d5761068e61045e565b610696610474565b906044356106a261240b565b6106aa612441565b6001600160a01b0383169283156108eb576106d16106cc6106cc600054610452565b610452565b6001600160a01b039093169283036108c5576000906106f46106cc600154610452565b6040516318160ddd60e01b81529390602085600481845afa948515610670576000956108a4575b5061072a6106cc600054610452565b6040516370a0823160e01b815290956020828061074a306004830161136d565b03818a5afa91821561067057600092610883575b50106107b8575b5090600080516020612a06833981519152938284936107a095116107ae575b50610790918391612491565b6040519081529081906020820190565b0390a35b6107ac61247d565b005b9250610790610784565b925090604051936370a0823160e01b8552602085806107da306004830161136d565b0381845afa93841561067057600495600095610861575b50602090604051968780926318160ddd60e01b82525afa94851561067057600080516020612a06833981519152956107a09561083592600092610840575b50611c2e565b935093919091610765565b61085a91925060203d6020116106695761065b818361050e565b903861082f565b602091955061087c90823d84116106695761065b818361050e565b94906107f1565b61089d91925060203d6020116106695761065b818361050e565b903861075e565b6108be91955060203d6020116106695761065b818361050e565b933861071b565b81610790600080516020612a06833981519152936108e39386612491565b0390a36107a4565b63e6c4247b60e01b60005260046000fd5b3461044d57602036600319011261044d577f9bfd546607ad0b53bbd540edcb5253cf31fe61fd20ed51331e38e4bd21ce06b461093661045e565b61093e61240b565b600580546001600160a01b038381166001600160a01b03198316179092556040519283926103d5921683611c3b565b6001600160a01b0316600090815260086020526040902090565b6001600160a01b03166000908152600e6020526040902090565b3461044d57602036600319011261044d576001600160a01b036109c261045e565b1660005260116020526020604060002054604051908152f35b3461044d57600036600319011261044d5760025460405163220f1ac960e21b815290602090829060049082906001600160a01b03165afa908115610670576000916106415750604051908152602090f35b3461044d57600036600319011261044d576001546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d57610a6e61045e565b610a7661240b565b6001600160a01b03811660008181526008602052604090205490919060ff16610ae257610abb908260005260086020526040600020600160ff19825416179055611c78565b7f3b4a40cccf2058c593542587329dd385be4f0b588db5471fbd9598e56dd7093a600080a2005b636c0b3b8160e11b60005260046000fd5b3461044d57602036600319011261044d57600435610b0f612441565b610b176124cb565b8015610ce55760405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa90811561067057600091610cb6575b50610ca557610b7f336121da565b610c9457610b916106cc600254610452565b90813b1561044d5760008092600460405180958193631d8557d760e01b83525af191821561067057610bc992610c7f575b50336124f5565b610bd76106cc600154610452565b803b1561044d5760006040518092632770a7eb60e21b8252818381610c00883360048401611cd3565b03925af1801561067057610c64575b50610c288133610c236106cc600054610452565b612491565b7ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b56860405180610c5933948083611cee565b0390a26107ac61247d565b80610c736000610c799361050e565b806105e4565b38610c0f565b80610c736000610c8e9361050e565b38610bc2565b6378bd8d1960e11b60005260046000fd5b632652747360e21b60005260046000fd5b610cd8915060203d602011610cde575b610cd0818361050e565b810190611cbb565b38610b71565b503d610cc6565b63162908e360e11b60005260046000fd5b3461044d57602036600319011261044d577f53b405bfacece77f40f8a3f5f7ccc95b6b28b9828ea5f39b6351dcb935bc1241610d3061045e565b610d3861240b565b600680546001600160a01b038381166001600160a01b03198316179092556040519283926103d5921683611c3b565b3461044d5760e036600319011261044d57610d8061045e565b610d88610474565b90610d9161048a565b610d996104a0565b610da16104b6565b610da96104cc565b91610db26104e2565b93600080516020612ac68339815191525496610dd9610dd58960ff9060401c1690565b1590565b976001600160401b031680159081610ecd575b6001149081610ec3575b159081610eba575b50610ea957600080516020612ac683398151915280546001600160401b0319166001179055610e319688610e8457611cff565b610e3757005b600080516020612ac6833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29080602081016103d5565b600080516020612ac6833981519152805460ff60401b1916600160401b179055611cff565b63f92ee8a960e01b60005260046000fd5b90501538610dfe565b303b159150610df6565b899150610dec565b3461044d57600036600319011261044d57610eee61240b565b600080516020612a868339815191525460ff811615610f475760ff1916600080516020612a86833981519152557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b60005260046000fd5b3461044d5760a036600319011261044d57610f7161045e565b610f79610474565b90610f8261048a565b606435916001600160401b03831161044d573660238401121561044d576004830135916001600160401b03831161044d57366024848601011161044d576107ac946024608435950192611e9f565b3461044d57600036600319011261044d576000546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d577f244eb54cac6535a86303bc595966d5a61110599f580c3d181a784a386951856f60043561103661240b565b600f5481600f556103d560405192839283611cee565b3461044d57600036600319011261044d576020601054604051908152f35b3461044d57600036600319011261044d57602060ff600080516020612a8683398151915254166040519015158152f35b3461044d57600036600319011261044d576007546040516001600160a01b039091168152602090f35b3461044d57600036600319011261044d576006546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d577f27c528cbda4f3f36ae0f98af201cb897665399d363e2baf5aa0e93e77b4556f860043561112961240b565b601054816010556103d560405192839283611cee565b3461044d57602036600319011261044d5761115861045e565b60015460405163c084b10b60e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610670576020916000916111a0575b50604051908152f35b6111b79150823d84116106695761065b818361050e565b38611197565b3461044d57600036600319011261044d576111d661240b565b6000805160206129e683398151915280546001600160a01b031981169091556000906001600160a01b0316600080516020612a268339815191528280a3005b3461044d57602036600319011261044d57600435611231612441565b6112396124cb565b60405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9081156106705760009161129b575b50610ca5576107a490611fcb565b6112b4915060203d602011610cde57610cd0818361050e565b3861128d565b3461044d57602036600319011261044d576001600160a01b036112db61045e565b166000526008602052602060ff604060002054166040519015158152f35b3461044d57600036600319011261044d5761131261240b565b61131a6124cb565b600160ff19600080516020612a86833981519152541617600080516020612a86833981519152557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b6001600160a01b03909116815260200190565b3461044d57600036600319011261044d576000805160206129e6833981519152546040516001600160a01b039091168152602090f35b3461044d57600036600319011261044d576020600f54604051908152f35b3461044d57600036600319011261044d576005546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d57602061142061141b61045e565b6121da565b6040519015158152f35b3461044d57600036600319011261044d576003546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d576001600160a01b0361147461045e565b16600052600e60205260c0604060002080549060018101549060028101546003820154906005600484015493015493604051958652602086015260408501526060840152608083015260a0820152f35b3461044d57600036600319011261044d5760015460405163a14e19d560e01b815290602090829060049082906001600160a01b03165afa908115610670576000916106415750604051908152602090f35b3461044d57602036600319011261044d577f5d16ad41baeb009cd23eb8f6c7cde5c2e0cd5acf4a33926ab488875c37c37f3861154f61045e565b61155761240b565b600480546001600160a01b038381166001600160a01b03198316179092556040519283926103d5921683611c3b565b3461044d57602036600319011261044d5760206115a96115a461045e565b6121f7565b604051908152f35b3461044d57600036600319011261044d576002546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d576115f361045e565b6115fb61240b565b611611610dd561160a8361096d565b5460ff1690565b6116e85761162b6116218261096d565b805460ff19169055565b6001600160a01b031660005b60095490818110156116e1578261166761165083611ac6565b90546001600160a01b039260039290921b1c821690565b1614611677576001915001611637565b6116ac6116a661169161168c6116b295611c1f565b611ac6565b905460039190911b1c6001600160a01b031690565b91611ac6565b90611c55565b6116ba61233c565b7fef69f7d97228658c92417be1b16b19058315de71fecb435d07b7d23728b6bd31600080a2005b50506116ba565b6322a5e34b60e01b60005260046000fd5b3461044d57600036600319011261044d576012546040516001600160a01b039091168152602090f35b602060408183019282815284518094520192019060005b8181106117465750505090565b82516001600160a01b0316845260209384019390920191600101611739565b3461044d57600036600319011261044d576040516009805480835260009182526020830191600080516020612a4683398151915291905b8181106117bf576105e0856117b38187038261050e565b60405191829182611722565b82546001600160a01b031684526020909301926001928301920161179c565b3461044d57602036600319011261044d576004356117fa612441565b6118026124cb565b8015610ce55760405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa90811561067057600091611931575b50610ca55761186f6106cc600254610452565b803b1561044d5760008091600460405180948193631d8557d760e01b83525af180156106705761191c575b506118a96106cc600054610452565b602060405180926370a0823160e01b825281806118c9336004830161136d565b03915afa80156106705782916000916118fd575b50106118ec576107a490612827565b631e9acf1760e31b60005260046000fd5b611916915060203d6020116106695761065b818361050e565b386118dd565b80610c73600061192b9361050e565b3861189a565b61194a915060203d602011610cde57610cd0818361050e565b3861185c565b3461044d57602036600319011261044d5761196961045e565b61197161240b565b6001600160a01b0381169081156119e757601254916001600160a01b038316908181146119d6577fee76f64ea0204b40f46a632a9c93079e8225b5a6983c82fcb269aa46949f487d9360018060a01b031916176012556103d560405192839283611c3b565b63aba916dd60e01b60005260046000fd5b6303988b8160e61b60005260046000fd5b9094939260609260808301968352602083015260408201520152565b3461044d57600036600319011261044d57600a54600b54906105e0600c54600d5490604051948594856119f8565b3461044d57600036600319011261044d576004546040516001600160a01b039091168152602090f35b3461044d57600036600319011261044d576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b634e487b7160e01b600052603260045260246000fd5b600954811015611ae157600960005260206000200190600090565b611ab0565b3461044d57602036600319011261044d5760043560095481101561044d576009600052600080516020612a4683398151915201546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d57611b4861045e565b600154604051633ba641e960e21b81526001600160a01b0392831660048201529160209183916024918391165afa8015610670576105e091600091611b99575b506040519081529081906020820190565b611bb2915060203d6020116106695761065b818361050e565b38611b88565b3461044d57602036600319011261044d576107ac611bd461045e565b611bdc61240b565b6123a7565b634e487b7160e01b600052601160045260246000fd5b9190820180921161041557565b9081602091031261044d575190565b6040513d6000823e3d90fd5b60001981019190821161041557565b9190820391821161041557565b6001600160a01b0391821681529116602082015260400190565b80546001600160a01b0360039390931b83811b199091169290931690921b179055565b60095490600160401b8210156105315760018201600955600954821015611ae15760096000908152611cb992600080516020612a4683398151915201611c55565b565b9081602091031261044d5751801515810361044d5790565b6001600160a01b039091168152602081019190915260400190565b908152602081019190915260400190565b91956001600160a01b039092169392909184158015611e8e575b8015611e7d575b8015611e6c575b8015611e5b575b8015611e4a575b6108eb57611e3396611dab611def94611d89611e1198611d57611dcd96612799565b611d5f612973565b611d676127ad565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b611e3e610708600f55565b611cb96202a300601055565b506001600160a01b03861615611d35565b506001600160a01b03841615611d2e565b506001600160a01b03821615611d27565b506001600160a01b03871615611d20565b506001600160a01b03831615611d19565b91909333600052600860205260ff604060002054161580611f79575b61041a5760e460009695611f50928897611ed3612441565b611edb6124cb565b60125460405163407003bb60e01b602082019081526001600160a01b03998a1660248301529489166044820152968816606488015260a0608488015260c4870183905290961696919585928290858501378884838501015260a4830152601f801991011681010301601f19810183528261050e565b51915af4611f5c611f9b565b9015611f6b5750611cb961247d565b805190811561044d57602001fd5b506000805160206129e6833981519152546001600160a01b0316331415611ebb565b3d15611fc6573d90611fac82610536565b91611fba604051938461050e565b82523d6000602084013e565b606090565b600f54156121c957801561218257611fe233610987565b611ff06106cc600154610452565b602060405180926370a0823160e01b82528180612010336004830161136d565b03915afa90811561067057600091612163575b50600282015581815561203a6106cc600154610452565b60206040518092633ba641e960e21b8252818061205a336004830161136d565b03915afa90811561067057600091612144575b506003820155600460206120856106cc600254610452565b60405163220f1ac960e21b815292839182905afa918215610670577f2816dbba0837d8d68f7bcead98695dd98db2cc1cb4066694ead56a12e795c4889261212092600091612125575b5060018201556120f26120e66120e6600f5442611bf7565b6001600160401b031690565b9060048101918255600561210e6120e66120e6600f5442611bf7565b91015554604051918291339583611cee565b0390a2565b61213e915060203d6020116106695761065b818361050e565b386120ce565b61215d915060203d6020116106695761065b818361050e565b3861206d565b61217c915060203d6020116106695761065b818361050e565b38612023565b506121b361218f33610987565b60056000918281558260018201558260028201558260038201558260048201550155565b33600080516020612a66833981519152600080a2565b63410dc88360e11b60005260046000fd5b6001600160a01b0316600090815260116020526040902054431490565b6122056106cc600154610452565b604051630481930d60e21b81529060208280612224866004830161136d565b0381845afa9182156106705760009261231a575b5060049192602061224d6106cc600254610452565b60405163220f1ac960e21b815294859182905afa90811561067057612294936000926122fa575b50602091926040518080968194633ba641e960e21b83526004830161136d565b03915afa918215610670576000926122d9575b50811580156122d1575b6122cc576122c992916122c3916127bd565b906127ed565b90565b505090565b5082156122b1565b6122f391925060203d6020116106695761065b818361050e565b90386122a7565b6020925061231490833d85116106695761065b818361050e565b91612274565b600492506123369060203d6020116106695761065b818361050e565b91612238565b600954801561239157600954600019820191600091831015611ae1576009918290527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7ae0180546001600160a01b031916905555565b634e487b7160e01b600052603160045260246000fd5b6001600160a01b031680156123f5576000805160206129e683398151915280546001600160a01b0319811683179091556001600160a01b0316600080516020612a26833981519152600080a3565b631e4fbdf760e01b600052600060045260246000fd5b6000805160206129e6833981519152546001600160a01b0316330361242c57565b63118cdaa760e01b6000523360045260246000fd5b6002600080516020612aa6833981519152541461246c576002600080516020612aa683398151915255565b633ee5aeb560e01b60005260046000fd5b6001600080516020612aa683398151915255565b6124c6611cb993926124b860405194859263a9059cbb60e01b602085015260248401611cd3565b03601f19810184528361050e565b612918565b60ff600080516020612a8683398151915254166124e457565b63d93c066560e01b60005260046000fd5b919091600f541561271e5761250981610987565b6004810154801561270d574281116126fc57612529429160105490611bf7565b11156126eb57838154036126da57600490602061254a6106cc600254610452565b60405163220f1ac960e21b815293849182905afa918215610670576000926126b9575b50600181015491821580156126b0575b156126935750600291500154925b600019810361268e5750825b8093811161267d576125ad6106cc600154610452565b6040516370a0823160e01b81529091602082806125cd876004830161136d565b0381865afa9182156106705760009261265c575b50116125f5575b5061218f611cb991610987565b6040516370a0823160e01b815291935060209082908180612619886004830161136d565b03915afa90811561067057611cb99161218f9160009161263d575b509391506125e8565b612656915060203d6020116106695761065b818361050e565b38612634565b61267691925060203d6020116106695761065b818361050e565b90386125e1565b635b6aa88560e01b60005260046000fd5b612597565b6126a26126aa936002926127bd565b9101546127ed565b9261258b565b5082811461257d565b6126d391925060203d6020116106695761065b818361050e565b903861256d565b631536aed760e31b60005260046000fd5b635f8dd0cb60e01b60005260046000fd5b63f79b9a3360e01b60005260046000fd5b637b7e3ed560e11b60005260046000fd5b909161272c61218f83610987565b6000198103612794575060206127659161274a6106cc600154610452565b60405180809581946370a0823160e01b83526004830161136d565b03915afa9081156106705760009161277b575090565b6122c9915060203d6020116106695761065b818361050e565b905090565b611cb9906127a5612973565b611bdc612973565b6127b5612973565b61247d612973565b600182901c908215676765c793fa10079d601b1b83190482111761044d57676765c793fa10079d601b1b02010490565b8115676765c793fa10079d601a1b19839004821115171561044d57676765c793fa10079d601b1b9102676765c793fa10079d601a1b010490565b612842816128396106cc600054610452565b309033906129a1565b6128506106cc600154610452565b803b1561044d57600060405180926340c10f1960e01b8252818381612879883360048401611cd3565b03925af1801561067057612903575b5033600090815260116020526040902043905560046128a633610987565b01546128de575b7f90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a156040518061212033948083611cee565b6128ea61218f33610987565b33600080516020612a66833981519152600080a26128ad565b80610c7360006129129361050e565b38612888565b906000602091828151910182855af115611c13576000513d61296a57506001600160a01b0381163b155b6129495750565b635274afe760e01b60009081526001600160a01b0391909116600452602490fd5b60011415612942565b60ff600080516020612ac68339815191525460401c161561299057565b631afcd79f60e31b60005260046000fd5b6040516323b872dd60e01b60208201526001600160a01b039283166024820152929091166044830152606480830193909352918152611cb9916124c660848361050e56fe9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c1993004b3832ed948bc80ab35e8cab3a5923e6e1a57696d02c846a8b6f54d39bf9acf08be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e06e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af8b775bb80a5d4addc5ea2601b2378ae89a1bb9010227157ac02aa71498e799c4cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220a9fb7f77893f9079222aaa22ab565ed8f68c883778a5e77c2ce66e82f9eeff1864736f6c634300081e0033",
1521
+ "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c806303df19541461031d578063150b7a0214610318578063168a4822146103135780631eaa7a7b1461030e578063201d69e214610309578063202019a61461030457806322c14db9146102ff57806328f7a355146102fa5780632d06177a146102f55780632e1a7d4d146102f057806331cc0278146102eb57806335876476146102e65780633f4ba83a146102e1578063407003bb146102dc57806340c65f72146102d75780634b9d7775146102d2578063523266b9146102cd5780635c975abb146102c857806361d027b3146102c3578063631ca5b7146102be5780636b1cbe99146102b957806370a0823114610255578063715018a6146102b4578063745400c9146102af5780637c2b606a146102375780638456cb59146102aa5780638da5cb5b146102a5578063914b748a146102a0578063934114e91461029b5780639612071f146102965780639766e7b014610291578063a013f9c61461028c578063a14e19d514610287578063a42dce8014610282578063a4ad3e9f1461027d578063a59a997314610278578063ac18de4314610273578063b00451d81461026e578063b01cd32314610269578063b6b55f2514610264578063b7d3e97a1461025f578063baaa3ca31461025a578063c084b10b14610255578063c415b95c14610250578063cac89c5c1461024b578063db56ea3514610246578063ee9907a414610241578063f2fde38b1461023c5763f3ae24151461023757600080fd5b6112ba565b611bb8565b611b2f565b611ae6565b611a6b565b611a42565b61113f565b611a14565b611950565b6117de565b611765565b6116f9565b6115da565b6115b1565b611586565b611515565b6114c4565b611453565b61142a565b6113fd565b6113d4565b6113b6565b611380565b6112f9565b611215565b6111bd565b6110ec565b6110c3565b61109a565b61106a565b61104c565b610ff9565b610fd0565b610f58565b610ed5565b610d67565b610cf6565b610af3565b610a55565b610a2c565b6109db565b6109a1565b6108fc565b610675565b6105ef565b610551565b3461044d57608036600319011261044d57600435602435604435916064359233600052600860205260ff60406000205416158061042b575b61041a57828201808311610415578181018091116104155784810180911161041557612710036103da577f0e8daa20b0a832fcebda985cc6ebc5ba969c162681cec173e37fd2c9b76c42b5936103d5916103ae84600a55565b6103b785600b55565b6103c081600c55565b6103c982600d55565b604051948594856119f8565b0390a1005b60405162461bcd60e51b8152602060048201526013602482015272696e76616c69642070657263656e746167657360681b6044820152606490fd5b611be1565b631a27eac360e11b60005260046000fd5b506000805160206129e6833981519152546001600160a01b0316331415610355565b600080fd5b6001600160a01b031690565b600435906001600160a01b038216820361044d57565b602435906001600160a01b038216820361044d57565b604435906001600160a01b038216820361044d57565b606435906001600160a01b038216820361044d57565b608435906001600160a01b038216820361044d57565b60a435906001600160a01b038216820361044d57565b60c435906001600160a01b038216820361044d57565b634e487b7160e01b600052604160045260246000fd5b601f909101601f19168101906001600160401b0382119082101761053157604052565b6104f8565b6001600160401b03811161053157601f01601f191660200190565b3461044d57608036600319011261044d5761056a61045e565b50610573610474565b506064356001600160401b03811161044d573660238201121561044d5780600401359061059f82610536565b916105ad604051938461050e565b808352366024828401011161044d576000928160246020940184830137010152604051630a85bd0160e11b815280602081015b0390f35b600091031261044d57565b3461044d57600036600319011261044d576001546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa90811561067057600091610641575b50604051908152602090f35b610663915060203d602011610669575b61065b818361050e565b810190611c04565b38610635565b503d610651565b611c13565b3461044d57606036600319011261044d5761068e61045e565b610696610474565b906044356106a261240b565b6106aa612441565b6001600160a01b0383169283156108eb576106d16106cc6106cc600054610452565b610452565b6001600160a01b039093169283036108c5576000906106f46106cc600154610452565b6040516318160ddd60e01b81529390602085600481845afa948515610670576000956108a4575b5061072a6106cc600054610452565b6040516370a0823160e01b815290956020828061074a306004830161136d565b03818a5afa91821561067057600092610883575b50106107b8575b5090600080516020612a06833981519152938284936107a095116107ae575b50610790918391612491565b6040519081529081906020820190565b0390a35b6107ac61247d565b005b9250610790610784565b925090604051936370a0823160e01b8552602085806107da306004830161136d565b0381845afa93841561067057600495600095610861575b50602090604051968780926318160ddd60e01b82525afa94851561067057600080516020612a06833981519152956107a09561083592600092610840575b50611c2e565b935093919091610765565b61085a91925060203d6020116106695761065b818361050e565b903861082f565b602091955061087c90823d84116106695761065b818361050e565b94906107f1565b61089d91925060203d6020116106695761065b818361050e565b903861075e565b6108be91955060203d6020116106695761065b818361050e565b933861071b565b81610790600080516020612a06833981519152936108e39386612491565b0390a36107a4565b63e6c4247b60e01b60005260046000fd5b3461044d57602036600319011261044d577f9bfd546607ad0b53bbd540edcb5253cf31fe61fd20ed51331e38e4bd21ce06b461093661045e565b61093e61240b565b600580546001600160a01b038381166001600160a01b03198316179092556040519283926103d5921683611c3b565b6001600160a01b0316600090815260086020526040902090565b6001600160a01b03166000908152600e6020526040902090565b3461044d57602036600319011261044d576001600160a01b036109c261045e565b1660005260116020526020604060002054604051908152f35b3461044d57600036600319011261044d5760025460405163220f1ac960e21b815290602090829060049082906001600160a01b03165afa908115610670576000916106415750604051908152602090f35b3461044d57600036600319011261044d576001546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d57610a6e61045e565b610a7661240b565b6001600160a01b03811660008181526008602052604090205490919060ff16610ae257610abb908260005260086020526040600020600160ff19825416179055611c78565b7f3b4a40cccf2058c593542587329dd385be4f0b588db5471fbd9598e56dd7093a600080a2005b636c0b3b8160e11b60005260046000fd5b3461044d57602036600319011261044d57600435610b0f612441565b610b176124cb565b8015610ce55760405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa90811561067057600091610cb6575b50610ca557610b7f336121da565b610c9457610b916106cc600254610452565b90813b1561044d5760008092600460405180958193631d8557d760e01b83525af191821561067057610bc992610c7f575b50336124f5565b610bd76106cc600154610452565b803b1561044d5760006040518092632770a7eb60e21b8252818381610c00883360048401611cd3565b03925af1801561067057610c64575b50610c288133610c236106cc600054610452565b612491565b7ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b56860405180610c5933948083611cee565b0390a26107ac61247d565b80610c736000610c799361050e565b806105e4565b38610c0f565b80610c736000610c8e9361050e565b38610bc2565b6378bd8d1960e11b60005260046000fd5b632652747360e21b60005260046000fd5b610cd8915060203d602011610cde575b610cd0818361050e565b810190611cbb565b38610b71565b503d610cc6565b63162908e360e11b60005260046000fd5b3461044d57602036600319011261044d577f53b405bfacece77f40f8a3f5f7ccc95b6b28b9828ea5f39b6351dcb935bc1241610d3061045e565b610d3861240b565b600680546001600160a01b038381166001600160a01b03198316179092556040519283926103d5921683611c3b565b3461044d5760e036600319011261044d57610d8061045e565b610d88610474565b90610d9161048a565b610d996104a0565b610da16104b6565b610da96104cc565b91610db26104e2565b93600080516020612ac68339815191525496610dd9610dd58960ff9060401c1690565b1590565b976001600160401b031680159081610ecd575b6001149081610ec3575b159081610eba575b50610ea957600080516020612ac683398151915280546001600160401b0319166001179055610e319688610e8457611cff565b610e3757005b600080516020612ac6833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29080602081016103d5565b600080516020612ac6833981519152805460ff60401b1916600160401b179055611cff565b63f92ee8a960e01b60005260046000fd5b90501538610dfe565b303b159150610df6565b899150610dec565b3461044d57600036600319011261044d57610eee61240b565b600080516020612a868339815191525460ff811615610f475760ff1916600080516020612a86833981519152557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b60005260046000fd5b3461044d5760a036600319011261044d57610f7161045e565b610f79610474565b90610f8261048a565b606435916001600160401b03831161044d573660238401121561044d576004830135916001600160401b03831161044d57366024848601011161044d576107ac946024608435950192611e9f565b3461044d57600036600319011261044d576000546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d577f244eb54cac6535a86303bc595966d5a61110599f580c3d181a784a386951856f60043561103661240b565b600f5481600f556103d560405192839283611cee565b3461044d57600036600319011261044d576020601054604051908152f35b3461044d57600036600319011261044d57602060ff600080516020612a8683398151915254166040519015158152f35b3461044d57600036600319011261044d576007546040516001600160a01b039091168152602090f35b3461044d57600036600319011261044d576006546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d577f27c528cbda4f3f36ae0f98af201cb897665399d363e2baf5aa0e93e77b4556f860043561112961240b565b601054816010556103d560405192839283611cee565b3461044d57602036600319011261044d5761115861045e565b60015460405163c084b10b60e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610670576020916000916111a0575b50604051908152f35b6111b79150823d84116106695761065b818361050e565b38611197565b3461044d57600036600319011261044d576111d661240b565b6000805160206129e683398151915280546001600160a01b031981169091556000906001600160a01b0316600080516020612a268339815191528280a3005b3461044d57602036600319011261044d57600435611231612441565b6112396124cb565b60405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9081156106705760009161129b575b50610ca5576107a490611fcb565b6112b4915060203d602011610cde57610cd0818361050e565b3861128d565b3461044d57602036600319011261044d576001600160a01b036112db61045e565b166000526008602052602060ff604060002054166040519015158152f35b3461044d57600036600319011261044d5761131261240b565b61131a6124cb565b600160ff19600080516020612a86833981519152541617600080516020612a86833981519152557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b6001600160a01b03909116815260200190565b3461044d57600036600319011261044d576000805160206129e6833981519152546040516001600160a01b039091168152602090f35b3461044d57600036600319011261044d576020600f54604051908152f35b3461044d57600036600319011261044d576005546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d57602061142061141b61045e565b6121da565b6040519015158152f35b3461044d57600036600319011261044d576003546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d576001600160a01b0361147461045e565b16600052600e60205260c0604060002080549060018101549060028101546003820154906005600484015493015493604051958652602086015260408501526060840152608083015260a0820152f35b3461044d57600036600319011261044d5760015460405163a14e19d560e01b815290602090829060049082906001600160a01b03165afa908115610670576000916106415750604051908152602090f35b3461044d57602036600319011261044d577f5d16ad41baeb009cd23eb8f6c7cde5c2e0cd5acf4a33926ab488875c37c37f3861154f61045e565b61155761240b565b600480546001600160a01b038381166001600160a01b03198316179092556040519283926103d5921683611c3b565b3461044d57602036600319011261044d5760206115a96115a461045e565b6121f7565b604051908152f35b3461044d57600036600319011261044d576002546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d576115f361045e565b6115fb61240b565b611611610dd561160a8361096d565b5460ff1690565b6116e85761162b6116218261096d565b805460ff19169055565b6001600160a01b031660005b60095490818110156116e1578261166761165083611ac6565b90546001600160a01b039260039290921b1c821690565b1614611677576001915001611637565b6116ac6116a661169161168c6116b295611c1f565b611ac6565b905460039190911b1c6001600160a01b031690565b91611ac6565b90611c55565b6116ba61233c565b7fef69f7d97228658c92417be1b16b19058315de71fecb435d07b7d23728b6bd31600080a2005b50506116ba565b6322a5e34b60e01b60005260046000fd5b3461044d57600036600319011261044d576012546040516001600160a01b039091168152602090f35b602060408183019282815284518094520192019060005b8181106117465750505090565b82516001600160a01b0316845260209384019390920191600101611739565b3461044d57600036600319011261044d576040516009805480835260009182526020830191600080516020612a4683398151915291905b8181106117bf576105e0856117b38187038261050e565b60405191829182611722565b82546001600160a01b031684526020909301926001928301920161179c565b3461044d57602036600319011261044d576004356117fa612441565b6118026124cb565b8015610ce55760405163fe575a8760e01b81523360048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa90811561067057600091611931575b50610ca55761186f6106cc600254610452565b803b1561044d5760008091600460405180948193631d8557d760e01b83525af180156106705761191c575b506118a96106cc600054610452565b602060405180926370a0823160e01b825281806118c9336004830161136d565b03915afa80156106705782916000916118fd575b50106118ec576107a490612827565b631e9acf1760e31b60005260046000fd5b611916915060203d6020116106695761065b818361050e565b386118dd565b80610c73600061192b9361050e565b3861189a565b61194a915060203d602011610cde57610cd0818361050e565b3861185c565b3461044d57602036600319011261044d5761196961045e565b61197161240b565b6001600160a01b0381169081156119e757601254916001600160a01b038316908181146119d6577fee76f64ea0204b40f46a632a9c93079e8225b5a6983c82fcb269aa46949f487d9360018060a01b031916176012556103d560405192839283611c3b565b63aba916dd60e01b60005260046000fd5b6303988b8160e61b60005260046000fd5b9094939260609260808301968352602083015260408201520152565b3461044d57600036600319011261044d57600a54600b54906105e0600c54600d5490604051948594856119f8565b3461044d57600036600319011261044d576004546040516001600160a01b039091168152602090f35b3461044d57600036600319011261044d576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b634e487b7160e01b600052603260045260246000fd5b600954811015611ae157600960005260206000200190600090565b611ab0565b3461044d57602036600319011261044d5760043560095481101561044d576009600052600080516020612a4683398151915201546040516001600160a01b039091168152602090f35b3461044d57602036600319011261044d57611b4861045e565b600154604051633ba641e960e21b81526001600160a01b0392831660048201529160209183916024918391165afa8015610670576105e091600091611b99575b506040519081529081906020820190565b611bb2915060203d6020116106695761065b818361050e565b38611b88565b3461044d57602036600319011261044d576107ac611bd461045e565b611bdc61240b565b6123a7565b634e487b7160e01b600052601160045260246000fd5b9190820180921161041557565b9081602091031261044d575190565b6040513d6000823e3d90fd5b60001981019190821161041557565b9190820391821161041557565b6001600160a01b0391821681529116602082015260400190565b80546001600160a01b0360039390931b83811b199091169290931690921b179055565b60095490600160401b8210156105315760018201600955600954821015611ae15760096000908152611cb992600080516020612a4683398151915201611c55565b565b9081602091031261044d5751801515810361044d5790565b6001600160a01b039091168152602081019190915260400190565b908152602081019190915260400190565b91956001600160a01b039092169392909184158015611e8e575b8015611e7d575b8015611e6c575b8015611e5b575b8015611e4a575b6108eb57611e3396611dab611def94611d89611e1198611d57611dcd96612799565b611d5f612973565b611d676127ad565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b601280546001600160a01b0319166001600160a01b0392909216919091179055565b611e3e610708600f55565b611cb96202a300601055565b506001600160a01b03861615611d35565b506001600160a01b03841615611d2e565b506001600160a01b03821615611d27565b506001600160a01b03871615611d20565b506001600160a01b03831615611d19565b91909333600052600860205260ff604060002054161580611f79575b61041a5760e460009695611f50928897611ed3612441565b611edb6124cb565b60125460405163407003bb60e01b602082019081526001600160a01b03998a1660248301529489166044820152968816606488015260a0608488015260c4870183905290961696919585928290858501378884838501015260a4830152601f801991011681010301601f19810183528261050e565b51915af4611f5c611f9b565b9015611f6b5750611cb961247d565b805190811561044d57602001fd5b506000805160206129e6833981519152546001600160a01b0316331415611ebb565b3d15611fc6573d90611fac82610536565b91611fba604051938461050e565b82523d6000602084013e565b606090565b600f54156121c957801561218257611fe233610987565b611ff06106cc600154610452565b602060405180926370a0823160e01b82528180612010336004830161136d565b03915afa90811561067057600091612163575b50600282015581815561203a6106cc600154610452565b60206040518092633ba641e960e21b8252818061205a336004830161136d565b03915afa90811561067057600091612144575b506003820155600460206120856106cc600254610452565b60405163220f1ac960e21b815292839182905afa918215610670577f2816dbba0837d8d68f7bcead98695dd98db2cc1cb4066694ead56a12e795c4889261212092600091612125575b5060018201556120f26120e66120e6600f5442611bf7565b6001600160401b031690565b9060048101918255600561210e6120e66120e6600f5442611bf7565b91015554604051918291339583611cee565b0390a2565b61213e915060203d6020116106695761065b818361050e565b386120ce565b61215d915060203d6020116106695761065b818361050e565b3861206d565b61217c915060203d6020116106695761065b818361050e565b38612023565b506121b361218f33610987565b60056000918281558260018201558260028201558260038201558260048201550155565b33600080516020612a66833981519152600080a2565b63410dc88360e11b60005260046000fd5b6001600160a01b0316600090815260116020526040902054431490565b6122056106cc600154610452565b604051630481930d60e21b81529060208280612224866004830161136d565b0381845afa9182156106705760009261231a575b5060049192602061224d6106cc600254610452565b60405163220f1ac960e21b815294859182905afa90811561067057612294936000926122fa575b50602091926040518080968194633ba641e960e21b83526004830161136d565b03915afa918215610670576000926122d9575b50811580156122d1575b6122cc576122c992916122c3916127bd565b906127ed565b90565b505090565b5082156122b1565b6122f391925060203d6020116106695761065b818361050e565b90386122a7565b6020925061231490833d85116106695761065b818361050e565b91612274565b600492506123369060203d6020116106695761065b818361050e565b91612238565b600954801561239157600954600019820191600091831015611ae1576009918290527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7ae0180546001600160a01b031916905555565b634e487b7160e01b600052603160045260246000fd5b6001600160a01b031680156123f5576000805160206129e683398151915280546001600160a01b0319811683179091556001600160a01b0316600080516020612a26833981519152600080a3565b631e4fbdf760e01b600052600060045260246000fd5b6000805160206129e6833981519152546001600160a01b0316330361242c57565b63118cdaa760e01b6000523360045260246000fd5b6002600080516020612aa6833981519152541461246c576002600080516020612aa683398151915255565b633ee5aeb560e01b60005260046000fd5b6001600080516020612aa683398151915255565b6124c6611cb993926124b860405194859263a9059cbb60e01b602085015260248401611cd3565b03601f19810184528361050e565b612918565b60ff600080516020612a8683398151915254166124e457565b63d93c066560e01b60005260046000fd5b919091600f541561271e5761250981610987565b6004810154801561270d574281116126fc57612529429160105490611bf7565b11156126eb57838154036126da57600490602061254a6106cc600254610452565b60405163220f1ac960e21b815293849182905afa918215610670576000926126b9575b50600181015491821580156126b0575b156126935750600291500154925b600019810361268e5750825b8093811161267d576125ad6106cc600154610452565b6040516370a0823160e01b81529091602082806125cd876004830161136d565b0381865afa9182156106705760009261265c575b50116125f5575b5061218f611cb991610987565b6040516370a0823160e01b815291935060209082908180612619886004830161136d565b03915afa90811561067057611cb99161218f9160009161263d575b509391506125e8565b612656915060203d6020116106695761065b818361050e565b38612634565b61267691925060203d6020116106695761065b818361050e565b90386125e1565b635b6aa88560e01b60005260046000fd5b612597565b6126a26126aa936002926127bd565b9101546127ed565b9261258b565b5082811461257d565b6126d391925060203d6020116106695761065b818361050e565b903861256d565b631536aed760e31b60005260046000fd5b635f8dd0cb60e01b60005260046000fd5b63f79b9a3360e01b60005260046000fd5b637b7e3ed560e11b60005260046000fd5b909161272c61218f83610987565b6000198103612794575060206127659161274a6106cc600154610452565b60405180809581946370a0823160e01b83526004830161136d565b03915afa9081156106705760009161277b575090565b6122c9915060203d6020116106695761065b818361050e565b905090565b611cb9906127a5612973565b611bdc612973565b6127b5612973565b61247d612973565b600182901c908215676765c793fa10079d601b1b83190482111761044d57676765c793fa10079d601b1b02010490565b8115676765c793fa10079d601a1b19839004821115171561044d57676765c793fa10079d601b1b9102676765c793fa10079d601a1b010490565b612842816128396106cc600054610452565b309033906129a1565b6128506106cc600154610452565b803b1561044d57600060405180926340c10f1960e01b8252818381612879883360048401611cd3565b03925af1801561067057612903575b5033600090815260116020526040902043905560046128a633610987565b01546128de575b7f90890809c654f11d6e72a28fa60149770a0d11ec6c92319d6ceb2bb0a4ea1a156040518061212033948083611cee565b6128ea61218f33610987565b33600080516020612a66833981519152600080a26128ad565b80610c7360006129129361050e565b38612888565b906000602091828151910182855af115611c13576000513d61296a57506001600160a01b0381163b155b6129495750565b635274afe760e01b60009081526001600160a01b0391909116600452602490fd5b60011415612942565b60ff600080516020612ac68339815191525460401c161561299057565b631afcd79f60e31b60005260046000fd5b6040516323b872dd60e01b60208201526001600160a01b039283166024820152929091166044830152606480830193909352918152611cb9916124c660848361050e56fe9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c1993004b3832ed948bc80ab35e8cab3a5923e6e1a57696d02c846a8b6f54d39bf9acf08be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e06e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af8b775bb80a5d4addc5ea2601b2378ae89a1bb9010227157ac02aa71498e799c4cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220a9fb7f77893f9079222aaa22ab565ed8f68c883778a5e77c2ce66e82f9eeff1864736f6c634300081e0033",
1225
1522
  "linkReferences": {},
1226
1523
  "deployedLinkReferences": {}
1227
1524
  }