@pendle/core-v2 2.19.0 → 2.20.0-tradingbot

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 (617) 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 +2 -2
  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 +2 -2
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  10. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  12. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  13. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  14. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  15. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  16. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +2 -2
  18. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  19. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  20. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  22. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  23. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  25. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  26. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  27. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  28. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  31. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  32. package/build/artifacts/contracts/LiquidityMining/libraries/WeekMath.sol/WeekMath.dbg.json +1 -1
  33. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -2
  35. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  36. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
  37. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
  39. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  41. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  43. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  46. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  48. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
  52. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +2 -2
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +1 -1
  71. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
  73. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
  74. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
  75. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  77. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
  78. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
  79. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  81. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  82. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  83. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  84. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
  85. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
  87. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
  89. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +2 -2
  90. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  91. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  92. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  93. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  94. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  95. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  96. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  97. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  98. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +1 -1
  99. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  100. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
  101. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
  102. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
  103. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  104. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  105. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
  106. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
  107. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
  108. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
  109. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  110. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  111. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/BotDecisionHelperBase.sol/BotDecisionHelperBase.dbg.json +4 -0
  112. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/BotDecisionHelperBase.sol/BotDecisionHelperBase.json +816 -0
  113. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.dbg.json +4 -0
  114. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.json +1411 -0
  115. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.dbg.json +4 -0
  116. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.json +2332 -0
  117. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.dbg.json +4 -0
  118. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.json +1641 -0
  119. package/build/artifacts/contracts/core/TradingBot/libraries/BotSimulationLib.sol/BotSimulationLib.dbg.json +4 -0
  120. package/build/artifacts/contracts/core/TradingBot/libraries/BotSimulationLib.sol/BotSimulationLib.json +10 -0
  121. package/build/artifacts/contracts/core/TradingBot/libraries/LongYieldActionLib.sol/LongYieldActionLib.dbg.json +4 -0
  122. package/build/artifacts/contracts/core/TradingBot/libraries/LongYieldActionLib.sol/LongYieldActionLib.json +154 -0
  123. package/build/artifacts/contracts/core/TradingBot/libraries/MarketExtLib.sol/MarketExtLib.dbg.json +4 -0
  124. package/build/artifacts/contracts/core/TradingBot/libraries/MarketExtLib.sol/MarketExtLib.json +24 -0
  125. package/build/artifacts/contracts/core/TradingBot/libraries/SpecSegmentLib.sol/SpecSegmentLib.dbg.json +4 -0
  126. package/build/artifacts/contracts/core/TradingBot/libraries/SpecSegmentLib.sol/SpecSegmentLib.json +10 -0
  127. package/build/artifacts/contracts/core/TradingBot/libraries/TvlLib.sol/TvlLib.dbg.json +4 -0
  128. package/build/artifacts/contracts/core/TradingBot/libraries/TvlLib.sol/TvlLib.json +262 -0
  129. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  130. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  131. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  132. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  133. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  134. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  135. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  136. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  137. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  138. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.json +2 -2
  139. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  140. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
  141. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  142. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
  143. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  144. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  145. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  146. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  147. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  148. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  149. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  150. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  151. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +151 -2
  152. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  153. package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
  154. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
  155. package/build/artifacts/contracts/core/libraries/TokenAmountLib.sol/TokenAmountLib.dbg.json +4 -0
  156. package/build/artifacts/contracts/core/libraries/TokenAmountLib.sol/TokenAmountLib.json +10 -0
  157. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  158. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  159. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  160. package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +1 -1
  161. package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +1 -1
  162. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  163. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
  164. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
  165. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
  166. package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +1 -1
  167. package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +1 -1
  168. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
  169. package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +1 -1
  170. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  171. package/build/artifacts/contracts/interfaces/Camelot/ICamelotFactory.sol/ICamelotFactory.dbg.json +1 -1
  172. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTFactory.sol/ICamelotNFTFactory.dbg.json +1 -1
  173. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTHandler.sol/ICamelotNFTHandler.dbg.json +1 -1
  174. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
  175. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
  176. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPoolFactory.sol/ICamelotNitroPoolFactory.dbg.json +1 -1
  177. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
  178. package/build/artifacts/contracts/interfaces/Camelot/ICamelotRouter.sol/ICamelotRouter.dbg.json +1 -1
  179. package/build/artifacts/contracts/interfaces/Camelot/ICamelotYieldBooster.sol/ICamelotYieldBooster.dbg.json +1 -1
  180. package/build/artifacts/contracts/interfaces/Camelot/IXGrail.sol/IXGrail.dbg.json +1 -1
  181. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
  182. package/build/artifacts/contracts/interfaces/ConvexCurve/ICrvDepositor.sol/ICrvDepositor.dbg.json +1 -1
  183. package/build/artifacts/contracts/interfaces/ConvexCurve/ICvxCrv.sol/ICvxCrv.dbg.json +1 -1
  184. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
  185. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  186. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
  187. package/build/artifacts/contracts/interfaces/Frax/IFrxEthMinter.sol/IFrxEthMinter.dbg.json +1 -1
  188. package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
  189. package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.dbg.json +1 -1
  190. package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +1 -1
  191. package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.dbg.json +1 -1
  192. package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +1 -1
  193. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
  194. package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
  195. package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
  196. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +1 -1
  197. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +1 -1
  198. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  199. package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
  200. package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
  201. package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +1 -1
  202. package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +1 -1
  203. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  204. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  205. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  206. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.json +6 -82
  207. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  208. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +22 -22
  209. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  210. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  211. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.json +4 -42
  212. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +1 -1
  213. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  214. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  215. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  216. package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
  217. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  218. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  219. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  220. package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +1 -1
  221. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  222. package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +1 -1
  223. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  224. package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
  225. package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
  226. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
  227. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
  228. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  229. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  230. package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
  231. package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
  232. package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
  233. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  234. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  235. package/build/artifacts/contracts/interfaces/IPPtOracle.sol/IPPtOracle.dbg.json +1 -1
  236. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  237. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  238. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +32 -146
  239. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
  240. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  241. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  242. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  243. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  244. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
  245. package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
  246. package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
  247. package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
  248. package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
  249. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
  250. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  251. package/build/artifacts/contracts/interfaces/IStargateLP.sol/IStargateLP.dbg.json +1 -1
  252. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  253. package/build/artifacts/contracts/interfaces/IStargateStaking.sol/IStargateStaking.dbg.json +1 -1
  254. package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
  255. package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
  256. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.dbg.json +4 -0
  257. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.json +679 -0
  258. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldDecisionHelper.sol/ILongYieldDecisionHelper.dbg.json +4 -0
  259. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldDecisionHelper.sol/ILongYieldDecisionHelper.json +698 -0
  260. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.dbg.json +4 -0
  261. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.json +813 -0
  262. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldDecisionHelper.sol/IShortYieldDecisionHelper.dbg.json +4 -0
  263. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldDecisionHelper.sol/IShortYieldDecisionHelper.json +679 -0
  264. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldTradingBot.sol/IShortYieldTradingBot.dbg.json +4 -0
  265. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldTradingBot.sol/IShortYieldTradingBot.json +794 -0
  266. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.dbg.json +4 -0
  267. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.json +351 -0
  268. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
  269. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  270. package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  271. package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  272. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  273. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
  274. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  275. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
  276. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
  277. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
  278. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +2 -2
  279. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
  280. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
  281. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  282. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  283. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  284. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  285. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  286. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +8 -84
  287. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  288. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +24 -24
  289. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  290. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +6 -44
  291. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  292. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  293. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  294. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  295. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  296. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  297. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  298. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
  299. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +2 -2
  300. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
  301. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +2 -2
  302. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +1 -1
  303. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.json +2 -2
  304. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
  305. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +2 -2
  306. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
  307. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  308. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
  309. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  310. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
  311. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  312. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  313. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  314. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  315. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
  316. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  317. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  318. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
  319. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +2 -2
  320. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  321. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  322. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  323. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  324. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  325. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  326. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  327. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
  328. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  329. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
  330. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
  331. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IHashflow.sol/IHashflow.dbg.json +1 -1
  332. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
  333. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +1 -1
  334. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
  335. package/contracts/core/StandardizedYield/PYIndex.sol +14 -0
  336. package/contracts/core/TradingBot/DecisionHelper/BotDecisionHelperBase.sol +260 -0
  337. package/contracts/core/TradingBot/DecisionHelper/LongYieldDecisionHelper.sol +291 -0
  338. package/contracts/core/TradingBot/LongYieldTradingBot.sol +128 -0
  339. package/contracts/core/TradingBot/README.md +153 -0
  340. package/contracts/core/TradingBot/TradingBotBase.sol +254 -0
  341. package/contracts/core/TradingBot/libraries/BotSimulationLib.sol +155 -0
  342. package/contracts/core/TradingBot/libraries/LongYieldActionLib.sol +279 -0
  343. package/contracts/core/TradingBot/libraries/MarketExtLib.sol +310 -0
  344. package/contracts/core/TradingBot/libraries/SpecSegmentLib.sol +62 -0
  345. package/contracts/core/TradingBot/libraries/TvlLib.sol +57 -0
  346. package/contracts/core/libraries/Errors.sol +12 -0
  347. package/contracts/core/libraries/TokenAmountLib.sol +47 -0
  348. package/contracts/interfaces/IPActionInfoStatic.sol +7 -8
  349. package/contracts/interfaces/IPActionMarketAuxStatic.sol +14 -21
  350. package/contracts/interfaces/IPActionMarketCoreStatic.sol +67 -70
  351. package/contracts/interfaces/IPActionMintRedeemStatic.sol +11 -23
  352. package/contracts/interfaces/IPRouterStatic.sol +1 -5
  353. package/contracts/interfaces/IStandardizedYield.sol +10 -15
  354. package/contracts/interfaces/TradingBot/IBotDecisionHelper.sol +75 -0
  355. package/contracts/interfaces/TradingBot/ILongYieldDecisionHelper.sol +8 -0
  356. package/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol +51 -0
  357. package/contracts/interfaces/TradingBot/IShortYieldDecisionHelper.sol +7 -0
  358. package/contracts/interfaces/TradingBot/IShortYieldTradingBot.sol +27 -0
  359. package/contracts/interfaces/TradingBot/ITradingBotBase.sol +53 -0
  360. package/contracts/offchain-helpers/BulkSellerOffchain.sol +8 -11
  361. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +11 -14
  362. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +37 -96
  363. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +80 -88
  364. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +14 -43
  365. package/contracts/oracles/PendleLpOracleLib.sol +1 -1
  366. package/deployments/core.ts +29 -0
  367. package/deployments/index.ts +4 -0
  368. package/deployments/markets/ape-june-29-2023.ts +3 -0
  369. package/deployments/markets/balancer-reth-dec-28-2023.ts +3 -0
  370. package/deployments/markets/balancer-wsteth-jun-27-2024.ts +3 -0
  371. package/deployments/markets/curve-fraxusdc-march-30-2023.ts +3 -0
  372. package/deployments/markets/index.ts +17 -0
  373. package/deployments/markets/looks-march-30-2023.ts +3 -0
  374. package/deployments/markets/steth-june-29-2023.ts +3 -0
  375. package/deployments/markets/steth-march-30-2023.ts +3 -0
  376. package/deployments/markets/types.ts +9 -0
  377. package/deployments/misc.ts +23 -0
  378. package/package.json +1 -1
  379. package/typechain-types/ActionMarketAuxStatic.ts +38 -191
  380. package/typechain-types/ActionMarketCoreStatic.ts +134 -600
  381. package/typechain-types/ActionMintRedeemStatic.ts +26 -92
  382. package/typechain-types/AuraEthxBbAWethSY.ts +1532 -0
  383. package/typechain-types/AuraSwEthBbAWethSYV2.ts +1532 -0
  384. package/typechain-types/AuraWethVethSY.ts +1598 -0
  385. package/typechain-types/AutomateReady.ts +102 -0
  386. package/typechain-types/AutomationBase.ts +57 -0
  387. package/typechain-types/AutomationCompatible.ts +140 -0
  388. package/typechain-types/AutomationCompatibleInterface.ts +141 -0
  389. package/typechain-types/BotActionCallbackLib.ts +57 -0
  390. package/typechain-types/BotDecisionHelperBase.ts +508 -0
  391. package/typechain-types/ChainlinkRelayerAutomation.ts +305 -0
  392. package/typechain-types/ChainlinkRelayerGelato.ts +311 -0
  393. package/typechain-types/ComposableStablePreviewProxy.ts +352 -0
  394. package/typechain-types/ComposableStablePreviewV4.ts +217 -0
  395. package/typechain-types/ComposableStablePreviewV5.ts +217 -0
  396. package/typechain-types/IAnkrBNB.ts +150 -0
  397. package/typechain-types/IAnkrLiquidStaking.ts +253 -0
  398. package/typechain-types/IAutomate.ts +203 -0
  399. package/typechain-types/IBotDecisionHelper.ts +476 -0
  400. package/typechain-types/IFluxErc20.ts +298 -0
  401. package/typechain-types/IFluxInterestRateModel.ts +113 -0
  402. package/typechain-types/ILongYieldDecisionHelper.ts +512 -0
  403. package/typechain-types/ILongYieldTradingBot.ts +682 -0
  404. package/typechain-types/IOpsProxyFactory.ts +93 -0
  405. package/typechain-types/IPActionMarketAuxStatic.ts +38 -191
  406. package/typechain-types/IPActionMarketCoreStatic.ts +134 -600
  407. package/typechain-types/IPActionMintRedeemStatic.ts +26 -92
  408. package/typechain-types/IPComposableStablePreview.ts +217 -0
  409. package/typechain-types/IPExternalRewardDistributor.ts +198 -0
  410. package/typechain-types/IPMarketFactoryV2.ts +253 -0
  411. package/typechain-types/IPOracleForSy.ts +87 -0
  412. package/typechain-types/IPRouterStatic.ts +197 -888
  413. package/typechain-types/IPendlePreviewHelper.ts +147 -0
  414. package/typechain-types/IShortYieldDecisionHelper.ts +476 -0
  415. package/typechain-types/IShortYieldTradingBot.ts +574 -0
  416. package/typechain-types/{IExecutorHelper2.ts → ISwETH.ts} +40 -32
  417. package/typechain-types/ITaskTreasuryUpgradable.ts +160 -0
  418. package/typechain-types/IThenaFactory.ts +245 -0
  419. package/typechain-types/IThenaGaugeV2.ts +206 -0
  420. package/typechain-types/IThenaPair.ts +579 -0
  421. package/typechain-types/IThenaRouter.ts +313 -0
  422. package/typechain-types/IThenaSY.ts +81 -0
  423. package/typechain-types/ITradingBotBase.ts +373 -0
  424. package/typechain-types/IVersion.ts +81 -0
  425. package/typechain-types/{PendleSwapArbitrum.ts → IWBETH.ts} +50 -48
  426. package/typechain-types/LegacyNFTHelper.ts +87 -0
  427. package/typechain-types/LongYieldActionLib.ts +57 -0
  428. package/typechain-types/LongYieldDecisionHelper.ts +663 -0
  429. package/typechain-types/LongYieldTradingBot.ts +2420 -0
  430. package/typechain-types/MarketExtLib.ts +81 -0
  431. package/typechain-types/PendleAnkrBNBSY.ts +1235 -0
  432. package/typechain-types/PendleAuraBalancerStableLPSYV3.ts +1599 -0
  433. package/typechain-types/PendleAuraWethVethSY.ts +1511 -0
  434. package/typechain-types/PendleAuraWstethAnkreth.ts +1511 -0
  435. package/typechain-types/PendleBridgedLSDSY.ts +1222 -0
  436. package/typechain-types/PendleChainlinkReceiver.ts +239 -0
  437. package/typechain-types/PendleChainlinkRelayer.ts +158 -0
  438. package/typechain-types/PendleERC20PermitUpgradable.ts +452 -0
  439. package/typechain-types/PendleERC20Upgradable.ts +348 -0
  440. package/typechain-types/PendleERC4626SY.ts +1216 -0
  441. package/typechain-types/PendleExternalRewardDistributor.ts +596 -0
  442. package/typechain-types/PendleFluxLendingSY.ts +1232 -0
  443. package/typechain-types/PendleGaugeV2.ts +225 -0
  444. package/typechain-types/PendleMantleStakedEthSY.ts +1222 -0
  445. package/typechain-types/PendleMarketFactoryV2.ts +932 -0
  446. package/typechain-types/PendleMarketV2.ts +1311 -0
  447. package/typechain-types/PendleOracleForSyProxy.ts +275 -0
  448. package/typechain-types/{PendleCamelotV1SY.ts → PendleThenaSY.ts} +214 -332
  449. package/typechain-types/PendleWbEthSY.ts +1229 -0
  450. package/typechain-types/SDKErrorsDirectory.ts +57 -0
  451. package/typechain-types/SYBaseUpgradable.ts +1132 -0
  452. package/typechain-types/SYBaseWithRewardsUpgradable.ts +1225 -0
  453. package/typechain-types/StarNFTV1.ts +880 -0
  454. package/typechain-types/SwETHSY.ts +1216 -0
  455. package/typechain-types/{PendleCamelotV1RouterHelper.ts → ThenaLpHelper.ts} +63 -5
  456. package/typechain-types/ThenaMath.ts +87 -0
  457. package/typechain-types/{CamelotV1PreviewHelper.ts → ThenaPreview.ts} +42 -63
  458. package/typechain-types/TradingBotBase.ts +1837 -0
  459. package/typechain-types/TvlLib.ts +215 -0
  460. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  461. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  462. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +7 -83
  463. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +23 -23
  464. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +5 -43
  465. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  466. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  467. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  468. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  469. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  470. package/typechain-types/factories/AuraEthxBbAWethSY__factory.ts +1240 -0
  471. package/typechain-types/factories/AuraSwEthBbAWethSYV2__factory.ts +1244 -0
  472. package/typechain-types/factories/AuraWethVethSY__factory.ts +1270 -0
  473. package/typechain-types/factories/AutomateReady__factory.ts +49 -0
  474. package/typechain-types/factories/AutomationBase__factory.ts +69 -0
  475. package/typechain-types/factories/AutomationCompatibleInterface__factory.ts +67 -0
  476. package/typechain-types/factories/AutomationCompatible__factory.ts +72 -0
  477. package/typechain-types/factories/BotActionCallbackLib__factory.ts +84 -0
  478. package/typechain-types/factories/BotDecisionHelperBase__factory.ts +835 -0
  479. package/typechain-types/factories/Broadcaster__factory.ts +1 -1
  480. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  481. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  482. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  483. package/typechain-types/factories/ChainlinkRelayerAutomation__factory.ts +238 -0
  484. package/typechain-types/factories/ChainlinkRelayerGelato__factory.ts +263 -0
  485. package/typechain-types/factories/ComposableStablePreviewProxy__factory.ts +288 -0
  486. package/typechain-types/factories/ComposableStablePreviewV4__factory.ts +190 -0
  487. package/typechain-types/factories/ComposableStablePreviewV5__factory.ts +190 -0
  488. package/typechain-types/factories/Errors__factory.ts +150 -1
  489. package/typechain-types/factories/IAnkrBNB__factory.ts +74 -0
  490. package/typechain-types/factories/IAnkrLiquidStaking__factory.ts +123 -0
  491. package/typechain-types/factories/IAutomate__factory.ts +126 -0
  492. package/typechain-types/factories/IBotDecisionHelper__factory.ts +694 -0
  493. package/typechain-types/factories/IFluxErc20__factory.ts +178 -0
  494. package/typechain-types/factories/{IExecutorHelper2__factory.ts → IFluxInterestRateModel__factory.ts} +19 -15
  495. package/typechain-types/factories/ILongYieldDecisionHelper__factory.ts +717 -0
  496. package/typechain-types/factories/ILongYieldTradingBot__factory.ts +832 -0
  497. package/typechain-types/factories/IOpsProxyFactory__factory.ts +50 -0
  498. package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +6 -82
  499. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +22 -22
  500. package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +4 -42
  501. package/typechain-types/factories/IPComposableStablePreview__factory.ts +152 -0
  502. package/typechain-types/factories/{IPVotingEscrowSidechain__factory.ts → IPExternalRewardDistributor__factory.ts} +60 -44
  503. package/typechain-types/factories/IPMarketFactoryV2__factory.ts +181 -0
  504. package/typechain-types/factories/IPOracleForSy__factory.ts +36 -0
  505. package/typechain-types/factories/IPRouterStatic__factory.ts +32 -146
  506. package/typechain-types/factories/IPendlePreviewHelper__factory.ts +78 -0
  507. package/typechain-types/factories/IShortYieldDecisionHelper__factory.ts +698 -0
  508. package/typechain-types/factories/IShortYieldTradingBot__factory.ts +813 -0
  509. package/typechain-types/factories/ISwETH__factory.ts +53 -0
  510. package/typechain-types/factories/ITaskTreasuryUpgradable__factory.ts +76 -0
  511. package/typechain-types/factories/IThenaFactory__factory.ts +164 -0
  512. package/typechain-types/factories/IThenaGaugeV2__factory.ts +83 -0
  513. package/typechain-types/factories/IThenaPair__factory.ts +421 -0
  514. package/typechain-types/factories/IThenaRouter__factory.ts +200 -0
  515. package/typechain-types/factories/IThenaSY__factory.ts +36 -0
  516. package/typechain-types/factories/ITradingBotBase__factory.ts +366 -0
  517. package/typechain-types/factories/IVersion__factory.ts +36 -0
  518. package/typechain-types/factories/IWBETH__factory.ts +51 -0
  519. package/typechain-types/factories/LegacyNFTHelper__factory.ts +83 -0
  520. package/typechain-types/factories/LongYieldActionLib__factory.ts +207 -0
  521. package/typechain-types/factories/LongYieldDecisionHelper__factory.ts +1468 -0
  522. package/typechain-types/factories/LongYieldTradingBot__factory.ts +2333 -0
  523. package/typechain-types/factories/MarketExtLib__factory.ts +74 -0
  524. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  525. package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1100 -0
  526. package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +1 -1
  527. package/typechain-types/factories/PendleAuraBalancerStableLPSYV3__factory.ts +1212 -0
  528. package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
  529. package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
  530. package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
  531. package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
  532. package/typechain-types/factories/PendleAuraWethVethSY__factory.ts +1231 -0
  533. package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
  534. package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1244 -0
  535. package/typechain-types/factories/PendleBridgedLSDSY__factory.ts +1064 -0
  536. package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
  537. package/typechain-types/factories/PendleChainlinkReceiver__factory.ts +216 -0
  538. package/typechain-types/factories/PendleChainlinkRelayer__factory.ts +180 -0
  539. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  540. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  541. package/typechain-types/factories/PendleERC20PermitUpgradable__factory.ts +401 -0
  542. package/typechain-types/factories/PendleERC20Upgradable__factory.ts +326 -0
  543. package/typechain-types/factories/PendleERC4626SY__factory.ts +1030 -0
  544. package/typechain-types/factories/PendleExternalRewardDistributor__factory.ts +437 -0
  545. package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +1 -1
  546. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  547. package/typechain-types/factories/PendleFluxLendingSY__factory.ts +1038 -0
  548. package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
  549. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  550. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  551. package/typechain-types/factories/PendleGaugeV2__factory.ts +140 -0
  552. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  553. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  554. package/typechain-types/factories/PendleLpGlpOracle__factory.ts +1 -1
  555. package/typechain-types/factories/PendleMantleStakedEthSY__factory.ts +1068 -0
  556. package/typechain-types/factories/PendleMarketFactoryV2__factory.ts +770 -0
  557. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  558. package/typechain-types/factories/PendleMarketV2__factory.ts +1299 -0
  559. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  560. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  561. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  562. package/typechain-types/factories/PendleOracleForSyProxy__factory.ts +211 -0
  563. package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
  564. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  565. package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
  566. package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
  567. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  568. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  569. package/typechain-types/factories/PendleRouterHelper__factory.ts +1 -1
  570. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  571. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  572. package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
  573. package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
  574. package/typechain-types/factories/PendleThenaSY__factory.ts +1352 -0
  575. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  576. package/typechain-types/factories/PendleWbEthSY__factory.ts +1049 -0
  577. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  578. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  579. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  580. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
  581. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  582. package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
  583. package/typechain-types/factories/SAPE__factory.ts +1 -1
  584. package/typechain-types/factories/SDKErrorsDirectory__factory.ts +1596 -0
  585. package/typechain-types/factories/SYBaseUpgradable__factory.ts +889 -0
  586. package/typechain-types/factories/SYBaseWithRewardsUpgradable__factory.ts +959 -0
  587. package/typechain-types/factories/StarNFTV1__factory.ts +584 -0
  588. package/typechain-types/factories/SwETHSY__factory.ts +1022 -0
  589. package/typechain-types/factories/{PendleCamelotV1RouterHelper__factory.ts → ThenaLpHelper__factory.ts} +58 -13
  590. package/typechain-types/factories/ThenaMath__factory.ts +36 -0
  591. package/typechain-types/factories/ThenaPreview__factory.ts +319 -0
  592. package/typechain-types/factories/TradingBotBase__factory.ts +1656 -0
  593. package/typechain-types/factories/TvlLib__factory.ts +309 -0
  594. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  595. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  596. package/typechain-types/hardhat.d.ts +153 -126
  597. package/typechain-types/index.ts +34 -18
  598. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +0 -4
  599. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +0 -976
  600. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.dbg.json +0 -4
  601. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.json +0 -97
  602. package/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol +0 -120
  603. package/contracts/offchain-helpers/PtAndLpToAsset.sol +0 -62
  604. package/deployments/42161-markets/RETH-ARBITRUM-JUNE2024.json +0 -10
  605. package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2024.json +0 -10
  606. package/typechain-types/IExecutorHelper1.ts +0 -643
  607. package/typechain-types/IExecutorHelperEthereum1.ts +0 -643
  608. package/typechain-types/IPVotingEscrowSidechain.ts +0 -155
  609. package/typechain-types/PendleCamelotRewardHelper.ts +0 -347
  610. package/typechain-types/PendleSwapEthereum.ts +0 -126
  611. package/typechain-types/factories/CamelotV1PreviewHelper__factory.ts +0 -400
  612. package/typechain-types/factories/IExecutorHelper1__factory.ts +0 -403
  613. package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +0 -407
  614. package/typechain-types/factories/PendleCamelotRewardHelper__factory.ts +0 -317
  615. package/typechain-types/factories/PendleCamelotV1SY__factory.ts +0 -1448
  616. package/typechain-types/factories/PendleSwapArbitrum__factory.ts +0 -129
  617. package/typechain-types/factories/PendleSwapEthereum__factory.ts +0 -129
