@pendle/core-v2 5.6.0 → 5.7.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 (295) hide show
  1. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  3. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  4. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  6. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  8. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  10. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  12. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  13. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  14. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  15. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  16. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  18. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  19. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  20. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  22. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  23. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  24. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  25. package/build/artifacts/contracts/core/Market/v1/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  26. package/build/artifacts/contracts/core/Market/v1/PendleMarket.sol/PendleMarket.json +2 -2
  27. package/build/artifacts/contracts/core/Market/v1/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  28. package/build/artifacts/contracts/core/Market/v1/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  29. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.dbg.json +1 -1
  30. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.json +2 -2
  31. package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.dbg.json +1 -1
  32. package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.json +2 -2
  33. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  36. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
  37. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  40. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  42. package/build/artifacts/contracts/core/libraries/math/PMath.sol/PMath.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/libraries/math/PMath.sol/PMath.json +2 -2
  44. package/build/artifacts/contracts/interfaces/IOwnable.sol/IOwnable.dbg.json +4 -0
  45. package/build/artifacts/contracts/interfaces/IOwnable.sol/IOwnable.json +34 -0
  46. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  47. package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +1 -1
  48. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  49. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  50. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  51. package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
  52. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  53. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
  54. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  55. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  56. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  57. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
  58. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
  59. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
  60. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
  61. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
  62. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
  63. package/build/artifacts/contracts/interfaces/IPCommonSYFactory.sol/IPCommonSYFactory.dbg.json +4 -0
  64. package/build/artifacts/contracts/interfaces/IPCommonSYFactory.sol/IPCommonSYFactory.json +40 -0
  65. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitOrderType.dbg.json +1 -1
  66. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +1 -1
  67. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.dbg.json +1 -1
  68. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  69. package/build/artifacts/contracts/interfaces/IPMarketV3.sol/IPMarketV3.dbg.json +1 -1
  70. package/build/artifacts/contracts/interfaces/IPPoolDeployHelperV2.sol/IPPoolDeployHelperV2.dbg.json +4 -0
  71. package/build/artifacts/contracts/interfaces/IPPoolDeployHelperV2.sol/IPPoolDeployHelperV2.json +162 -0
  72. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  73. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  74. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  75. package/build/artifacts/contracts/interfaces/IPendleCommonPoolDeployHelperV2.sol/IPendleCommonPoolDeployHelperV2.dbg.json +4 -0
  76. package/build/artifacts/contracts/interfaces/IPendleCommonPoolDeployHelperV2.sol/IPendleCommonPoolDeployHelperV2.json +426 -0
  77. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +1 -1
  78. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.json +2 -2
  79. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
  80. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
  81. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +2 -2
  82. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  83. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
  84. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.dbg.json +1 -1
  85. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.json +2 -2
  86. package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.dbg.json +1 -1
  87. package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.json +2 -2
  88. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.dbg.json +4 -0
  89. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.json +651 -0
  90. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.dbg.json +4 -0
  91. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.json +329 -0
  92. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +4 -0
  93. package/build/artifacts/contracts/offchain-helpers/{PendlePoolDeployHelper.sol → deploy/PendlePoolDeployHelper.sol}/PendlePoolDeployHelper.json +3 -3
  94. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.dbg.json +4 -0
  95. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.json +235 -0
  96. package/build/artifacts/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol/MarketDeployLib.dbg.json +4 -0
  97. package/build/artifacts/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol/MarketDeployLib.json +10 -0
  98. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  99. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  100. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  101. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  102. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  103. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  104. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  105. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
  106. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  107. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  108. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  109. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  110. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  111. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  112. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.dbg.json +1 -1
  113. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.json +2 -2
  114. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.dbg.json +1 -1
  115. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.json +2 -2
  116. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  117. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  118. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  119. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +1 -1
  120. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.json +2 -2
  121. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +1 -1
  122. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.json +2 -2
  123. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.dbg.json +1 -1
  124. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.json +2 -2
  125. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.dbg.json +1 -1
  126. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.json +2 -2
  127. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.dbg.json +1 -1
  128. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.json +2 -2
  129. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  130. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +1 -1
  131. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +2 -2
  132. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +1 -1
  133. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +2 -2
  134. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  135. package/build/artifacts/contracts/oracles/internal/PendleBoringOneracle.sol/PendleBoringOneracle.dbg.json +1 -1
  136. package/build/artifacts/contracts/oracles/internal/PendleBoringOneracle.sol/PendleBoringOneracle.json +2 -2
  137. package/build/artifacts/contracts/oracles/internal/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.dbg.json +1 -1
  138. package/build/artifacts/contracts/oracles/internal/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.json +2 -2
  139. package/build/artifacts/contracts/oracles/internal/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.dbg.json +1 -1
  140. package/build/artifacts/contracts/oracles/internal/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.json +2 -2
  141. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.dbg.json +1 -1
  142. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.json +29 -5
  143. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  144. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
  145. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +1 -1
  146. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +2 -2
  147. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  148. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -2
  149. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
  150. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -2
  151. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
  152. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -2
  153. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  154. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
  155. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  156. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -2
  157. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
  158. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
  159. package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
  160. package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
  161. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  162. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
  163. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
  164. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
  165. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
  166. package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.dbg.json +1 -1
  167. package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.json +2 -2
  168. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
  169. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
  170. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
  171. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
  172. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.dbg.json +1 -1
  173. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.json +2 -2
  174. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.dbg.json +1 -1
  175. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.json +2 -2
  176. package/contracts/core/libraries/math/PMath.sol +5 -0
  177. package/contracts/interfaces/IOwnable.sol +6 -0
  178. package/contracts/interfaces/IPCommonSYFactory.sol +6 -0
  179. package/contracts/interfaces/IPPoolDeployHelperV2.sol +36 -0
  180. package/contracts/interfaces/IPendleCommonPoolDeployHelperV2.sol +30 -0
  181. package/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol +68 -0
  182. package/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol +67 -0
  183. package/contracts/offchain-helpers/{PendlePoolDeployHelper.sol → deploy/PendlePoolDeployHelper.sol} +5 -5
  184. package/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol +159 -0
  185. package/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol +70 -0
  186. package/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol +9 -2
  187. package/deployments/146-core.json +47 -0
  188. package/deployments/146-offchain-helper.json +6 -0
  189. package/package.json +1 -1
  190. package/typechain-types/BoringPYUsdChainlinkAssetOracle.ts +244 -0
  191. package/typechain-types/BoringPYUsdChainlinkSYOracle.ts +243 -0
  192. package/typechain-types/Broadcaster.ts +454 -0
  193. package/typechain-types/IOwnable.ts +114 -0
  194. package/typechain-types/IPActionMarketCoreStatic.ts +1974 -0
  195. package/typechain-types/IPCommonSYFactory.ts +111 -0
  196. package/typechain-types/IPMarket.ts +1045 -0
  197. package/typechain-types/IPMarketV3.ts +1068 -0
  198. package/typechain-types/IPPoolDeployHelperV2.ts +209 -0
  199. package/typechain-types/IPVotingController.ts +510 -0
  200. package/typechain-types/IPVotingEscrowMainchain.ts +461 -0
  201. package/typechain-types/IPendleCommonPoolDeployHelperV2.ts +391 -0
  202. package/typechain-types/InterestManagerYT.ts +120 -0
  203. package/typechain-types/PendleBoringOneracle.ts +87 -0
  204. package/typechain-types/PendleBoringSolvBTCOneracle.ts +87 -0
  205. package/typechain-types/PendleChainlinkOracle.ts +299 -0
  206. package/typechain-types/PendleChainlinkOracleFactory.ts +468 -0
  207. package/typechain-types/PendleChainlinkOracleWithQuote.ts +335 -0
  208. package/typechain-types/PendleCommonPoolDeployHelperV2.ts +698 -0
  209. package/typechain-types/PendleCommonSYFactory.ts +420 -0
  210. package/typechain-types/PendleExchangeRateOracle.ts +393 -0
  211. package/typechain-types/PendleFeeDistributor.ts +745 -0
  212. package/typechain-types/PendleGauge.ts +225 -0
  213. package/typechain-types/PendleGaugeControllerBaseUpg.ts +670 -0
  214. package/typechain-types/PendleGaugeControllerMainchainUpg.ts +758 -0
  215. package/typechain-types/PendleGaugeControllerSidechainUpg.ts +750 -0
  216. package/typechain-types/PendleMarket.ts +1207 -0
  217. package/typechain-types/PendleMarketFactory.ts +906 -0
  218. package/typechain-types/PendlePYLpOracle.ts +619 -0
  219. package/typechain-types/PendlePoolDeployHelperV2.ts +283 -0
  220. package/typechain-types/PendleRedStoneRateOracleAdapter.ts +133 -0
  221. package/typechain-types/PendleSparkLinearDiscountOracleFactory.ts +60 -18
  222. package/typechain-types/PendleVotingControllerUpg.ts +1621 -0
  223. package/typechain-types/PendleYieldContractFactory.ts +801 -0
  224. package/typechain-types/PendleYieldToken.ts +1107 -0
  225. package/typechain-types/RewardManager.ts +161 -0
  226. package/typechain-types/RewardManagerAbstract.ts +108 -0
  227. package/typechain-types/VotingControllerStorageUpg.ts +915 -0
  228. package/typechain-types/VotingEscrowPendleMainchain.ts +1045 -0
  229. package/typechain-types/VotingEscrowPendleSidechain.ts +558 -0
  230. package/typechain-types/VotingEscrowTokenBase.ts +252 -0
  231. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
  232. package/typechain-types/factories/ActionCallbackV3__factory.ts +1 -1
  233. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  234. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  235. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
  236. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  237. package/typechain-types/factories/ActionMiscV3__factory.ts +1 -1
  238. package/typechain-types/factories/ActionSimple__factory.ts +1 -1
  239. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  240. package/typechain-types/factories/ActionStorageV4__factory.ts +1 -1
  241. package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
  242. package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
  243. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  244. package/typechain-types/factories/BoringPYUsdChainlinkAssetOracle__factory.ts +269 -0
  245. package/typechain-types/factories/BoringPYUsdChainlinkSYOracle__factory.ts +267 -0
  246. package/typechain-types/factories/Broadcaster__factory.ts +311 -0
  247. package/typechain-types/factories/IOwnable__factory.ts +46 -0
  248. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +1300 -0
  249. package/typechain-types/factories/IPCommonSYFactory__factory.ts +55 -0
  250. package/typechain-types/factories/IPMarketV3__factory.ts +845 -0
  251. package/typechain-types/factories/IPMarket__factory.ts +832 -0
  252. package/typechain-types/factories/IPPoolDeployHelperV2__factory.ts +181 -0
  253. package/typechain-types/factories/IPVotingController__factory.ts +363 -0
  254. package/typechain-types/factories/IPVotingEscrowMainchain__factory.ts +340 -0
  255. package/typechain-types/factories/IPendleCommonPoolDeployHelperV2__factory.ts +447 -0
  256. package/typechain-types/factories/InterestManagerYT__factory.ts +63 -0
  257. package/typechain-types/factories/LimitBackendHelper__factory.ts +1 -1
  258. package/typechain-types/factories/PendleBoringOneracle__factory.ts +81 -0
  259. package/typechain-types/factories/PendleBoringSolvBTCOneracle__factory.ts +83 -0
  260. package/typechain-types/factories/PendleChainlinkOracleFactory__factory.ts +405 -0
  261. package/typechain-types/factories/PendleChainlinkOracleWithQuote__factory.ts +341 -0
  262. package/typechain-types/factories/PendleChainlinkOracle__factory.ts +306 -0
  263. package/typechain-types/factories/PendleCommonPoolDeployHelperV2__factory.ts +728 -0
  264. package/typechain-types/factories/PendleCommonSYFactory__factory.ts +386 -0
  265. package/typechain-types/factories/PendleExchangeRateOracle__factory.ts +379 -0
  266. package/typechain-types/factories/PendleFeeDistributor__factory.ts +665 -0
  267. package/typechain-types/factories/PendleGaugeControllerBaseUpg__factory.ts +457 -0
  268. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +620 -0
  269. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +610 -0
  270. package/typechain-types/factories/PendleGauge__factory.ts +140 -0
  271. package/typechain-types/factories/PendleLimitRouter__factory.ts +1 -1
  272. package/typechain-types/factories/PendleMarketFactoryV3__factory.ts +1 -1
  273. package/typechain-types/factories/PendleMarketFactory__factory.ts +748 -0
  274. package/typechain-types/factories/PendleMarketV3__factory.ts +1 -1
  275. package/typechain-types/factories/PendleMarket__factory.ts +1212 -0
  276. package/typechain-types/factories/PendlePYLpOracle__factory.ts +475 -0
  277. package/typechain-types/factories/PendlePoolDeployHelperV2__factory.ts +308 -0
  278. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
  279. package/typechain-types/factories/PendleRedStoneRateOracleAdapter__factory.ts +157 -0
  280. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  281. package/typechain-types/factories/PendleRouterV4__factory.ts +1 -1
  282. package/typechain-types/factories/PendleSparkLinearDiscountOracleFactory__factory.ts +28 -4
  283. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1278 -0
  284. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +674 -0
  285. package/typechain-types/factories/PendleYieldToken__factory.ts +978 -0
  286. package/typechain-types/factories/Reflector__factory.ts +1 -1
  287. package/typechain-types/factories/RewardManagerAbstract__factory.ts +59 -0
  288. package/typechain-types/factories/RewardManager__factory.ts +89 -0
  289. package/typechain-types/factories/VotingControllerStorageUpg__factory.ts +700 -0
  290. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +856 -0
  291. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +455 -0
  292. package/typechain-types/factories/VotingEscrowTokenBase__factory.ts +162 -0
  293. package/typechain-types/hardhat.d.ts +72 -9
  294. package/typechain-types/index.ts +16 -2
  295. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +0 -4
