@pendle/core-v2 5.10.2 → 5.11.0

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 (188) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +9 -3
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +9 -3
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +9 -3
  10. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +9 -3
  12. package/build/artifacts/contracts/LiquidityMining/PendleMerkleDistributor.sol/PendleMerkleDistributor.dbg.json +1 -1
  13. package/build/artifacts/contracts/LiquidityMining/PendleMerkleDistributor.sol/PendleMerkleDistributor.json +9 -3
  14. package/build/artifacts/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol/PendleMultiTokenMerkleDistributor.dbg.json +1 -1
  15. package/build/artifacts/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol/PendleMultiTokenMerkleDistributor.json +2 -2
  16. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +9 -3
  18. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  19. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  20. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  22. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.dbg.json +1 -1
  23. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.json +2 -2
  24. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  25. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  26. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableData.dbg.json +4 -0
  27. package/build/artifacts/contracts/core/libraries/{BoringOwnableUpgradeable.sol → BoringOwnableUpgradeableV2.sol}/BoringOwnableUpgradeableData.json +3 -3
  28. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableV2.dbg.json +1 -1
  29. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +4 -0
  30. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +598 -0
  31. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +4 -0
  32. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +498 -0
  33. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
  34. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.json +5 -0
  35. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
  36. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +7 -2
  37. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
  38. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.json +9 -3
  39. package/build/artifacts/contracts/offchain-helpers/BalanceReader.sol/BalanceReader.dbg.json +1 -1
  40. package/build/artifacts/contracts/offchain-helpers/BalanceReader.sol/BalanceReader.json +9 -3
  41. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  42. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.json +2 -2
  43. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  44. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +9 -3
  45. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
  46. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.json +9 -3
  47. package/build/artifacts/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol/ExpiredLpPtRedeemer.dbg.json +1 -1
  48. package/build/artifacts/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol/ExpiredLpPtRedeemer.json +2 -2
  49. package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.dbg.json +1 -1
  50. package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.json +2 -2
  51. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapperFactory.sol/PendleLPWrapperFactory.dbg.json +1 -1
  52. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapperFactory.sol/PendleLPWrapperFactory.json +2 -2
  53. package/build/artifacts/contracts/offchain-helpers/PendleMulticallOwnerV1.sol/PendleMulticallOwnerV1.dbg.json +4 -0
  54. package/build/artifacts/contracts/offchain-helpers/PendleMulticallOwnerV1.sol/PendleMulticallOwnerV1.json +153 -0
  55. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.dbg.json +1 -1
  56. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.json +2 -2
  57. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.dbg.json +1 -1
  58. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.json +2 -2
  59. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.dbg.json +1 -1
  60. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.json +2 -2
  61. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  62. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  63. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +1 -1
  64. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.json +7 -2
  65. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +1 -1
  66. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.json +2 -2
  67. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.dbg.json +1 -1
  68. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.json +2 -2
  69. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.dbg.json +1 -1
  70. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.json +2 -2
  71. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.dbg.json +1 -1
  72. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.json +2 -2
  73. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +1 -1
  74. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +2 -2
  75. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +1 -1
  76. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +2 -2
  77. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
  78. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
  79. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  80. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
  81. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol +4 -4
  82. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol +1 -1
  83. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol +4 -4
  84. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol +2 -2
  85. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +2 -2
  86. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol +2 -2
  87. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol +2 -2
  88. package/contracts/LiquidityMining/PendleMerkleDistributor.sol +4 -4
  89. package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +2 -2
  90. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +1 -1
  91. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +2 -2
  92. package/contracts/core/Market/v3/PendleMarketFactoryV3.sol +3 -3
  93. package/contracts/core/YieldContracts/PendleYieldContractFactory.sol +3 -3
  94. package/contracts/core/libraries/BoringOwnableUpgradeableV2.sol +5 -1
  95. package/contracts/{LiquidityMining → deprecated}/VeDistributor/PendleFeeDistributor.sol +6 -6
  96. package/contracts/{LiquidityMining → deprecated}/VeDistributor/PendleFeeDistributorV2.sol +4 -4
  97. package/contracts/limit/LimitRouterBase.sol +5 -4
  98. package/contracts/offchain-helpers/AddressProvider.sol +4 -4
  99. package/contracts/offchain-helpers/BalanceReader.sol +4 -4
  100. package/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol +3 -3
  101. package/contracts/offchain-helpers/Broadcaster.sol +4 -4
  102. package/contracts/offchain-helpers/EmptyUUPS.sol +4 -4
  103. package/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol +1 -1
  104. package/contracts/offchain-helpers/PendleExchangeRateOracle.sol +3 -4
  105. package/contracts/offchain-helpers/PendleLPWrapperFactory.sol +3 -3
  106. package/contracts/offchain-helpers/PendleMulticallOwnerV1.sol +39 -0
  107. package/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol +1 -1
  108. package/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol +5 -1
  109. package/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol +4 -4
  110. package/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol +1 -1
  111. package/deployments/80094-core.json +1 -1
  112. package/package.json +1 -1
  113. package/typechain-types/AddressProvider.ts +281 -0
  114. package/typechain-types/BalanceReader.ts +7 -6
  115. package/typechain-types/BaseSplitCodeFactoryContract.ts +276 -0
  116. package/typechain-types/BoringOwnableUpgradeableData.ts +100 -0
  117. package/typechain-types/BoringOwnableUpgradeable__deprecated.ts +204 -0
  118. package/typechain-types/Broadcaster.ts +7 -6
  119. package/typechain-types/EmptyUUPS.ts +353 -0
  120. package/typechain-types/LimitRouterBase.ts +14 -3
  121. package/typechain-types/PendleFeeDistributor.ts +7 -6
  122. package/typechain-types/PendleFeeDistributorV2.ts +723 -0
  123. package/typechain-types/PendleGaugeControllerMainchainUpg.ts +7 -6
  124. package/typechain-types/PendleGaugeControllerSidechainUpg.ts +7 -6
  125. package/typechain-types/PendleLimitRouter.ts +14 -3
  126. package/typechain-types/PendleMerkleDistributor.ts +611 -0
  127. package/typechain-types/PendleMsgReceiveEndpointUpg.ts +7 -6
  128. package/typechain-types/PendleMsgReceiverAppUpg.ts +125 -0
  129. package/typechain-types/PendleMsgSendEndpointUpg.ts +7 -6
  130. package/typechain-types/PendleMsgSenderAppUpg.ts +353 -0
  131. package/typechain-types/PendleMulticallOwnerV1.ts +271 -0
  132. package/typechain-types/PendlePYLpOracle.ts +7 -2
  133. package/typechain-types/PendleVotingControllerUpg.ts +7 -6
  134. package/typechain-types/factories/AddressProvider__factory.ts +202 -0
  135. package/typechain-types/factories/BalanceReader__factory.ts +8 -2
  136. package/typechain-types/factories/BaseSplitCodeFactoryContract__factory.ts +239 -0
  137. package/typechain-types/factories/BoringOwnableUpgradeableData__factory.ts +96 -0
  138. package/typechain-types/factories/BoringOwnableUpgradeable__deprecated__factory.ts +120 -0
  139. package/typechain-types/factories/BoringPYUsdChainlinkAssetOracle__factory.ts +1 -1
  140. package/typechain-types/factories/BoringPYUsdChainlinkSYOracle__factory.ts +1 -1
  141. package/typechain-types/factories/Broadcaster__factory.ts +8 -2
  142. package/typechain-types/factories/EmptyUUPS__factory.ts +256 -0
  143. package/typechain-types/factories/ExpiredLpPtRedeemer__factory.ts +1 -1
  144. package/typechain-types/factories/LimitRouterBase__factory.ts +5 -0
  145. package/typechain-types/factories/PendleChainlinkOracleFactory__factory.ts +1 -1
  146. package/typechain-types/factories/PendleChainlinkOracleWithQuote__factory.ts +1 -1
  147. package/typechain-types/factories/PendleChainlinkOracle__factory.ts +1 -1
  148. package/typechain-types/factories/PendleCommonPoolDeployHelperV2__factory.ts +1 -1
  149. package/typechain-types/factories/PendleCommonSYFactory__factory.ts +1 -1
  150. package/typechain-types/factories/PendleExchangeRateOracle__factory.ts +1 -1
  151. package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +555 -0
  152. package/typechain-types/factories/PendleFeeDistributor__factory.ts +8 -2
  153. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +8 -2
  154. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +8 -2
  155. package/typechain-types/factories/PendleLPWrapperFactory__factory.ts +1 -1
  156. package/typechain-types/factories/PendleLimitRouter__factory.ts +6 -1
  157. package/typechain-types/factories/PendleMarketFactoryV3__factory.ts +1 -1
  158. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  159. package/typechain-types/factories/PendleMerkleDistributor__factory.ts +494 -0
  160. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +8 -2
  161. package/typechain-types/factories/PendleMsgReceiverAppUpg__factory.ts +67 -0
  162. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +8 -2
  163. package/typechain-types/factories/PendleMsgSenderAppUpg__factory.ts +193 -0
  164. package/typechain-types/factories/PendleMultiTokenMerkleDistributor__factory.ts +1 -1
  165. package/typechain-types/factories/PendleMulticallOwnerV1__factory.ts +215 -0
  166. package/typechain-types/factories/PendlePYLpOracle__factory.ts +6 -1
  167. package/typechain-types/factories/PendlePoolDeployHelperV2__factory.ts +1 -1
  168. package/typechain-types/factories/PendleSwap__factory.ts +1 -1
  169. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +8 -2
  170. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  171. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  172. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  173. package/typechain-types/hardhat.d.ts +27 -45
  174. package/typechain-types/index.ts +6 -10
  175. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +0 -4
  176. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +0 -592
  177. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +0 -4
  178. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +0 -492
  179. package/build/artifacts/contracts/core/Market/v1/PendleMarket.sol/PendleMarket.dbg.json +0 -4
  180. package/build/artifacts/contracts/core/Market/v1/PendleMarket.sol/PendleMarket.json +0 -1139
  181. package/build/artifacts/contracts/core/Market/v1/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +0 -4
  182. package/build/artifacts/contracts/core/Market/v1/PendleMarketFactory.sol/PendleMarketFactory.json +0 -664
  183. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +0 -4
  184. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.json +0 -99
  185. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +0 -4
  186. package/contracts/core/Market/v1/PendleMarket.sol +0 -348
  187. package/contracts/core/Market/v1/PendleMarketFactory.sol +0 -154
  188. package/contracts/core/libraries/BoringOwnableUpgradeable.sol +0 -58
