@pendle/core-v2 2.17.7-tradingbot → 2.18.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 (216) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  6. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  10. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  12. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  13. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  14. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  15. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  16. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  19. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  20. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  21. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  22. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  23. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  24. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  25. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  26. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  27. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  28. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  29. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  30. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  31. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  32. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  33. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
  36. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/TradingBot/BotActionCallback.sol/BotActionCallback.dbg.json +1 -1
  67. package/build/artifacts/contracts/core/TradingBot/BotActionCallback.sol/BotActionCallback.json +32 -17
  68. package/build/artifacts/contracts/core/TradingBot/BotActionHelper.sol/BotActionHelper.dbg.json +1 -1
  69. package/build/artifacts/contracts/core/TradingBot/BotActionHelper.sol/BotActionHelper.json +32 -17
  70. package/build/artifacts/contracts/core/TradingBot/BotSimulationLib.sol/BotSimulationLib.dbg.json +1 -1
  71. package/build/artifacts/contracts/core/TradingBot/BotSimulationLib.sol/BotSimulationLib.json +2 -2
  72. package/build/artifacts/contracts/core/TradingBot/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.dbg.json +4 -0
  73. package/build/artifacts/contracts/core/TradingBot/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.json +1190 -0
  74. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.dbg.json +1 -1
  75. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.json +301 -397
  76. package/build/artifacts/contracts/core/TradingBot/MarketExtLib.sol/MarketExtLib.dbg.json +1 -1
  77. package/build/artifacts/contracts/core/TradingBot/SpecSegmentLib.sol/SpecSegmentLib.dbg.json +4 -0
  78. package/build/artifacts/contracts/core/TradingBot/SpecSegmentLib.sol/SpecSegmentLib.json +10 -0
  79. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.json +32 -17
  81. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  83. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  85. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  87. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  89. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  90. package/build/artifacts/contracts/core/libraries/TokenAmountLib.sol/TokenAmountLib.dbg.json +1 -1
  91. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  92. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  93. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
  94. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  95. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
  96. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
  97. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
  98. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  99. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  100. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  101. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  102. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  103. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  104. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  105. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  106. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  107. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  108. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  109. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  110. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  111. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  112. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  113. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  114. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  115. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  116. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  117. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.dbg.json +1 -1
  118. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.json +542 -581
  119. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.dbg.json +1 -1
  120. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.json +256 -325
  121. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.dbg.json +1 -1
  122. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.json +6 -17
  123. package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  124. package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  125. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  126. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  127. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
  128. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  129. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  130. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  131. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  132. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  133. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  134. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  135. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  136. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  137. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
  138. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
  139. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +1 -1
  140. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
  141. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
  142. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  143. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  144. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  145. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  146. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  147. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
  148. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  149. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  150. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  151. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  152. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  153. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  154. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
  155. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
  156. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IHashflow.sol/IHashflow.dbg.json +1 -1
  157. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
  158. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +1 -1
  159. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
  160. package/contracts/core/TradingBot/BotActionCallback.sol +1 -1
  161. package/contracts/core/TradingBot/BotActionHelper.sol +1 -3
  162. package/contracts/core/TradingBot/BotSimulationLib.sol +2 -1
  163. package/contracts/core/TradingBot/LongYieldDecisionHelper.sol +413 -0
  164. package/contracts/core/TradingBot/LongYieldTradingBot.sol +63 -91
  165. package/contracts/core/TradingBot/SpecSegmentLib.sol +62 -0
  166. package/contracts/core/TradingBot/TradingBotBase.sol +14 -9
  167. package/contracts/interfaces/TradingBot/IBotDecisionHelper.sol +41 -57
  168. package/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol +24 -34
  169. package/contracts/interfaces/TradingBot/ITradingBotBase.sol +1 -3
  170. package/package.json +1 -1
  171. package/typechain-types/BotActionCallback.ts +40 -22
  172. package/typechain-types/BotActionHelper.ts +40 -22
  173. package/typechain-types/BotDecisionHelper.ts +221 -187
  174. package/typechain-types/IAnkrBNB.ts +150 -0
  175. package/typechain-types/IAnkrLiquidStaking.ts +253 -0
  176. package/typechain-types/IBotDecisionHelper.ts +142 -212
  177. package/typechain-types/ILongYieldTradingBot.ts +147 -230
  178. package/typechain-types/ISwETH.ts +123 -0
  179. package/typechain-types/ITradingBotBase.ts +14 -22
  180. package/typechain-types/LongYieldDecisionHelper.ts +598 -0
  181. package/typechain-types/LongYieldTradingBot.ts +191 -248
  182. package/typechain-types/PendleAnkrBNBSY.ts +1235 -0
  183. package/typechain-types/PendleAuraWstethAnkreth.ts +1511 -0
  184. package/typechain-types/PendleSwETH.ts +1216 -0
  185. package/typechain-types/PendleThenaSY.ts +153 -0
  186. package/typechain-types/PendleWbEthSY.ts +1229 -0
  187. package/typechain-types/ThenaLpHelper.ts +19 -0
  188. package/typechain-types/ThenaMath.ts +87 -0
  189. package/typechain-types/ThenaPreview.ts +19 -0
  190. package/typechain-types/TradingBotBase.ts +40 -22
  191. package/typechain-types/factories/BotActionCallback__factory.ts +31 -16
  192. package/typechain-types/factories/BotActionHelper__factory.ts +31 -16
  193. package/typechain-types/factories/BotDecisionHelper__factory.ts +490 -421
  194. package/typechain-types/factories/IAnkrBNB__factory.ts +74 -0
  195. package/typechain-types/factories/IAnkrLiquidStaking__factory.ts +123 -0
  196. package/typechain-types/factories/IBotDecisionHelper__factory.ts +540 -579
  197. package/typechain-types/factories/ILongYieldTradingBot__factory.ts +255 -324
  198. package/typechain-types/factories/ISwETH__factory.ts +53 -0
  199. package/typechain-types/factories/ITradingBotBase__factory.ts +6 -17
  200. package/typechain-types/factories/LongYieldDecisionHelper__factory.ts +1247 -0
  201. package/typechain-types/factories/LongYieldTradingBot__factory.ts +301 -393
  202. package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1100 -0
  203. package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1244 -0
  204. package/typechain-types/factories/PendleSwETH__factory.ts +1022 -0
  205. package/typechain-types/factories/PendleThenaSY__factory.ts +85 -1
  206. package/typechain-types/factories/PendleWbEthSY__factory.ts +1049 -0
  207. package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
  208. package/typechain-types/factories/ThenaLpHelper__factory.ts +13 -0
  209. package/typechain-types/factories/ThenaMath__factory.ts +36 -0
  210. package/typechain-types/factories/ThenaPreview__factory.ts +14 -1
  211. package/typechain-types/factories/TradingBotBase__factory.ts +31 -16
  212. package/typechain-types/hardhat.d.ts +4 -40
  213. package/typechain-types/index.ts +2 -10
  214. package/build/artifacts/contracts/core/TradingBot/BotDecisionHelper.sol/BotDecisionHelper.dbg.json +0 -4
  215. package/build/artifacts/contracts/core/TradingBot/BotDecisionHelper.sol/BotDecisionHelper.json +0 -1070
  216. package/contracts/core/TradingBot/BotDecisionHelper.sol +0 -306