@@ -0,0 +1,1278 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ Signer,
6
+ utils,
7
+ Contract,
8
+ ContractFactory,
9
+ Overrides,
10
+ BigNumberish,
11
+ } from "ethers";
12
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
13
+ import type {
14
+ PendleVotingControllerUpg,
15
+ PendleVotingControllerUpgInterface,
16
+ } from "../PendleVotingControllerUpg";
17
+
18
+ const _abi = [
19
+ {
20
+ inputs: [
21
+ {
22
+ internalType: "address",
23
+ name: "_vePendle",
24
+ type: "address",
25
+ },
26
+ {
27
+ internalType: "address",
28
+ name: "_pendleMsgSendEndpoint",
29
+ type: "address",
30
+ },
31
+ {
32
+ internalType: "uint256",
33
+ name: "initialApproxDestinationGas",
34
+ type: "uint256",
35
+ },
36
+ ],
37
+ stateMutability: "nonpayable",
38
+ type: "constructor",
39
+ },
40
+ {
41
+ inputs: [],
42
+ name: "ArrayLengthMismatch",
43
+ type: "error",
44
+ },
45
+ {
46
+ inputs: [],
47
+ name: "ArrayOutOfBounds",
48
+ type: "error",
49
+ },
50
+ {
51
+ inputs: [
52
+ {
53
+ internalType: "uint256",
54
+ name: "currentFee",
55
+ type: "uint256",
56
+ },
57
+ {
58
+ internalType: "uint256",
59
+ name: "requiredFee",
60
+ type: "uint256",
61
+ },
62
+ ],
63
+ name: "InsufficientFeeToSendMsg",
64
+ type: "error",
65
+ },
66
+ {
67
+ inputs: [
68
+ {
69
+ internalType: "uint256",
70
+ name: "wTime",
71
+ type: "uint256",
72
+ },
73
+ ],
74
+ name: "InvalidWTime",
75
+ type: "error",
76
+ },
77
+ {
78
+ inputs: [
79
+ {
80
+ internalType: "uint256",
81
+ name: "wTime",
82
+ type: "uint256",
83
+ },
84
+ ],
85
+ name: "VCEpochNotFinalized",
86
+ type: "error",
87
+ },
88
+ {
89
+ inputs: [
90
+ {
91
+ internalType: "uint256",
92
+ name: "totalWeight",
93
+ type: "uint256",
94
+ },
95
+ {
96
+ internalType: "uint256",
97
+ name: "maxWeight",
98
+ type: "uint256",
99
+ },
100
+ ],
101
+ name: "VCExceededMaxWeight",
102
+ type: "error",
103
+ },
104
+ {
105
+ inputs: [
106
+ {
107
+ internalType: "address",
108
+ name: "pool",
109
+ type: "address",
110
+ },
111
+ ],
112
+ name: "VCInactivePool",
113
+ type: "error",
114
+ },
115
+ {
116
+ inputs: [
117
+ {
118
+ internalType: "address",
119
+ name: "pool",
120
+ type: "address",
121
+ },
122
+ ],
123
+ name: "VCPoolAlreadyActive",
124
+ type: "error",
125
+ },
126
+ {
127
+ inputs: [
128
+ {
129
+ internalType: "address",
130
+ name: "pool",
131
+ type: "address",
132
+ },
133
+ ],
134
+ name: "VCPoolAlreadyAddAndRemoved",
135
+ type: "error",
136
+ },
137
+ {
138
+ inputs: [
139
+ {
140
+ internalType: "address",
141
+ name: "user",
142
+ type: "address",
143
+ },
144
+ ],
145
+ name: "VCZeroVePendle",
146
+ type: "error",
147
+ },
148
+ {
149
+ inputs: [
150
+ {
151
+ internalType: "uint128",
152
+ name: "bias",
153
+ type: "uint128",
154
+ },
155
+ {
156
+ internalType: "uint128",
157
+ name: "slope",
158
+ type: "uint128",
159
+ },
160
+ ],
161
+ name: "VEZeroSlope",
162
+ type: "error",
163
+ },
164
+ {
165
+ anonymous: false,
166
+ inputs: [
167
+ {
168
+ indexed: true,
169
+ internalType: "uint64",
170
+ name: "chainId",
171
+ type: "uint64",
172
+ },
173
+ {
174
+ indexed: true,
175
+ internalType: "address",
176
+ name: "pool",
177
+ type: "address",
178
+ },
179
+ ],
180
+ name: "AddPool",
181
+ type: "event",
182
+ },
183
+ {
184
+ anonymous: false,
185
+ inputs: [
186
+ {
187
+ indexed: false,
188
+ internalType: "address",
189
+ name: "previousAdmin",
190
+ type: "address",
191
+ },
192
+ {
193
+ indexed: false,
194
+ internalType: "address",
195
+ name: "newAdmin",
196
+ type: "address",
197
+ },
198
+ ],
199
+ name: "AdminChanged",
200
+ type: "event",
201
+ },
202
+ {
203
+ anonymous: false,
204
+ inputs: [
205
+ {
206
+ indexed: true,
207
+ internalType: "address",
208
+ name: "beacon",
209
+ type: "address",
210
+ },
211
+ ],
212
+ name: "BeaconUpgraded",
213
+ type: "event",
214
+ },
215
+ {
216
+ anonymous: false,
217
+ inputs: [
218
+ {
219
+ indexed: true,
220
+ internalType: "uint64",
221
+ name: "chainId",
222
+ type: "uint64",
223
+ },
224
+ {
225
+ indexed: true,
226
+ internalType: "uint128",
227
+ name: "wTime",
228
+ type: "uint128",
229
+ },
230
+ {
231
+ indexed: false,
232
+ internalType: "uint128",
233
+ name: "totalPendlePerSec",
234
+ type: "uint128",
235
+ },
236
+ ],
237
+ name: "BroadcastResults",
238
+ type: "event",
239
+ },
240
+ {
241
+ anonymous: false,
242
+ inputs: [
243
+ {
244
+ indexed: false,
245
+ internalType: "uint8",
246
+ name: "version",
247
+ type: "uint8",
248
+ },
249
+ ],
250
+ name: "Initialized",
251
+ type: "event",
252
+ },
253
+ {
254
+ anonymous: false,
255
+ inputs: [
256
+ {
257
+ indexed: true,
258
+ internalType: "address",
259
+ name: "previousOwner",
260
+ type: "address",
261
+ },
262
+ {
263
+ indexed: true,
264
+ internalType: "address",
265
+ name: "newOwner",
266
+ type: "address",
267
+ },
268
+ ],
269
+ name: "OwnershipTransferred",
270
+ type: "event",
271
+ },
272
+ {
273
+ anonymous: false,
274
+ inputs: [
275
+ {
276
+ indexed: true,
277
+ internalType: "address",
278
+ name: "pool",
279
+ type: "address",
280
+ },
281
+ {
282
+ components: [
283
+ {
284
+ internalType: "uint128",
285
+ name: "bias",
286
+ type: "uint128",
287
+ },
288
+ {
289
+ internalType: "uint128",
290
+ name: "slope",
291
+ type: "uint128",
292
+ },
293
+ ],
294
+ indexed: false,
295
+ internalType: "struct VeBalance",
296
+ name: "vote",
297
+ type: "tuple",
298
+ },
299
+ ],
300
+ name: "PoolVoteChange",
301
+ type: "event",
302
+ },
303
+ {
304
+ anonymous: false,
305
+ inputs: [
306
+ {
307
+ indexed: true,
308
+ internalType: "uint64",
309
+ name: "chainId",
310
+ type: "uint64",
311
+ },
312
+ {
313
+ indexed: true,
314
+ internalType: "address",
315
+ name: "pool",
316
+ type: "address",
317
+ },
318
+ ],
319
+ name: "RemovePool",
320
+ type: "event",
321
+ },
322
+ {
323
+ anonymous: false,
324
+ inputs: [
325
+ {
326
+ indexed: false,
327
+ internalType: "uint256",
328
+ name: "newPendlePerSec",
329
+ type: "uint256",
330
+ },
331
+ ],
332
+ name: "SetPendlePerSec",
333
+ type: "event",
334
+ },
335
+ {
336
+ anonymous: false,
337
+ inputs: [
338
+ {
339
+ indexed: true,
340
+ internalType: "address",
341
+ name: "implementation",
342
+ type: "address",
343
+ },
344
+ ],
345
+ name: "Upgraded",
346
+ type: "event",
347
+ },
348
+ {
349
+ anonymous: false,
350
+ inputs: [
351
+ {
352
+ indexed: true,
353
+ internalType: "address",
354
+ name: "user",
355
+ type: "address",
356
+ },
357
+ {
358
+ indexed: true,
359
+ internalType: "address",
360
+ name: "pool",
361
+ type: "address",
362
+ },
363
+ {
364
+ indexed: false,
365
+ internalType: "uint64",
366
+ name: "weight",
367
+ type: "uint64",
368
+ },
369
+ {
370
+ components: [
371
+ {
372
+ internalType: "uint128",
373
+ name: "bias",
374
+ type: "uint128",
375
+ },
376
+ {
377
+ internalType: "uint128",
378
+ name: "slope",
379
+ type: "uint128",
380
+ },
381
+ ],
382
+ indexed: false,
383
+ internalType: "struct VeBalance",
384
+ name: "vote",
385
+ type: "tuple",
386
+ },
387
+ ],
388
+ name: "Vote",
389
+ type: "event",
390
+ },
391
+ {
392
+ inputs: [],
393
+ name: "GOVERNANCE_PENDLE_VOTE",
394
+ outputs: [
395
+ {
396
+ internalType: "uint128",
397
+ name: "",
398
+ type: "uint128",
399
+ },
400
+ ],
401
+ stateMutability: "view",
402
+ type: "function",
403
+ },
404
+ {
405
+ inputs: [],
406
+ name: "MAX_LOCK_TIME",
407
+ outputs: [
408
+ {
409
+ internalType: "uint128",
410
+ name: "",
411
+ type: "uint128",
412
+ },
413
+ ],
414
+ stateMutability: "view",
415
+ type: "function",
416
+ },
417
+ {
418
+ inputs: [],
419
+ name: "WEEK",
420
+ outputs: [
421
+ {
422
+ internalType: "uint128",
423
+ name: "",
424
+ type: "uint128",
425
+ },
426
+ ],
427
+ stateMutability: "view",
428
+ type: "function",
429
+ },
430
+ {
431
+ inputs: [
432
+ {
433
+ internalType: "address",
434
+ name: "_address",
435
+ type: "address",
436
+ },
437
+ {
438
+ internalType: "uint256",
439
+ name: "_chainId",
440
+ type: "uint256",
441
+ },
442
+ ],
443
+ name: "addDestinationContract",
444
+ outputs: [],
445
+ stateMutability: "payable",
446
+ type: "function",
447
+ },
448
+ {
449
+ inputs: [
450
+ {
451
+ internalType: "uint64[]",
452
+ name: "chainIds",
453
+ type: "uint64[]",
454
+ },
455
+ {
456
+ internalType: "address[]",
457
+ name: "pools",
458
+ type: "address[]",
459
+ },
460
+ ],
461
+ name: "addMultiPools",
462
+ outputs: [],
463
+ stateMutability: "nonpayable",
464
+ type: "function",
465
+ },
466
+ {
467
+ inputs: [
468
+ {
469
+ internalType: "uint64",
470
+ name: "chainId",
471
+ type: "uint64",
472
+ },
473
+ {
474
+ internalType: "address",
475
+ name: "pool",
476
+ type: "address",
477
+ },
478
+ ],
479
+ name: "addPool",
480
+ outputs: [],
481
+ stateMutability: "nonpayable",
482
+ type: "function",
483
+ },
484
+ {
485
+ inputs: [],
486
+ name: "addPoolHelper",
487
+ outputs: [
488
+ {
489
+ internalType: "address",
490
+ name: "",
491
+ type: "address",
492
+ },
493
+ ],
494
+ stateMutability: "view",
495
+ type: "function",
496
+ },
497
+ {
498
+ inputs: [
499
+ {
500
+ internalType: "address",
501
+ name: "pool",
502
+ type: "address",
503
+ },
504
+ ],
505
+ name: "applyPoolSlopeChanges",
506
+ outputs: [],
507
+ stateMutability: "nonpayable",
508
+ type: "function",
509
+ },
510
+ {
511
+ inputs: [],
512
+ name: "approxDstExecutionGas",
513
+ outputs: [
514
+ {
515
+ internalType: "uint256",
516
+ name: "",
517
+ type: "uint256",
518
+ },
519
+ ],
520
+ stateMutability: "view",
521
+ type: "function",
522
+ },
523
+ {
524
+ inputs: [
525
+ {
526
+ internalType: "uint64",
527
+ name: "chainId",
528
+ type: "uint64",
529
+ },
530
+ ],
531
+ name: "broadcastResults",
532
+ outputs: [],
533
+ stateMutability: "payable",
534
+ type: "function",
535
+ },
536
+ {
537
+ inputs: [],
538
+ name: "claimOwnership",
539
+ outputs: [],
540
+ stateMutability: "nonpayable",
541
+ type: "function",
542
+ },
543
+ {
544
+ inputs: [],
545
+ name: "deployedWTime",
546
+ outputs: [
547
+ {
548
+ internalType: "uint128",
549
+ name: "",
550
+ type: "uint128",
551
+ },
552
+ ],
553
+ stateMutability: "view",
554
+ type: "function",
555
+ },
556
+ {
557
+ inputs: [],
558
+ name: "finalizeEpoch",
559
+ outputs: [],
560
+ stateMutability: "nonpayable",
561
+ type: "function",
562
+ },
563
+ {
564
+ inputs: [
565
+ {
566
+ internalType: "uint64",
567
+ name: "chainId",
568
+ type: "uint64",
569
+ },
570
+ {
571
+ internalType: "uint128",
572
+ name: "wTime",
573
+ type: "uint128",
574
+ },
575
+ {
576
+ internalType: "uint128",
577
+ name: "forcedPendlePerSec",
578
+ type: "uint128",
579
+ },
580
+ ],
581
+ name: "forceBroadcastResults",
582
+ outputs: [],
583
+ stateMutability: "payable",
584
+ type: "function",
585
+ },
586
+ {
587
+ inputs: [
588
+ {
589
+ internalType: "uint64",
590
+ name: "chainId",
591
+ type: "uint64",
592
+ },
593
+ ],
594
+ name: "getActiveChainPools",
595
+ outputs: [
596
+ {
597
+ internalType: "address[]",
598
+ name: "",
599
+ type: "address[]",
600
+ },
601
+ ],
602
+ stateMutability: "view",
603
+ type: "function",
604
+ },
605
+ {
606
+ inputs: [],
607
+ name: "getAllActivePools",
608
+ outputs: [
609
+ {
610
+ internalType: "address[]",
611
+ name: "",
612
+ type: "address[]",
613
+ },
614
+ ],
615
+ stateMutability: "view",
616
+ type: "function",
617
+ },
618
+ {
619
+ inputs: [],
620
+ name: "getAllDestinationContracts",
621
+ outputs: [
622
+ {
623
+ internalType: "uint256[]",
624
+ name: "chainIds",
625
+ type: "uint256[]",
626
+ },
627
+ {
628
+ internalType: "address[]",
629
+ name: "addrs",
630
+ type: "address[]",
631
+ },
632
+ ],
633
+ stateMutability: "view",
634
+ type: "function",
635
+ },
636
+ {
637
+ inputs: [
638
+ {
639
+ internalType: "uint256",
640
+ name: "start",
641
+ type: "uint256",
642
+ },
643
+ {
644
+ internalType: "uint256",
645
+ name: "end",
646
+ type: "uint256",
647
+ },
648
+ ],
649
+ name: "getAllRemovedPools",
650
+ outputs: [
651
+ {
652
+ internalType: "uint256",
653
+ name: "lengthOfRemovedPools",
654
+ type: "uint256",
655
+ },
656
+ {
657
+ internalType: "address[]",
658
+ name: "arr",
659
+ type: "address[]",
660
+ },
661
+ ],
662
+ stateMutability: "view",
663
+ type: "function",
664
+ },
665
+ {
666
+ inputs: [
667
+ {
668
+ internalType: "uint64",
669
+ name: "chainId",
670
+ type: "uint64",
671
+ },
672
+ ],
673
+ name: "getBroadcastResultFee",
674
+ outputs: [
675
+ {
676
+ internalType: "uint256",
677
+ name: "",
678
+ type: "uint256",
679
+ },
680
+ ],
681
+ stateMutability: "view",
682
+ type: "function",
683
+ },
684
+ {
685
+ inputs: [
686
+ {
687
+ internalType: "address",
688
+ name: "pool",
689
+ type: "address",
690
+ },
691
+ {
692
+ internalType: "uint128[]",
693
+ name: "wTimes",
694
+ type: "uint128[]",
695
+ },
696
+ ],
697
+ name: "getPoolData",
698
+ outputs: [
699
+ {
700
+ internalType: "uint64",
701
+ name: "chainId",
702
+ type: "uint64",
703
+ },
704
+ {
705
+ internalType: "uint128",
706
+ name: "lastSlopeChangeAppliedAt",
707
+ type: "uint128",
708
+ },
709
+ {
710
+ components: [
711
+ {
712
+ internalType: "uint128",
713
+ name: "bias",
714
+ type: "uint128",
715
+ },
716
+ {
717
+ internalType: "uint128",
718
+ name: "slope",
719
+ type: "uint128",
720
+ },
721
+ ],
722
+ internalType: "struct VeBalance",
723
+ name: "totalVote",
724
+ type: "tuple",
725
+ },
726
+ {
727
+ internalType: "uint128[]",
728
+ name: "slopeChanges",
729
+ type: "uint128[]",
730
+ },
731
+ ],
732
+ stateMutability: "view",
733
+ type: "function",
734
+ },
735
+ {
736
+ inputs: [
737
+ {
738
+ internalType: "address",
739
+ name: "pool",
740
+ type: "address",
741
+ },
742
+ {
743
+ internalType: "uint128",
744
+ name: "wTime",
745
+ type: "uint128",
746
+ },
747
+ ],
748
+ name: "getPoolTotalVoteAt",
749
+ outputs: [
750
+ {
751
+ internalType: "uint128",
752
+ name: "",
753
+ type: "uint128",
754
+ },
755
+ ],
756
+ stateMutability: "view",
757
+ type: "function",
758
+ },
759
+ {
760
+ inputs: [
761
+ {
762
+ internalType: "address",
763
+ name: "user",
764
+ type: "address",
765
+ },
766
+ {
767
+ internalType: "address[]",
768
+ name: "pools",
769
+ type: "address[]",
770
+ },
771
+ ],
772
+ name: "getUserData",
773
+ outputs: [
774
+ {
775
+ internalType: "uint64",
776
+ name: "totalVotedWeight",
777
+ type: "uint64",
778
+ },
779
+ {
780
+ components: [
781
+ {
782
+ internalType: "uint64",
783
+ name: "weight",
784
+ type: "uint64",
785
+ },
786
+ {
787
+ components: [
788
+ {
789
+ internalType: "uint128",
790
+ name: "bias",
791
+ type: "uint128",
792
+ },
793
+ {
794
+ internalType: "uint128",
795
+ name: "slope",
796
+ type: "uint128",
797
+ },
798
+ ],
799
+ internalType: "struct VeBalance",
800
+ name: "vote",
801
+ type: "tuple",
802
+ },
803
+ ],
804
+ internalType: "struct VotingControllerStorageUpg.UserPoolData[]",
805
+ name: "voteForPools",
806
+ type: "tuple[]",
807
+ },
808
+ ],
809
+ stateMutability: "view",
810
+ type: "function",
811
+ },
812
+ {
813
+ inputs: [
814
+ {
815
+ internalType: "address",
816
+ name: "user",
817
+ type: "address",
818
+ },
819
+ {
820
+ internalType: "address",
821
+ name: "pool",
822
+ type: "address",
823
+ },
824
+ {
825
+ internalType: "uint256",
826
+ name: "index",
827
+ type: "uint256",
828
+ },
829
+ ],
830
+ name: "getUserPoolHistoryAt",
831
+ outputs: [
832
+ {
833
+ components: [
834
+ {
835
+ internalType: "uint128",
836
+ name: "timestamp",
837
+ type: "uint128",
838
+ },
839
+ {
840
+ components: [
841
+ {
842
+ internalType: "uint128",
843
+ name: "bias",
844
+ type: "uint128",
845
+ },
846
+ {
847
+ internalType: "uint128",
848
+ name: "slope",
849
+ type: "uint128",
850
+ },
851
+ ],
852
+ internalType: "struct VeBalance",
853
+ name: "value",
854
+ type: "tuple",
855
+ },
856
+ ],
857
+ internalType: "struct Checkpoint",
858
+ name: "",
859
+ type: "tuple",
860
+ },
861
+ ],
862
+ stateMutability: "view",
863
+ type: "function",
864
+ },
865
+ {
866
+ inputs: [
867
+ {
868
+ internalType: "address",
869
+ name: "user",
870
+ type: "address",
871
+ },
872
+ {
873
+ internalType: "address",
874
+ name: "pool",
875
+ type: "address",
876
+ },
877
+ ],
878
+ name: "getUserPoolHistoryLength",
879
+ outputs: [
880
+ {
881
+ internalType: "uint256",
882
+ name: "",
883
+ type: "uint256",
884
+ },
885
+ ],
886
+ stateMutability: "view",
887
+ type: "function",
888
+ },
889
+ {
890
+ inputs: [
891
+ {
892
+ internalType: "address",
893
+ name: "user",
894
+ type: "address",
895
+ },
896
+ {
897
+ internalType: "address",
898
+ name: "pool",
899
+ type: "address",
900
+ },
901
+ ],
902
+ name: "getUserPoolVote",
903
+ outputs: [
904
+ {
905
+ components: [
906
+ {
907
+ internalType: "uint64",
908
+ name: "weight",
909
+ type: "uint64",
910
+ },
911
+ {
912
+ components: [
913
+ {
914
+ internalType: "uint128",
915
+ name: "bias",
916
+ type: "uint128",
917
+ },
918
+ {
919
+ internalType: "uint128",
920
+ name: "slope",
921
+ type: "uint128",
922
+ },
923
+ ],
924
+ internalType: "struct VeBalance",
925
+ name: "vote",
926
+ type: "tuple",
927
+ },
928
+ ],
929
+ internalType: "struct VotingControllerStorageUpg.UserPoolData",
930
+ name: "",
931
+ type: "tuple",
932
+ },
933
+ ],
934
+ stateMutability: "view",
935
+ type: "function",
936
+ },
937
+ {
938
+ inputs: [
939
+ {
940
+ internalType: "uint128",
941
+ name: "wTime",
942
+ type: "uint128",
943
+ },
944
+ {
945
+ internalType: "address[]",
946
+ name: "pools",
947
+ type: "address[]",
948
+ },
949
+ ],
950
+ name: "getWeekData",
951
+ outputs: [
952
+ {
953
+ internalType: "bool",
954
+ name: "isEpochFinalized",
955
+ type: "bool",
956
+ },
957
+ {
958
+ internalType: "uint128",
959
+ name: "totalVotes",
960
+ type: "uint128",
961
+ },
962
+ {
963
+ internalType: "uint128[]",
964
+ name: "poolVotes",
965
+ type: "uint128[]",
966
+ },
967
+ ],
968
+ stateMutability: "view",
969
+ type: "function",
970
+ },
971
+ {
972
+ inputs: [],
973
+ name: "initialize",
974
+ outputs: [],
975
+ stateMutability: "nonpayable",
976
+ type: "function",
977
+ },
978
+ {
979
+ inputs: [],
980
+ name: "owner",
981
+ outputs: [
982
+ {
983
+ internalType: "address",
984
+ name: "",
985
+ type: "address",
986
+ },
987
+ ],
988
+ stateMutability: "view",
989
+ type: "function",
990
+ },
991
+ {
992
+ inputs: [],
993
+ name: "pendingOwner",
994
+ outputs: [
995
+ {
996
+ internalType: "address",
997
+ name: "",
998
+ type: "address",
999
+ },
1000
+ ],
1001
+ stateMutability: "view",
1002
+ type: "function",
1003
+ },
1004
+ {
1005
+ inputs: [],
1006
+ name: "pendleMsgSendEndpoint",
1007
+ outputs: [
1008
+ {
1009
+ internalType: "contract IPMsgSendEndpoint",
1010
+ name: "",
1011
+ type: "address",
1012
+ },
1013
+ ],
1014
+ stateMutability: "view",
1015
+ type: "function",
1016
+ },
1017
+ {
1018
+ inputs: [],
1019
+ name: "pendlePerSec",
1020
+ outputs: [
1021
+ {
1022
+ internalType: "uint128",
1023
+ name: "",
1024
+ type: "uint128",
1025
+ },
1026
+ ],
1027
+ stateMutability: "view",
1028
+ type: "function",
1029
+ },
1030
+ {
1031
+ inputs: [],
1032
+ name: "proxiableUUID",
1033
+ outputs: [
1034
+ {
1035
+ internalType: "bytes32",
1036
+ name: "",
1037
+ type: "bytes32",
1038
+ },
1039
+ ],
1040
+ stateMutability: "view",
1041
+ type: "function",
1042
+ },
1043
+ {
1044
+ inputs: [
1045
+ {
1046
+ internalType: "address",
1047
+ name: "pool",
1048
+ type: "address",
1049
+ },
1050
+ ],
1051
+ name: "removePool",
1052
+ outputs: [],
1053
+ stateMutability: "nonpayable",
1054
+ type: "function",
1055
+ },
1056
+ {
1057
+ inputs: [],
1058
+ name: "removePoolHelper",
1059
+ outputs: [
1060
+ {
1061
+ internalType: "address",
1062
+ name: "",
1063
+ type: "address",
1064
+ },
1065
+ ],
1066
+ stateMutability: "view",
1067
+ type: "function",
1068
+ },
1069
+ {
1070
+ inputs: [
1071
+ {
1072
+ internalType: "address",
1073
+ name: "_helper",
1074
+ type: "address",
1075
+ },
1076
+ ],
1077
+ name: "setAddPoolHelper",
1078
+ outputs: [],
1079
+ stateMutability: "nonpayable",
1080
+ type: "function",
1081
+ },
1082
+ {
1083
+ inputs: [
1084
+ {
1085
+ internalType: "uint256",
1086
+ name: "gas",
1087
+ type: "uint256",
1088
+ },
1089
+ ],
1090
+ name: "setApproxDstExecutionGas",
1091
+ outputs: [],
1092
+ stateMutability: "nonpayable",
1093
+ type: "function",
1094
+ },
1095
+ {
1096
+ inputs: [
1097
+ {
1098
+ internalType: "uint128",
1099
+ name: "newPendlePerSec",
1100
+ type: "uint128",
1101
+ },
1102
+ ],
1103
+ name: "setPendlePerSec",
1104
+ outputs: [],
1105
+ stateMutability: "nonpayable",
1106
+ type: "function",
1107
+ },
1108
+ {
1109
+ inputs: [
1110
+ {
1111
+ internalType: "address",
1112
+ name: "_helper",
1113
+ type: "address",
1114
+ },
1115
+ ],
1116
+ name: "setRemovePoolHelper",
1117
+ outputs: [],
1118
+ stateMutability: "nonpayable",
1119
+ type: "function",
1120
+ },
1121
+ {
1122
+ inputs: [
1123
+ {
1124
+ internalType: "address",
1125
+ name: "newOwner",
1126
+ type: "address",
1127
+ },
1128
+ {
1129
+ internalType: "bool",
1130
+ name: "direct",
1131
+ type: "bool",
1132
+ },
1133
+ {
1134
+ internalType: "bool",
1135
+ name: "renounce",
1136
+ type: "bool",
1137
+ },
1138
+ ],
1139
+ name: "transferOwnership",
1140
+ outputs: [],
1141
+ stateMutability: "nonpayable",
1142
+ type: "function",
1143
+ },
1144
+ {
1145
+ inputs: [
1146
+ {
1147
+ internalType: "address",
1148
+ name: "newImplementation",
1149
+ type: "address",
1150
+ },
1151
+ ],
1152
+ name: "upgradeTo",
1153
+ outputs: [],
1154
+ stateMutability: "nonpayable",
1155
+ type: "function",
1156
+ },
1157
+ {
1158
+ inputs: [
1159
+ {
1160
+ internalType: "address",
1161
+ name: "newImplementation",
1162
+ type: "address",
1163
+ },
1164
+ {
1165
+ internalType: "bytes",
1166
+ name: "data",
1167
+ type: "bytes",
1168
+ },
1169
+ ],
1170
+ name: "upgradeToAndCall",
1171
+ outputs: [],
1172
+ stateMutability: "payable",
1173
+ type: "function",
1174
+ },
1175
+ {
1176
+ inputs: [],
1177
+ name: "vePendle",
1178
+ outputs: [
1179
+ {
1180
+ internalType: "contract IPVeToken",
1181
+ name: "",
1182
+ type: "address",
1183
+ },
1184
+ ],
1185
+ stateMutability: "view",
1186
+ type: "function",
1187
+ },
1188
+ {
1189
+ inputs: [
1190
+ {
1191
+ internalType: "address[]",
1192
+ name: "pools",
1193
+ type: "address[]",
1194
+ },
1195
+ {
1196
+ internalType: "uint64[]",
1197
+ name: "weights",
1198
+ type: "uint64[]",
1199
+ },
1200
+ ],
1201
+ name: "vote",
1202
+ outputs: [],
1203
+ stateMutability: "nonpayable",
1204
+ type: "function",
1205
+ },
1206
+ ];
1207
+
1208
+ const _bytecode =
1209
+ "0x60e06040523060c0523480156200001557600080fd5b506040516200476a3803806200476a83398101604081905262000038916200019e565b6001600160a01b038281166080526032829055831660a052600154600160a81b900460ff161580801562000077575060018054600160a01b900460ff16105b80620000995750303b15801562000099575060018054600160a01b900460ff16145b620001015760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840160405180910390fd5b6001805460ff60a01b1916600160a01b17905580156200012f576001805460ff60a81b1916600160a81b1790555b801562000177576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050620001df565b80516001600160a01b03811681146200019957600080fd5b919050565b600080600060608486031215620001b457600080fd5b620001bf8462000181565b9250620001cf6020850162000181565b9150604084015190509250925092565b60805160a05160c05161451c6200024e60003960008181610bf501528181610c35015281816112d8015281816113180152611394015260008181610516015281816115bd01526129b501526000818161054a015281816123d601528181612fe401526130a3015261451c6000f3fe6080604052600436106101ec5760003560e01c8063078dfbe7146101f157806313d65dcb1461021357806316ac7e30146102335780631c9bdb4914610269578063210490281461027c5780632477bfbe1461028f5780632982d519146102bd5780633659cfe6146102ea578063366c771d1461030a57806338b8765c1461033a5780633b7d09461461035a5780633e39b6501461037a57806349be407d1461039d5780634e71e0c8146103bd5780634f1ef286146103d257806352d1902d146103e557806359255706146103fa578063632c096d1461041a578063646fb67c14610447578063698766ee146104745780636aea2826146104945780638129fc1c146104da57806382ae9ef7146104ef57806382dabb211461050457806389c071ea146105385780638d66c2841461056c5780638da5cb5b1461059b5780638f45ff78146105bb5780639efc7575146105e95780639f752aef146105ff578063a0e116341461061f578063b292bf951461063f578063bfa5b3241461066c578063c291230d1461068b578063cc88370e1461069e578063d45f5e21146106cc578063d5cd7d20146106ec578063d68ffecb14610701578063e30c397814610721578063f144cf1714610741578063f4359ce514610794578063f7f03fea146107ab578063fa78668f146107d2575b600080fd5b3480156101fd57600080fd5b5061021161020c366004613819565b6107ea565b005b34801561021f57600080fd5b5061021161022e366004613952565b6108ef565b34801561023f57600080fd5b5061025361024e366004613a11565b610a2c565b6040516102609190613a71565b60405180910390f35b610211610277366004613a99565b610a56565b61021161028a366004613ae2565b610a9b565b34801561029b57600080fd5b506102af6102aa366004613a11565b610ad1565b604051908152602001610260565b3480156102c957600080fd5b5060a4546102dd906001600160a01b031681565b6040516102609190613b0c565b3480156102f657600080fd5b50610211610305366004613b20565b610beb565b34801561031657600080fd5b5061032a610325366004613b7f565b610cb3565b6040516102609493929190613c26565b34801561034657600080fd5b50610211610355366004613b20565b610e77565b34801561036657600080fd5b50610211610375366004613b20565b610fcb565b34801561038657600080fd5b5061038f6110d3565b604051610260929190613c95565b3480156103a957600080fd5b506102116103b8366004613b20565b6111d7565b3480156103c957600080fd5b50610211611223565b6102116103e0366004613cba565b6112ce565b3480156103f157600080fd5b506102af611387565b34801561040657600080fd5b50610211610415366004613d5f565b611435565b34801561042657600080fd5b5061043a610435366004613d7c565b6114b4565b6040516102609190613db8565b34801561045357600080fd5b50610467610462366004613ddc565b6114f5565b6040516102609190613e2f565b34801561048057600080fd5b5061021161048f366004613e3d565b61156c565b3480156104a057600080fd5b506102af6104af366004613ddc565b6001600160a01b03918216600090815260a36020908152604080832093909416825291909152205490565b3480156104e657600080fd5b50610211611838565b3480156104fb57600080fd5b50610211611988565b34801561051057600080fd5b506102dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561054457600080fd5b506102dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561057857600080fd5b5061058c610587366004613ea8565b6119c0565b60405161026093929190613ec8565b3480156105a757600080fd5b506000546102dd906001600160a01b031681565b3480156105c757600080fd5b506105db6105d6366004613b7f565b611b02565b604051610260929190613ef4565b3480156105f557600080fd5b506102af60325481565b34801561060b57600080fd5b5061021161061a366004613b20565b611c3d565b34801561062b57600080fd5b5060a5546102dd906001600160a01b031681565b34801561064b57600080fd5b50609a5461065f906001600160801b031681565b6040516102609190613f53565b34801561067857600080fd5b5061065f6a084595161401484a00000081565b610211610699366004613a11565b611c89565b3480156106aa57600080fd5b506106be6106b9366004613f67565b611d02565b604051610260929190613f89565b3480156106d857600080fd5b506102116106e7366004613fa2565b611de9565b3480156106f857600080fd5b50610253611e18565b34801561070d57600080fd5b5061021161071c366004613fbb565b611e29565b34801561072d57600080fd5b506001546102dd906001600160a01b031681565b34801561074d57600080fd5b5061065f61075c366004613fd7565b6001600160801b03808216600090815260a1602090815260408083206001600160a01b03871684526001019091529020541692915050565b3480156107a057600080fd5b5061065f62093a8081565b3480156107b757600080fd5b50609a5461065f90600160801b90046001600160801b031681565b3480156107de57600080fd5b5061065f6303bfc40081565b6000546001600160a01b0316331461081d5760405162461bcd60e51b81526004016108149061400e565b60405180910390fd5b81156108ce576001600160a01b0383161515806108375750805b61087b5760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b6044820152606401610814565b600080546040516001600160a01b038087169392169160008051602061448083398151915291a3600080546001600160a01b0385166001600160a01b031991821617909155600180549091169055505050565b600180546001600160a01b0319166001600160a01b0385161790555b505050565b60a4546001600160a01b031633148061091257506000546001600160a01b031633145b61092e5760405162461bcd60e51b815260040161081490614043565b80518251146109505760405163512509d360e11b815260040160405180910390fd5b60005b82518110156108ea5760008084838151811061097157610971614071565b602002602001015184848151811061098b5761098b614071565b6020026020010151915091506109a081611ef7565b156109c05780604051639e7f1f4160e01b81526004016108149190613b0c565b6109cb609d82611f00565b156109eb5780604051634753d28360e01b81526004016108149190613b0c565b6109f58282611f15565b6040516001600160a01b038216906001600160401b0384169060008051602061442083398151915290600090a35050600101610953565b6001600160401b0381166000908152609f60205260409020606090610a5090611fd8565b92915050565b6000546001600160a01b03163314610a805760405162461bcd60e51b81526004016108149061400e565b610a8b838383611fe5565b47156108ea576108ea3347612294565b6000546001600160a01b03163314610ac55760405162461bcd60e51b81526004016108149061400e565b6108ea603382846123aa565b600046826001600160401b031603610aeb57506000919050565b6001600160401b0382166000908152609f60205260408120610b0c906123c0565b905080600003610b1f5750600092915050565b6000816001600160401b03811115610b3957610b3961385c565b604051908082528060200260200182016040528015610b62578160200160208202803683370190505b5090506000826001600160401b03811115610b7f57610b7f61385c565b604051908082528060200260200182016040528015610ba8578160200160208202803683370190505b509050610be2856001600160401b031660008484604051602001610bce93929190614087565b6040516020818303038152906040526123ca565b95945050505050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610c335760405162461bcd60e51b8152600401610814906140bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610c6561246b565b6001600160a01b031614610c8b5760405162461bcd60e51b8152600401610814906140f7565b610c9481612487565b60408051600080825260208201909252610cb0918391906124b1565b50565b600080610cbe613790565b5050506001600160a01b038316600090815260a060209081526040918290208054835180850190945260018201546001600160801b038082168652600160801b9091048116938501939093526001600160401b0380821694600160401b9092049093169290916060918690811115610d3857610d3861385c565b604051908082528060200260200182016040528015610d61578160200160208202803683370190505b50915060005b86811015610e6c57610da7888883818110610d8457610d84614071565b9050602002016020810190610d999190613d5f565b6001600160801b031661261c565b610dec57878782818110610dbd57610dbd614071565b9050602002016020810190610dd29190613d5f565b604051637bf16ce960e11b81526004016108149190613f53565b816002016000898984818110610e0457610e04614071565b9050602002016020810190610e199190613d5f565b6001600160801b0390811682526020820192909252604001600020548451911690849083908110610e4c57610e4c614071565b6001600160801b0390921660209283029190910190910152600101610d67565b505093509350935093565b610e8081611ef7565b610e9f578060405163913accad60e01b81526004016108149190613b0c565b6001600160a01b038116600090815260a06020526040812054600160401b90046001600160801b031690610ed1612632565b9050806001600160801b0316826001600160801b031610610ef157505050565b6001600160a01b038316600090815260a060209081526040918290208251808401909352600101546001600160801b038082168452600160801b90910416908201525b816001600160801b0316836001600160801b03161015610fba57610f5b62093a8084614147565b6001600160a01b038516600090815260a0602090815260408083206001600160801b038086168552600290910190925290912054919450610f9f918391168561263d565b9050610fb58484610fb0848261268b565b6126de565b610f34565b610fc5848285612773565b50505050565b60a5546001600160a01b0316331480610fee57506000546001600160a01b031633145b6110345760405162461bcd60e51b81526020600482015260176024820152761c995b5bdd99481c1bdbdb081b9bdd08185b1b1bddd959604a1b6044820152606401610814565b61103d81611ef7565b61105c578060405163913accad60e01b81526004016108149190613b0c565b6001600160a01b038116600090815260a060205260409020546001600160401b031661108782610e77565b611090826127fb565b6040516001600160a01b038316906001600160401b038316907ff2e3b584c4d1ed5ead9a4b7de2a8225fd42d13f09e417cd294d03f1dd07fc91490600090a35050565b60608060006110e2603361289b565b9050806001600160401b038111156110fc576110fc61385c565b604051908082528060200260200182016040528015611125578160200160208202803683370190505b509250806001600160401b038111156111405761114061385c565b604051908082528060200260200182016040528015611169578160200160208202803683370190505b50915060005b818110156111d1576111826033826128a6565b85838151811061119457611194614071565b602002602001018584815181106111ad576111ad614071565b6001600160a01b03909316602093840291909101909201919091525260010161116f565b50509091565b6000546001600160a01b031633146112015760405162461bcd60e51b81526004016108149061400e565b60a580546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031633811461127e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152606401610814565b600080546040516001600160a01b038085169392169160008051602061448083398151915291a3600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036113165760405162461bcd60e51b8152600401610814906140bd565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661134861246b565b6001600160a01b03161461136e5760405162461bcd60e51b8152600401610814906140f7565b61137782612487565b611383828260016124b1565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146114225760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610814565b5060008051602061446083398151915290565b6000546001600160a01b0316331461145f5760405162461bcd60e51b81526004016108149061400e565b609a80546001600160801b03808416600160801b0291161790556040517ffe870af61f024df0d7f960ad100676f3ffaa7ea6a44bc6c7adf2756cb8cf4b38906114a9908390613f53565b60405180910390a150565b6114bc6137a7565b6001600160a01b03808516600090815260a3602090815260408083209387168352929052206114eb90836128c4565b90505b9392505050565b6114fd6137cf565b506001600160a01b03808316600090815260a260209081526040808320938516835260019384018252918290208251808401845281546001600160401b0316815283518085019094529301546001600160801b038082168452600160801b909104168282015282015292915050565b3383821461158d5760405163512509d360e11b815260040160405180910390fd5b6000546001600160a01b0382811691161480159061163e57506040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a08231906115f2908490600401613b0c565b602060405180830381865afa15801561160f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116339190614167565b6001600160801b0316155b1561165e578060405163e7640c0360e01b81526004016108149190613b0c565b60006116698261293a565b905060005b858110156117d2576116a587878381811061168b5761168b614071565b90506020020160208101906116a09190613b20565b611ef7565b156116d4576116d48787838181106116bf576116bf614071565b90506020020160208101906103559190613b20565b600061172e848989858181106116ec576116ec614071565b90506020020160208101906117019190613b20565b8589898781811061171457611714614071565b90506020020160208101906117299190613a11565b612a2f565b905087878381811061174257611742614071565b90506020020160208101906117579190613b20565b6001600160a01b0316846001600160a01b03167fc71e393f1527f71ce01b78ea87c9bd4fca84f1482359ce7ac9b73f358c61b1e188888681811061179d5761179d614071565b90506020020160208101906117b29190613a11565b846040516117c1929190614184565b60405180910390a35060010161166e565b506001600160a01b038216600090815260a260205260409020546001600160401b0316670de0b6b3a764000081111561182f5760405163903482f560e01b815260048101829052670de0b6b3a76400006024820152604401610814565b50505050505050565b600154600160a81b900460ff161580801561185e575060018054600160a01b900460ff16105b80611885575061186d30612dee565b158015611885575060018054600160a01b900460ff16145b6118e85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610814565b6001805460ff60a01b1916600160a01b1790558015611915576001805460ff60a81b1916600160a81b1790555b61191d612dfd565b611925612632565b609a80546001600160801b0319166001600160801b03929092169190911790558015610cb0576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020016114a9565b6000611994609b6123c0565b905060005b818110156119b7576119af610355609b83612e7e565b600101611999565b50610cb0612e8a565b60008060606119d7866001600160801b031661261c565b6119f65785604051637bf16ce960e11b81526004016108149190613f53565b6001600160801b03808716600090815260a160205260409020805460ff8116955061010090049091169250846001600160401b03811115611a3957611a3961385c565b604051908082528060200260200182016040528015611a62578160200160208202803683370190505b50915060005b85811015611af757816001016000888884818110611a8857611a88614071565b9050602002016020810190611a9d9190613b20565b6001600160a01b0316815260208101919091526040016000205483516001600160801b0390911690849083908110611ad757611ad7614071565b6001600160801b0390921660209283029190910190910152600101611a68565b505093509350939050565b6001600160a01b038316600090815260a26020526040902080546001600160401b03908116916060918490811115611b3c57611b3c61385c565b604051908082528060200260200182016040528015611b7557816020015b611b626137cf565b815260200190600190039081611b5a5790505b50915060005b84811015611c3357816001016000878784818110611b9b57611b9b614071565b9050602002016020810190611bb09190613b20565b6001600160a01b0316815260208082019290925260409081016000208151808301835281546001600160401b0316815282518084019093526001909101546001600160801b038082168452600160801b9091041682840152918201528351849083908110611c2057611c20614071565b6020908102919091010152600101611b7b565b5050935093915050565b6000546001600160a01b03163314611c675760405162461bcd60e51b81526004016108149061400e565b60a480546001600160a01b0319166001600160a01b0392909216919091179055565b6000611c93612632565b6001600160801b038116600090815260a1602052604090205490915060ff16611cd15780604051631d83110f60e21b81526004016108149190613f53565b611cf18282609a60109054906101000a90046001600160801b0316611fe5565b504715610cb057610cb03347612294565b60006060611d10609d6123c0565b9150818310611d3257604051637f52b2bf60e01b815260040160405180910390fd5b611d3c84846141a1565b611d479060016141b4565b6001600160401b03811115611d5e57611d5e61385c565b604051908082528060200260200182016040528015611d87578160200160208202803683370190505b509050835b838111611de157611d9e609d82612e7e565b82611da987846141a1565b81518110611db957611db9614071565b6001600160a01b0390921660209283029190910190910152611dda816141c7565b9050611d8c565b509250929050565b6000546001600160a01b03163314611e135760405162461bcd60e51b81526004016108149061400e565b603255565b6060611e24609b611fd8565b905090565b60a4546001600160a01b0316331480611e4c57506000546001600160a01b031633145b611e685760405162461bcd60e51b815260040161081490614043565b611e7181611ef7565b15611e915780604051639e7f1f4160e01b81526004016108149190613b0c565b611e9c609d82611f00565b15611ebc5780604051634753d28360e01b81526004016108149190613b0c565b611ec68282611f15565b6040516001600160a01b038216906001600160401b0384169060008051602061442083398151915290600090a35050565b6000610a50609b835b60006114ee836001600160a01b038416612f0a565b6001600160401b0382166000908152609f60205260409020611f379082612f22565b611f4357611f436141e0565b611f4e609b82612f22565b611f5a57611f5a6141e0565b6001600160a01b038116600090815260a06020526040902080546001600160401b0319166001600160401b038416179055611f93612632565b6001600160a01b03909116600090815260a06020526040902080546001600160801b0392909216600160401b02600160401b600160c01b031990921691909117905550565b606060006114ee83612f37565b6001600160801b03808316600090815260a160205260408120546101009004909116908190036120155750505050565b6001600160401b0384166000908152609f60205260408120612036906123c0565b905080600003612047575050505050565b6001600160401b0385166000908152609f6020526040812061206890611fd8565b90506000826001600160401b038111156120845761208461385c565b6040519080825280602002602001820160405280156120ad578160200160208202803683370190505b50905060005b8381101561217857600060a16000896001600160801b03166001600160801b0316815260200190815260200160002060010160008584815181106120f9576120f9614071565b6020908102919091018101516001600160a01b03168252810191909152604001600020546001600160801b039081169150869062093a809061213e9084908b166141f6565b61214891906141f6565b6121529190614223565b83838151811061216457612164614071565b6020908102919091010152506001016120b3565b5046876001600160401b03160361220a57600061219f60336001600160401b038a16612f93565b60405163072cbf8760e41b81529091506001600160a01b038216906372cbf870906121d2908a9087908790600401614087565b600060405180830381600087803b1580156121ec57600080fd5b505af1158015612200573d6000803e3d6000fd5b5050505050612240565b612240876001600160401b031687848460405160200161222c93929190614087565b604051602081830303815290604052612f9f565b856001600160801b0316876001600160401b03167fc78a580f215ba474e75ecbd7636c375e8d2cd25edb0f2467f99b2d0752e104ba876040516122839190613f53565b60405180910390a350505050505050565b804710156122e45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610814565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612331576040519150601f19603f3d011682016040523d82523d6000602084013e612336565b606091505b50509050806108ea5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c20726044820152791958da5c1a595b9d081b585e481a185d99481c995d995c9d195960321b6064820152608401610814565b60006114eb84846001600160a01b038516613119565b6000610a50825490565b60006001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166384fe1721612406603386612f93565b85856032546040518563ffffffff1660e01b815260040161242a9493929190614287565b602060405180830381865afa158015612447573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ee91906142bf565b600080516020614460833981519152546001600160a01b031690565b6000546001600160a01b03163314610cb05760405162461bcd60e51b81526004016108149061400e565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156124e4576108ea83613136565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561253e575060408051601f3d908101601f1916820190925261253b918101906142bf565b60015b6125a15760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610814565b60008051602061446083398151915281146126105760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610814565b506108ea8383836131d0565b600061262b62093a80836142d8565b1592915050565b6000611e24426131f5565b612645613790565b82846020015161265591906142ec565b6001600160801b0316602082015261266d828461430c565b845161267991906142ec565b6001600160801b031681529392505050565b600082600001516001600160801b03168284602001516126ab919061430c565b6001600160801b031611156126c257506000610a50565b8183602001516126d2919061430c565b83516114ee91906142ec565b6001600160801b03808316600090815260a1602052604090208054839260019161270f918591610100900416614147565b82546101009290920a6001600160801b03818102199093169183160217909155928316600090815260a1602090815260408083206001600160a01b0397909716835260019690960190529390932080546001600160801b0319169190921617905550565b6001600160a01b038316600081815260a060209081526040918290208551918601516001600160801b03908116600160801b029281169290921760018201558054918516600160401b02600160401b600160c01b0319909216919091179055516000805160206144c7833981519152906127ee908590614337565b60405180910390a2505050565b6001600160a01b038116600090815260a060209081526040808320546001600160401b0316808452609f909252909120612835908361320f565b612841576128416141e0565b61284c609b8361320f565b612858576128586141e0565b612863609d83612f22565b61286f5761286f6141e0565b506001600160a01b0316600090815260a06020526040812080546001600160c01b031916815560010155565b6000610a5082613224565b60008080806128b5868661322f565b909450925050505b9250929050565b6128cc6137a7565b8260000182815481106128e1576128e1614071565b6000918252602091829020604080518082018252600290930290910180546001600160801b03908116845282518084019093526001909101548082168352600160801b9004168184015291810191909152905092915050565b60408051808201909152600080825260208201526000546001600160a01b039081169083160361299e576a084595161401484a0000006129866129816303bfc40042614147565b6131f5565b6001600160801b039081166020840152168152919050565b6040516332dad3cf60e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063cb6b4f3c906129ea908590600401613b0c565b6040805180830381865afa158015612a06573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129869190614345565b919050565b612a37613790565b6001600160a01b03808616600090815260a260209081526040808320938816835260a0825280832060018086018452938290208251808401909352909301546001600160801b03808216808452600160801b90920416928201929092529015612bf957612aa387611ef7565b8015612ab35750612ab38161325a565b15612b71576040805180820190915260018301546001600160801b038082168352600160801b909104166020820152612aec9082613290565b80516020918201516001600160801b03908116600160801b029116176001840155810151600283016000612b1f846132d9565b6001600160801b0390811682526020820192909252604001600090812080549092612b4c918591166142ec565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b6001600160a01b038716600090815260018401602052604081205484546001600160401b039182169286929091612baa91859116614374565b82546001600160401b039182166101009390930a9283029190920219909116179055506001600160a01b038716600090815260018481016020526040822080546001600160401b031916815501555b6001600160401b03851615612d9c57612c1187611ef7565b612c30578660405163913accad60e01b81526004016108149190613b0c565b612c43866001600160401b038716613334565b6040805180820190915260018401546001600160801b038082168352600160801b909104166020820152909450612c7a90856133ad565b80516020918201516001600160801b03908116600160801b029116176001840155840151600283016000612cad876132d9565b6001600160801b0390811682526020820192909252604001600090812080549092612cda91859116614147565b82546001600160801b039182166101009390930a9283029282021916919091179091556040805180820182526001600160401b03808a16825260208083018a81526001600160a01b038e16600090815260018b81018452958120945185549085166001600160401b0319909116178555905180519201518616600160801b02919095161791909201558554889350869291612d7791859116614394565b92506101000a8154816001600160401b0302191690836001600160401b031602179055505b866001600160a01b03166000805160206144c783398151915283600101604051612ddb91546001600160801b038116825260801c602082015260400190565b60405180910390a2505050949350505050565b6001600160a01b03163b151590565b600154600160a81b900460ff16612e6a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610814565b600080546001600160a01b03191633179055565b60006114ee83836133e2565b6000612e94612632565b90505b609a546001600160801b03908116908216118015612ece57506001600160801b038116600090815260a1602052604090205460ff16155b15610cb0576001600160801b038116600090815260a160205260409020805460ff19166001179055612f0362093a80826142ec565b9050612e97565b60009081526001919091016020526040902054151590565b60006114ee836001600160a01b03841661340c565b606081600001805480602002602001604051908101604052809291908181526020018280548015612f8757602002820191906000526020600020905b815481526020019060010190808311612f73575b50505050509050919050565b60006114ee8383613456565b612faa6033836134c6565b612fb657612fb66141e0565b6000612fc3603384612f93565b6032546040516384fe172160e01b8152919250906000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906384fe17219061301f908690899089908890600401614287565b602060405180830381865afa15801561303c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306091906142bf565b90508047101561308c5760405163704c5be560e11b815247600482015260248101829052604401610814565b60405163b2267a7b60e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b2267a7b9083906130e09087908a908a908990600401614287565b6000604051808303818588803b1580156130f957600080fd5b505af115801561310d573d6000803e3d6000fd5b50505050505050505050565b600082815260028401602052604081208290556114eb84846134d2565b61313f81612dee565b6131a15760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610814565b60008051602061446083398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6131d9836134de565b6000825111806131e65750805b156108ea57610fc5838361351e565b600062093a8061320581846143b4565b610a50919061430c565b60006114ee836001600160a01b038416613543565b6000610a50826123c0565b6000808061323d8585612e7e565b600081815260029690960160205260409095205494959350505050565b600081602001516001600160801b0316600014158015610a50575061262b613281836132d9565b6001600160801b031642101590565b613298613790565b815183516132a691906142ec565b6001600160801b03168152602080830151908401516132c591906142ec565b6001600160801b0316602082015292915050565b600081602001516001600160801b0316600003613323578151602083015160405163fbd384a560e01b81526001600160801b03928316600482015291166024820152604401610814565b60208201518251610a5091906143b4565b61333c613790565b825161337f90670de0b6b3a7640000906303bfc400906133669086906001600160801b03166141f6565b6133709190614223565b61337a9190614223565b61363d565b6001600160801b0316602080830182905284015161339c9161430c565b6001600160801b0316815292915050565b6133b5613790565b815183516133c39190614147565b6001600160801b03168152602080830151908401516132c59190614147565b60008260000182815481106133f9576133f9614071565b9060005260206000200154905092915050565b60006134188383612f0a565b61344e57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610a50565b506000610a50565b60008181526002830160205260408120548015158061347a575061347a8484613657565b6114ee5760405162461bcd60e51b815260206004820152601e60248201527f456e756d657261626c654d61703a206e6f6e6578697374656e74206b657900006044820152606401610814565b60006114ee8383613657565b60006114ee838361340c565b6134e781613136565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606114ee83836040518060600160405280602781526020016144a060279139613663565b6000818152600183016020526040812054801561362c5760006135676001836141a1565b855490915060009061357b906001906141a1565b90508181146135e057600086600001828154811061359b5761359b614071565b90600052602060002001549050808760000184815481106135be576135be614071565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806135f1576135f16143da565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610a50565b6000915050610a50565b5092915050565b60006001600160801b0382111561365357600080fd5b5090565b60006114ee83836136db565b6060600080856001600160a01b03168560405161368091906143f0565b600060405180830381855af49150503d80600081146136bb576040519150601f19603f3d011682016040523d82523d6000602084013e6136c0565b606091505b50915091506136d1868383876136e7565b9695505050505050565b60006114ee8383612f0a565b6060831561375457825160000361374d5761370185612dee565b61374d5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610814565b508161375e565b61375e8383613766565b949350505050565b8151156137765781518083602001fd5b8060405162461bcd60e51b8152600401610814919061440c565b604080518082019091526000808252602082015290565b604051806040016040528060006001600160801b031681526020016137ca613790565b905290565b604051806040016040528060006001600160401b031681526020016137ca613790565b80356001600160a01b0381168114612a2a57600080fd5b80358015158114612a2a57600080fd5b60008060006060848603121561382e57600080fd5b613837846137f2565b925061384560208501613809565b915061385360408501613809565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561389a5761389a61385c565b604052919050565b60006001600160401b038211156138bb576138bb61385c565b5060051b60200190565b80356001600160401b0381168114612a2a57600080fd5b600082601f8301126138ed57600080fd5b813560206139026138fd836138a2565b613872565b8083825260208201915060208460051b87010193508684111561392457600080fd5b602086015b848110156139475761393a816137f2565b8352918301918301613929565b509695505050505050565b6000806040838503121561396557600080fd5b82356001600160401b038082111561397c57600080fd5b818501915085601f83011261399057600080fd5b813560206139a06138fd836138a2565b82815260059290921b840181019181810190898411156139bf57600080fd5b948201945b838610156139e4576139d5866138c5565b825294820194908201906139c4565b965050860135925050808211156139fa57600080fd5b50613a07858286016138dc565b9150509250929050565b600060208284031215613a2357600080fd5b6114ee826138c5565b60008151808452602080850194506020840160005b83811015613a665781516001600160a01b031687529582019590820190600101613a41565b509495945050505050565b6020815260006114ee6020830184613a2c565b6001600160801b0381168114610cb057600080fd5b600080600060608486031215613aae57600080fd5b613ab7846138c5565b92506020840135613ac781613a84565b91506040840135613ad781613a84565b809150509250925092565b60008060408385031215613af557600080fd5b613afe836137f2565b946020939093013593505050565b6001600160a01b0391909116815260200190565b600060208284031215613b3257600080fd5b6114ee826137f2565b60008083601f840112613b4d57600080fd5b5081356001600160401b03811115613b6457600080fd5b6020830191508360208260051b85010111156128bd57600080fd5b600080600060408486031215613b9457600080fd5b613b9d846137f2565b925060208401356001600160401b03811115613bb857600080fd5b613bc486828701613b3b565b9497909650939450505050565b80516001600160801b03908116835260209182015116910152565b60008151808452602080850194506020840160005b83811015613a665781516001600160801b031687529582019590820190600101613c01565b6001600160401b03851681526001600160801b0384166020820152613c4e6040820184613bd1565b60a0608082015260006136d160a0830184613bec565b60008151808452602080850194506020840160005b83811015613a6657815187529582019590820190600101613c79565b604081526000613ca86040830185613c64565b8281036020840152610be28185613a2c565b60008060408385031215613ccd57600080fd5b613cd6836137f2565b91506020838101356001600160401b0380821115613cf357600080fd5b818601915086601f830112613d0757600080fd5b813581811115613d1957613d1961385c565b613d2b601f8201601f19168501613872565b91508082528784828501011115613d4157600080fd5b80848401858401376000848284010152508093505050509250929050565b600060208284031215613d7157600080fd5b81356114ee81613a84565b600080600060608486031215613d9157600080fd5b613d9a846137f2565b9250613da8602085016137f2565b9150604084013590509250925092565b81516001600160801b03168152602080830151606083019161363690840182613bd1565b60008060408385031215613def57600080fd5b613df8836137f2565b9150613e06602084016137f2565b90509250929050565b80516001600160401b03168252602080820151906108ea90840182613bd1565b60608101610a508284613e0f565b60008060008060408587031215613e5357600080fd5b84356001600160401b0380821115613e6a57600080fd5b613e7688838901613b3b565b90965094506020870135915080821115613e8f57600080fd5b50613e9c87828801613b3b565b95989497509550505050565b600080600060408486031215613ebd57600080fd5b8335613b9d81613a84565b83151581526001600160801b0383166020820152606060408201819052600090610be290830184613bec565b6001600160401b03831681526040602080830182905283519183018290526000916060919082850190868301855b82811015613f4557613f35848351613e0f565b9285019290840190600101613f22565b509198975050505050505050565b6001600160801b0391909116815260200190565b60008060408385031215613f7a57600080fd5b50508035926020909101359150565b8281526040602082015260006114eb6040830184613a2c565b600060208284031215613fb457600080fd5b5035919050565b60008060408385031215613fce57600080fd5b613df8836138c5565b60008060408385031215613fea57600080fd5b613ff3836137f2565b9150602083013561400381613a84565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b602080825260149082015273185919081c1bdbdb081b9bdd08185b1b1bddd95960621b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6001600160801b03841681526060602082018190526000906140ab90830185613a2c565b82810360408401526136d18185613c64565b6020808252602c9082015260008051602061444083398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061444083398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b6001600160801b0381811683821601908082111561363657613636614131565b60006020828403121561417957600080fd5b81516114ee81613a84565b6001600160401b0383168152606081016114ee6020830184613bd1565b81810381811115610a5057610a50614131565b80820180821115610a5057610a50614131565b6000600182016141d9576141d9614131565b5060010190565b634e487b7160e01b600052600160045260246000fd5b8082028115828204841417610a5057610a50614131565b634e487b7160e01b600052601260045260246000fd5b6000826142325761423261420d565b500490565b60005b8381101561425257818101518382015260200161423a565b50506000910152565b60008151808452614273816020860160208601614237565b601f01601f19169290920160200192915050565b60018060a01b03851681528360208201526080604082015260006142ae608083018561425b565b905082606083015295945050505050565b6000602082840312156142d157600080fd5b5051919050565b6000826142e7576142e761420d565b500690565b6001600160801b0382811682821603908082111561363657613636614131565b6001600160801b0381811683821602808216919082811461432f5761432f614131565b505092915050565b60408101610a508284613bd1565b6000806040838503121561435857600080fd5b825161436381613a84565b602084015190925061400381613a84565b6001600160401b0382811682821603908082111561363657613636614131565b6001600160401b0381811683821601908082111561363657613636614131565b60006001600160801b03838116806143ce576143ce61420d565b92169190910492915050565b634e487b7160e01b600052603160045260246000fd5b60008251614402818460208701614237565b9190910192915050565b6020815260006114ee602083018461425b56fe336f0b3cc523e98d21e261389542b62abaffc094a21a82f1eec2779d7c8323cb46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a512c82e73ec974de3c794a3ea6bbdfbad18531c1394ace9972f3f0166b67863a2646970667358221220539723e9bbd58e955e6ec783f8e1302a00600828d1daccc39fe0f6a513ea3e0d64736f6c63430008170033";
1210
+
1211
+ type PendleVotingControllerUpgConstructorParams =
1212
+ | [signer?: Signer]
1213
+ | ConstructorParameters<typeof ContractFactory>;
1214
+
1215
+ const isSuperArgs = (
1216
+ xs: PendleVotingControllerUpgConstructorParams
1217
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1218
+
1219
+ export class PendleVotingControllerUpg__factory extends ContractFactory {
1220
+ constructor(...args: PendleVotingControllerUpgConstructorParams) {
1221
+ if (isSuperArgs(args)) {
1222
+ super(...args);
1223
+ } else {
1224
+ super(_abi, _bytecode, args[0]);
1225
+ }
1226
+ this.contractName = "PendleVotingControllerUpg";
1227
+ }
1228
+
1229
+ deploy(
1230
+ _vePendle: string,
1231
+ _pendleMsgSendEndpoint: string,
1232
+ initialApproxDestinationGas: BigNumberish,
1233
+ overrides?: Overrides & { from?: string | Promise<string> }
1234
+ ): Promise<PendleVotingControllerUpg> {
1235
+ return super.deploy(
1236
+ _vePendle,
1237
+ _pendleMsgSendEndpoint,
1238
+ initialApproxDestinationGas,
1239
+ overrides || {}
1240
+ ) as Promise<PendleVotingControllerUpg>;
1241
+ }
1242
+ getDeployTransaction(
1243
+ _vePendle: string,
1244
+ _pendleMsgSendEndpoint: string,
1245
+ initialApproxDestinationGas: BigNumberish,
1246
+ overrides?: Overrides & { from?: string | Promise<string> }
1247
+ ): TransactionRequest {
1248
+ return super.getDeployTransaction(
1249
+ _vePendle,
1250
+ _pendleMsgSendEndpoint,
1251
+ initialApproxDestinationGas,
1252
+ overrides || {}
1253
+ );
1254
+ }
1255
+ attach(address: string): PendleVotingControllerUpg {
1256
+ return super.attach(address) as PendleVotingControllerUpg;
1257
+ }
1258
+ connect(signer: Signer): PendleVotingControllerUpg__factory {
1259
+ return super.connect(signer) as PendleVotingControllerUpg__factory;
1260
+ }
1261
+ static readonly contractName: "PendleVotingControllerUpg";
1262
+ public readonly contractName: "PendleVotingControllerUpg";
1263
+ static readonly bytecode = _bytecode;
1264
+ static readonly abi = _abi;
1265
+ static createInterface(): PendleVotingControllerUpgInterface {
1266
+ return new utils.Interface(_abi) as PendleVotingControllerUpgInterface;
1267
+ }
1268
+ static connect(
1269
+ address: string,
1270
+ signerOrProvider: Signer | Provider
1271
+ ): PendleVotingControllerUpg {
1272
+ return new Contract(
1273
+ address,
1274
+ _abi,
1275
+ signerOrProvider
1276
+ ) as PendleVotingControllerUpg;
1277
+ }
1278
+ }