@@ -0,0 +1,598 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "PendleFeeDistributor",
4
+ "sourceName": "contracts/deprecated/VeDistributor/PendleFeeDistributor.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_votingController",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "_vePendle",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "address",
20
+ "name": "_rewardToken",
21
+ "type": "address"
22
+ }
23
+ ],
24
+ "stateMutability": "nonpayable",
25
+ "type": "constructor"
26
+ },
27
+ {
28
+ "inputs": [],
29
+ "name": "ArrayLengthMismatch",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [],
34
+ "name": "FDEpochLengthMismatch",
35
+ "type": "error"
36
+ },
37
+ {
38
+ "inputs": [
39
+ {
40
+ "internalType": "address",
41
+ "name": "pool",
42
+ "type": "address"
43
+ }
44
+ ],
45
+ "name": "FDInvalidPool",
46
+ "type": "error"
47
+ },
48
+ {
49
+ "inputs": [
50
+ {
51
+ "internalType": "uint256",
52
+ "name": "startEpoch",
53
+ "type": "uint256"
54
+ }
55
+ ],
56
+ "name": "FDInvalidStartEpoch",
57
+ "type": "error"
58
+ },
59
+ {
60
+ "inputs": [
61
+ {
62
+ "internalType": "uint256",
63
+ "name": "lastFunded",
64
+ "type": "uint256"
65
+ },
66
+ {
67
+ "internalType": "uint256",
68
+ "name": "wTime",
69
+ "type": "uint256"
70
+ }
71
+ ],
72
+ "name": "FDInvalidWTimeFund",
73
+ "type": "error"
74
+ },
75
+ {
76
+ "inputs": [
77
+ {
78
+ "internalType": "address",
79
+ "name": "pool",
80
+ "type": "address"
81
+ }
82
+ ],
83
+ "name": "FDPoolAlreadyExists",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "inputs": [
88
+ {
89
+ "internalType": "uint256",
90
+ "name": "actualTotalAmount",
91
+ "type": "uint256"
92
+ },
93
+ {
94
+ "internalType": "uint256",
95
+ "name": "expectedTotalAmount",
96
+ "type": "uint256"
97
+ }
98
+ ],
99
+ "name": "FDTotalAmountFundedNotMatch",
100
+ "type": "error"
101
+ },
102
+ {
103
+ "anonymous": false,
104
+ "inputs": [
105
+ {
106
+ "indexed": false,
107
+ "internalType": "address",
108
+ "name": "previousAdmin",
109
+ "type": "address"
110
+ },
111
+ {
112
+ "indexed": false,
113
+ "internalType": "address",
114
+ "name": "newAdmin",
115
+ "type": "address"
116
+ }
117
+ ],
118
+ "name": "AdminChanged",
119
+ "type": "event"
120
+ },
121
+ {
122
+ "anonymous": false,
123
+ "inputs": [
124
+ {
125
+ "indexed": true,
126
+ "internalType": "address",
127
+ "name": "beacon",
128
+ "type": "address"
129
+ }
130
+ ],
131
+ "name": "BeaconUpgraded",
132
+ "type": "event"
133
+ },
134
+ {
135
+ "anonymous": false,
136
+ "inputs": [
137
+ {
138
+ "indexed": true,
139
+ "internalType": "address",
140
+ "name": "pool",
141
+ "type": "address"
142
+ },
143
+ {
144
+ "indexed": true,
145
+ "internalType": "address",
146
+ "name": "user",
147
+ "type": "address"
148
+ },
149
+ {
150
+ "indexed": false,
151
+ "internalType": "uint256",
152
+ "name": "wTime",
153
+ "type": "uint256"
154
+ },
155
+ {
156
+ "indexed": false,
157
+ "internalType": "uint256",
158
+ "name": "amount",
159
+ "type": "uint256"
160
+ }
161
+ ],
162
+ "name": "ClaimReward",
163
+ "type": "event"
164
+ },
165
+ {
166
+ "anonymous": false,
167
+ "inputs": [
168
+ {
169
+ "indexed": false,
170
+ "internalType": "uint8",
171
+ "name": "version",
172
+ "type": "uint8"
173
+ }
174
+ ],
175
+ "name": "Initialized",
176
+ "type": "event"
177
+ },
178
+ {
179
+ "anonymous": false,
180
+ "inputs": [
181
+ {
182
+ "indexed": true,
183
+ "internalType": "address",
184
+ "name": "previousOwner",
185
+ "type": "address"
186
+ },
187
+ {
188
+ "indexed": true,
189
+ "internalType": "address",
190
+ "name": "newOwner",
191
+ "type": "address"
192
+ }
193
+ ],
194
+ "name": "OwnershipTransferred",
195
+ "type": "event"
196
+ },
197
+ {
198
+ "anonymous": false,
199
+ "inputs": [
200
+ {
201
+ "indexed": true,
202
+ "internalType": "address",
203
+ "name": "pool",
204
+ "type": "address"
205
+ },
206
+ {
207
+ "indexed": true,
208
+ "internalType": "uint256",
209
+ "name": "startWeek",
210
+ "type": "uint256"
211
+ }
212
+ ],
213
+ "name": "PoolAdded",
214
+ "type": "event"
215
+ },
216
+ {
217
+ "anonymous": false,
218
+ "inputs": [
219
+ {
220
+ "indexed": true,
221
+ "internalType": "address",
222
+ "name": "pool",
223
+ "type": "address"
224
+ },
225
+ {
226
+ "indexed": true,
227
+ "internalType": "uint256",
228
+ "name": "wTime",
229
+ "type": "uint256"
230
+ },
231
+ {
232
+ "indexed": false,
233
+ "internalType": "uint256",
234
+ "name": "amount",
235
+ "type": "uint256"
236
+ }
237
+ ],
238
+ "name": "UpdateFee",
239
+ "type": "event"
240
+ },
241
+ {
242
+ "anonymous": false,
243
+ "inputs": [
244
+ {
245
+ "indexed": true,
246
+ "internalType": "address",
247
+ "name": "implementation",
248
+ "type": "address"
249
+ }
250
+ ],
251
+ "name": "Upgraded",
252
+ "type": "event"
253
+ },
254
+ {
255
+ "inputs": [
256
+ {
257
+ "internalType": "address",
258
+ "name": "pool",
259
+ "type": "address"
260
+ },
261
+ {
262
+ "internalType": "uint256",
263
+ "name": "_startWeek",
264
+ "type": "uint256"
265
+ }
266
+ ],
267
+ "name": "addPool",
268
+ "outputs": [],
269
+ "stateMutability": "nonpayable",
270
+ "type": "function"
271
+ },
272
+ {
273
+ "inputs": [
274
+ {
275
+ "internalType": "uint256",
276
+ "name": "",
277
+ "type": "uint256"
278
+ }
279
+ ],
280
+ "name": "allPools",
281
+ "outputs": [
282
+ {
283
+ "internalType": "address",
284
+ "name": "",
285
+ "type": "address"
286
+ }
287
+ ],
288
+ "stateMutability": "view",
289
+ "type": "function"
290
+ },
291
+ {
292
+ "inputs": [],
293
+ "name": "claimOwnership",
294
+ "outputs": [],
295
+ "stateMutability": "nonpayable",
296
+ "type": "function"
297
+ },
298
+ {
299
+ "inputs": [
300
+ {
301
+ "internalType": "address",
302
+ "name": "user",
303
+ "type": "address"
304
+ },
305
+ {
306
+ "internalType": "address[]",
307
+ "name": "pools",
308
+ "type": "address[]"
309
+ }
310
+ ],
311
+ "name": "claimReward",
312
+ "outputs": [
313
+ {
314
+ "internalType": "uint256[]",
315
+ "name": "amountRewardOut",
316
+ "type": "uint256[]"
317
+ }
318
+ ],
319
+ "stateMutability": "nonpayable",
320
+ "type": "function"
321
+ },
322
+ {
323
+ "inputs": [
324
+ {
325
+ "internalType": "address",
326
+ "name": "",
327
+ "type": "address"
328
+ },
329
+ {
330
+ "internalType": "uint256",
331
+ "name": "",
332
+ "type": "uint256"
333
+ }
334
+ ],
335
+ "name": "fees",
336
+ "outputs": [
337
+ {
338
+ "internalType": "uint256",
339
+ "name": "",
340
+ "type": "uint256"
341
+ }
342
+ ],
343
+ "stateMutability": "view",
344
+ "type": "function"
345
+ },
346
+ {
347
+ "inputs": [
348
+ {
349
+ "internalType": "address[]",
350
+ "name": "pools",
351
+ "type": "address[]"
352
+ },
353
+ {
354
+ "internalType": "uint256[][]",
355
+ "name": "wTimes",
356
+ "type": "uint256[][]"
357
+ },
358
+ {
359
+ "internalType": "uint256[][]",
360
+ "name": "amounts",
361
+ "type": "uint256[][]"
362
+ },
363
+ {
364
+ "internalType": "uint256",
365
+ "name": "totalAmountToFund",
366
+ "type": "uint256"
367
+ }
368
+ ],
369
+ "name": "fund",
370
+ "outputs": [],
371
+ "stateMutability": "nonpayable",
372
+ "type": "function"
373
+ },
374
+ {
375
+ "inputs": [],
376
+ "name": "getAllActivePools",
377
+ "outputs": [
378
+ {
379
+ "internalType": "address[]",
380
+ "name": "",
381
+ "type": "address[]"
382
+ }
383
+ ],
384
+ "stateMutability": "view",
385
+ "type": "function"
386
+ },
387
+ {
388
+ "inputs": [],
389
+ "name": "getAllPools",
390
+ "outputs": [
391
+ {
392
+ "internalType": "address[]",
393
+ "name": "",
394
+ "type": "address[]"
395
+ }
396
+ ],
397
+ "stateMutability": "view",
398
+ "type": "function"
399
+ },
400
+ {
401
+ "inputs": [
402
+ {
403
+ "internalType": "address",
404
+ "name": "_owner",
405
+ "type": "address"
406
+ }
407
+ ],
408
+ "name": "initialize",
409
+ "outputs": [],
410
+ "stateMutability": "nonpayable",
411
+ "type": "function"
412
+ },
413
+ {
414
+ "inputs": [
415
+ {
416
+ "internalType": "address",
417
+ "name": "",
418
+ "type": "address"
419
+ }
420
+ ],
421
+ "name": "lastFundedWeek",
422
+ "outputs": [
423
+ {
424
+ "internalType": "uint256",
425
+ "name": "",
426
+ "type": "uint256"
427
+ }
428
+ ],
429
+ "stateMutability": "view",
430
+ "type": "function"
431
+ },
432
+ {
433
+ "inputs": [],
434
+ "name": "owner",
435
+ "outputs": [
436
+ {
437
+ "internalType": "address",
438
+ "name": "",
439
+ "type": "address"
440
+ }
441
+ ],
442
+ "stateMutability": "view",
443
+ "type": "function"
444
+ },
445
+ {
446
+ "inputs": [],
447
+ "name": "pendingOwner",
448
+ "outputs": [
449
+ {
450
+ "internalType": "address",
451
+ "name": "",
452
+ "type": "address"
453
+ }
454
+ ],
455
+ "stateMutability": "view",
456
+ "type": "function"
457
+ },
458
+ {
459
+ "inputs": [],
460
+ "name": "proxiableUUID",
461
+ "outputs": [
462
+ {
463
+ "internalType": "bytes32",
464
+ "name": "",
465
+ "type": "bytes32"
466
+ }
467
+ ],
468
+ "stateMutability": "view",
469
+ "type": "function"
470
+ },
471
+ {
472
+ "inputs": [],
473
+ "name": "token",
474
+ "outputs": [
475
+ {
476
+ "internalType": "address",
477
+ "name": "",
478
+ "type": "address"
479
+ }
480
+ ],
481
+ "stateMutability": "view",
482
+ "type": "function"
483
+ },
484
+ {
485
+ "inputs": [
486
+ {
487
+ "internalType": "address",
488
+ "name": "newOwner",
489
+ "type": "address"
490
+ },
491
+ {
492
+ "internalType": "bool",
493
+ "name": "direct",
494
+ "type": "bool"
495
+ },
496
+ {
497
+ "internalType": "bool",
498
+ "name": "renounce",
499
+ "type": "bool"
500
+ }
501
+ ],
502
+ "name": "transferOwnership",
503
+ "outputs": [],
504
+ "stateMutability": "nonpayable",
505
+ "type": "function"
506
+ },
507
+ {
508
+ "inputs": [
509
+ {
510
+ "internalType": "address",
511
+ "name": "newImplementation",
512
+ "type": "address"
513
+ }
514
+ ],
515
+ "name": "upgradeTo",
516
+ "outputs": [],
517
+ "stateMutability": "nonpayable",
518
+ "type": "function"
519
+ },
520
+ {
521
+ "inputs": [
522
+ {
523
+ "internalType": "address",
524
+ "name": "newImplementation",
525
+ "type": "address"
526
+ },
527
+ {
528
+ "internalType": "bytes",
529
+ "name": "data",
530
+ "type": "bytes"
531
+ }
532
+ ],
533
+ "name": "upgradeToAndCall",
534
+ "outputs": [],
535
+ "stateMutability": "payable",
536
+ "type": "function"
537
+ },
538
+ {
539
+ "inputs": [
540
+ {
541
+ "internalType": "address",
542
+ "name": "",
543
+ "type": "address"
544
+ },
545
+ {
546
+ "internalType": "address",
547
+ "name": "",
548
+ "type": "address"
549
+ }
550
+ ],
551
+ "name": "userInfo",
552
+ "outputs": [
553
+ {
554
+ "internalType": "uint128",
555
+ "name": "firstUnclaimedWeek",
556
+ "type": "uint128"
557
+ },
558
+ {
559
+ "internalType": "uint128",
560
+ "name": "iter",
561
+ "type": "uint128"
562
+ }
563
+ ],
564
+ "stateMutability": "view",
565
+ "type": "function"
566
+ },
567
+ {
568
+ "inputs": [],
569
+ "name": "vePendle",
570
+ "outputs": [
571
+ {
572
+ "internalType": "address",
573
+ "name": "",
574
+ "type": "address"
575
+ }
576
+ ],
577
+ "stateMutability": "view",
578
+ "type": "function"
579
+ },
580
+ {
581
+ "inputs": [],
582
+ "name": "votingController",
583
+ "outputs": [
584
+ {
585
+ "internalType": "address",
586
+ "name": "",
587
+ "type": "address"
588
+ }
589
+ ],
590
+ "stateMutability": "view",
591
+ "type": "function"
592
+ }
593
+ ],
594
+ "bytecode": "0x610100604052306080523480156200001657600080fd5b50604051620028b0380380620028b08339810160408190526200003991620001a0565b600154600160a81b900460ff161580801562000060575060018054600160a01b900460ff16105b80620000825750303b15801562000082575060018054600160a01b900460ff16145b620000ea5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840160405180910390fd5b6001805460ff60a01b1916600160a01b179055801562000118576001805460ff60a81b1916600160a81b1790555b6001600160a01b0380851660a05283811660c052821660e052801562000179576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050620001ea565b80516001600160a01b03811681146200019b57600080fd5b919050565b600080600060608486031215620001b657600080fd5b620001c18462000183565b9250620001d16020850162000183565b9150620001e16040850162000183565b90509250925092565b60805160a05160c05160e0516126236200028d600039600081816103ed015281816107c50152610d4a01526000818161031701528181611608015281816116560152818161173901528181611787015281816118ad01526119020152600081816102ce015281816116fa0152818161181d01526119b401526000818161064901528181610689015281816108d201528181610912015261098e01526126236000f3fe6080604052600436106100ef5760003560e01c8063078dfbe7146100f45780630d6f1413146101165780630f208beb14610156578063263a5362146101c257806332a9caba146101fa5780633659cfe61461021a5780633685ffe71461023a57806341d1de97146102675780634e71e0c8146102945780634f1ef286146102a9578063517afbcf146102bc57806352d1902d146102f057806382dabb21146103055780638da5cb5b14610339578063c4d66de814610359578063d5cd7d2014610379578063d7ace6ce1461039b578063d88ff1f414610379578063e30c3978146103bb578063fc0c546a146103db575b600080fd5b34801561010057600080fd5b5061011461010f366004611dc6565b61040f565b005b34801561012257600080fd5b50610143610131366004611e0f565b60336020526000908152604090205481565b6040519081526020015b60405180910390f35b34801561016257600080fd5b506101a2610171366004611e2a565b60346020908152600092835260408084209091529082529020546001600160801b0380821691600160801b90041682565b604080516001600160801b0393841681529290911660208301520161014d565b3480156101ce57600080fd5b506101436101dd366004611e5d565b603560209081526000928352604080842090915290825290205481565b34801561020657600080fd5b50610114610215366004611e5d565b610514565b34801561022657600080fd5b50610114610235366004611e0f565b61063f565b34801561024657600080fd5b5061025a610255366004611ed2565b610707565b60405161014d9190611f24565b34801561027357600080fd5b50610287610282366004611f68565b6107f3565b60405161014d9190611f81565b3480156102a057600080fd5b5061011461081d565b6101146102b7366004612003565b6108c8565b3480156102c857600080fd5b506102877f000000000000000000000000000000000000000000000000000000000000000081565b3480156102fc57600080fd5b50610143610981565b34801561031157600080fd5b506102877f000000000000000000000000000000000000000000000000000000000000000081565b34801561034557600080fd5b50600054610287906001600160a01b031681565b34801561036557600080fd5b50610114610374366004611e0f565b610a2f565b34801561038557600080fd5b5061038e610b5f565b60405161014d91906120a8565b3480156103a757600080fd5b506101146103b63660046120e9565b610bc1565b3480156103c757600080fd5b50600154610287906001600160a01b031681565b3480156103e757600080fd5b506102877f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b031633146104425760405162461bcd60e51b81526004016104399061218b565b60405180910390fd5b81156104f3576001600160a01b03831615158061045c5750805b6104a05760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b6044820152606401610439565b600080546040516001600160a01b03808716939216916000805160206125a783398151915291a3600080546001600160a01b0385166001600160a01b031991821617909155600180549091169055505050565b600180546001600160a01b0319166001600160a01b0385161790555b505050565b6000546001600160a01b0316331461053e5760405162461bcd60e51b81526004016104399061218b565b61054781610dd2565b1580610551575080155b1561057257604051631da2a47b60e01b815260048101829052602401610439565b6001600160a01b038216600090815260336020526040902054156105ab578160405163bfa6835d60e01b81526004016104399190611f81565b6105b862093a80826121d6565b6001600160a01b03831660008181526033602052604080822093909355603280546001810182559082527f11df491316f14931039edfd4f8964c9a443b862f02d4c7611d18c2bc4e6ff6970180546001600160a01b03191683179055915183927f0c98febfffcec480c66a977e13f14bafdb5199ea9603591a0715b0cabe0c3ae291a35050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036106875760405162461bcd60e51b8152600401610439906121e9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166106b9610de8565b6001600160a01b0316146106df5760405162461bcd60e51b815260040161043990612223565b6106e881610e04565b6040805160008082526020820190925261070491839190610e2e565b50565b6060816001600160401b0381111561072157610721611f95565b60405190808252806020026020018201604052801561074a578160200160208202803683370190505b50905060005b828110156107ad5761078884848381811061076d5761076d61225d565b90506020020160208101906107829190611e0f565b86610f99565b82828151811061079a5761079a61225d565b6020908102919091010152600101610750565b506107ec846107bb8361122f565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016919061126c565b9392505050565b6032818154811061080357600080fd5b6000918252602090912001546001600160a01b0316905081565b6001546001600160a01b03163381146108785760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152606401610439565b600080546040516001600160a01b03808516939216916000805160206125a783398151915291a3600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036109105760405162461bcd60e51b8152600401610439906121e9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610942610de8565b6001600160a01b0316146109685760405162461bcd60e51b815260040161043990612223565b61097182610e04565b61097d82826001610e2e565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a1c5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610439565b5060008051602061258783398151915290565b600154600160a81b900460ff1615808015610a55575060018054600160a01b900460ff16105b80610a7c5750610a64306112c2565b158015610a7c575060018054600160a01b900460ff16145b610adf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610439565b6001805460ff60a01b1916600160a01b1790558015610b0c576001805460ff60a81b1916600160a81b1790555b610b15826112d1565b801561097d576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60606032805480602002602001604051908101604052809291908181526020018280548015610bb757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610b99575b5050505050905090565b6000546001600160a01b03163314610beb5760405162461bcd60e51b81526004016104399061218b565b858481141580610bfb5750828114155b15610c195760405163512509d360e11b815260040160405180910390fd5b6000805b82811015610d0e57610c9c8a8a83818110610c3a57610c3a61225d565b9050602002016020810190610c4f9190611e0f565b898984818110610c6157610c6161225d565b9050602002810190610c739190612273565b898986818110610c8557610c8561225d565b9050602002810190610c979190612273565b611360565b610cfa868683818110610cb157610cb161225d565b9050602002810190610cc39190612273565b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061122f92505050565b610d0490836122bc565b9150600101610c1d565b50828114610d3357808360405163c4b307b760e01b81526004016104399291906122cf565b6040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610d83903390309086906004016122dd565b6020604051808303816000875af1158015610da2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc69190612301565b50505050505050505050565b6000610de162093a8083612334565b1592915050565b600080516020612587833981519152546001600160a01b031690565b6000546001600160a01b031633146107045760405162461bcd60e51b81526004016104399061218b565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610e615761050f8361153f565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ebb575060408051601f3d908101601f19168201909252610eb891810190612348565b60015b610f1e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610439565b6000805160206125878339815191528114610f8d5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610439565b5061050f8383836115d9565b6001600160a01b03821660009081526033602052604081205483908203610fd45780604051624e263b60e41b81526004016104399190611f81565b6000610fe08585611604565b905080600003610ff4576000925050611228565b6001600160a01b03858116600090815260336020908152604080832054603483528184209489168452939091529020546001600160801b0380821691600160801b9004168282111561104d576000955050505050611228565b600061105a89898461172f565b90508060008490036110825781516110769062093a8090612361565b6001600160801b031693505b8484116111cc57856110958460016122bc565b10156110ec57815181516001600160801b039182169116036110c9576110c68a8a6110c18660016122bc565b61172f565b90505b80516001600160801b03168411156110ec57826110e581612381565b9350508091505b60208201516000906110fe9086611856565b6001600160801b0316905080156111b757600061111b8c876118a9565b6001600160a01b038d1660009081526035602090815260408083208a845290915281205491925090829061114f908561239a565b61115991906123b1565b9050611165818c6122bc565b9a508b6001600160a01b03168d6001600160a01b03167ffe7c5fc89da23a432c91f264decb100ab9d08ab7b14650c3cdb9b6b4f84a60e989846040516111ac9291906122cf565b60405180910390a350505b6111c462093a80866122bc565b945050611082565b50506040805180820182526001600160801b03938416815291831660208084019182526001600160a01b03808c16600090815260348352848120918c168152915291909120915190518316600160801b02921691909117905550505b5092915050565b600080805b83518110156112285783818151811061124f5761124f61225d565b60200260200101518261126291906122bc565b9150600101611234565b61050f8363a9059cbb60e01b848460405160240161128b9291906123c5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526119e3565b6001600160a01b03163b151590565b600154600160a81b900460ff1661133e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610439565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03851660009081526033602052604081205486910361139a5780604051624e263b60e41b81526004016104399190611f81565b8382146113ba57604051635174addf60e11b815260040160405180910390fd5b6001600160a01b038616600090815260336020526040812054906113dc611ab8565b6001600160801b0316905060005b848110156114f55760008888838181106114065761140661225d565b90506020020135905060008787848181106114235761142361225d565b6020029190910135915061143c905062093a80866122bc565b821461145f578482604051637d9c405d60e11b81526004016104399291906122cf565b6001600160a01b038b166000908152603560209081526040808320858452909152812080548392906114929084906122bc565b909155506114a5905062093a80866122bc565b9450818b6001600160a01b03167fc9920255a27e7e0a5d647597e867ab827659000ae32276c878d8a04120efabb0836040516114e391815260200190565b60405180910390a350506001016113ea565b5080821061151a578181604051637d9c405d60e11b81526004016104399291906122cf565b506001600160a01b039096166000908152603360205260409020959095555050505050565b611548816112c2565b6115aa5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610439565b60008051602061258783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6115e283611ac8565b6000825111806115ef5750805b1561050f576115fe8383611b08565b50505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316036116d35760405163fc367c6160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063fc367c619061168b908590600401611f81565b602060405180830381865afa1580156116a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cc9190612348565b9050611729565b604051633575141360e11b81526001600160a01b03838116600483015284811660248301527f00000000000000000000000000000000000000000000000000000000000000001690636aea28269060440161168b565b92915050565b611737611d4d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03160361180657604051637c386c7160e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637c386c71906117be90869086906004016123c5565b606060405180830381865afa1580156117db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ff91906123f5565b90506107ec565b60405163632c096d60e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063632c096d906117be908690889087906004016122dd565b600082600001516001600160801b03168284602001516118769190612467565b6001600160801b0316111561188d57506000611729565b81836020015161189d9190612467565b83516107ec9190612492565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316036119865760405163947975d960e01b81526001600160801b03831660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063947975d9906024015b602060405180830381865afa158015611952573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061197691906124b2565b6001600160801b03169050611729565b60405163f144cf1760e01b81526001600160a01b0384811660048301526001600160801b03841660248301527f0000000000000000000000000000000000000000000000000000000000000000169063f144cf1790604401611935565b6000611a38826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611b2d9092919063ffffffff16565b9050805160001480611a59575080806020019051810190611a599190612301565b61050f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610439565b6000611ac342611b44565b905090565b611ad18161153f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606107ec83836040518060600160405280602781526020016125c760279139611b5e565b6060611b3c8484600085611bd6565b949350505050565b600062093a80611b5481846124cd565b6117299190612467565b6060600080856001600160a01b031685604051611b7b9190612517565b600060405180830381855af49150503d8060008114611bb6576040519150601f19603f3d011682016040523d82523d6000602084013e611bbb565b606091505b5091509150611bcc86838387611cb1565b9695505050505050565b606082471015611c375760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610439565b600080866001600160a01b03168587604051611c539190612517565b60006040518083038185875af1925050503d8060008114611c90576040519150601f19603f3d011682016040523d82523d6000602084013e611c95565b606091505b5091509150611ca687838387611cb1565b979650505050505050565b60608315611d1e578251600003611d1757611ccb856112c2565b611d175760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610439565b5081611b3c565b611b3c8383815115611d335781518083602001fd5b8060405162461bcd60e51b81526004016104399190612533565b604051806040016040528060006001600160801b03168152602001611d97604051806040016040528060006001600160801b0316815260200160006001600160801b031681525090565b905290565b80356001600160a01b0381168114611db357600080fd5b919050565b801515811461070457600080fd5b600080600060608486031215611ddb57600080fd5b611de484611d9c565b92506020840135611df481611db8565b91506040840135611e0481611db8565b809150509250925092565b600060208284031215611e2157600080fd5b6107ec82611d9c565b60008060408385031215611e3d57600080fd5b611e4683611d9c565b9150611e5460208401611d9c565b90509250929050565b60008060408385031215611e7057600080fd5b611e7983611d9c565b946020939093013593505050565b60008083601f840112611e9957600080fd5b5081356001600160401b03811115611eb057600080fd5b6020830191508360208260051b8501011115611ecb57600080fd5b9250929050565b600080600060408486031215611ee757600080fd5b611ef084611d9c565b925060208401356001600160401b03811115611f0b57600080fd5b611f1786828701611e87565b9497909650939450505050565b6020808252825182820181905260009190848201906040850190845b81811015611f5c57835183529284019291840191600101611f40565b50909695505050505050565b600060208284031215611f7a57600080fd5b5035919050565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611fcd57611fcd611f95565b60405290565b604051601f8201601f191681016001600160401b0381118282101715611ffb57611ffb611f95565b604052919050565b6000806040838503121561201657600080fd5b61201f83611d9c565b91506020838101356001600160401b038082111561203c57600080fd5b818601915086601f83011261205057600080fd5b81358181111561206257612062611f95565b612074601f8201601f19168501611fd3565b9150808252878482850101111561208a57600080fd5b80848401858401376000848284010152508093505050509250929050565b6020808252825182820181905260009190848201906040850190845b81811015611f5c5783516001600160a01b0316835292840192918401916001016120c4565b60008060008060008060006080888a03121561210457600080fd5b87356001600160401b038082111561211b57600080fd5b6121278b838c01611e87565b909950975060208a013591508082111561214057600080fd5b61214c8b838c01611e87565b909750955060408a013591508082111561216557600080fd5b506121728a828b01611e87565b989b979a50959894979596606090950135949350505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b81810381811115611729576117296121c0565b6020808252602c9082015260008051602061256783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061256783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261228a57600080fd5b8301803591506001600160401b038211156122a457600080fd5b6020019150600581901b3603821315611ecb57600080fd5b80820180821115611729576117296121c0565b918252602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b60006020828403121561231357600080fd5b81516107ec81611db8565b634e487b7160e01b600052601260045260246000fd5b6000826123435761234361231e565b500690565b60006020828403121561235a57600080fd5b5051919050565b6001600160801b03818116838216019080821115611228576112286121c0565b600060018201612393576123936121c0565b5060010190565b8082028115828204841417611729576117296121c0565b6000826123c0576123c061231e565b500490565b6001600160a01b03929092168252602082015260400190565b80516001600160801b0381168114611db357600080fd5b6000818303606081121561240857600080fd5b612410611fab565b612419846123de565b81526040601f198301121561242d57600080fd5b612435611fab565b9150612443602085016123de565b8252612451604085016123de565b6020830152816020820152809250505092915050565b6001600160801b0381811683821602808216919082811461248a5761248a6121c0565b505092915050565b6001600160801b03828116828216039080821115611228576112286121c0565b6000602082840312156124c457600080fd5b6107ec826123de565b60006001600160801b03838116806124e7576124e761231e565b92169190910492915050565b60005b8381101561250e5781810151838201526020016124f6565b50506000910152565b600082516125298184602087016124f3565b9190910192915050565b60208152600082518060208401526125528160408501602087016124f3565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207bb4fea36dbc3132dc389dec04ee69a281afea64a1784c873d6aa9208647746f64736f6c63430008170033",
595
+ "deployedBytecode": "0x6080604052600436106100ef5760003560e01c8063078dfbe7146100f45780630d6f1413146101165780630f208beb14610156578063263a5362146101c257806332a9caba146101fa5780633659cfe61461021a5780633685ffe71461023a57806341d1de97146102675780634e71e0c8146102945780634f1ef286146102a9578063517afbcf146102bc57806352d1902d146102f057806382dabb21146103055780638da5cb5b14610339578063c4d66de814610359578063d5cd7d2014610379578063d7ace6ce1461039b578063d88ff1f414610379578063e30c3978146103bb578063fc0c546a146103db575b600080fd5b34801561010057600080fd5b5061011461010f366004611dc6565b61040f565b005b34801561012257600080fd5b50610143610131366004611e0f565b60336020526000908152604090205481565b6040519081526020015b60405180910390f35b34801561016257600080fd5b506101a2610171366004611e2a565b60346020908152600092835260408084209091529082529020546001600160801b0380821691600160801b90041682565b604080516001600160801b0393841681529290911660208301520161014d565b3480156101ce57600080fd5b506101436101dd366004611e5d565b603560209081526000928352604080842090915290825290205481565b34801561020657600080fd5b50610114610215366004611e5d565b610514565b34801561022657600080fd5b50610114610235366004611e0f565b61063f565b34801561024657600080fd5b5061025a610255366004611ed2565b610707565b60405161014d9190611f24565b34801561027357600080fd5b50610287610282366004611f68565b6107f3565b60405161014d9190611f81565b3480156102a057600080fd5b5061011461081d565b6101146102b7366004612003565b6108c8565b3480156102c857600080fd5b506102877f000000000000000000000000000000000000000000000000000000000000000081565b3480156102fc57600080fd5b50610143610981565b34801561031157600080fd5b506102877f000000000000000000000000000000000000000000000000000000000000000081565b34801561034557600080fd5b50600054610287906001600160a01b031681565b34801561036557600080fd5b50610114610374366004611e0f565b610a2f565b34801561038557600080fd5b5061038e610b5f565b60405161014d91906120a8565b3480156103a757600080fd5b506101146103b63660046120e9565b610bc1565b3480156103c757600080fd5b50600154610287906001600160a01b031681565b3480156103e757600080fd5b506102877f000000000000000000000000000000000000000000000000000000000000000081565b6000546001600160a01b031633146104425760405162461bcd60e51b81526004016104399061218b565b60405180910390fd5b81156104f3576001600160a01b03831615158061045c5750805b6104a05760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b6044820152606401610439565b600080546040516001600160a01b03808716939216916000805160206125a783398151915291a3600080546001600160a01b0385166001600160a01b031991821617909155600180549091169055505050565b600180546001600160a01b0319166001600160a01b0385161790555b505050565b6000546001600160a01b0316331461053e5760405162461bcd60e51b81526004016104399061218b565b61054781610dd2565b1580610551575080155b1561057257604051631da2a47b60e01b815260048101829052602401610439565b6001600160a01b038216600090815260336020526040902054156105ab578160405163bfa6835d60e01b81526004016104399190611f81565b6105b862093a80826121d6565b6001600160a01b03831660008181526033602052604080822093909355603280546001810182559082527f11df491316f14931039edfd4f8964c9a443b862f02d4c7611d18c2bc4e6ff6970180546001600160a01b03191683179055915183927f0c98febfffcec480c66a977e13f14bafdb5199ea9603591a0715b0cabe0c3ae291a35050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036106875760405162461bcd60e51b8152600401610439906121e9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166106b9610de8565b6001600160a01b0316146106df5760405162461bcd60e51b815260040161043990612223565b6106e881610e04565b6040805160008082526020820190925261070491839190610e2e565b50565b6060816001600160401b0381111561072157610721611f95565b60405190808252806020026020018201604052801561074a578160200160208202803683370190505b50905060005b828110156107ad5761078884848381811061076d5761076d61225d565b90506020020160208101906107829190611e0f565b86610f99565b82828151811061079a5761079a61225d565b6020908102919091010152600101610750565b506107ec846107bb8361122f565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016919061126c565b9392505050565b6032818154811061080357600080fd5b6000918252602090912001546001600160a01b0316905081565b6001546001600160a01b03163381146108785760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152606401610439565b600080546040516001600160a01b03808516939216916000805160206125a783398151915291a3600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036109105760405162461bcd60e51b8152600401610439906121e9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610942610de8565b6001600160a01b0316146109685760405162461bcd60e51b815260040161043990612223565b61097182610e04565b61097d82826001610e2e565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a1c5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610439565b5060008051602061258783398151915290565b600154600160a81b900460ff1615808015610a55575060018054600160a01b900460ff16105b80610a7c5750610a64306112c2565b158015610a7c575060018054600160a01b900460ff16145b610adf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610439565b6001805460ff60a01b1916600160a01b1790558015610b0c576001805460ff60a81b1916600160a81b1790555b610b15826112d1565b801561097d576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60606032805480602002602001604051908101604052809291908181526020018280548015610bb757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610b99575b5050505050905090565b6000546001600160a01b03163314610beb5760405162461bcd60e51b81526004016104399061218b565b858481141580610bfb5750828114155b15610c195760405163512509d360e11b815260040160405180910390fd5b6000805b82811015610d0e57610c9c8a8a83818110610c3a57610c3a61225d565b9050602002016020810190610c4f9190611e0f565b898984818110610c6157610c6161225d565b9050602002810190610c739190612273565b898986818110610c8557610c8561225d565b9050602002810190610c979190612273565b611360565b610cfa868683818110610cb157610cb161225d565b9050602002810190610cc39190612273565b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061122f92505050565b610d0490836122bc565b9150600101610c1d565b50828114610d3357808360405163c4b307b760e01b81526004016104399291906122cf565b6040516323b872dd60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90610d83903390309086906004016122dd565b6020604051808303816000875af1158015610da2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dc69190612301565b50505050505050505050565b6000610de162093a8083612334565b1592915050565b600080516020612587833981519152546001600160a01b031690565b6000546001600160a01b031633146107045760405162461bcd60e51b81526004016104399061218b565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610e615761050f8361153f565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ebb575060408051601f3d908101601f19168201909252610eb891810190612348565b60015b610f1e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610439565b6000805160206125878339815191528114610f8d5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610439565b5061050f8383836115d9565b6001600160a01b03821660009081526033602052604081205483908203610fd45780604051624e263b60e41b81526004016104399190611f81565b6000610fe08585611604565b905080600003610ff4576000925050611228565b6001600160a01b03858116600090815260336020908152604080832054603483528184209489168452939091529020546001600160801b0380821691600160801b9004168282111561104d576000955050505050611228565b600061105a89898461172f565b90508060008490036110825781516110769062093a8090612361565b6001600160801b031693505b8484116111cc57856110958460016122bc565b10156110ec57815181516001600160801b039182169116036110c9576110c68a8a6110c18660016122bc565b61172f565b90505b80516001600160801b03168411156110ec57826110e581612381565b9350508091505b60208201516000906110fe9086611856565b6001600160801b0316905080156111b757600061111b8c876118a9565b6001600160a01b038d1660009081526035602090815260408083208a845290915281205491925090829061114f908561239a565b61115991906123b1565b9050611165818c6122bc565b9a508b6001600160a01b03168d6001600160a01b03167ffe7c5fc89da23a432c91f264decb100ab9d08ab7b14650c3cdb9b6b4f84a60e989846040516111ac9291906122cf565b60405180910390a350505b6111c462093a80866122bc565b945050611082565b50506040805180820182526001600160801b03938416815291831660208084019182526001600160a01b03808c16600090815260348352848120918c168152915291909120915190518316600160801b02921691909117905550505b5092915050565b600080805b83518110156112285783818151811061124f5761124f61225d565b60200260200101518261126291906122bc565b9150600101611234565b61050f8363a9059cbb60e01b848460405160240161128b9291906123c5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526119e3565b6001600160a01b03163b151590565b600154600160a81b900460ff1661133e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610439565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03851660009081526033602052604081205486910361139a5780604051624e263b60e41b81526004016104399190611f81565b8382146113ba57604051635174addf60e11b815260040160405180910390fd5b6001600160a01b038616600090815260336020526040812054906113dc611ab8565b6001600160801b0316905060005b848110156114f55760008888838181106114065761140661225d565b90506020020135905060008787848181106114235761142361225d565b6020029190910135915061143c905062093a80866122bc565b821461145f578482604051637d9c405d60e11b81526004016104399291906122cf565b6001600160a01b038b166000908152603560209081526040808320858452909152812080548392906114929084906122bc565b909155506114a5905062093a80866122bc565b9450818b6001600160a01b03167fc9920255a27e7e0a5d647597e867ab827659000ae32276c878d8a04120efabb0836040516114e391815260200190565b60405180910390a350506001016113ea565b5080821061151a578181604051637d9c405d60e11b81526004016104399291906122cf565b506001600160a01b039096166000908152603360205260409020959095555050505050565b611548816112c2565b6115aa5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610439565b60008051602061258783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6115e283611ac8565b6000825111806115ef5750805b1561050f576115fe8383611b08565b50505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316036116d35760405163fc367c6160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063fc367c619061168b908590600401611f81565b602060405180830381865afa1580156116a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cc9190612348565b9050611729565b604051633575141360e11b81526001600160a01b03838116600483015284811660248301527f00000000000000000000000000000000000000000000000000000000000000001690636aea28269060440161168b565b92915050565b611737611d4d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03160361180657604051637c386c7160e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637c386c71906117be90869086906004016123c5565b606060405180830381865afa1580156117db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ff91906123f5565b90506107ec565b60405163632c096d60e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063632c096d906117be908690889087906004016122dd565b600082600001516001600160801b03168284602001516118769190612467565b6001600160801b0316111561188d57506000611729565b81836020015161189d9190612467565b83516107ec9190612492565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316036119865760405163947975d960e01b81526001600160801b03831660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063947975d9906024015b602060405180830381865afa158015611952573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061197691906124b2565b6001600160801b03169050611729565b60405163f144cf1760e01b81526001600160a01b0384811660048301526001600160801b03841660248301527f0000000000000000000000000000000000000000000000000000000000000000169063f144cf1790604401611935565b6000611a38826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611b2d9092919063ffffffff16565b9050805160001480611a59575080806020019051810190611a599190612301565b61050f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610439565b6000611ac342611b44565b905090565b611ad18161153f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606107ec83836040518060600160405280602781526020016125c760279139611b5e565b6060611b3c8484600085611bd6565b949350505050565b600062093a80611b5481846124cd565b6117299190612467565b6060600080856001600160a01b031685604051611b7b9190612517565b600060405180830381855af49150503d8060008114611bb6576040519150601f19603f3d011682016040523d82523d6000602084013e611bbb565b606091505b5091509150611bcc86838387611cb1565b9695505050505050565b606082471015611c375760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610439565b600080866001600160a01b03168587604051611c539190612517565b60006040518083038185875af1925050503d8060008114611c90576040519150601f19603f3d011682016040523d82523d6000602084013e611c95565b606091505b5091509150611ca687838387611cb1565b979650505050505050565b60608315611d1e578251600003611d1757611ccb856112c2565b611d175760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610439565b5081611b3c565b611b3c8383815115611d335781518083602001fd5b8060405162461bcd60e51b81526004016104399190612533565b604051806040016040528060006001600160801b03168152602001611d97604051806040016040528060006001600160801b0316815260200160006001600160801b031681525090565b905290565b80356001600160a01b0381168114611db357600080fd5b919050565b801515811461070457600080fd5b600080600060608486031215611ddb57600080fd5b611de484611d9c565b92506020840135611df481611db8565b91506040840135611e0481611db8565b809150509250925092565b600060208284031215611e2157600080fd5b6107ec82611d9c565b60008060408385031215611e3d57600080fd5b611e4683611d9c565b9150611e5460208401611d9c565b90509250929050565b60008060408385031215611e7057600080fd5b611e7983611d9c565b946020939093013593505050565b60008083601f840112611e9957600080fd5b5081356001600160401b03811115611eb057600080fd5b6020830191508360208260051b8501011115611ecb57600080fd5b9250929050565b600080600060408486031215611ee757600080fd5b611ef084611d9c565b925060208401356001600160401b03811115611f0b57600080fd5b611f1786828701611e87565b9497909650939450505050565b6020808252825182820181905260009190848201906040850190845b81811015611f5c57835183529284019291840191600101611f40565b50909695505050505050565b600060208284031215611f7a57600080fd5b5035919050565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611fcd57611fcd611f95565b60405290565b604051601f8201601f191681016001600160401b0381118282101715611ffb57611ffb611f95565b604052919050565b6000806040838503121561201657600080fd5b61201f83611d9c565b91506020838101356001600160401b038082111561203c57600080fd5b818601915086601f83011261205057600080fd5b81358181111561206257612062611f95565b612074601f8201601f19168501611fd3565b9150808252878482850101111561208a57600080fd5b80848401858401376000848284010152508093505050509250929050565b6020808252825182820181905260009190848201906040850190845b81811015611f5c5783516001600160a01b0316835292840192918401916001016120c4565b60008060008060008060006080888a03121561210457600080fd5b87356001600160401b038082111561211b57600080fd5b6121278b838c01611e87565b909950975060208a013591508082111561214057600080fd5b61214c8b838c01611e87565b909750955060408a013591508082111561216557600080fd5b506121728a828b01611e87565b989b979a50959894979596606090950135949350505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b81810381811115611729576117296121c0565b6020808252602c9082015260008051602061256783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061256783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261228a57600080fd5b8301803591506001600160401b038211156122a457600080fd5b6020019150600581901b3603821315611ecb57600080fd5b80820180821115611729576117296121c0565b918252602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b60006020828403121561231357600080fd5b81516107ec81611db8565b634e487b7160e01b600052601260045260246000fd5b6000826123435761234361231e565b500690565b60006020828403121561235a57600080fd5b5051919050565b6001600160801b03818116838216019080821115611228576112286121c0565b600060018201612393576123936121c0565b5060010190565b8082028115828204841417611729576117296121c0565b6000826123c0576123c061231e565b500490565b6001600160a01b03929092168252602082015260400190565b80516001600160801b0381168114611db357600080fd5b6000818303606081121561240857600080fd5b612410611fab565b612419846123de565b81526040601f198301121561242d57600080fd5b612435611fab565b9150612443602085016123de565b8252612451604085016123de565b6020830152816020820152809250505092915050565b6001600160801b0381811683821602808216919082811461248a5761248a6121c0565b505092915050565b6001600160801b03828116828216039080821115611228576112286121c0565b6000602082840312156124c457600080fd5b6107ec826123de565b60006001600160801b03838116806124e7576124e761231e565b92169190910492915050565b60005b8381101561250e5781810151838201526020016124f6565b50506000910152565b600082516125298184602087016124f3565b9190910192915050565b60208152600082518060208401526125528160408501602087016124f3565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207bb4fea36dbc3132dc389dec04ee69a281afea64a1784c873d6aa9208647746f64736f6c63430008170033",
596
+ "linkReferences": {},
597
+ "deployedLinkReferences": {}
598
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../../build-info/2cb418196a87b03d251093b71b0a0cdb.json"
4
+ }