@@ -12,16 +12,20 @@ abstract contract TradingBotBase is BoringOwnableUpgradeable, TokenHelper, ITrad
12
12
  using PYIndexLib for IPYieldToken;
13
13
 
14
14
  address public immutable market;
15
+ address public immutable router;
15
16
  address public immutable SY;
16
17
  address public immutable PT;
17
18
  address public immutable YT;
18
19
  address public immutable PENDLE;
19
20
 
20
- constructor(address _market, address _PENDLE) initializer {
21
+ uint256 public buyBins;
22
+
23
+ constructor(address _market, address _router, address _PENDLE) initializer {
21
24
  (IStandardizedYield _SY, IPPrincipalToken _PT, IPYieldToken _YT) = IPMarket(_market)
22
25
  .readTokens();
23
26
 
24
27
  market = _market;
28
+ router = _router;
25
29
  SY = address(_SY);
26
30
  PT = address(_PT);
27
31
  YT = address(_YT);
@@ -52,12 +56,11 @@ abstract contract TradingBotBase is BoringOwnableUpgradeable, TokenHelper, ITrad
52
56
 
53
57
  /// @dev Receives token and compound to SY
54
58
  function depositToken(
55
- address router,
56
59
  TokenInput calldata inp,
57
60
  uint256 minSyOut
58
61
  ) external payable onlyOwner {
59
62
  _transferIn(inp.tokenIn, msg.sender, inp.netTokenIn);
60
- _compoundSingle(router, inp, minSyOut);
63
+ _compoundSingle(inp, minSyOut);
61
64
  emit DepositToken(inp.tokenIn, inp.netTokenIn);
62
65
  }
63
66
 
@@ -68,13 +71,12 @@ abstract contract TradingBotBase is BoringOwnableUpgradeable, TokenHelper, ITrad
68
71
  }
69
72
 
70
73
  function claimAndCompound(
71
- address router,
72
74
  TokenInput[] calldata inps,
73
75
  uint256 minSyOut
74
76
  ) external onlyOwner returns (uint256 netSyOut, uint256 netPendleOut) {
75
77
  _claimRewards();
76
78
 
77
- netSyOut = _compound(router, inps, minSyOut);
79
+ netSyOut = _compound(inps, minSyOut);
78
80
 
79
81
  netPendleOut = _selfBalance(PENDLE);
80
82
  _transferOut(PENDLE, owner, netPendleOut);
@@ -101,7 +103,7 @@ abstract contract TradingBotBase is BoringOwnableUpgradeable, TokenHelper, ITrad
101
103
  rewards = rewards.add(lpRewardTokens, lpRewardAmounts);
102
104
  }
103
105
 
104
- function readMarketExtState(address router) public returns (MarketExtState memory marketExt) {
106
+ function readMarketExtState() public returns (MarketExtState memory marketExt) {
105
107
  marketExt.state = IPMarket(market).readState(router);
106
108
  marketExt.index = IPYieldToken(YT).newIndex();
107
109
  marketExt.blockTime = block.timestamp;
@@ -111,10 +113,15 @@ abstract contract TradingBotBase is BoringOwnableUpgradeable, TokenHelper, ITrad
111
113
  botState.lpBalance = _selfBalance(market);
112
114
  botState.syBalance = _selfBalance(SY);
113
115
  botState.ytBalance = _selfBalance(YT);
116
+ botState.buyBins = buyBins;
114
117
  }
115
118
 
116
119
  receive() external payable {}
117
120
 
121
+ function _setBuyBins(uint256 _buyBins) internal {
122
+ buyBins = _buyBins;
123
+ }
124
+
118
125
  function _claimRewards() internal {
119
126
  IPYieldToken(YT).redeemDueInterestAndRewards(address(this), true, true);
120
127
  IStandardizedYield(SY).claimRewards(address(this));
@@ -122,14 +129,13 @@ abstract contract TradingBotBase is BoringOwnableUpgradeable, TokenHelper, ITrad
122
129
  }
123
130
 
124
131
  function _compound(
125
- address router,
126
132
  TokenInput[] calldata inps,
127
133
  uint256 minSyOut
128
134
  ) internal returns (uint256 netSyOut) {
129
135
  netSyOut = 0;
130
136
 
131
137
  for (uint256 i = 0; i < inps.length; ++i) {
132
- netSyOut += _compoundSingle(router, inps[i], 0);
138
+ netSyOut += _compoundSingle(inps[i], 0);
133
139
  }
134
140
 
135
141
  if (netSyOut < minSyOut) revert Errors.BotInsufficientSyOut(netSyOut, minSyOut);
@@ -137,7 +143,6 @@ abstract contract TradingBotBase is BoringOwnableUpgradeable, TokenHelper, ITrad
137
143
  }
138
144
 
139
145
  function _compoundSingle(
140
- address router,
141
146
  TokenInput memory inp,
142
147
  uint256 minSyOut
143
148
  ) internal returns (uint256 /*netSyOut*/) {
@@ -4,88 +4,72 @@ pragma solidity 0.8.17;
4
4
  import "../../core/TradingBot/BotSimulationLib.sol";
5
5
 
6
6
  struct LongTradingSpecs {
7
- uint256 lowerIyLimit; // apeYtApy
8
- uint256 upperIyLimit; // sellYtApy
9
- uint256 floatingSyRatioLimit; // h_r
10
- uint256 floatingSyRatioTarget; // l_r
11
- uint256 ytPtRatioLimit; // h_x
12
- uint256 ytPtRatioTarget; // l_x
7
+ uint256 buyYtIy;
8
+ uint256 sellYtIy;
9
+ uint256 targetSyRatio;
10
+ uint256 maxSyRatio;
11
+ uint256 minYtPtRatio;
12
+ uint256 numOfBins;
13
13
  }
14
14
 
15
15
  enum ActionType {
16
- SwapSyToYt, // Buy YT with SY
17
- AddLiqKeepYt, // ZPI Zap
18
- AddLiqFromSy, // Single sided LP
16
+ NONE,
19
17
  AddLiqFromYt, // Sell YT for LP
20
- RemoveLiqToYt, // Zap out to YT,
21
- NONE
18
+ RemoveLiqToYt // Zap out to YT,
22
19
  }
23
20
 
24
- enum StrategyFlag {
25
- GOOD,
26
- TOO_LOW,
27
- TOO_HIGH
28
- }
29
-
30
- struct StrategyState {
31
- StrategyFlag iyFlag;
32
- StrategyFlag syRatioFlag;
21
+ struct StrategyData {
22
+ BotState botState;
23
+ MarketExtState marketExt;
24
+ LongTradingSpecs specs;
33
25
  }
34
26
 
35
27
  interface IBotDecisionHelper {
36
28
  enum RebalanceResult {
37
- FAIL,
38
- TARGET_REACHED,
39
- TARGET_NOT_REACHED
29
+ TARGET_NOT_REACHED,
30
+ SUCCESS,
31
+ FAIL_OR_TARGET_EXCEED
40
32
  }
41
33
 
42
34
  struct RebalanceDetails {
43
- BotState bot;
44
- MarketExtState marketExt;
45
- LongTradingSpecs specs;
35
+ StrategyData strategyData;
46
36
  ActionType action;
37
+ uint256 targetIy;
47
38
  }
48
39
 
49
- function searchForBotParam(
50
- BotState memory bot,
51
- MarketExtState memory marketExt,
52
- LongTradingSpecs memory specs,
53
- ActionType action,
54
- ApproxParams memory botParams,
55
- ApproxParams memory intParams
56
- ) external pure returns (uint256, RebalanceResult);
57
-
58
- function searchForIntParam(
59
- MarketExtState memory marketExt,
60
- ActionType action,
61
- uint256 botParam,
62
- ApproxParams memory intParams
63
- ) external pure returns (uint256);
64
-
65
- function strategyState(
66
- BotState memory bot,
67
- MarketExtState memory marketExt,
68
- LongTradingSpecs memory specs
69
- ) external pure returns (StrategyState memory);
40
+ struct ActionToTakeResult {
41
+ ActionType action;
42
+ int currentBin;
43
+ uint256 targetIy;
44
+ uint256 guessBotParams;
45
+ uint256 guessIntParams;
46
+ uint256 amountOut;
47
+ }
70
48
 
71
- function actionToTake(
72
- BotState memory botState,
73
- StrategyState memory currentState
74
- ) external pure returns (ActionType);
49
+ function getCurrentBin(StrategyData memory strategyData) external view returns (int256);
75
50
 
76
51
  function previewAction(
77
- BotState memory botData,
78
- MarketExtState memory marketExtData,
52
+ StrategyData memory strategyData,
79
53
  ActionType action,
80
54
  uint256 botParam,
81
55
  ApproxParams memory swapApproxParams
82
- ) external pure returns (bool, BotState memory, MarketExtState memory);
56
+ ) external view returns (bool, BotState memory, MarketExtState memory);
83
57
 
84
58
  function botExtStats(
85
- BotState memory bot,
86
- MarketExtState memory marketExt
59
+ StrategyData memory strategyData
87
60
  )
88
61
  external
89
- pure
62
+ view
90
63
  returns (uint256 tvlInSy, uint256 iy, uint256 currentSyRatio, uint256 currentYtPtRatio);
64
+
65
+ function searchForBotParam(
66
+ StrategyData memory strategyData,
67
+ ActionType action,
68
+ uint256 targetIy,
69
+ uint256 rebalanceAdditionalCheck,
70
+ ApproxParams memory botParams,
71
+ ApproxParams memory intParams
72
+ ) external view returns (uint256);
73
+
74
+ function getAvailableZpiAmount(address botAddress) external returns (uint256 amountSyToZpi);
91
75
  }
@@ -8,8 +8,6 @@ interface ILongYieldTradingBot is ITradingBotBase {
8
8
  event SwapSyToYt(ApproxParams botParams, uint256 maxSyIn, uint256 exactYtOut, uint256 netSyIn);
9
9
 
10
10
  event AddLiqKeepYt(
11
- ApproxParams botParams,
12
- uint256 maxSyIn,
13
11
  uint256 netSyIn,
14
12
  uint256 netLpOut,
15
13
  uint256 netYtOut
@@ -17,48 +15,40 @@ interface ILongYieldTradingBot is ITradingBotBase {
17
15
 
18
16
  event AddLiqFromSy(ApproxParams botParams, uint256 maxSyIn, uint256 netSyIn, uint256 netLpOut);
19
17
 
20
- event AddLiqFromYt(ApproxParams botParams, uint256 maxYtIn, uint256 netYtIn, uint256 netLpOut);
18
+ event AddLiqFromYt(ApproxParams botParams, uint256 netYtIn, uint256 netLpOut);
21
19
 
22
- event RemoveLiqToYt(
23
- ApproxParams botParams,
24
- uint256 maxLpRemoved,
25
- uint256 netLpIn,
26
- uint256 netYtOut
27
- );
20
+ event RemoveLiqToYt(ApproxParams botParams, uint256 netLpIn, uint256 netYtOut);
28
21
 
29
- function setSpecs(LongTradingSpecs calldata _specs) external;
22
+ struct AddLiqFromYtInput {
23
+ ApproxParams botParams;
24
+ uint256 minLpOut;
25
+ uint256 targetIy;
26
+ int256 currentBin;
27
+ }
30
28
 
31
- function swapSyToYt(
32
- address router,
33
- ApproxParams calldata botParams,
34
- uint256 minYtOut,
35
- uint256 maxSyIn
36
- ) external returns (uint256 exactYtOut, uint256 netSyIn);
29
+ struct RemoveLiqToYtInput {
30
+ ApproxParams botParams;
31
+ ApproxParams guessTotalPtToSwap;
32
+ uint256 minYtOut;
33
+ uint256 targetIy;
34
+ int256 currentBin;
35
+ }
36
+
37
+ function setSpecs(LongTradingSpecs calldata _specs) external;
37
38
 
38
39
  function addLiqKeepYt(
39
- address router,
40
- ApproxParams calldata botParams,
41
- uint256 maxSyIn,
40
+ uint256 netSyIn,
42
41
  uint256 minLpOut,
43
42
  uint256 minYtOut
44
- ) external returns (uint256 netSyIn, uint256 netLpOut, uint256 netYtOut);
45
-
46
- function addLiqFromSy(
47
- ApproxParams calldata botParams,
48
- uint256 minLpOut,
49
- uint256 maxSyIn
50
- ) external returns (uint256 netPtFromSwap, uint256 netLpOut, uint256 netSyIn);
43
+ ) external returns (uint256 netLpOut, uint256 netYtOut);
51
44
 
52
45
  function addLiqFromYt(
53
- ApproxParams calldata botParams,
54
- uint256 minLpOut,
55
- uint256 maxYtIn
46
+ AddLiqFromYtInput calldata inputParams
56
47
  ) external returns (uint256 netPtFromSwap, uint256 netLpOut, uint256 netYtIn);
57
48
 
58
49
  function removeLiqToYt(
59
- ApproxParams calldata botParams,
60
- ApproxParams calldata guessTotalPtToSwap,
61
- uint256 maxLpRemoved,
62
- uint256 minYtOut
63
- ) external returns (uint256 netLpRemoved, uint256 netYtOut, uint256 totalPtToSwap);
50
+ RemoveLiqToYtInput calldata inputParams
51
+ ) external returns (uint256 netLpRemoved, uint256 netYtOut);
52
+
53
+ function readStrategyData() external returns (StrategyData memory strategyData);
64
54
  }
@@ -24,7 +24,6 @@ interface ITradingBotBase {
24
24
  function depositSy(uint256 netSyIn) external;
25
25
 
26
26
  function depositToken(
27
- address router,
28
27
  TokenInput calldata inp,
29
28
  uint256 minSyOut
30
29
  ) external payable;
@@ -32,14 +31,13 @@ interface ITradingBotBase {
32
31
  function withdrawFunds(address token, uint256 amount) external;
33
32
 
34
33
  function claimAndCompound(
35
- address router,
36
34
  TokenInput[] calldata inps,
37
35
  uint256 minSyOut
38
36
  ) external returns (uint256 netSyOut, uint256 netPendleOut);
39
37
 
40
38
  function claimWithoutCompound() external returns (TokenAmount[] memory rewards);
41
39
 
42
- function readMarketExtState(address router) external returns (MarketExtState memory marketExt);
40
+ function readMarketExtState() external returns (MarketExtState memory marketExt);
43
41
 
44
42
  function readBotState() external view returns (BotState memory botState);
45
43
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@pendle/core-v2",
3
3
  "description": "Core smart contracts of Pendle Protocol.",
4
4
  "license": "BUSL-1.1",
5
- "version": "2.17.7-tradingbot",
5
+ "version": "2.18.0-tradingbot",
6
6
  "homepage": "https://pendle.finance",
7
7
  "keywords": [
8
8
  "pendle",
@@ -73,12 +73,19 @@ export type BotStateStruct = {
73
73
  lpBalance: BigNumberish;
74
74
  ytBalance: BigNumberish;
75
75
  syBalance: BigNumberish;
76
+ buyBins: BigNumberish;
76
77
  };
77
78
 
78
- export type BotStateStructOutput = [BigNumber, BigNumber, BigNumber] & {
79
+ export type BotStateStructOutput = [
80
+ BigNumber,
81
+ BigNumber,
82
+ BigNumber,
83
+ BigNumber
84
+ ] & {
79
85
  lpBalance: BigNumber;
80
86
  ytBalance: BigNumber;
81
87
  syBalance: BigNumber;
88
+ buyBins: BigNumber;
82
89
  };
83
90
 
84
91
  export type MarketStateStruct = {
@@ -144,16 +151,18 @@ export interface BotActionCallbackInterface extends utils.Interface {
144
151
  "SY()": FunctionFragment;
145
152
  "YT()": FunctionFragment;
146
153
  "approveInf((address[],address)[])": FunctionFragment;
147
- "claimAndCompound(address,(address,uint256,address,address,address,(uint8,address,bytes,bool))[],uint256)": FunctionFragment;
154
+ "buyBins()": FunctionFragment;
155
+ "claimAndCompound((address,uint256,address,address,address,(uint8,address,bytes,bool))[],uint256)": FunctionFragment;
148
156
  "claimOwnership()": FunctionFragment;
149
157
  "claimWithoutCompound()": FunctionFragment;
150
158
  "depositSy(uint256)": FunctionFragment;
151
- "depositToken(address,(address,uint256,address,address,address,(uint8,address,bytes,bool)),uint256)": FunctionFragment;
159
+ "depositToken((address,uint256,address,address,address,(uint8,address,bytes,bool)),uint256)": FunctionFragment;
152
160
  "market()": FunctionFragment;
153
161
  "owner()": FunctionFragment;
154
162
  "pendingOwner()": FunctionFragment;
155
163
  "readBotState()": FunctionFragment;
156
- "readMarketExtState(address)": FunctionFragment;
164
+ "readMarketExtState()": FunctionFragment;
165
+ "router()": FunctionFragment;
157
166
  "swapCallback(int256,int256,bytes)": FunctionFragment;
158
167
  "transferOwnership(address,bool,bool)": FunctionFragment;
159
168
  "withdrawFunds(address,uint256)": FunctionFragment;
@@ -167,9 +176,10 @@ export interface BotActionCallbackInterface extends utils.Interface {
167
176
  functionFragment: "approveInf",
168
177
  values: [ITradingBotBase.MultiApprovalStruct[]]
169
178
  ): string;
179
+ encodeFunctionData(functionFragment: "buyBins", values?: undefined): string;
170
180
  encodeFunctionData(
171
181
  functionFragment: "claimAndCompound",
172
- values: [string, TokenInputStruct[], BigNumberish]
182
+ values: [TokenInputStruct[], BigNumberish]
173
183
  ): string;
174
184
  encodeFunctionData(
175
185
  functionFragment: "claimOwnership",
@@ -185,7 +195,7 @@ export interface BotActionCallbackInterface extends utils.Interface {
185
195
  ): string;
186
196
  encodeFunctionData(
187
197
  functionFragment: "depositToken",
188
- values: [string, TokenInputStruct, BigNumberish]
198
+ values: [TokenInputStruct, BigNumberish]
189
199
  ): string;
190
200
  encodeFunctionData(functionFragment: "market", values?: undefined): string;
191
201
  encodeFunctionData(functionFragment: "owner", values?: undefined): string;
@@ -199,8 +209,9 @@ export interface BotActionCallbackInterface extends utils.Interface {
199
209
  ): string;
200
210
  encodeFunctionData(
201
211
  functionFragment: "readMarketExtState",
202
- values: [string]
212
+ values?: undefined
203
213
  ): string;
214
+ encodeFunctionData(functionFragment: "router", values?: undefined): string;
204
215
  encodeFunctionData(
205
216
  functionFragment: "swapCallback",
206
217
  values: [BigNumberish, BigNumberish, BytesLike]
@@ -219,6 +230,7 @@ export interface BotActionCallbackInterface extends utils.Interface {
219
230
  decodeFunctionResult(functionFragment: "SY", data: BytesLike): Result;
220
231
  decodeFunctionResult(functionFragment: "YT", data: BytesLike): Result;
221
232
  decodeFunctionResult(functionFragment: "approveInf", data: BytesLike): Result;
233
+ decodeFunctionResult(functionFragment: "buyBins", data: BytesLike): Result;
222
234
  decodeFunctionResult(
223
235
  functionFragment: "claimAndCompound",
224
236
  data: BytesLike
@@ -250,6 +262,7 @@ export interface BotActionCallbackInterface extends utils.Interface {
250
262
  functionFragment: "readMarketExtState",
251
263
  data: BytesLike
252
264
  ): Result;
265
+ decodeFunctionResult(functionFragment: "router", data: BytesLike): Result;
253
266
  decodeFunctionResult(
254
267
  functionFragment: "swapCallback",
255
268
  data: BytesLike
@@ -359,8 +372,9 @@ export interface BotActionCallback extends BaseContract {
359
372
  overrides?: Overrides & { from?: string | Promise<string> }
360
373
  ): Promise<ContractTransaction>;
361
374
 
375
+ buyBins(overrides?: CallOverrides): Promise<[BigNumber]>;
376
+
362
377
  claimAndCompound(
363
- router: string,
364
378
  inps: TokenInputStruct[],
365
379
  minSyOut: BigNumberish,
366
380
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -380,7 +394,6 @@ export interface BotActionCallback extends BaseContract {
380
394
  ): Promise<ContractTransaction>;
381
395
 
382
396
  depositToken(
383
- router: string,
384
397
  inp: TokenInputStruct,
385
398
  minSyOut: BigNumberish,
386
399
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -397,10 +410,11 @@ export interface BotActionCallback extends BaseContract {
397
410
  ): Promise<[BotStateStructOutput] & { botState: BotStateStructOutput }>;
398
411
 
399
412
  readMarketExtState(
400
- router: string,
401
413
  overrides?: Overrides & { from?: string | Promise<string> }
402
414
  ): Promise<ContractTransaction>;
403
415
 
416
+ router(overrides?: CallOverrides): Promise<[string]>;
417
+
404
418
  swapCallback(
405
419
  ptToAccount: BigNumberish,
406
420
  syToAccount: BigNumberish,
@@ -435,8 +449,9 @@ export interface BotActionCallback extends BaseContract {
435
449
  overrides?: Overrides & { from?: string | Promise<string> }
436
450
  ): Promise<ContractTransaction>;
437
451
 
452
+ buyBins(overrides?: CallOverrides): Promise<BigNumber>;
453
+
438
454
  claimAndCompound(
439
- router: string,
440
455
  inps: TokenInputStruct[],
441
456
  minSyOut: BigNumberish,
442
457
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -456,7 +471,6 @@ export interface BotActionCallback extends BaseContract {
456
471
  ): Promise<ContractTransaction>;
457
472
 
458
473
  depositToken(
459
- router: string,
460
474
  inp: TokenInputStruct,
461
475
  minSyOut: BigNumberish,
462
476
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -471,10 +485,11 @@ export interface BotActionCallback extends BaseContract {
471
485
  readBotState(overrides?: CallOverrides): Promise<BotStateStructOutput>;
472
486
 
473
487
  readMarketExtState(
474
- router: string,
475
488
  overrides?: Overrides & { from?: string | Promise<string> }
476
489
  ): Promise<ContractTransaction>;
477
490
 
491
+ router(overrides?: CallOverrides): Promise<string>;
492
+
478
493
  swapCallback(
479
494
  ptToAccount: BigNumberish,
480
495
  syToAccount: BigNumberish,
@@ -509,8 +524,9 @@ export interface BotActionCallback extends BaseContract {
509
524
  overrides?: CallOverrides
510
525
  ): Promise<void>;
511
526
 
527
+ buyBins(overrides?: CallOverrides): Promise<BigNumber>;
528
+
512
529
  claimAndCompound(
513
- router: string,
514
530
  inps: TokenInputStruct[],
515
531
  minSyOut: BigNumberish,
516
532
  overrides?: CallOverrides
@@ -527,7 +543,6 @@ export interface BotActionCallback extends BaseContract {
527
543
  depositSy(netSyIn: BigNumberish, overrides?: CallOverrides): Promise<void>;
528
544
 
529
545
  depositToken(
530
- router: string,
531
546
  inp: TokenInputStruct,
532
547
  minSyOut: BigNumberish,
533
548
  overrides?: CallOverrides
@@ -542,10 +557,11 @@ export interface BotActionCallback extends BaseContract {
542
557
  readBotState(overrides?: CallOverrides): Promise<BotStateStructOutput>;
543
558
 
544
559
  readMarketExtState(
545
- router: string,
546
560
  overrides?: CallOverrides
547
561
  ): Promise<MarketExtStateStructOutput>;
548
562
 
563
+ router(overrides?: CallOverrides): Promise<string>;
564
+
549
565
  swapCallback(
550
566
  ptToAccount: BigNumberish,
551
567
  syToAccount: BigNumberish,
@@ -625,8 +641,9 @@ export interface BotActionCallback extends BaseContract {
625
641
  overrides?: Overrides & { from?: string | Promise<string> }
626
642
  ): Promise<BigNumber>;
627
643
 
644
+ buyBins(overrides?: CallOverrides): Promise<BigNumber>;
645
+
628
646
  claimAndCompound(
629
- router: string,
630
647
  inps: TokenInputStruct[],
631
648
  minSyOut: BigNumberish,
632
649
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -646,7 +663,6 @@ export interface BotActionCallback extends BaseContract {
646
663
  ): Promise<BigNumber>;
647
664
 
648
665
  depositToken(
649
- router: string,
650
666
  inp: TokenInputStruct,
651
667
  minSyOut: BigNumberish,
652
668
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -661,10 +677,11 @@ export interface BotActionCallback extends BaseContract {
661
677
  readBotState(overrides?: CallOverrides): Promise<BigNumber>;
662
678
 
663
679
  readMarketExtState(
664
- router: string,
665
680
  overrides?: Overrides & { from?: string | Promise<string> }
666
681
  ): Promise<BigNumber>;
667
682
 
683
+ router(overrides?: CallOverrides): Promise<BigNumber>;
684
+
668
685
  swapCallback(
669
686
  ptToAccount: BigNumberish,
670
687
  syToAccount: BigNumberish,
@@ -700,8 +717,9 @@ export interface BotActionCallback extends BaseContract {
700
717
  overrides?: Overrides & { from?: string | Promise<string> }
701
718
  ): Promise<PopulatedTransaction>;
702
719
 
720
+ buyBins(overrides?: CallOverrides): Promise<PopulatedTransaction>;
721
+
703
722
  claimAndCompound(
704
- router: string,
705
723
  inps: TokenInputStruct[],
706
724
  minSyOut: BigNumberish,
707
725
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -721,7 +739,6 @@ export interface BotActionCallback extends BaseContract {
721
739
  ): Promise<PopulatedTransaction>;
722
740
 
723
741
  depositToken(
724
- router: string,
725
742
  inp: TokenInputStruct,
726
743
  minSyOut: BigNumberish,
727
744
  overrides?: PayableOverrides & { from?: string | Promise<string> }
@@ -736,10 +753,11 @@ export interface BotActionCallback extends BaseContract {
736
753
  readBotState(overrides?: CallOverrides): Promise<PopulatedTransaction>;
737
754
 
738
755
  readMarketExtState(
739
- router: string,
740
756
  overrides?: Overrides & { from?: string | Promise<string> }
741
757
  ): Promise<PopulatedTransaction>;
742
758
 
759
+ router(overrides?: CallOverrides): Promise<PopulatedTransaction>;
760
+
743
761
  swapCallback(
744
762
  ptToAccount: BigNumberish,
745
763
  syToAccount: BigNumberish,