@@ -0,0 +1,1299 @@
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
+ PendleMarketV2,
15
+ PendleMarketV2Interface,
16
+ } from "../PendleMarketV2";
17
+
18
+ const _abi = [
19
+ {
20
+ inputs: [
21
+ {
22
+ internalType: "address",
23
+ name: "_PT",
24
+ type: "address",
25
+ },
26
+ {
27
+ internalType: "int256",
28
+ name: "_scalarRoot",
29
+ type: "int256",
30
+ },
31
+ {
32
+ internalType: "int256",
33
+ name: "_initialAnchor",
34
+ type: "int256",
35
+ },
36
+ {
37
+ internalType: "address",
38
+ name: "_vePendle",
39
+ type: "address",
40
+ },
41
+ {
42
+ internalType: "address",
43
+ name: "_gaugeController",
44
+ type: "address",
45
+ },
46
+ {
47
+ internalType: "address",
48
+ name: "_externalRewardDistributor",
49
+ type: "address",
50
+ },
51
+ ],
52
+ stateMutability: "nonpayable",
53
+ type: "constructor",
54
+ },
55
+ {
56
+ inputs: [
57
+ {
58
+ internalType: "int256",
59
+ name: "exchangeRate",
60
+ type: "int256",
61
+ },
62
+ ],
63
+ name: "MarketExchangeRateBelowOne",
64
+ type: "error",
65
+ },
66
+ {
67
+ inputs: [],
68
+ name: "MarketExpired",
69
+ type: "error",
70
+ },
71
+ {
72
+ inputs: [
73
+ {
74
+ internalType: "int256",
75
+ name: "currentAmount",
76
+ type: "int256",
77
+ },
78
+ {
79
+ internalType: "int256",
80
+ name: "requiredAmount",
81
+ type: "int256",
82
+ },
83
+ ],
84
+ name: "MarketInsufficientPtForTrade",
85
+ type: "error",
86
+ },
87
+ {
88
+ inputs: [
89
+ {
90
+ internalType: "uint256",
91
+ name: "actualBalance",
92
+ type: "uint256",
93
+ },
94
+ {
95
+ internalType: "uint256",
96
+ name: "requiredBalance",
97
+ type: "uint256",
98
+ },
99
+ ],
100
+ name: "MarketInsufficientPtReceived",
101
+ type: "error",
102
+ },
103
+ {
104
+ inputs: [
105
+ {
106
+ internalType: "uint256",
107
+ name: "actualBalance",
108
+ type: "uint256",
109
+ },
110
+ {
111
+ internalType: "uint256",
112
+ name: "requiredBalance",
113
+ type: "uint256",
114
+ },
115
+ ],
116
+ name: "MarketInsufficientSyReceived",
117
+ type: "error",
118
+ },
119
+ {
120
+ inputs: [],
121
+ name: "MarketProportionMustNotEqualOne",
122
+ type: "error",
123
+ },
124
+ {
125
+ inputs: [
126
+ {
127
+ internalType: "int256",
128
+ name: "proportion",
129
+ type: "int256",
130
+ },
131
+ {
132
+ internalType: "int256",
133
+ name: "maxProportion",
134
+ type: "int256",
135
+ },
136
+ ],
137
+ name: "MarketProportionTooHigh",
138
+ type: "error",
139
+ },
140
+ {
141
+ inputs: [
142
+ {
143
+ internalType: "int256",
144
+ name: "rateScalar",
145
+ type: "int256",
146
+ },
147
+ ],
148
+ name: "MarketRateScalarBelowZero",
149
+ type: "error",
150
+ },
151
+ {
152
+ inputs: [
153
+ {
154
+ internalType: "int256",
155
+ name: "scalarRoot",
156
+ type: "int256",
157
+ },
158
+ ],
159
+ name: "MarketScalarRootBelowZero",
160
+ type: "error",
161
+ },
162
+ {
163
+ inputs: [],
164
+ name: "MarketZeroAmountsInput",
165
+ type: "error",
166
+ },
167
+ {
168
+ inputs: [],
169
+ name: "MarketZeroAmountsOutput",
170
+ type: "error",
171
+ },
172
+ {
173
+ inputs: [],
174
+ name: "MarketZeroLnImpliedRate",
175
+ type: "error",
176
+ },
177
+ {
178
+ inputs: [
179
+ {
180
+ internalType: "int256",
181
+ name: "totalPt",
182
+ type: "int256",
183
+ },
184
+ {
185
+ internalType: "int256",
186
+ name: "totalAsset",
187
+ type: "int256",
188
+ },
189
+ ],
190
+ name: "MarketZeroTotalPtOrTotalAsset",
191
+ type: "error",
192
+ },
193
+ {
194
+ anonymous: false,
195
+ inputs: [
196
+ {
197
+ indexed: true,
198
+ internalType: "address",
199
+ name: "owner",
200
+ type: "address",
201
+ },
202
+ {
203
+ indexed: true,
204
+ internalType: "address",
205
+ name: "spender",
206
+ type: "address",
207
+ },
208
+ {
209
+ indexed: false,
210
+ internalType: "uint256",
211
+ name: "value",
212
+ type: "uint256",
213
+ },
214
+ ],
215
+ name: "Approval",
216
+ type: "event",
217
+ },
218
+ {
219
+ anonymous: false,
220
+ inputs: [
221
+ {
222
+ indexed: true,
223
+ internalType: "address",
224
+ name: "receiverSy",
225
+ type: "address",
226
+ },
227
+ {
228
+ indexed: true,
229
+ internalType: "address",
230
+ name: "receiverPt",
231
+ type: "address",
232
+ },
233
+ {
234
+ indexed: false,
235
+ internalType: "uint256",
236
+ name: "netLpBurned",
237
+ type: "uint256",
238
+ },
239
+ {
240
+ indexed: false,
241
+ internalType: "uint256",
242
+ name: "netSyOut",
243
+ type: "uint256",
244
+ },
245
+ {
246
+ indexed: false,
247
+ internalType: "uint256",
248
+ name: "netPtOut",
249
+ type: "uint256",
250
+ },
251
+ ],
252
+ name: "Burn",
253
+ type: "event",
254
+ },
255
+ {
256
+ anonymous: false,
257
+ inputs: [
258
+ {
259
+ indexed: false,
260
+ internalType: "uint16",
261
+ name: "observationCardinalityNextOld",
262
+ type: "uint16",
263
+ },
264
+ {
265
+ indexed: false,
266
+ internalType: "uint16",
267
+ name: "observationCardinalityNextNew",
268
+ type: "uint16",
269
+ },
270
+ ],
271
+ name: "IncreaseObservationCardinalityNext",
272
+ type: "event",
273
+ },
274
+ {
275
+ anonymous: false,
276
+ inputs: [
277
+ {
278
+ indexed: true,
279
+ internalType: "address",
280
+ name: "receiver",
281
+ type: "address",
282
+ },
283
+ {
284
+ indexed: false,
285
+ internalType: "uint256",
286
+ name: "netLpMinted",
287
+ type: "uint256",
288
+ },
289
+ {
290
+ indexed: false,
291
+ internalType: "uint256",
292
+ name: "netSyUsed",
293
+ type: "uint256",
294
+ },
295
+ {
296
+ indexed: false,
297
+ internalType: "uint256",
298
+ name: "netPtUsed",
299
+ type: "uint256",
300
+ },
301
+ ],
302
+ name: "Mint",
303
+ type: "event",
304
+ },
305
+ {
306
+ anonymous: false,
307
+ inputs: [
308
+ {
309
+ indexed: true,
310
+ internalType: "address",
311
+ name: "user",
312
+ type: "address",
313
+ },
314
+ {
315
+ indexed: false,
316
+ internalType: "uint256[]",
317
+ name: "rewardsOut",
318
+ type: "uint256[]",
319
+ },
320
+ ],
321
+ name: "RedeemRewards",
322
+ type: "event",
323
+ },
324
+ {
325
+ anonymous: false,
326
+ inputs: [
327
+ {
328
+ indexed: true,
329
+ internalType: "address",
330
+ name: "caller",
331
+ type: "address",
332
+ },
333
+ {
334
+ indexed: true,
335
+ internalType: "address",
336
+ name: "receiver",
337
+ type: "address",
338
+ },
339
+ {
340
+ indexed: false,
341
+ internalType: "int256",
342
+ name: "netPtOut",
343
+ type: "int256",
344
+ },
345
+ {
346
+ indexed: false,
347
+ internalType: "int256",
348
+ name: "netSyOut",
349
+ type: "int256",
350
+ },
351
+ {
352
+ indexed: false,
353
+ internalType: "uint256",
354
+ name: "netSyFee",
355
+ type: "uint256",
356
+ },
357
+ {
358
+ indexed: false,
359
+ internalType: "uint256",
360
+ name: "netSyToReserve",
361
+ type: "uint256",
362
+ },
363
+ ],
364
+ name: "Swap",
365
+ type: "event",
366
+ },
367
+ {
368
+ anonymous: false,
369
+ inputs: [
370
+ {
371
+ indexed: true,
372
+ internalType: "address",
373
+ name: "from",
374
+ type: "address",
375
+ },
376
+ {
377
+ indexed: true,
378
+ internalType: "address",
379
+ name: "to",
380
+ type: "address",
381
+ },
382
+ {
383
+ indexed: false,
384
+ internalType: "uint256",
385
+ name: "value",
386
+ type: "uint256",
387
+ },
388
+ ],
389
+ name: "Transfer",
390
+ type: "event",
391
+ },
392
+ {
393
+ anonymous: false,
394
+ inputs: [
395
+ {
396
+ indexed: true,
397
+ internalType: "uint256",
398
+ name: "timestamp",
399
+ type: "uint256",
400
+ },
401
+ {
402
+ indexed: false,
403
+ internalType: "uint256",
404
+ name: "lnLastImpliedRate",
405
+ type: "uint256",
406
+ },
407
+ ],
408
+ name: "UpdateImpliedRate",
409
+ type: "event",
410
+ },
411
+ {
412
+ inputs: [],
413
+ name: "DOMAIN_SEPARATOR",
414
+ outputs: [
415
+ {
416
+ internalType: "bytes32",
417
+ name: "",
418
+ type: "bytes32",
419
+ },
420
+ ],
421
+ stateMutability: "view",
422
+ type: "function",
423
+ },
424
+ {
425
+ inputs: [],
426
+ name: "_storage",
427
+ outputs: [
428
+ {
429
+ internalType: "int128",
430
+ name: "totalPt",
431
+ type: "int128",
432
+ },
433
+ {
434
+ internalType: "int128",
435
+ name: "totalSy",
436
+ type: "int128",
437
+ },
438
+ {
439
+ internalType: "uint96",
440
+ name: "lastLnImpliedRate",
441
+ type: "uint96",
442
+ },
443
+ {
444
+ internalType: "uint16",
445
+ name: "observationIndex",
446
+ type: "uint16",
447
+ },
448
+ {
449
+ internalType: "uint16",
450
+ name: "observationCardinality",
451
+ type: "uint16",
452
+ },
453
+ {
454
+ internalType: "uint16",
455
+ name: "observationCardinalityNext",
456
+ type: "uint16",
457
+ },
458
+ ],
459
+ stateMutability: "view",
460
+ type: "function",
461
+ },
462
+ {
463
+ inputs: [
464
+ {
465
+ internalType: "address",
466
+ name: "",
467
+ type: "address",
468
+ },
469
+ ],
470
+ name: "activeBalance",
471
+ outputs: [
472
+ {
473
+ internalType: "uint256",
474
+ name: "",
475
+ type: "uint256",
476
+ },
477
+ ],
478
+ stateMutability: "view",
479
+ type: "function",
480
+ },
481
+ {
482
+ inputs: [
483
+ {
484
+ internalType: "address",
485
+ name: "owner",
486
+ type: "address",
487
+ },
488
+ {
489
+ internalType: "address",
490
+ name: "spender",
491
+ type: "address",
492
+ },
493
+ ],
494
+ name: "allowance",
495
+ outputs: [
496
+ {
497
+ internalType: "uint256",
498
+ name: "",
499
+ type: "uint256",
500
+ },
501
+ ],
502
+ stateMutability: "view",
503
+ type: "function",
504
+ },
505
+ {
506
+ inputs: [
507
+ {
508
+ internalType: "address",
509
+ name: "spender",
510
+ type: "address",
511
+ },
512
+ {
513
+ internalType: "uint256",
514
+ name: "amount",
515
+ type: "uint256",
516
+ },
517
+ ],
518
+ name: "approve",
519
+ outputs: [
520
+ {
521
+ internalType: "bool",
522
+ name: "",
523
+ type: "bool",
524
+ },
525
+ ],
526
+ stateMutability: "nonpayable",
527
+ type: "function",
528
+ },
529
+ {
530
+ inputs: [
531
+ {
532
+ internalType: "address",
533
+ name: "account",
534
+ type: "address",
535
+ },
536
+ ],
537
+ name: "balanceOf",
538
+ outputs: [
539
+ {
540
+ internalType: "uint256",
541
+ name: "",
542
+ type: "uint256",
543
+ },
544
+ ],
545
+ stateMutability: "view",
546
+ type: "function",
547
+ },
548
+ {
549
+ inputs: [
550
+ {
551
+ internalType: "address",
552
+ name: "receiverSy",
553
+ type: "address",
554
+ },
555
+ {
556
+ internalType: "address",
557
+ name: "receiverPt",
558
+ type: "address",
559
+ },
560
+ {
561
+ internalType: "uint256",
562
+ name: "netLpToBurn",
563
+ type: "uint256",
564
+ },
565
+ ],
566
+ name: "burn",
567
+ outputs: [
568
+ {
569
+ internalType: "uint256",
570
+ name: "netSyOut",
571
+ type: "uint256",
572
+ },
573
+ {
574
+ internalType: "uint256",
575
+ name: "netPtOut",
576
+ type: "uint256",
577
+ },
578
+ ],
579
+ stateMutability: "nonpayable",
580
+ type: "function",
581
+ },
582
+ {
583
+ inputs: [],
584
+ name: "decimals",
585
+ outputs: [
586
+ {
587
+ internalType: "uint8",
588
+ name: "",
589
+ type: "uint8",
590
+ },
591
+ ],
592
+ stateMutability: "view",
593
+ type: "function",
594
+ },
595
+ {
596
+ inputs: [],
597
+ name: "expiry",
598
+ outputs: [
599
+ {
600
+ internalType: "uint256",
601
+ name: "",
602
+ type: "uint256",
603
+ },
604
+ ],
605
+ stateMutability: "view",
606
+ type: "function",
607
+ },
608
+ {
609
+ inputs: [],
610
+ name: "factory",
611
+ outputs: [
612
+ {
613
+ internalType: "address",
614
+ name: "",
615
+ type: "address",
616
+ },
617
+ ],
618
+ stateMutability: "view",
619
+ type: "function",
620
+ },
621
+ {
622
+ inputs: [],
623
+ name: "getRewardTokens",
624
+ outputs: [
625
+ {
626
+ internalType: "address[]",
627
+ name: "",
628
+ type: "address[]",
629
+ },
630
+ ],
631
+ stateMutability: "view",
632
+ type: "function",
633
+ },
634
+ {
635
+ inputs: [
636
+ {
637
+ internalType: "uint16",
638
+ name: "cardinalityNext",
639
+ type: "uint16",
640
+ },
641
+ ],
642
+ name: "increaseObservationsCardinalityNext",
643
+ outputs: [],
644
+ stateMutability: "nonpayable",
645
+ type: "function",
646
+ },
647
+ {
648
+ inputs: [],
649
+ name: "initialAnchor",
650
+ outputs: [
651
+ {
652
+ internalType: "int256",
653
+ name: "",
654
+ type: "int256",
655
+ },
656
+ ],
657
+ stateMutability: "view",
658
+ type: "function",
659
+ },
660
+ {
661
+ inputs: [],
662
+ name: "isExpired",
663
+ outputs: [
664
+ {
665
+ internalType: "bool",
666
+ name: "",
667
+ type: "bool",
668
+ },
669
+ ],
670
+ stateMutability: "view",
671
+ type: "function",
672
+ },
673
+ {
674
+ inputs: [],
675
+ name: "lastRewardBlock",
676
+ outputs: [
677
+ {
678
+ internalType: "uint256",
679
+ name: "",
680
+ type: "uint256",
681
+ },
682
+ ],
683
+ stateMutability: "view",
684
+ type: "function",
685
+ },
686
+ {
687
+ inputs: [
688
+ {
689
+ internalType: "address",
690
+ name: "receiver",
691
+ type: "address",
692
+ },
693
+ {
694
+ internalType: "uint256",
695
+ name: "netSyDesired",
696
+ type: "uint256",
697
+ },
698
+ {
699
+ internalType: "uint256",
700
+ name: "netPtDesired",
701
+ type: "uint256",
702
+ },
703
+ ],
704
+ name: "mint",
705
+ outputs: [
706
+ {
707
+ internalType: "uint256",
708
+ name: "netLpOut",
709
+ type: "uint256",
710
+ },
711
+ {
712
+ internalType: "uint256",
713
+ name: "netSyUsed",
714
+ type: "uint256",
715
+ },
716
+ {
717
+ internalType: "uint256",
718
+ name: "netPtUsed",
719
+ type: "uint256",
720
+ },
721
+ ],
722
+ stateMutability: "nonpayable",
723
+ type: "function",
724
+ },
725
+ {
726
+ inputs: [],
727
+ name: "name",
728
+ outputs: [
729
+ {
730
+ internalType: "string",
731
+ name: "",
732
+ type: "string",
733
+ },
734
+ ],
735
+ stateMutability: "view",
736
+ type: "function",
737
+ },
738
+ {
739
+ inputs: [
740
+ {
741
+ internalType: "address",
742
+ name: "owner",
743
+ type: "address",
744
+ },
745
+ ],
746
+ name: "nonces",
747
+ outputs: [
748
+ {
749
+ internalType: "uint256",
750
+ name: "",
751
+ type: "uint256",
752
+ },
753
+ ],
754
+ stateMutability: "view",
755
+ type: "function",
756
+ },
757
+ {
758
+ inputs: [
759
+ {
760
+ internalType: "uint256",
761
+ name: "",
762
+ type: "uint256",
763
+ },
764
+ ],
765
+ name: "observations",
766
+ outputs: [
767
+ {
768
+ internalType: "uint32",
769
+ name: "blockTimestamp",
770
+ type: "uint32",
771
+ },
772
+ {
773
+ internalType: "uint216",
774
+ name: "lnImpliedRateCumulative",
775
+ type: "uint216",
776
+ },
777
+ {
778
+ internalType: "bool",
779
+ name: "initialized",
780
+ type: "bool",
781
+ },
782
+ ],
783
+ stateMutability: "view",
784
+ type: "function",
785
+ },
786
+ {
787
+ inputs: [
788
+ {
789
+ internalType: "uint32[]",
790
+ name: "secondsAgos",
791
+ type: "uint32[]",
792
+ },
793
+ ],
794
+ name: "observe",
795
+ outputs: [
796
+ {
797
+ internalType: "uint216[]",
798
+ name: "lnImpliedRateCumulative",
799
+ type: "uint216[]",
800
+ },
801
+ ],
802
+ stateMutability: "view",
803
+ type: "function",
804
+ },
805
+ {
806
+ inputs: [
807
+ {
808
+ internalType: "address",
809
+ name: "owner",
810
+ type: "address",
811
+ },
812
+ {
813
+ internalType: "address",
814
+ name: "spender",
815
+ type: "address",
816
+ },
817
+ {
818
+ internalType: "uint256",
819
+ name: "value",
820
+ type: "uint256",
821
+ },
822
+ {
823
+ internalType: "uint256",
824
+ name: "deadline",
825
+ type: "uint256",
826
+ },
827
+ {
828
+ internalType: "uint8",
829
+ name: "v",
830
+ type: "uint8",
831
+ },
832
+ {
833
+ internalType: "bytes32",
834
+ name: "r",
835
+ type: "bytes32",
836
+ },
837
+ {
838
+ internalType: "bytes32",
839
+ name: "s",
840
+ type: "bytes32",
841
+ },
842
+ ],
843
+ name: "permit",
844
+ outputs: [],
845
+ stateMutability: "nonpayable",
846
+ type: "function",
847
+ },
848
+ {
849
+ inputs: [
850
+ {
851
+ internalType: "address",
852
+ name: "router",
853
+ type: "address",
854
+ },
855
+ ],
856
+ name: "readState",
857
+ outputs: [
858
+ {
859
+ components: [
860
+ {
861
+ internalType: "int256",
862
+ name: "totalPt",
863
+ type: "int256",
864
+ },
865
+ {
866
+ internalType: "int256",
867
+ name: "totalSy",
868
+ type: "int256",
869
+ },
870
+ {
871
+ internalType: "int256",
872
+ name: "totalLp",
873
+ type: "int256",
874
+ },
875
+ {
876
+ internalType: "address",
877
+ name: "treasury",
878
+ type: "address",
879
+ },
880
+ {
881
+ internalType: "int256",
882
+ name: "scalarRoot",
883
+ type: "int256",
884
+ },
885
+ {
886
+ internalType: "uint256",
887
+ name: "expiry",
888
+ type: "uint256",
889
+ },
890
+ {
891
+ internalType: "uint256",
892
+ name: "lnFeeRateRoot",
893
+ type: "uint256",
894
+ },
895
+ {
896
+ internalType: "uint256",
897
+ name: "reserveFeePercent",
898
+ type: "uint256",
899
+ },
900
+ {
901
+ internalType: "uint256",
902
+ name: "lastLnImpliedRate",
903
+ type: "uint256",
904
+ },
905
+ ],
906
+ internalType: "struct MarketState",
907
+ name: "market",
908
+ type: "tuple",
909
+ },
910
+ ],
911
+ stateMutability: "view",
912
+ type: "function",
913
+ },
914
+ {
915
+ inputs: [],
916
+ name: "readTokens",
917
+ outputs: [
918
+ {
919
+ internalType: "contract IStandardizedYield",
920
+ name: "_SY",
921
+ type: "address",
922
+ },
923
+ {
924
+ internalType: "contract IPPrincipalToken",
925
+ name: "_PT",
926
+ type: "address",
927
+ },
928
+ {
929
+ internalType: "contract IPYieldToken",
930
+ name: "_YT",
931
+ type: "address",
932
+ },
933
+ ],
934
+ stateMutability: "view",
935
+ type: "function",
936
+ },
937
+ {
938
+ inputs: [
939
+ {
940
+ internalType: "address",
941
+ name: "user",
942
+ type: "address",
943
+ },
944
+ ],
945
+ name: "redeemRewards",
946
+ outputs: [
947
+ {
948
+ internalType: "uint256[]",
949
+ name: "",
950
+ type: "uint256[]",
951
+ },
952
+ ],
953
+ stateMutability: "nonpayable",
954
+ type: "function",
955
+ },
956
+ {
957
+ inputs: [
958
+ {
959
+ internalType: "address",
960
+ name: "",
961
+ type: "address",
962
+ },
963
+ ],
964
+ name: "rewardState",
965
+ outputs: [
966
+ {
967
+ internalType: "uint128",
968
+ name: "index",
969
+ type: "uint128",
970
+ },
971
+ {
972
+ internalType: "uint128",
973
+ name: "lastBalance",
974
+ type: "uint128",
975
+ },
976
+ ],
977
+ stateMutability: "view",
978
+ type: "function",
979
+ },
980
+ {
981
+ inputs: [],
982
+ name: "scalarRoot",
983
+ outputs: [
984
+ {
985
+ internalType: "int256",
986
+ name: "",
987
+ type: "int256",
988
+ },
989
+ ],
990
+ stateMutability: "view",
991
+ type: "function",
992
+ },
993
+ {
994
+ inputs: [],
995
+ name: "skim",
996
+ outputs: [],
997
+ stateMutability: "nonpayable",
998
+ type: "function",
999
+ },
1000
+ {
1001
+ inputs: [
1002
+ {
1003
+ internalType: "address",
1004
+ name: "receiver",
1005
+ type: "address",
1006
+ },
1007
+ {
1008
+ internalType: "uint256",
1009
+ name: "exactPtIn",
1010
+ type: "uint256",
1011
+ },
1012
+ {
1013
+ internalType: "bytes",
1014
+ name: "data",
1015
+ type: "bytes",
1016
+ },
1017
+ ],
1018
+ name: "swapExactPtForSy",
1019
+ outputs: [
1020
+ {
1021
+ internalType: "uint256",
1022
+ name: "netSyOut",
1023
+ type: "uint256",
1024
+ },
1025
+ {
1026
+ internalType: "uint256",
1027
+ name: "netSyFee",
1028
+ type: "uint256",
1029
+ },
1030
+ ],
1031
+ stateMutability: "nonpayable",
1032
+ type: "function",
1033
+ },
1034
+ {
1035
+ inputs: [
1036
+ {
1037
+ internalType: "address",
1038
+ name: "receiver",
1039
+ type: "address",
1040
+ },
1041
+ {
1042
+ internalType: "uint256",
1043
+ name: "exactPtOut",
1044
+ type: "uint256",
1045
+ },
1046
+ {
1047
+ internalType: "bytes",
1048
+ name: "data",
1049
+ type: "bytes",
1050
+ },
1051
+ ],
1052
+ name: "swapSyForExactPt",
1053
+ outputs: [
1054
+ {
1055
+ internalType: "uint256",
1056
+ name: "netSyIn",
1057
+ type: "uint256",
1058
+ },
1059
+ {
1060
+ internalType: "uint256",
1061
+ name: "netSyFee",
1062
+ type: "uint256",
1063
+ },
1064
+ ],
1065
+ stateMutability: "nonpayable",
1066
+ type: "function",
1067
+ },
1068
+ {
1069
+ inputs: [],
1070
+ name: "symbol",
1071
+ outputs: [
1072
+ {
1073
+ internalType: "string",
1074
+ name: "",
1075
+ type: "string",
1076
+ },
1077
+ ],
1078
+ stateMutability: "view",
1079
+ type: "function",
1080
+ },
1081
+ {
1082
+ inputs: [],
1083
+ name: "totalActiveSupply",
1084
+ outputs: [
1085
+ {
1086
+ internalType: "uint256",
1087
+ name: "",
1088
+ type: "uint256",
1089
+ },
1090
+ ],
1091
+ stateMutability: "view",
1092
+ type: "function",
1093
+ },
1094
+ {
1095
+ inputs: [],
1096
+ name: "totalSupply",
1097
+ outputs: [
1098
+ {
1099
+ internalType: "uint256",
1100
+ name: "",
1101
+ type: "uint256",
1102
+ },
1103
+ ],
1104
+ stateMutability: "view",
1105
+ type: "function",
1106
+ },
1107
+ {
1108
+ inputs: [
1109
+ {
1110
+ internalType: "address",
1111
+ name: "to",
1112
+ type: "address",
1113
+ },
1114
+ {
1115
+ internalType: "uint256",
1116
+ name: "amount",
1117
+ type: "uint256",
1118
+ },
1119
+ ],
1120
+ name: "transfer",
1121
+ outputs: [
1122
+ {
1123
+ internalType: "bool",
1124
+ name: "",
1125
+ type: "bool",
1126
+ },
1127
+ ],
1128
+ stateMutability: "nonpayable",
1129
+ type: "function",
1130
+ },
1131
+ {
1132
+ inputs: [
1133
+ {
1134
+ internalType: "address",
1135
+ name: "from",
1136
+ type: "address",
1137
+ },
1138
+ {
1139
+ internalType: "address",
1140
+ name: "to",
1141
+ type: "address",
1142
+ },
1143
+ {
1144
+ internalType: "uint256",
1145
+ name: "amount",
1146
+ type: "uint256",
1147
+ },
1148
+ ],
1149
+ name: "transferFrom",
1150
+ outputs: [
1151
+ {
1152
+ internalType: "bool",
1153
+ name: "",
1154
+ type: "bool",
1155
+ },
1156
+ ],
1157
+ stateMutability: "nonpayable",
1158
+ type: "function",
1159
+ },
1160
+ {
1161
+ inputs: [
1162
+ {
1163
+ internalType: "address",
1164
+ name: "",
1165
+ type: "address",
1166
+ },
1167
+ {
1168
+ internalType: "address",
1169
+ name: "",
1170
+ type: "address",
1171
+ },
1172
+ ],
1173
+ name: "userReward",
1174
+ outputs: [
1175
+ {
1176
+ internalType: "uint128",
1177
+ name: "index",
1178
+ type: "uint128",
1179
+ },
1180
+ {
1181
+ internalType: "uint128",
1182
+ name: "accrued",
1183
+ type: "uint128",
1184
+ },
1185
+ ],
1186
+ stateMutability: "view",
1187
+ type: "function",
1188
+ },
1189
+ ];
1190
+
1191
+ const _bytecode =
1192
+ "0x6102e06040523480156200001257600080fd5b50604051620066b8380380620066b8833981016040819052620000359162000507565b856001600160a01b031663afd27bf56040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000074573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009a919062000576565b8383836040518060400160405280600d81526020016c14195b991b194813585c9ad95d609a1b8152506040518060400160405280600a8152602001691411539113114b53141560b21b815250601282604051806040016040528060018152602001603160f81b815250848484826003908162000117919062000640565b50600462000126838262000640565b5060ff166080525050600280546001600160f81b0316600160f81b17905581516020808401919091208251918301919091206101008290526101208190524660c0527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f620001d98184846040805160208101859052908101839052606081018290524660808201523060a082015260009060c0016040516020818303038152906040528051906020012090509392505050565b60a0523060e05261014052505050506001600160a01b03878116610160528681166101a05285166101c081905260408051635162986d60e11b8152905191945063a2c530da9350600480820193506020929182900301816000875af115801562000247573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026d919062000576565b6001600160a01b03908116610180529081166101e05289166102008190526040805163afd27bf560e01b8152905191945063afd27bf5935060048082019350602092918290030181865afa158015620002ca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f0919062000576565b6001600160a01b0316610220816001600160a01b031681525050610200516001600160a01b031663781c18db6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200034c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000372919062000576565b6001600160a01b03166102405260405163329f6acb60e21b8152600d600482015263ffffffff4216602482015273__$048ed23d805a6069d4ffa97e047467fd4a$__9063ca7dab2c906044016040805180830381865af4158015620003db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200040191906200071f565b600c805463ffffffff60701b1916600160801b61ffff9384160261ffff60701b191617600160701b9390921692909202179055600085136200045d5760405163483512b160e11b81526004810186905260240160405180910390fd5b846102a08181525050836102c08181525050856001600160a01b031663e184c9be6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620004ae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004d4919062000757565b6102805250503361026052506200077192505050565b80516001600160a01b03811681146200050257600080fd5b919050565b60008060008060008060c087890312156200052157600080fd5b6200052c87620004ea565b955060208701519450604087015193506200054a60608801620004ea565b92506200055a60808801620004ea565b91506200056a60a08801620004ea565b90509295509295509295565b6000602082840312156200058957600080fd5b6200059482620004ea565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620005c657607f821691505b602082108103620005e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200063b57600081815260208120601f850160051c81016020861015620006165750805b601f850160051c820191505b81811015620006375782815560010162000622565b5050505b505050565b81516001600160401b038111156200065c576200065c6200059b565b62000674816200066d8454620005b1565b84620005ed565b602080601f831160018114620006ac5760008415620006935750858301515b600019600386901b1c1916600185901b17855562000637565b600085815260208120601f198616915b82811015620006dd57888601518255948401946001909101908401620006bc565b5085821015620006fc5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b805161ffff811681146200050257600080fd5b600080604083850312156200073357600080fd5b6200073e836200070c565b91506200074e602084016200070c565b90509250929050565b6000602082840312156200076a57600080fd5b5051919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516102a0516102c051615d9d6200091b600039600081816104eb015261086f015260008181610556015261144f01526000818161067a01528181610f09015261147501526000818161060b01526113b30152600081816103170152818161081c01528181610cef01526111250152600081816102ca015281816108c4015281816108f301528181610ae801528181610b7101528181610d4901528181610d83015281816111b90152818161126d0152818161129c01526118860152600081816102ef0152818161094f0152818161097e01528181610aa401528181610b3101528181610e3501528181610e640152818161117f01526118ca01526000818161248d0152614f4801526000614fbb0152600061510c01526000818161252f01526125630152600081816124030152614ec901526000612303015260006123450152600061232401526000612288015260006122b2015260006122dc015260006103530152615d9d6000f3fe608060405234801561001057600080fd5b50600436106101a15760003560e01c806306fdde03146101a65780630892cd8b146101c4578063095ea7b3146101f2578063156e29f61461021557806318160ddd146102375780631dd19cb41461023f57806323b872dd14610249578063252c09d71461025c57806329910b111461029b5780632c8ce6bc146102bc5780632f13b60c14610346578063313ce5671461034e5780633644e5151461038757806337d45e3a1461038f5780635b709f17146103a25780635cbadbe4146103b557806370a08231146104145780637206926414610427578063794052f3146104305780637ecebe00146104b3578063883bdbfd146104c657806391e7c015146104e65780639262187b1461050d57806395d89b411461052d578063a9059cbb14610535578063a9f8d18114610548578063af247da314610551578063c3fb90d614610578578063c45a015514610606578063c4f59f9b1461063a578063d505accf1461064f578063dd62ed3e14610662578063e184c9be14610675578063ea64a8201461069c578063f6b911bc146106d0575b600080fd5b6101ae6106e3565b6040516101bb9190615262565b60405180910390f35b6101e46101d23660046152aa565b600a6020526000908152604090205481565b6040519081526020016101bb565b6102056102003660046152c7565b610775565b60405190151581526020016101bb565b6102286102233660046152f3565b61078f565b6040516101bb93929190615328565b6101e4610a31565b610247610a40565b005b61020561025736600461533e565b610bb2565b61026f61026a36600461537f565b610c30565b6040805163ffffffff90941684526001600160d81b0390921660208401521515908201526060016101bb565b6102ae6102a9366004615398565b610c6a565b6040516101bb929190615420565b604080516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811682527f0000000000000000000000000000000000000000000000000000000000000000811660208301527f000000000000000000000000000000000000000000000000000000000000000016918101919091526060016101bb565b610205610f07565b6103757f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101bb565b6101e4610f33565b61024761039d36600461543e565b610f3d565b6102ae6103b0366004615398565b6110a0565b6103f46103c336600461545b565b60066020908152600092835260408084209091529082529020546001600160801b0380821691600160801b90041682565b604080516001600160801b039384168152929091166020830152016101bb565b6101e46104223660046152aa565b6112f9565b6101e460095481565b61044361043e3660046152aa565b611314565b6040516101bb91908151815260208083015190820152604080830151908201526060808301516001600160a01b0316908201526080808301519082015260a0808301519082015260c0808301519082015260e0808301519082015261010091820151918101919091526101200190565b6101e46104c13660046152aa565b6114b0565b6104d96104d43660046154fd565b6114ce565b6040516101bb919061559a565b6101e47f000000000000000000000000000000000000000000000000000000000000000081565b61052061051b3660046152aa565b611576565b6040516101bb91906155e7565b6101ae6115e1565b6102056105433660046152c7565b6115f0565b6101e460075481565b6101e47f000000000000000000000000000000000000000000000000000000000000000081565b600b54600c546105bc91600f81810b92600160801b9283900490910b916001600160601b0382169161ffff600160601b8204811692600160701b8304821692041686565b60408051600f97880b81529590960b60208601526001600160601b039093169484019490945261ffff908116606084015292831660808301529190911660a082015260c0016101bb565b61062d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101bb919061561f565b610642611662565b6040516101bb9190615633565b61024761065d366004615683565b61166c565b6101e461067036600461545b565b6117d0565b6101e47f000000000000000000000000000000000000000000000000000000000000000081565b6103f46106aa3660046152aa565b6008602052600090815260409020546001600160801b0380821691600160801b90041682565b6102ae6106de36600461533e565b6117fb565b6060600380546106f2906156f4565b80601f016020809104026020016040519081016040528092919081815260200182805461071e906156f4565b801561076b5780601f106107405761010080835404028352916020019161076b565b820191906000526020600020905b81548152906001019060200180831161074e57829003601f168201915b5050505050905090565b600033610783818585611969565b60019150505b92915050565b60025460009081908190600119600160f81b90910460ff16016107cd5760405162461bcd60e51b81526004016107c490615728565b60405180910390fd5b600280546001600160f81b0316600160f91b1790556107ea610f07565b156108085760405163b2094b5960e01b815260040160405180910390fd5b600061081333611314565b905060006108497f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a8d565b9050600061085983898942611af3565b919850965094509050801561089f5761089483837f000000000000000000000000000000000000000000000000000000000000000042611b5e565b61089f600182611be2565b6108a98987611be2565b6108b283611d04565b6108bf8360200151611ea5565b6108e87f0000000000000000000000000000000000000000000000000000000000000000611eb8565b101561093f576109177f0000000000000000000000000000000000000000000000000000000000000000611eb8565b6109248460200151611ea5565b60405163f62951c760e01b81526004016107c4929190615420565b825161094a90611ea5565b6109737f0000000000000000000000000000000000000000000000000000000000000000611eb8565b10156109c8576109a27f0000000000000000000000000000000000000000000000000000000000000000611eb8565b83516109ad90611ea5565b604051632c49ea0f60e01b81526004016107c4929190615420565b886001600160a01b03167fb4c03061fb5b7fed76389d5af8f2e0ddb09f8c70d1333abbb62582835e10accb878787604051610a0593929190615328565b60405180910390a25050600280546001600160f81b0316600160f81b1790555091959094509092509050565b6002546001600160f81b031690565b600254600119600160f81b90910460ff1601610a6e5760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b1790556000610a8e33611314565b90506000610a9f8260000151611ea5565b610ac87f0000000000000000000000000000000000000000000000000000000000000000611eb8565b610ad29190615775565b90506000610ae38360200151611ea5565b610b0c7f0000000000000000000000000000000000000000000000000000000000000000611eb8565b610b169190615775565b90508115610b58576060830151610b58906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169084611f04565b8015610b98576060830151610b98906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169083611f04565b5050600280546001600160f81b0316600160f81b17905550565b600254600090600119600160f81b90910460ff1601610be35760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b17905533610c04858285611f5b565b610c0f858585611fd5565b6001915050600280546001600160f81b0316600160f81b1790559392505050565b600d8161ffff8110610c4157600080fd5b015463ffffffff81169150600160201b81046001600160d81b031690600160f81b900460ff1683565b6002546000908190600119600160f81b90910460ff1601610c9d5760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b179055610cba610f07565b15610cd85760405163b2094b5960e01b815260040160405180910390fd5b6000610ce333611314565b90506000610d25610d1c7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a8d565b839089426121fd565b919550935090506001600160a01b0388163014610d7057610d706001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168986611f04565b6060820151610daa906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169083611f04565b610db382611d04565b8415610e25573363fa483e72610dc88961224e565b610dd187612265565b89896040518563ffffffff1660e01b8152600401610df29493929190615788565b600060405180830381600087803b158015610e0c57600080fd5b505af1158015610e20573d6000803e3d6000fd5b505050505b8151610e3090611ea5565b610e597f0000000000000000000000000000000000000000000000000000000000000000611eb8565b1015610e9357610e887f0000000000000000000000000000000000000000000000000000000000000000611eb8565b82516109ad90611ea5565b6001600160a01b03881633600080516020615d28833981519152610eb68a61224e565b610ebf88612265565b60408051928352602083019190915281018790526060810185905260800160405180910390a35050600280546001600160f81b0316600160f81b179055909590945092505050565b7f000000000000000000000000000000000000000000000000000000000000000042101590565b905090565b6000610f2e61227b565b600254600119600160f81b90910460ff1601610f6b5760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b179055600c54604051632c3e6e0360e11b8152600d6004820152600160801b90910461ffff9081166024830181905290831660448301529060009073__$048ed23d805a6069d4ffa97e047467fd4a$__9063587cdc0690606401602060405180830381865af4158015610ff4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101891906157c5565b90508061ffff168261ffff1614610b9857600c805461ffff60801b1916600160801b61ffff8481169182029290921790925560408051918516825260208201929092527fac49e518f90a358f652e4400164f05a5d8f7e35e7747279bc3a93dbf584e125a910160405180910390a15050600280546001600160f81b0316600160f81b17905550565b6002546000908190600119600160f81b90910460ff16016110d35760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b1790556110f0610f07565b1561110e5760405163b2094b5960e01b815260040160405180910390fd5b600061111933611314565b9050600061115b6111527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a8d565b83908942612369565b919550935090506001600160a01b03881630146111a6576111a66001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168989611f04565b60608201516111e0906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169083611f04565b6111e982611d04565b841561125b573363fa483e726111fe89612265565b6112078761224e565b89896040518563ffffffff1660e01b81526004016112289493929190615788565b600060405180830381600087803b15801561124257600080fd5b505af1158015611256573d6000803e3d6000fd5b505050505b6112688260200151611ea5565b6112917f0000000000000000000000000000000000000000000000000000000000000000611eb8565b10156112cd576112c07f0000000000000000000000000000000000000000000000000000000000000000611eb8565b6109248360200151611ea5565b6001600160a01b03881633600080516020615d288339815191526112f08a612265565b610ebf8861224e565b6001600160a01b031660009081526020819052604090205490565b61136c60405180610120016040528060008152602001600081526020016000815260200160006001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600081525090565b600b54600f81810b8352600160801b909104900b6020820152611395611390610a31565b612265565b6040808301919091525163c7bfd2fd60e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c7bfd2fd906113e890859060040161561f565b606060405180830381865afa158015611405573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142991906157e2565b60ff1660e08401526001600160501b031660c08301526001600160a01b031660608201527f000000000000000000000000000000000000000000000000000000000000000060808201527f000000000000000000000000000000000000000000000000000000000000000060a0820152600c546001600160601b0316610100820152919050565b6001600160a01b038116600090815260056020526040812054610789565b600c54604051630eea10e760e11b815260609173__$048ed23d805a6069d4ffa97e047467fd4a$__91631dd421ce9161153191600d91429188916001600160601b0381169161ffff600160601b8304811692600160701b9004169060040161583b565b600060405180830381865af415801561154e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261078991908101906158b9565b600254606090600119600160f81b90910460ff16016115a75760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b1790556115c582612397565b9050600280546001600160f81b0316600160f81b179055919050565b6060600480546106f2906156f4565b600254600090600119600160f81b90910460ff16016116215760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b17905533611642818585611fd5565b6001915050600280546001600160f81b0316600160f81b17905592915050565b6060610f2e6123fd565b834211156116bc5760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016107c4565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886116eb8c61258e565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000611746826125b6565b9050600061175682878787612604565b9050896001600160a01b0316816001600160a01b0316146117b95760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016107c4565b6117c48a8a8a611969565b50505050505050505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6002546000908190600119600160f81b90910460ff160161182e5760405162461bcd60e51b81526004016107c490615728565b600280546001600160f81b0316600160f91b179055600061184e33611314565b905061185a308561262c565b61186481856127b9565b90935091506001600160a01b03861630146118ad576118ad6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168785611f04565b6001600160a01b03851630146118f1576118f16001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168684611f04565b6118fa81611d04565b846001600160a01b0316866001600160a01b03167f4cf25bc1d991c17529c25213d3cc0cda295eeaad5f13f361969b12ea48015f9086868660405161194193929190615328565b60405180910390a350600280546001600160f81b0316600160f81b1790559094909350915050565b6001600160a01b0383166119cb5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107c4565b6001600160a01b038216611a2c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107c4565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000816001600160a01b0316631d52edc46040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611acf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107899190615954565b600080600080600080600080611b1b8c611b0c8d612265565b611b158d612265565b8c6127f4565b9350935093509350611b2c84611ea5565b9750611b3783611ea5565b9650611b4282611ea5565b9550611b4d81611ea5565b945050505050945094509450949050565b60a08401518110611b825760405163b2094b5960e01b815260040160405180910390fd5b6000611b9b8560200151856129a290919063ffffffff16565b90506000828660a00151611baf9190615775565b90506000611bbd87836129e1565b9050611bd0876000015184838886612a3d565b61010090970196909652505050505050565b6001600160a01b038216611c385760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016107c4565b611c4460008383612a90565b611c4d81612a9b565b60028054600090611c689084906001600160f81b031661596d565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555080600080846001600160a01b03166001600160a01b031681526020019081526020016000206000828254611cc09190615994565b90915550506040518181526001600160a01b03831690600090600080516020615d488339815191529060200160405180910390a3611d0060008383612ab1565b5050565b6000611d14826101000151612abc565b90506000611d258360000151612ad2565b90506000611d368460200151612ad2565b600c5460405163095ee96d60e31b8152600d600482015261ffff600160601b8304811660248301524263ffffffff1660448301526001600160601b0383166064830152600160701b830481166084830152600160801b90920490911660a4820152909150600090819073__$048ed23d805a6069d4ffa97e047467fd4a$__90634af74b689060c4016040805180830381865af4158015611dda573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dfe91906159a7565b6001600160801b03858116600160801b0290871617600b55600c805461ffff808416600160701b0261ffff60701b19918616600160601b026001600160701b03199093166001600160601b038c1617929092171617905561010088015160405192945090925042917f5c0e21d57bb4cf91d8fe238d6f92e2685a695371b19209afcce6217b478f83e191611e959190815260200190565b60405180910390a2505050505050565b600080821215611eb457600080fd5b5090565b6040516370a0823160e01b81526000906001600160a01b038316906370a0823190611ee790309060040161561f565b602060405180830381865afa158015611acf573d6000803e3d6000fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052611f56908490612afc565b505050565b6000611f6784846117d0565b90506000198114611fcf5781811015611fc25760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107c4565b611fcf8484848403611969565b50505050565b6001600160a01b0383166120395760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107c4565b6001600160a01b03821661209b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107c4565b816001600160a01b0316836001600160a01b0316036120f65760405162461bcd60e51b815260206004820152601760248201527622a92199181d103a3930b739b332b9103a379039b2b63360491b60448201526064016107c4565b612101838383612a90565b6001600160a01b038316600090815260208190526040902054818110156121795760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107c4565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906121b0908490615994565b92505081905550826001600160a01b0316846001600160a01b0316600080516020615d48833981519152846040516121ea91815260200190565b60405180910390a3611fcf848484612ab1565b60008060008060008061221a8a8a6122148b61224e565b8a612bce565b92509250925061222983611ea5565b955061223482611ea5565b945061223f81611ea5565b93505050509450945094915050565b600061225982612265565b610789906000196159d6565b60006001600160ff1b03821115611eb457600080fd5b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480156122d457507f000000000000000000000000000000000000000000000000000000000000000046145b156122fe57507f000000000000000000000000000000000000000000000000000000000000000090565b610f2e7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000612c61565b6000806000806000806123808a8a6122148b612265565b92509250925061222961239284612cab565b611ea5565b60606123a282612cb9565b6123ab82612cc7565b6123b58283612cd2565b9050816001600160a01b03167f78d61a0c27b13f43911095f9f356f14daa3cd8b125eea1aa22421245e90e813d826040516123f091906155e7565b60405180910390a2919050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c4f59f9b6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561245f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526124879190810190615a06565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166201b0b6306040518263ffffffff1660e01b81526004016124d6919061561f565b600060405180830381865afa1580156124f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261251b9190810190615a06565b90506125278282612f7a565b9250612553837f000000000000000000000000000000000000000000000000000000000000000061315f565b1561255d57505090565b612587837f00000000000000000000000000000000000000000000000000000000000000006131be565b9250505090565b6001600160a01b03811660009081526005602052604090208054600181018255905b50919050565b60006107896125c361227b565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b6000806000612615878787876132a3565b9150915061262281613386565b5095945050505050565b6001600160a01b03821661268c5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016107c4565b61269882600083612a90565b6001600160a01b0382166000908152602081905260409020548181101561270c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016107c4565b6001600160a01b0383166000908152602081905260409020828203905561273282612a9b565b6002805460009061274d9084906001600160f81b0316615a94565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555060006001600160a01b0316836001600160a01b0316600080516020615d48833981519152846040516127a591815260200190565b60405180910390a3611f5683600084612ab1565b6000806000806127d1866127cc87612265565b613537565b915091506127de82611ea5565b93506127e981611ea5565b925050509250929050565b6000808080861580612804575085155b15612822576040516325daaec360e01b815260040160405180910390fd5b60a088015185106128465760405163b2094b5960e01b815260040160405180910390fd5b8760400151600003612889576103e861286d6113906128686123928a8c6159d6565b613603565b6128779190615ab4565b92506103e8935086915085905061292c565b875160408901516000919061289e90896159d6565b6128a89190615aea565b9050600089602001518a604001518a6128c191906159d6565b6128cb9190615aea565b905080821215612901578194508792508960400151858b602001516128f091906159d6565b6128fa9190615aea565b9350612929565b8094508893508960400151858b6000015161291c91906159d6565b6129269190615aea565b92505b50505b6000831361294d57604051631997ea8d60e31b815260040160405180910390fd5b818860200181815161295f9190615b18565b905250875181908990612973908390615b18565b9052506129808484615b18565b886040018181516129919190615b18565b905250929791965094509092509050565b600080600083126129b45760016129b8565b6000195b90506129cf611390856129ca8661366d565b613684565b6129d990826159d6565b949350505050565b60006129ec82612265565b6129fe6113906201518061016d615b38565b8460800151612a0d91906159d6565b612a179190615aea565b90506000811361078957604051630e520c3b60e11b8152600481018290526024016107c4565b600080612a4e8787878760006136a3565b90506000612a5e6123928361375b565b905083612a706201518061016d615b38565b612a7a9083615b38565b612a849190615b4f565b98975050505050505050565b611f568383836137ee565b60006001600160f81b03821115611eb457600080fd5b611f568383836137f8565b60006001600160601b03821115611eb457600080fd5b600060016001607f1b03198212801590612af3575060016001607f1b038213155b611eb457600080fd5b6000612b51826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166138029092919063ffffffff16565b805190915015611f565780806020019051810190612b6f9190615b63565b611f565760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016107c4565b6000806000612be18760a0015185101590565b15612bff5760405163b2094b5960e01b815260040160405180910390fd5b86518512612c25578651604051632185509b60e21b81526107c491908790600401615420565b6000612c32888887613811565b9050612c408882898961390b565b91955093509150612c568882898988878b613a5f565b509450945094915050565b6040805160208101859052908101839052606081018290524660808201523060a082015260009060c0016040516020818303038152906040528051906020012090505b9392505050565b6000610789826000196159d6565b612cc4816000613af1565b50565b612cc4816000613b71565b60606000612cde6123fd565b905080516001600160401b03811115612cf957612cf9615494565b604051908082528060200260200182016040528015612d22578160200160208202803683370190505b50915060005b8151811015612f725760066000838381518110612d4757612d47615b85565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060000160109054906101000a90046001600160801b03166001600160801b0316838281518110612dc457612dc4615b85565b602002602001018181525050828181518110612de257612de2615b85565b6020026020010151600014612f6057600060066000848481518110612e0957612e09615b85565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000876001600160a01b03166001600160a01b0316815260200190815260200160002060000160106101000a8154816001600160801b0302191690836001600160801b03160217905550612e9d838281518110612e9057612e90615b85565b6020026020010151613bcf565b60086000848481518110612eb357612eb3615b85565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060000160108282829054906101000a90046001600160801b0316612eff9190615b9b565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550612f60828281518110612f3857612f38615b85565b602002602001015185858481518110612f5357612f53615b85565b6020026020010151613be5565b80612f6a81615bbb565b915050612d28565b505092915050565b606060008083516001600160401b03811115612f9857612f98615494565b604051908082528060200260200182016040528015612fc1578160200160208202803683370190505b50905060005b845181101561302c57612ff386868381518110612fe657612fe6615b85565b602002602001015161315f565b613024578280600101935050600182828151811061301357613013615b85565b911515602092830291909101909101525b600101612fc7565b50818551016001600160401b0381111561304857613048615494565b604051908082528060200260200182016040528015613071578160200160208202803683370190505b50925060005b85518110156130cc5785818151811061309257613092615b85565b60200260200101518482815181106130ac576130ac615b85565b6001600160a01b0390921660209283029190910190910152600101613077565b50845160005b8551811015613155578281815181106130ed576130ed615b85565b60200260200101511561314d5785818151811061310c5761310c615b85565b602002602001015185838060010194508151811061312c5761312c615b85565b60200260200101906001600160a01b031690816001600160a01b0316815250505b6001016130d2565b5050505092915050565b8151600090815b818110156131b357836001600160a01b031685828151811061318a5761318a615b85565b60200260200101516001600160a01b0316036131ab57600192505050610789565b600101613166565b506000949350505050565b81516060906131ce816001615994565b6001600160401b038111156131e5576131e5615494565b60405190808252806020026020018201604052801561320e578160200160208202803683370190505b50915060005b818110156132685784818151811061322e5761322e615b85565b602002602001015183828151811061324857613248615b85565b6001600160a01b0390921660209283029190910190910152600101613214565b508282828151811061327c5761327c615b85565b60200260200101906001600160a01b031690816001600160a01b0316815250505092915050565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038311156132d0575060009050600361337d565b8460ff16601b141580156132e857508460ff16601c14155b156132f9575060009050600461337d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561334d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166133765760006001925092505061337d565b9150600090505b94509492505050565b600081600481111561339a5761339a615bd4565b036133a25750565b60018160048111156133b6576133b6615bd4565b036133fe5760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b60448201526064016107c4565b600281600481111561341257613412615bd4565b0361345f5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016107c4565b600381600481111561347357613473615bd4565b036134cb5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016107c4565b60048160048111156134df576134df615bd4565b03612cc45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b60648201526084016107c4565b6000808260000361355b576040516325daaec360e01b815260040160405180910390fd5b6040840151602085015161356f90856159d6565b6135799190615aea565b604085015185519193509061358e90856159d6565b6135989190615aea565b9050811580156135a6575080155b156135c457604051631997ea8d60e31b815260040160405180910390fd5b60408401516135d39084613ca9565b604085015283516135e49082613ca9565b845260208401516135f59083613ca9565b602090940193909352929050565b6000600382111561365e575080600061361d600283615b4f565b613628906001615994565b90505b818110156125b0579050806002816136438186615b4f565b61364d9190615994565b6136579190615b4f565b905061362b565b8115613668575060015b919050565b6000808213611eb45761367f82615bea565b610789565b6000670de0b6b3a76400006136998484615b38565b612ca49190615b4f565b6000806136b08784613ca9565b905060006136c86136c1888a615b18565b8390613cf0565b9050670d529ae9e86000008113156136ff5780670d529ae9e8600000604051637e34684f60e11b81526004016107c4929190615420565b600061370a82613d1f565b9050856137178289613cf0565b6137219190615b18565b9350670de0b6b3a764000084121561374f5760405163329e322960e21b8152600481018590526024016107c4565b50505095945050505050565b600080821361379c5760405162461bcd60e51b815260206004820152600d60248201526c6f7574206f6620626f756e647360981b60448201526064016107c4565b670c7d713b49da0000821380156137ba5750670f43fc2c04ee000082125b156137e557670de0b6b3a76400006137d183613d72565b816137de576137de615ad4565b0592915050565b61078982613e91565b611f568383613af1565b611f568383613b71565b60606129d98484600085614234565b61383c6040518060800160405280600081526020016000815260200160008152602001600081525090565b60a084015182106138605760405163b2094b5960e01b815260040160405180910390fd5b6000828560a001516138729190615775565b905061387e85826129e1565b825260208501516138909085906129a2565b6020830152845115806138a557506020820151155b156138cc578451602083015160405163b1c4aefb60e01b81526107c4929190600401615420565b6138ea85600001518661010001518460200151856000015185614365565b604083015260c08501516138fe90826143e6565b6060830152509392505050565b60008060008061392e8860000151886020015189600001518a60400151896136a3565b9050600061394461393f8784613cf0565b612cab565b606089015190915060008713156139b35760006139618483613cf0565b9050670de0b6b3a764000081121561398f5760405163329e322960e21b8152600481018290526024016107c4565b6139ab6139a483670de0b6b3a7640000615ab4565b849061441f565b9150506139e0565b6139dd816139c981670de0b6b3a7640000615ab4565b6139d390856159d6565b61393f9190615aea565b90505b600060646139f18c60e00151612265565b6139fb90846159d6565b613a059190615aea565b90506000613a138385615ab4565b905060008112613a2c57613a278a8261443d565b613a36565b613a368a8261446a565b9750613a428a8461443d565b9650613a4e8a8361443d565b955050505050509450945094915050565b6000818860a00151613a719190615775565b8851909150613a809086613ca9565b8852613a9a613a8f8486615b18565b60208a015190613ca9565b602089018190528851613abf91613ab29089906129a2565b895160408b015185612a3d565b6101008901819052600003613ae757604051635534d70f60e11b815260040160405180910390fd5b5050505050505050565b600080613afc614497565b915091508151600003613b0f5750505050565b6001600160a01b03841615801590613b3057506001600160a01b0384163014155b15613b4057613b40848383614733565b6001600160a01b03831615801590613b6157506001600160a01b0383163014155b15611fcf57611fcf838383614733565b6001600160a01b03821615801590613b9257506001600160a01b0382163014155b15613ba057613ba08261497d565b6001600160a01b03811615801590613bc157506001600160a01b0381163014155b15611d0057611d008161497d565b60006001600160801b03821115611eb457600080fd5b80600003613bf257505050565b6001600160a01b038316613c95576000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114613c4d576040519150601f19603f3d011682016040523d82523d6000602084013e613c52565b606091505b5050905080611fcf5760405162461bcd60e51b815260206004820152600f60248201526e195d1a081cd95b990819985a5b1959608a1b60448201526064016107c4565b611f566001600160a01b0384168383611f04565b600081831215613ce65760405162461bcd60e51b81526020600482015260086024820152676e6567617469766560c01b60448201526064016107c4565b612ca48284615ab4565b600080613d05670de0b6b3a7640000856159d6565b9050828181613d1657613d16615ad4565b05949350505050565b6000670de0b6b3a76400008203613d495760405163a9c8b14d60e01b815260040160405180910390fd5b6000613d67613d6084670de0b6b3a7640000615ab4565b8490613cf0565b9050612ca48161375b565b670de0b6b3a7640000026000806a0c097ce7bc90715b34b9f160241b808401906ec097ce7bc90715b34b9f0fffffffff1985010281613db357613db3615ad4565b05905060006a0c097ce7bc90715b34b9f160241b82800205905081806a0c097ce7bc90715b34b9f160241b81840205915060038205016a0c097ce7bc90715b34b9f160241b82840205915060058205016a0c097ce7bc90715b34b9f160241b82840205915060078205016a0c097ce7bc90715b34b9f160241b82840205915060098205016a0c097ce7bc90715b34b9f160241b828402059150600b8205016a0c097ce7bc90715b34b9f160241b828402059150600d8205016a0c097ce7bc90715b34b9f160241b828402059150600f82050160020295945050505050565b6000670de0b6b3a7640000821215613ed257613ec9826a0c097ce7bc90715b34b9f160241b81613ec357613ec3615ad4565b05613e91565b60000392915050565b6000775803bcc5cb9634ba4cfb2213f784019318ed4dcb6017880f60361b8312613f1d5772195e54c5dd42177f53a27172fa9ec63026282760241b830592506806f05b59d3b2000000015b6f8bcc0026baae9e45e470190267a230cf60191b8312613f54576b1425982cf597cd205cef7380830592506803782dace9d9000000015b606492830292026e01855144814a7ff805980ff00840008312613f9c576e01855144814a7ff805980ff008400068056bc75e2d63100000840205925068ad78ebc5ac62000000015b6b02df0ab5a80a22c61ab5a7008312613fd7576b02df0ab5a80a22c61ab5a70068056bc75e2d6310000084020592506856bc75e2d631000000015b693f1fce3da636ea5cf850831261400e57693f1fce3da636ea5cf85068056bc75e2d631000008402059250682b5e3af16b18800000015b690127fa27722cc06cc5e2831261404557690127fa27722cc06cc5e268056bc75e2d6310000084020592506815af1d78b58c400000015b68280e60114edb805d03831261407a5768280e60114edb805d0368056bc75e2d631000008402059250680ad78ebc5ac6200000015b680ebc5fb4174612111083126140a557680ebc5fb4174612111068056bc75e2d631000009384020592015b6808f00f760a4b2db55d83126140da576808f00f760a4b2db55d68056bc75e2d6310000084020592506802b5e3af16b1880000015b6806f5f1775788937937831261410f576806f5f177578893793768056bc75e2d63100000840205925068015af1d78b58c40000015b6806248f33704b2866038312614143576806248f33704b28660368056bc75e2d63100000840205925067ad78ebc5ac620000015b6805c548670b9510e7ac8312614177576805c548670b9510e7ac68056bc75e2d6310000084020592506756bc75e2d6310000015b600068056bc75e2d63100000840168056bc75e2d6310000080860302816141a0576141a0615ad4565b059050600068056bc75e2d63100000828002059050818068056bc75e2d63100000818402059150600382050168056bc75e2d63100000828402059150600582050168056bc75e2d63100000828402059150600782050168056bc75e2d63100000828402059150600982050168056bc75e2d63100000828402059150600b820501600202606485820105979650505050505050565b6060824710156142955760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016107c4565b6001600160a01b0385163b6142ec5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016107c4565b600080866001600160a01b031685876040516143089190615c06565b60006040518083038185875af1925050503d8060008114614345576040519150601f19603f3d011682016040523d82523d6000602084013e61434a565b606091505b509150915061435a828286614a2a565b979650505050505050565b60008061437286846143e6565b9050670de0b6b3a76400008112156143a05760405163329e322960e21b8152600481018290526024016107c4565b60006143b66143af878a615b18565b8990613cf0565b905060006143c382613d1f565b90506143cf8187613cf0565b6143d99084615ab4565b9998505050505050505050565b6000806143f86201518061016d615b38565b6144028486615b38565b61440c9190615b4f565b90506129d961441a82612265565b614a63565b60008061442c83856159d6565b9050670de0b6b3a764000081613d16565b6000806000831261444f576001614453565b6000195b90506129cf611390856144658661366d565b614e71565b6000806000831261447c576001614480565b6000195b90506129cf611390856144928661366d565b614e86565b6060806144a26123fd565b915081516001600160401b038111156144bd576144bd615494565b6040519080825280602002602001820160405280156144e6578160200160208202803683370190505b50905081516000036144f6579091565b43600754146146ab5743600755600061450e60095490565b9050614518614eb2565b60005b83518110156146a857600084828151811061453857614538615b85565b6020908102919091018101516001600160a01b0381166000908152600890925260408220548751919350600160801b90046001600160801b0316906145969088908690811061458957614589615b85565b6020026020010151615028565b6145a09190615775565b6001600160a01b0383166000908152600860205260408120549192506001600160801b03909116908190036145d3575060015b84156145f0576145e382866150ad565b6145ed9082615994565b90505b6145f981613bcf565b6001600160a01b038416600090815260086020526040902080546001600160801b0319166001600160801b039290921691909117905561463882613bcf565b6001600160a01b03841660009081526008602052604090208054601090614670908490600160801b90046001600160801b0316615c22565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550505050806146a190615bbb565b905061451b565b50505b60005b825181101561472e57600860008483815181106146cd576146cd615b85565b6020908102919091018101516001600160a01b031682528101919091526040016000205482516001600160801b039091169083908390811061471157614711615b85565b60209081029190910101528061472681615bbb565b9150506146ae565b509091565b6001600160a01b0383161580159061475457506001600160a01b0383163014155b61476057614760615c42565b6001600160a01b0383166000908152600a6020526040812054905b835181101561497657600084828151811061479857614798615b85565b6020026020010151905060008483815181106147b6576147b6615b85565b6020908102919091018101516001600160a01b038085166000908152600684526040808220928c168252919093528220549092506001600160801b031690819003614811576148056001613bcf565b6001600160801b031690505b81810361482057505050614966565b600061482c8284615775565b9050600061483a87836150dc565b6001600160a01b038681166000908152600660209081526040808320938f1683529290529081205491925090614881908390600160801b90046001600160801b0316615994565b9050604051806040016040528061489787613bcf565b6001600160801b031681526020016148ae83613bcf565b6001600160801b031681525060066000886001600160a01b03166001600160a01b0316815260200190815260200160002060008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b031602179055509050505050505050505b61496f81615bbb565b905061477b565b5050505050565b6001600160a01b0381161580159061499e57506001600160a01b0381163014155b6149aa576149aa615c42565b60006149b5826150fa565b905060006149c38383615105565b905060006149d1828461521e565b6001600160a01b0385166000908152600a602052604090205460095491925082916149fc9190615775565b614a069190615994565b6009556001600160a01b039093166000908152600a60205260409020929092555050565b60608315614a39575081612ca4565b825115614a495782518084602001fd5b8160405162461bcd60e51b81526004016107c49190615262565b6000680238fd42c5cf03ffff198212158015614a88575068070c1cc73b00c800008213155b614ac75760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a5908195e1c1bdb995b9d60821b60448201526064016107c4565b6000821215614af857614adc82600003614a63565b6a0c097ce7bc90715b34b9f160241b816137de576137de615ad4565b60006806f05b59d3b20000008312614b3657506806f05b59d3b1ffffff199091019072195e54c5dd42177f53a27172fa9ec63026282760241b614b6c565b6803782dace9d90000008312614b6857506803782dace9d8ffffff19909101906b1425982cf597cd205cef7380614b6c565b5060015b6064929092029168056bc75e2d6310000068ad78ebc5ac620000008412614bbc5768ad78ebc5ac61ffffff199093019268056bc75e2d631000006e01855144814a7ff805980ff008400082020590505b6856bc75e2d6310000008412614bf8576856bc75e2d630ffffff199093019268056bc75e2d631000006b02df0ab5a80a22c61ab5a70082020590505b682b5e3af16b188000008412614c3257682b5e3af16b187fffff199093019268056bc75e2d63100000693f1fce3da636ea5cf85082020590505b6815af1d78b58c4000008412614c6c576815af1d78b58c3fffff199093019268056bc75e2d63100000690127fa27722cc06cc5e282020590505b680ad78ebc5ac62000008412614ca557680ad78ebc5ac61fffff199093019268056bc75e2d6310000068280e60114edb805d0382020590505b68056bc75e2d631000008412614cde5768056bc75e2d630fffff199093019268056bc75e2d63100000680ebc5fb4174612111082020590505b6802b5e3af16b18800008412614d17576802b5e3af16b187ffff199093019268056bc75e2d631000006808f00f760a4b2db55d82020590505b68015af1d78b58c400008412614d505768015af1d78b58c3ffff199093019268056bc75e2d631000006806f5f177578893793782020590505b68056bc75e2d631000008481019085906002908280020505918201919050600368056bc75e2d631000008783020505918201919050600468056bc75e2d631000008783020505918201919050600568056bc75e2d631000008783020505918201919050600668056bc75e2d631000008783020505918201919050600768056bc75e2d631000008783020505918201919050600868056bc75e2d631000008783020505918201919050600968056bc75e2d631000008783020505918201919050600a68056bc75e2d631000008783020505918201919050600b68056bc75e2d631000008783020505918201919050600c68056bc75e2d631000008783020505918201919050606468056bc75e2d63100000848402058502059695505050505050565b600082613699670de0b6b3a764000084615b38565b600082600181614e9e670de0b6b3a764000086615b38565b614ea89190615994565b6136999190615775565b604051633bd73ee360e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063ef5cfb8c90614efe90309060040161561f565b6000604051808303816000875af1158015614f1d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052614f459190810190615c58565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f0fc4ec16040518163ffffffff1660e01b8152600401600060405180830381600087803b158015614fa157600080fd5b505af1158015614fb5573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166358f3d1636040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561501457600080fd5b505af1158015611fcf573d6000803e3d6000fd5b60006001600160a01b038216156150a6576040516370a0823160e01b81526001600160a01b038316906370a082319061506590309060040161561f565b602060405180830381865afa158015615082573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061367f9190615954565b4792915050565b6000806150c2670de0b6b3a764000085615b38565b90508281816150d3576150d3615ad4565b04949350505050565b6000806150e98385615b38565b9050670de0b6b3a7640000816150d3565b6000610789826112f9565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e268b3a4866040518263ffffffff1660e01b8152600401615156919061561f565b60408051808303816000875af1158015615174573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906151989190615cf4565b6001600160801b039182169350169050600060646151b7602887615b38565b6151c19190615b4f565b905082156152155760646151d6602882615775565b84846151e0615234565b6151ea9190615b38565b6151f49190615b4f565b6151fe9190615b38565b6152089190615b4f565b6152129082615994565b90505b95945050505050565b600081831061522d5781612ca4565b5090919050565b6000610f2e610a31565b60005b83811015615259578181015183820152602001615241565b50506000910152565b602081526000825180602084015261528181604085016020870161523e565b601f01601f19169190910160400192915050565b6001600160a01b0381168114612cc457600080fd5b6000602082840312156152bc57600080fd5b8135612ca481615295565b600080604083850312156152da57600080fd5b82356152e581615295565b946020939093013593505050565b60008060006060848603121561530857600080fd5b833561531381615295565b95602085013595506040909401359392505050565b9283526020830191909152604082015260600190565b60008060006060848603121561535357600080fd5b833561535e81615295565b9250602084013561536e81615295565b929592945050506040919091013590565b60006020828403121561539157600080fd5b5035919050565b600080600080606085870312156153ae57600080fd5b84356153b981615295565b93506020850135925060408501356001600160401b03808211156153dc57600080fd5b818701915087601f8301126153f057600080fd5b8135818111156153ff57600080fd5b88602082850101111561541157600080fd5b95989497505060200194505050565b918252602082015260400190565b61ffff81168114612cc457600080fd5b60006020828403121561545057600080fd5b8135612ca48161542e565b6000806040838503121561546e57600080fd5b823561547981615295565b9150602083013561548981615295565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156154d2576154d2615494565b604052919050565b60006001600160401b038211156154f3576154f3615494565b5060051b60200190565b6000602080838503121561551057600080fd5b82356001600160401b0381111561552657600080fd5b8301601f8101851361553757600080fd5b803561554a615545826154da565b6154aa565b81815260059190911b8201830190838101908783111561556957600080fd5b928401925b8284101561435a57833563ffffffff8116811461558b5760008081fd5b8252928401929084019061556e565b6020808252825182820181905260009190848201906040850190845b818110156155db5783516001600160d81b0316835292840192918401916001016155b6565b50909695505050505050565b6020808252825182820181905260009190848201906040850190845b818110156155db57835183529284019291840191600101615603565b6001600160a01b0391909116815260200190565b6020808252825182820181905260009190848201906040850190845b818110156155db5783516001600160a01b03168352928401929184019160010161564f565b60ff81168114612cc457600080fd5b600080600080600080600060e0888a03121561569e57600080fd5b87356156a981615295565b965060208801356156b981615295565b9550604088013594506060880135935060808801356156d781615674565b9699959850939692959460a0840135945060c09093013592915050565b600181811c9082168061570857607f821691505b6020821081036125b057634e487b7160e01b600052602260045260246000fd5b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156107895761078961575f565b84815283602082015260606040820152816060820152818360808301376000818301608090810191909152601f909201601f191601019392505050565b6000602082840312156157d757600080fd5b8151612ca48161542e565b6000806000606084860312156157f757600080fd5b835161580281615295565b60208501519093506001600160501b038116811461581f57600080fd5b604085015190925061583081615674565b809150509250925092565b600060c08201888352602063ffffffff808a168286015260c0604086015282895180855260e087019150838b01945060005b8181101561588b57855184168352948401949184019160010161586d565b50506001600160601b038916606087015261ffff8881166080880152871660a0870152935061435a92505050565b600060208083850312156158cc57600080fd5b82516001600160401b038111156158e257600080fd5b8301601f810185136158f357600080fd5b8051615901615545826154da565b81815260059190911b8201830190838101908783111561592057600080fd5b928401925b8284101561435a5783516001600160d81b03811681146159455760008081fd5b82529284019290840190615925565b60006020828403121561596657600080fd5b5051919050565b6001600160f81b0381811683821601908082111561598d5761598d61575f565b5092915050565b808201808211156107895761078961575f565b600080604083850312156159ba57600080fd5b82516159c58161542e565b60208401519092506154898161542e565b80820260008212600160ff1b841416156159f2576159f261575f565b81810583148215176107895761078961575f565b60006020808385031215615a1957600080fd5b82516001600160401b03811115615a2f57600080fd5b8301601f81018513615a4057600080fd5b8051615a4e615545826154da565b81815260059190911b82018301908381019087831115615a6d57600080fd5b928401925b8284101561435a578351615a8581615295565b82529284019290840190615a72565b6001600160f81b0382811682821603908082111561598d5761598d61575f565b818103600083128015838313168383128216171561598d5761598d61575f565b634e487b7160e01b600052601260045260246000fd5b600082615af957615af9615ad4565b600160ff1b821460001984141615615b1357615b1361575f565b500590565b8082018281126000831280158216821582161715612f7257612f7261575f565b80820281158282048414176107895761078961575f565b600082615b5e57615b5e615ad4565b500490565b600060208284031215615b7557600080fd5b81518015158114612ca457600080fd5b634e487b7160e01b600052603260045260246000fd5b6001600160801b0382811682821603908082111561598d5761598d61575f565b600060018201615bcd57615bcd61575f565b5060010190565b634e487b7160e01b600052602160045260246000fd5b6000600160ff1b8201615bff57615bff61575f565b5060000390565b60008251615c1881846020870161523e565b9190910192915050565b6001600160801b0381811683821601908082111561598d5761598d61575f565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215615c6b57600080fd5b82516001600160401b03811115615c8157600080fd5b8301601f81018513615c9257600080fd5b8051615ca0615545826154da565b81815260059190911b82018301908381019087831115615cbf57600080fd5b928401925b8284101561435a57835182529284019290840190615cc4565b80516001600160801b038116811461366857600080fd5b60008060408385031215615d0757600080fd5b615d1083615cdd565b9150615d1e60208401615cdd565b9050925092905056fe829000a5bc6a12d46e30cdcecd7c56b1efd88f6d7d059da6734a04f3764557c4ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122014ff80f93b6af6136392877ae3a5fb6c994932db607a527549d2d0603d60b1c864736f6c63430008110033";
1193
+
1194
+ type PendleMarketV2ConstructorParams =
1195
+ | [linkLibraryAddresses: PendleMarketV2LibraryAddresses, signer?: Signer]
1196
+ | ConstructorParameters<typeof ContractFactory>;
1197
+
1198
+ const isSuperArgs = (
1199
+ xs: PendleMarketV2ConstructorParams
1200
+ ): xs is ConstructorParameters<typeof ContractFactory> => {
1201
+ return (
1202
+ typeof xs[0] === "string" ||
1203
+ (Array.isArray as (arg: any) => arg is readonly any[])(xs[0]) ||
1204
+ "_isInterface" in xs[0]
1205
+ );
1206
+ };
1207
+
1208
+ export class PendleMarketV2__factory extends ContractFactory {
1209
+ constructor(...args: PendleMarketV2ConstructorParams) {
1210
+ if (isSuperArgs(args)) {
1211
+ super(...args);
1212
+ } else {
1213
+ const [linkLibraryAddresses, signer] = args;
1214
+ super(
1215
+ _abi,
1216
+ PendleMarketV2__factory.linkBytecode(linkLibraryAddresses),
1217
+ signer
1218
+ );
1219
+ }
1220
+ this.contractName = "PendleMarketV2";
1221
+ }
1222
+
1223
+ static linkBytecode(
1224
+ linkLibraryAddresses: PendleMarketV2LibraryAddresses
1225
+ ): string {
1226
+ let linkedBytecode = _bytecode;
1227
+
1228
+ linkedBytecode = linkedBytecode.replace(
1229
+ new RegExp("__\\$048ed23d805a6069d4ffa97e047467fd4a\\$__", "g"),
1230
+ linkLibraryAddresses["contracts/core/Market/OracleLib.sol:OracleLib"]
1231
+ .replace(/^0x/, "")
1232
+ .toLowerCase()
1233
+ );
1234
+
1235
+ return linkedBytecode;
1236
+ }
1237
+
1238
+ deploy(
1239
+ _PT: string,
1240
+ _scalarRoot: BigNumberish,
1241
+ _initialAnchor: BigNumberish,
1242
+ _vePendle: string,
1243
+ _gaugeController: string,
1244
+ _externalRewardDistributor: string,
1245
+ overrides?: Overrides & { from?: string | Promise<string> }
1246
+ ): Promise<PendleMarketV2> {
1247
+ return super.deploy(
1248
+ _PT,
1249
+ _scalarRoot,
1250
+ _initialAnchor,
1251
+ _vePendle,
1252
+ _gaugeController,
1253
+ _externalRewardDistributor,
1254
+ overrides || {}
1255
+ ) as Promise<PendleMarketV2>;
1256
+ }
1257
+ getDeployTransaction(
1258
+ _PT: string,
1259
+ _scalarRoot: BigNumberish,
1260
+ _initialAnchor: BigNumberish,
1261
+ _vePendle: string,
1262
+ _gaugeController: string,
1263
+ _externalRewardDistributor: string,
1264
+ overrides?: Overrides & { from?: string | Promise<string> }
1265
+ ): TransactionRequest {
1266
+ return super.getDeployTransaction(
1267
+ _PT,
1268
+ _scalarRoot,
1269
+ _initialAnchor,
1270
+ _vePendle,
1271
+ _gaugeController,
1272
+ _externalRewardDistributor,
1273
+ overrides || {}
1274
+ );
1275
+ }
1276
+ attach(address: string): PendleMarketV2 {
1277
+ return super.attach(address) as PendleMarketV2;
1278
+ }
1279
+ connect(signer: Signer): PendleMarketV2__factory {
1280
+ return super.connect(signer) as PendleMarketV2__factory;
1281
+ }
1282
+ static readonly contractName: "PendleMarketV2";
1283
+ public readonly contractName: "PendleMarketV2";
1284
+ static readonly bytecode = _bytecode;
1285
+ static readonly abi = _abi;
1286
+ static createInterface(): PendleMarketV2Interface {
1287
+ return new utils.Interface(_abi) as PendleMarketV2Interface;
1288
+ }
1289
+ static connect(
1290
+ address: string,
1291
+ signerOrProvider: Signer | Provider
1292
+ ): PendleMarketV2 {
1293
+ return new Contract(address, _abi, signerOrProvider) as PendleMarketV2;
1294
+ }
1295
+ }
1296
+
1297
+ export interface PendleMarketV2LibraryAddresses {
1298
+ ["contracts/core/Market/OracleLib.sol:OracleLib"]: string;
1299
+ }