@pendle/core-v2 2.20.1 → 2.21.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 (662) 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 +2240 -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 +745 -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/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +0 -4
  336. package/contracts/core/Market/PendleGauge.sol +2 -3
  337. package/contracts/core/StandardizedYield/PYIndex.sol +14 -0
  338. package/contracts/core/TradingBot/DecisionHelper/BotDecisionHelperBase.sol +265 -0
  339. package/contracts/core/TradingBot/DecisionHelper/LongYieldDecisionHelper.sol +333 -0
  340. package/contracts/core/TradingBot/LongYieldTradingBot.sol +144 -0
  341. package/contracts/core/TradingBot/TradingBotBase.sol +253 -0
  342. package/contracts/core/TradingBot/libraries/BotSimulationLib.sol +99 -0
  343. package/contracts/core/TradingBot/libraries/LongYieldActionLib.sol +308 -0
  344. package/contracts/core/TradingBot/libraries/MarketExtLib.sol +272 -0
  345. package/contracts/core/TradingBot/libraries/SpecSegmentLib.sol +78 -0
  346. package/contracts/core/TradingBot/libraries/TvlLib.sol +69 -0
  347. package/contracts/core/libraries/Errors.sol +12 -0
  348. package/contracts/core/libraries/TokenAmountLib.sol +47 -0
  349. package/contracts/interfaces/IPActionInfoStatic.sol +7 -8
  350. package/contracts/interfaces/IPActionMarketAuxStatic.sol +14 -21
  351. package/contracts/interfaces/IPActionMarketCoreStatic.sol +67 -70
  352. package/contracts/interfaces/IPActionMintRedeemStatic.sol +11 -23
  353. package/contracts/interfaces/IPGauge.sol +0 -3
  354. package/contracts/interfaces/IPRouterStatic.sol +1 -5
  355. package/contracts/interfaces/IStandardizedYield.sol +10 -15
  356. package/contracts/interfaces/TradingBot/IBotDecisionHelper.sol +76 -0
  357. package/contracts/interfaces/TradingBot/ILongYieldDecisionHelper.sol +8 -0
  358. package/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol +74 -0
  359. package/contracts/interfaces/TradingBot/IShortYieldDecisionHelper.sol +7 -0
  360. package/contracts/interfaces/TradingBot/IShortYieldTradingBot.sol +27 -0
  361. package/contracts/interfaces/TradingBot/ITradingBotBase.sol +54 -0
  362. package/contracts/offchain-helpers/BulkSellerOffchain.sol +8 -11
  363. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +11 -14
  364. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +37 -96
  365. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +80 -88
  366. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +14 -43
  367. package/contracts/oracles/PendleLpOracleLib.sol +1 -1
  368. package/deployments/core.ts +29 -0
  369. package/deployments/index.ts +4 -0
  370. package/deployments/markets/ape-june-29-2023.ts +3 -0
  371. package/deployments/markets/balancer-reth-dec-28-2023.ts +3 -0
  372. package/deployments/markets/balancer-wsteth-jun-27-2024.ts +3 -0
  373. package/deployments/markets/curve-fraxusdc-march-30-2023.ts +3 -0
  374. package/deployments/markets/index.ts +17 -0
  375. package/deployments/markets/looks-march-30-2023.ts +3 -0
  376. package/deployments/markets/steth-june-29-2023.ts +3 -0
  377. package/deployments/markets/steth-march-30-2023.ts +3 -0
  378. package/deployments/markets/types.ts +9 -0
  379. package/deployments/misc.ts +23 -0
  380. package/package.json +1 -1
  381. package/typechain-types/ActionMarketAuxStatic.ts +38 -191
  382. package/typechain-types/ActionMarketCoreStatic.ts +134 -600
  383. package/typechain-types/ActionMintRedeemStatic.ts +26 -92
  384. package/typechain-types/AuraEthxBbAWethSY.ts +1532 -0
  385. package/typechain-types/AuraSwEthBbAWethSYV2.ts +1532 -0
  386. package/typechain-types/AutomateReady.ts +102 -0
  387. package/typechain-types/AutomationBase.ts +57 -0
  388. package/typechain-types/AutomationCompatible.ts +140 -0
  389. package/typechain-types/AutomationCompatibleInterface.ts +141 -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/HLPPricingHelper.ts +397 -0
  397. package/typechain-types/IAnkrBNB.ts +150 -0
  398. package/typechain-types/IAnkrLiquidStaking.ts +253 -0
  399. package/typechain-types/IAutomate.ts +203 -0
  400. package/typechain-types/IBotDecisionHelper.ts +476 -0
  401. package/typechain-types/IEUSD.ts +194 -0
  402. package/typechain-types/IFluxErc20.ts +298 -0
  403. package/typechain-types/IFluxInterestRateModel.ts +113 -0
  404. package/typechain-types/IHLPStaking.ts +154 -0
  405. package/typechain-types/IHMXCalculator.ts +96 -0
  406. package/typechain-types/IHMXCompounder.ts +122 -0
  407. package/typechain-types/IHMXStaking.ts +165 -0
  408. package/typechain-types/IHMXVester.ts +163 -0
  409. package/typechain-types/IInterestUSTP.ts +156 -0
  410. package/typechain-types/IKyberElasticFactory.ts +734 -0
  411. package/typechain-types/IKyberElasticPool.ts +514 -0
  412. package/typechain-types/IKyberElasticRouter.ts +315 -0
  413. package/typechain-types/IKyberLiquidityMining.ts +968 -0
  414. package/typechain-types/IKyberMathHelper.ts +231 -0
  415. package/typechain-types/IKyberPositionManager.ts +773 -0
  416. package/typechain-types/ILongYieldDecisionHelper.ts +512 -0
  417. package/typechain-types/ILongYieldTradingBot.ts +703 -0
  418. package/typechain-types/IOpsProxyFactory.ts +93 -0
  419. package/typechain-types/IPActionMarketAuxStatic.ts +38 -191
  420. package/typechain-types/IPActionMarketCoreStatic.ts +134 -600
  421. package/typechain-types/IPActionMintRedeemStatic.ts +26 -92
  422. package/typechain-types/IPComposableStablePreview.ts +217 -0
  423. package/typechain-types/IPExternalRewardDistributor.ts +198 -0
  424. package/typechain-types/IPMarketFactoryV2.ts +253 -0
  425. package/typechain-types/IPOracleForSy.ts +87 -0
  426. package/typechain-types/IPRouterStatic.ts +197 -888
  427. package/typechain-types/IPendlePreviewHelper.ts +147 -0
  428. package/typechain-types/IRebasingUSTP.ts +133 -0
  429. package/typechain-types/IShortYieldDecisionHelper.ts +476 -0
  430. package/typechain-types/IShortYieldTradingBot.ts +574 -0
  431. package/typechain-types/IStaderStakeManager.ts +700 -0
  432. package/typechain-types/{IExecutorHelper2.ts → ISwETH.ts} +40 -32
  433. package/typechain-types/ITaskTreasuryUpgradable.ts +160 -0
  434. package/typechain-types/IThenaFactory.ts +245 -0
  435. package/typechain-types/IThenaGaugeV2.ts +206 -0
  436. package/typechain-types/IThenaPair.ts +579 -0
  437. package/typechain-types/IThenaRouter.ts +313 -0
  438. package/typechain-types/IThenaSY.ts +81 -0
  439. package/typechain-types/ITradingBotBase.ts +373 -0
  440. package/typechain-types/IUSTP.ts +127 -0
  441. package/typechain-types/IVersion.ts +81 -0
  442. package/typechain-types/{PendleSwapEthereum.ts → IWBETH.ts} +50 -48
  443. package/typechain-types/KyberMathHelper.ts +583 -0
  444. package/typechain-types/KyberNftManagerBase.ts +364 -0
  445. package/typechain-types/LegacyNFTHelper.ts +87 -0
  446. package/typechain-types/LongYieldActionLib.ts +57 -0
  447. package/typechain-types/LongYieldDecisionHelper.ts +663 -0
  448. package/typechain-types/LongYieldTradingBot.ts +2405 -0
  449. package/typechain-types/MarketExtLib.ts +81 -0
  450. package/typechain-types/PendleAnkrBNBSY.ts +1235 -0
  451. package/typechain-types/PendleAuraWethVethSY.ts +1511 -0
  452. package/typechain-types/PendleAuraWstethAnkreth.ts +1511 -0
  453. package/typechain-types/PendleBridgedLSDSY.ts +1222 -0
  454. package/typechain-types/PendleChainlinkReceiver.ts +239 -0
  455. package/typechain-types/PendleChainlinkRelayer.ts +158 -0
  456. package/typechain-types/PendleERC4626SY.ts +1216 -0
  457. package/typechain-types/PendleETHXSY.ts +1231 -0
  458. package/typechain-types/PendleEUSDSY.ts +1216 -0
  459. package/typechain-types/PendleExternalRewardDistributor.ts +596 -0
  460. package/typechain-types/PendleFluxLendingSY.ts +1232 -0
  461. package/typechain-types/PendleGaugeV2.ts +225 -0
  462. package/typechain-types/PendleHlpSY.ts +1517 -0
  463. package/typechain-types/PendleIUSTPSY.ts +1255 -0
  464. package/typechain-types/PendleKyberElasticSY.ts +1830 -0
  465. package/typechain-types/PendleMantleStakedEthSY.ts +1222 -0
  466. package/typechain-types/PendleMarketFactoryV2.ts +932 -0
  467. package/typechain-types/PendleMarketV2.ts +1311 -0
  468. package/typechain-types/PendleMulticallV2.ts +241 -0
  469. package/typechain-types/PendleOracleForSyProxy.ts +275 -0
  470. package/typechain-types/{PendleCamelotV1SY.ts → PendleThenaSY.ts} +214 -332
  471. package/typechain-types/PendleWbEthSY.ts +1229 -0
  472. package/typechain-types/SDKErrorsDirectory.ts +57 -0
  473. package/typechain-types/StarNFTV1.ts +880 -0
  474. package/typechain-types/SwETHSY.ts +1216 -0
  475. package/typechain-types/{PendleCamelotV1RouterHelper.ts → ThenaLpHelper.ts} +63 -5
  476. package/typechain-types/ThenaMath.ts +87 -0
  477. package/typechain-types/{CamelotV1PreviewHelper.ts → ThenaPreview.ts} +42 -63
  478. package/typechain-types/TradingBotBase.ts +1837 -0
  479. package/typechain-types/TvlLib.ts +215 -0
  480. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  481. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  482. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +7 -83
  483. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +23 -23
  484. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +5 -43
  485. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  486. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  487. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  488. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  489. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  490. package/typechain-types/factories/AuraEthxBbAWethSY__factory.ts +1240 -0
  491. package/typechain-types/factories/AuraSwEthBbAWethSYV2__factory.ts +1244 -0
  492. package/typechain-types/factories/AutomateReady__factory.ts +49 -0
  493. package/typechain-types/factories/AutomationBase__factory.ts +69 -0
  494. package/typechain-types/factories/AutomationCompatibleInterface__factory.ts +67 -0
  495. package/typechain-types/factories/AutomationCompatible__factory.ts +72 -0
  496. package/typechain-types/factories/BotDecisionHelperBase__factory.ts +835 -0
  497. package/typechain-types/factories/Broadcaster__factory.ts +1 -1
  498. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  499. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  500. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  501. package/typechain-types/factories/ChainlinkRelayerAutomation__factory.ts +238 -0
  502. package/typechain-types/factories/ChainlinkRelayerGelato__factory.ts +263 -0
  503. package/typechain-types/factories/ComposableStablePreviewProxy__factory.ts +288 -0
  504. package/typechain-types/factories/ComposableStablePreviewV4__factory.ts +190 -0
  505. package/typechain-types/factories/ComposableStablePreviewV5__factory.ts +190 -0
  506. package/typechain-types/factories/Errors__factory.ts +150 -1
  507. package/typechain-types/factories/HLPPricingHelper__factory.ts +311 -0
  508. package/typechain-types/factories/IAnkrBNB__factory.ts +74 -0
  509. package/typechain-types/factories/IAnkrLiquidStaking__factory.ts +123 -0
  510. package/typechain-types/factories/IAutomate__factory.ts +126 -0
  511. package/typechain-types/factories/IBotDecisionHelper__factory.ts +694 -0
  512. package/typechain-types/factories/IEUSD__factory.ts +101 -0
  513. package/typechain-types/factories/IFluxErc20__factory.ts +178 -0
  514. package/typechain-types/factories/{IExecutorHelper2__factory.ts → IFluxInterestRateModel__factory.ts} +19 -15
  515. package/typechain-types/factories/IHLPStaking__factory.ts +67 -0
  516. package/typechain-types/factories/IHMXCalculator__factory.ts +45 -0
  517. package/typechain-types/factories/IHMXCompounder__factory.ts +59 -0
  518. package/typechain-types/factories/IHMXStaking__factory.ts +78 -0
  519. package/typechain-types/factories/IHMXVester__factory.ts +85 -0
  520. package/typechain-types/factories/IInterestUSTP__factory.ts +75 -0
  521. package/typechain-types/factories/IKyberElasticFactory__factory.ts +455 -0
  522. package/typechain-types/factories/IKyberElasticPool__factory.ts +315 -0
  523. package/typechain-types/factories/IKyberElasticRouter__factory.ts +240 -0
  524. package/typechain-types/factories/IKyberLiquidityMining__factory.ts +913 -0
  525. package/typechain-types/factories/IKyberMathHelper__factory.ts +143 -0
  526. package/typechain-types/factories/IKyberPositionManager__factory.ts +633 -0
  527. package/typechain-types/factories/ILongYieldDecisionHelper__factory.ts +717 -0
  528. package/typechain-types/factories/ILongYieldTradingBot__factory.ts +764 -0
  529. package/typechain-types/factories/IOpsProxyFactory__factory.ts +50 -0
  530. package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +6 -82
  531. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +22 -22
  532. package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +4 -42
  533. package/typechain-types/factories/IPComposableStablePreview__factory.ts +152 -0
  534. package/typechain-types/factories/{IPVotingEscrowSidechain__factory.ts → IPExternalRewardDistributor__factory.ts} +60 -44
  535. package/typechain-types/factories/IPMarketFactoryV2__factory.ts +181 -0
  536. package/typechain-types/factories/IPOracleForSy__factory.ts +36 -0
  537. package/typechain-types/factories/IPRouterStatic__factory.ts +32 -146
  538. package/typechain-types/factories/IPendlePreviewHelper__factory.ts +78 -0
  539. package/typechain-types/factories/IRebasingUSTP__factory.ts +49 -0
  540. package/typechain-types/factories/IShortYieldDecisionHelper__factory.ts +698 -0
  541. package/typechain-types/factories/IShortYieldTradingBot__factory.ts +813 -0
  542. package/typechain-types/factories/IStaderStakeManager__factory.ts +435 -0
  543. package/typechain-types/factories/ISwETH__factory.ts +53 -0
  544. package/typechain-types/factories/ITaskTreasuryUpgradable__factory.ts +76 -0
  545. package/typechain-types/factories/IThenaFactory__factory.ts +164 -0
  546. package/typechain-types/factories/IThenaGaugeV2__factory.ts +83 -0
  547. package/typechain-types/factories/IThenaPair__factory.ts +421 -0
  548. package/typechain-types/factories/IThenaRouter__factory.ts +200 -0
  549. package/typechain-types/factories/IThenaSY__factory.ts +36 -0
  550. package/typechain-types/factories/ITradingBotBase__factory.ts +366 -0
  551. package/typechain-types/factories/IUSTP__factory.ts +46 -0
  552. package/typechain-types/factories/IVersion__factory.ts +36 -0
  553. package/typechain-types/factories/IWBETH__factory.ts +51 -0
  554. package/typechain-types/factories/KyberMathHelper__factory.ts +417 -0
  555. package/typechain-types/factories/KyberNftManagerBase__factory.ts +279 -0
  556. package/typechain-types/factories/LegacyNFTHelper__factory.ts +83 -0
  557. package/typechain-types/factories/LongYieldActionLib__factory.ts +207 -0
  558. package/typechain-types/factories/LongYieldDecisionHelper__factory.ts +1468 -0
  559. package/typechain-types/factories/LongYieldTradingBot__factory.ts +2241 -0
  560. package/typechain-types/factories/MarketExtLib__factory.ts +74 -0
  561. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  562. package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1100 -0
  563. package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +1 -1
  564. package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
  565. package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
  566. package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
  567. package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
  568. package/typechain-types/factories/PendleAuraWethVethSY__factory.ts +1231 -0
  569. package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
  570. package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1244 -0
  571. package/typechain-types/factories/PendleBridgedLSDSY__factory.ts +1064 -0
  572. package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
  573. package/typechain-types/factories/PendleChainlinkReceiver__factory.ts +216 -0
  574. package/typechain-types/factories/PendleChainlinkRelayer__factory.ts +180 -0
  575. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  576. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  577. package/typechain-types/factories/PendleERC4626SY__factory.ts +1030 -0
  578. package/typechain-types/factories/PendleETHXSY__factory.ts +1059 -0
  579. package/typechain-types/factories/PendleEUSDSY__factory.ts +1022 -0
  580. package/typechain-types/factories/PendleExternalRewardDistributor__factory.ts +437 -0
  581. package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +1 -1
  582. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  583. package/typechain-types/factories/PendleFluxLendingSY__factory.ts +1049 -0
  584. package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
  585. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  586. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  587. package/typechain-types/factories/PendleGaugeV2__factory.ts +140 -0
  588. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  589. package/typechain-types/factories/PendleHlpSY__factory.ts +1283 -0
  590. package/typechain-types/factories/PendleIUSTPSY__factory.ts +1061 -0
  591. package/typechain-types/factories/PendleKyberElasticSY__factory.ts +1512 -0
  592. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  593. package/typechain-types/factories/PendleLpGlpOracle__factory.ts +1 -1
  594. package/typechain-types/factories/PendleMantleStakedEthSY__factory.ts +1068 -0
  595. package/typechain-types/factories/PendleMarketFactoryV2__factory.ts +770 -0
  596. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  597. package/typechain-types/factories/PendleMarketV2__factory.ts +1299 -0
  598. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  599. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  600. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  601. package/typechain-types/factories/PendleMulticallV2__factory.ts +212 -0
  602. package/typechain-types/factories/PendleOracleForSyProxy__factory.ts +211 -0
  603. package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
  604. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  605. package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
  606. package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
  607. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  608. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  609. package/typechain-types/factories/PendleRouterHelper__factory.ts +1 -1
  610. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  611. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  612. package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
  613. package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
  614. package/typechain-types/factories/PendleThenaSY__factory.ts +1352 -0
  615. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  616. package/typechain-types/factories/PendleWbEthSY__factory.ts +1049 -0
  617. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  618. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  619. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  620. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
  621. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  622. package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
  623. package/typechain-types/factories/SAPE__factory.ts +1 -1
  624. package/typechain-types/factories/SDKErrorsDirectory__factory.ts +1596 -0
  625. package/typechain-types/factories/StarNFTV1__factory.ts +584 -0
  626. package/typechain-types/factories/SwETHSY__factory.ts +1022 -0
  627. package/typechain-types/factories/{PendleCamelotV1RouterHelper__factory.ts → ThenaLpHelper__factory.ts} +58 -13
  628. package/typechain-types/factories/ThenaMath__factory.ts +36 -0
  629. package/typechain-types/factories/ThenaPreview__factory.ts +319 -0
  630. package/typechain-types/factories/TradingBotBase__factory.ts +1656 -0
  631. package/typechain-types/factories/TvlLib__factory.ts +309 -0
  632. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  633. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  634. package/typechain-types/hardhat.d.ts +153 -126
  635. package/typechain-types/index.ts +34 -18
  636. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +0 -4
  637. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +0 -976
  638. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.dbg.json +0 -4
  639. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.json +0 -97
  640. package/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol +0 -120
  641. package/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol +0 -108
  642. package/contracts/interfaces/BinanceEth/IWBETH.sol +0 -9
  643. package/contracts/offchain-helpers/PtAndLpToAsset.sol +0 -62
  644. package/deployments/42161-markets/RETH-ARBITRUM-JUNE2025.json +0 -10
  645. package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2024.json +0 -10
  646. package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2025.json +0 -10
  647. package/deployments/56-core.json +0 -28
  648. package/deployments/56-markets/THENA-FRXETH-ETH-JUNE2024.json +0 -10
  649. package/deployments/56-markets/WBETH-DEC2024.json +0 -10
  650. package/deployments/56-offchain-helper.json +0 -4
  651. package/typechain-types/IExecutorHelper1.ts +0 -643
  652. package/typechain-types/IExecutorHelperEthereum1.ts +0 -643
  653. package/typechain-types/IPVotingEscrowSidechain.ts +0 -155
  654. package/typechain-types/PendleCamelotRewardHelper.ts +0 -347
  655. package/typechain-types/PendleSwapArbitrum.ts +0 -126
  656. package/typechain-types/factories/CamelotV1PreviewHelper__factory.ts +0 -400
  657. package/typechain-types/factories/IExecutorHelper1__factory.ts +0 -403
  658. package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +0 -407
  659. package/typechain-types/factories/PendleCamelotRewardHelper__factory.ts +0 -317
  660. package/typechain-types/factories/PendleCamelotV1SY__factory.ts +0 -1448
  661. package/typechain-types/factories/PendleSwapArbitrum__factory.ts +0 -129
  662. package/typechain-types/factories/PendleSwapEthereum__factory.ts +0 -129
@@ -0,0 +1,2241 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ LongYieldTradingBot,
8
+ LongYieldTradingBotInterface,
9
+ } from "../LongYieldTradingBot";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "address",
16
+ name: "_market",
17
+ type: "address",
18
+ },
19
+ {
20
+ internalType: "address",
21
+ name: "_router",
22
+ type: "address",
23
+ },
24
+ {
25
+ internalType: "address",
26
+ name: "_PENDLE",
27
+ type: "address",
28
+ },
29
+ {
30
+ internalType: "address",
31
+ name: "_decisionHelper",
32
+ type: "address",
33
+ },
34
+ ],
35
+ stateMutability: "nonpayable",
36
+ type: "constructor",
37
+ },
38
+ {
39
+ inputs: [
40
+ {
41
+ internalType: "uint256",
42
+ name: "actualSharesOut",
43
+ type: "uint256",
44
+ },
45
+ {
46
+ internalType: "uint256",
47
+ name: "requiredSharesOut",
48
+ type: "uint256",
49
+ },
50
+ ],
51
+ name: "SYInsufficientSharesOut",
52
+ type: "error",
53
+ },
54
+ {
55
+ inputs: [
56
+ {
57
+ internalType: "uint256",
58
+ name: "actualTokenOut",
59
+ type: "uint256",
60
+ },
61
+ {
62
+ internalType: "uint256",
63
+ name: "requiredTokenOut",
64
+ type: "uint256",
65
+ },
66
+ ],
67
+ name: "SYInsufficientTokenOut",
68
+ type: "error",
69
+ },
70
+ {
71
+ inputs: [
72
+ {
73
+ internalType: "address",
74
+ name: "token",
75
+ type: "address",
76
+ },
77
+ ],
78
+ name: "SYInvalidTokenIn",
79
+ type: "error",
80
+ },
81
+ {
82
+ inputs: [
83
+ {
84
+ internalType: "address",
85
+ name: "token",
86
+ type: "address",
87
+ },
88
+ ],
89
+ name: "SYInvalidTokenOut",
90
+ type: "error",
91
+ },
92
+ {
93
+ inputs: [],
94
+ name: "SYZeroDeposit",
95
+ type: "error",
96
+ },
97
+ {
98
+ inputs: [],
99
+ name: "SYZeroRedeem",
100
+ type: "error",
101
+ },
102
+ {
103
+ anonymous: false,
104
+ inputs: [
105
+ {
106
+ components: [
107
+ {
108
+ internalType: "uint256",
109
+ name: "guessMin",
110
+ type: "uint256",
111
+ },
112
+ {
113
+ internalType: "uint256",
114
+ name: "guessMax",
115
+ type: "uint256",
116
+ },
117
+ {
118
+ internalType: "uint256",
119
+ name: "guessOffchain",
120
+ type: "uint256",
121
+ },
122
+ {
123
+ internalType: "uint256",
124
+ name: "maxIteration",
125
+ type: "uint256",
126
+ },
127
+ {
128
+ internalType: "uint256",
129
+ name: "eps",
130
+ type: "uint256",
131
+ },
132
+ ],
133
+ indexed: false,
134
+ internalType: "struct ApproxParams",
135
+ name: "botParams",
136
+ type: "tuple",
137
+ },
138
+ {
139
+ indexed: false,
140
+ internalType: "uint256",
141
+ name: "netYtIn",
142
+ type: "uint256",
143
+ },
144
+ {
145
+ indexed: false,
146
+ internalType: "uint256",
147
+ name: "netLpOut",
148
+ type: "uint256",
149
+ },
150
+ ],
151
+ name: "AddLiqFromYt",
152
+ type: "event",
153
+ },
154
+ {
155
+ anonymous: false,
156
+ inputs: [
157
+ {
158
+ indexed: false,
159
+ internalType: "uint256",
160
+ name: "netSyIn",
161
+ type: "uint256",
162
+ },
163
+ {
164
+ indexed: false,
165
+ internalType: "uint256",
166
+ name: "netLpOut",
167
+ type: "uint256",
168
+ },
169
+ {
170
+ indexed: false,
171
+ internalType: "uint256",
172
+ name: "netYtOut",
173
+ type: "uint256",
174
+ },
175
+ ],
176
+ name: "AddLiqKeepYt",
177
+ type: "event",
178
+ },
179
+ {
180
+ anonymous: false,
181
+ inputs: [
182
+ {
183
+ indexed: false,
184
+ internalType: "address",
185
+ name: "previousAdmin",
186
+ type: "address",
187
+ },
188
+ {
189
+ indexed: false,
190
+ internalType: "address",
191
+ name: "newAdmin",
192
+ type: "address",
193
+ },
194
+ ],
195
+ name: "AdminChanged",
196
+ type: "event",
197
+ },
198
+ {
199
+ anonymous: false,
200
+ inputs: [
201
+ {
202
+ indexed: true,
203
+ internalType: "address",
204
+ name: "owner",
205
+ type: "address",
206
+ },
207
+ {
208
+ indexed: true,
209
+ internalType: "address",
210
+ name: "spender",
211
+ type: "address",
212
+ },
213
+ {
214
+ indexed: false,
215
+ internalType: "uint256",
216
+ name: "value",
217
+ type: "uint256",
218
+ },
219
+ ],
220
+ name: "Approval",
221
+ type: "event",
222
+ },
223
+ {
224
+ anonymous: false,
225
+ inputs: [
226
+ {
227
+ indexed: true,
228
+ internalType: "address",
229
+ name: "beacon",
230
+ type: "address",
231
+ },
232
+ ],
233
+ name: "BeaconUpgraded",
234
+ type: "event",
235
+ },
236
+ {
237
+ anonymous: false,
238
+ inputs: [
239
+ {
240
+ indexed: false,
241
+ internalType: "uint256",
242
+ name: "netSyOut",
243
+ type: "uint256",
244
+ },
245
+ ],
246
+ name: "ClaimAndCompound",
247
+ type: "event",
248
+ },
249
+ {
250
+ anonymous: false,
251
+ inputs: [
252
+ {
253
+ indexed: true,
254
+ internalType: "address",
255
+ name: "user",
256
+ type: "address",
257
+ },
258
+ {
259
+ indexed: false,
260
+ internalType: "address[]",
261
+ name: "rewardTokens",
262
+ type: "address[]",
263
+ },
264
+ {
265
+ indexed: false,
266
+ internalType: "uint256[]",
267
+ name: "rewardAmounts",
268
+ type: "uint256[]",
269
+ },
270
+ ],
271
+ name: "ClaimRewards",
272
+ type: "event",
273
+ },
274
+ {
275
+ anonymous: false,
276
+ inputs: [
277
+ {
278
+ indexed: true,
279
+ internalType: "address",
280
+ name: "caller",
281
+ type: "address",
282
+ },
283
+ {
284
+ indexed: true,
285
+ internalType: "address",
286
+ name: "receiver",
287
+ type: "address",
288
+ },
289
+ {
290
+ indexed: true,
291
+ internalType: "address",
292
+ name: "tokenIn",
293
+ type: "address",
294
+ },
295
+ {
296
+ indexed: false,
297
+ internalType: "uint256",
298
+ name: "amountDeposited",
299
+ type: "uint256",
300
+ },
301
+ {
302
+ indexed: false,
303
+ internalType: "uint256",
304
+ name: "amountSyOut",
305
+ type: "uint256",
306
+ },
307
+ ],
308
+ name: "Deposit",
309
+ type: "event",
310
+ },
311
+ {
312
+ anonymous: false,
313
+ inputs: [
314
+ {
315
+ indexed: false,
316
+ internalType: "uint256",
317
+ name: "netSyIn",
318
+ type: "uint256",
319
+ },
320
+ ],
321
+ name: "DepositSy",
322
+ type: "event",
323
+ },
324
+ {
325
+ anonymous: false,
326
+ inputs: [
327
+ {
328
+ indexed: true,
329
+ internalType: "address",
330
+ name: "token",
331
+ type: "address",
332
+ },
333
+ {
334
+ indexed: false,
335
+ internalType: "uint256",
336
+ name: "netTokenIn",
337
+ type: "uint256",
338
+ },
339
+ ],
340
+ name: "DepositToken",
341
+ type: "event",
342
+ },
343
+ {
344
+ anonymous: false,
345
+ inputs: [
346
+ {
347
+ indexed: false,
348
+ internalType: "uint8",
349
+ name: "version",
350
+ type: "uint8",
351
+ },
352
+ ],
353
+ name: "Initialized",
354
+ type: "event",
355
+ },
356
+ {
357
+ anonymous: false,
358
+ inputs: [
359
+ {
360
+ indexed: true,
361
+ internalType: "address",
362
+ name: "previousOwner",
363
+ type: "address",
364
+ },
365
+ {
366
+ indexed: true,
367
+ internalType: "address",
368
+ name: "newOwner",
369
+ type: "address",
370
+ },
371
+ ],
372
+ name: "OwnershipTransferred",
373
+ type: "event",
374
+ },
375
+ {
376
+ anonymous: false,
377
+ inputs: [
378
+ {
379
+ indexed: false,
380
+ internalType: "address",
381
+ name: "account",
382
+ type: "address",
383
+ },
384
+ ],
385
+ name: "Paused",
386
+ type: "event",
387
+ },
388
+ {
389
+ anonymous: false,
390
+ inputs: [
391
+ {
392
+ indexed: true,
393
+ internalType: "address",
394
+ name: "caller",
395
+ type: "address",
396
+ },
397
+ {
398
+ indexed: true,
399
+ internalType: "address",
400
+ name: "receiver",
401
+ type: "address",
402
+ },
403
+ {
404
+ indexed: true,
405
+ internalType: "address",
406
+ name: "tokenOut",
407
+ type: "address",
408
+ },
409
+ {
410
+ indexed: false,
411
+ internalType: "uint256",
412
+ name: "amountSyToRedeem",
413
+ type: "uint256",
414
+ },
415
+ {
416
+ indexed: false,
417
+ internalType: "uint256",
418
+ name: "amountTokenOut",
419
+ type: "uint256",
420
+ },
421
+ ],
422
+ name: "Redeem",
423
+ type: "event",
424
+ },
425
+ {
426
+ anonymous: false,
427
+ inputs: [
428
+ {
429
+ components: [
430
+ {
431
+ internalType: "uint256",
432
+ name: "guessMin",
433
+ type: "uint256",
434
+ },
435
+ {
436
+ internalType: "uint256",
437
+ name: "guessMax",
438
+ type: "uint256",
439
+ },
440
+ {
441
+ internalType: "uint256",
442
+ name: "guessOffchain",
443
+ type: "uint256",
444
+ },
445
+ {
446
+ internalType: "uint256",
447
+ name: "maxIteration",
448
+ type: "uint256",
449
+ },
450
+ {
451
+ internalType: "uint256",
452
+ name: "eps",
453
+ type: "uint256",
454
+ },
455
+ ],
456
+ indexed: false,
457
+ internalType: "struct ApproxParams",
458
+ name: "botParams",
459
+ type: "tuple",
460
+ },
461
+ {
462
+ indexed: false,
463
+ internalType: "uint256",
464
+ name: "netLpIn",
465
+ type: "uint256",
466
+ },
467
+ {
468
+ indexed: false,
469
+ internalType: "uint256",
470
+ name: "netYtOut",
471
+ type: "uint256",
472
+ },
473
+ ],
474
+ name: "RemoveLiqToYt",
475
+ type: "event",
476
+ },
477
+ {
478
+ anonymous: false,
479
+ inputs: [
480
+ {
481
+ indexed: true,
482
+ internalType: "address",
483
+ name: "from",
484
+ type: "address",
485
+ },
486
+ {
487
+ indexed: true,
488
+ internalType: "address",
489
+ name: "to",
490
+ type: "address",
491
+ },
492
+ {
493
+ indexed: false,
494
+ internalType: "uint256",
495
+ name: "value",
496
+ type: "uint256",
497
+ },
498
+ ],
499
+ name: "Transfer",
500
+ type: "event",
501
+ },
502
+ {
503
+ anonymous: false,
504
+ inputs: [
505
+ {
506
+ indexed: false,
507
+ internalType: "address",
508
+ name: "account",
509
+ type: "address",
510
+ },
511
+ ],
512
+ name: "Unpaused",
513
+ type: "event",
514
+ },
515
+ {
516
+ anonymous: false,
517
+ inputs: [
518
+ {
519
+ indexed: true,
520
+ internalType: "address",
521
+ name: "implementation",
522
+ type: "address",
523
+ },
524
+ ],
525
+ name: "Upgraded",
526
+ type: "event",
527
+ },
528
+ {
529
+ anonymous: false,
530
+ inputs: [
531
+ {
532
+ indexed: true,
533
+ internalType: "address",
534
+ name: "token",
535
+ type: "address",
536
+ },
537
+ {
538
+ indexed: false,
539
+ internalType: "uint256",
540
+ name: "amount",
541
+ type: "uint256",
542
+ },
543
+ ],
544
+ name: "WithdrawFunds",
545
+ type: "event",
546
+ },
547
+ {
548
+ inputs: [],
549
+ name: "DOMAIN_SEPARATOR",
550
+ outputs: [
551
+ {
552
+ internalType: "bytes32",
553
+ name: "",
554
+ type: "bytes32",
555
+ },
556
+ ],
557
+ stateMutability: "view",
558
+ type: "function",
559
+ },
560
+ {
561
+ inputs: [],
562
+ name: "PENDLE",
563
+ outputs: [
564
+ {
565
+ internalType: "address",
566
+ name: "",
567
+ type: "address",
568
+ },
569
+ ],
570
+ stateMutability: "view",
571
+ type: "function",
572
+ },
573
+ {
574
+ inputs: [],
575
+ name: "PT",
576
+ outputs: [
577
+ {
578
+ internalType: "address",
579
+ name: "",
580
+ type: "address",
581
+ },
582
+ ],
583
+ stateMutability: "view",
584
+ type: "function",
585
+ },
586
+ {
587
+ inputs: [],
588
+ name: "SY",
589
+ outputs: [
590
+ {
591
+ internalType: "address",
592
+ name: "",
593
+ type: "address",
594
+ },
595
+ ],
596
+ stateMutability: "view",
597
+ type: "function",
598
+ },
599
+ {
600
+ inputs: [],
601
+ name: "YT",
602
+ outputs: [
603
+ {
604
+ internalType: "address",
605
+ name: "",
606
+ type: "address",
607
+ },
608
+ ],
609
+ stateMutability: "view",
610
+ type: "function",
611
+ },
612
+ {
613
+ inputs: [
614
+ {
615
+ internalType: "address",
616
+ name: "user",
617
+ type: "address",
618
+ },
619
+ ],
620
+ name: "accruedRewards",
621
+ outputs: [
622
+ {
623
+ internalType: "uint256[]",
624
+ name: "rewardAmounts",
625
+ type: "uint256[]",
626
+ },
627
+ ],
628
+ stateMutability: "view",
629
+ type: "function",
630
+ },
631
+ {
632
+ inputs: [
633
+ {
634
+ components: [
635
+ {
636
+ components: [
637
+ {
638
+ internalType: "uint256",
639
+ name: "guessMin",
640
+ type: "uint256",
641
+ },
642
+ {
643
+ internalType: "uint256",
644
+ name: "guessMax",
645
+ type: "uint256",
646
+ },
647
+ {
648
+ internalType: "uint256",
649
+ name: "guessOffchain",
650
+ type: "uint256",
651
+ },
652
+ {
653
+ internalType: "uint256",
654
+ name: "maxIteration",
655
+ type: "uint256",
656
+ },
657
+ {
658
+ internalType: "uint256",
659
+ name: "eps",
660
+ type: "uint256",
661
+ },
662
+ ],
663
+ internalType: "struct ApproxParams",
664
+ name: "botParams",
665
+ type: "tuple",
666
+ },
667
+ {
668
+ internalType: "uint256",
669
+ name: "minLpOut",
670
+ type: "uint256",
671
+ },
672
+ {
673
+ internalType: "uint256",
674
+ name: "targetIy",
675
+ type: "uint256",
676
+ },
677
+ {
678
+ internalType: "int256",
679
+ name: "currentBin",
680
+ type: "int256",
681
+ },
682
+ ],
683
+ internalType: "struct ILongYieldTradingBot.AddLiqFromYtInput",
684
+ name: "inputParams",
685
+ type: "tuple",
686
+ },
687
+ ],
688
+ name: "addLiqFromYt",
689
+ outputs: [
690
+ {
691
+ internalType: "uint256",
692
+ name: "netPtFromSwap",
693
+ type: "uint256",
694
+ },
695
+ {
696
+ internalType: "uint256",
697
+ name: "netLpOut",
698
+ type: "uint256",
699
+ },
700
+ {
701
+ internalType: "uint256",
702
+ name: "netYtIn",
703
+ type: "uint256",
704
+ },
705
+ ],
706
+ stateMutability: "nonpayable",
707
+ type: "function",
708
+ },
709
+ {
710
+ inputs: [
711
+ {
712
+ internalType: "uint256",
713
+ name: "netSyIn",
714
+ type: "uint256",
715
+ },
716
+ {
717
+ internalType: "uint256",
718
+ name: "minLpOut",
719
+ type: "uint256",
720
+ },
721
+ {
722
+ internalType: "uint256",
723
+ name: "minYtOut",
724
+ type: "uint256",
725
+ },
726
+ ],
727
+ name: "addLiqKeepYt",
728
+ outputs: [
729
+ {
730
+ internalType: "uint256",
731
+ name: "netLpOut",
732
+ type: "uint256",
733
+ },
734
+ {
735
+ internalType: "uint256",
736
+ name: "netYtOut",
737
+ type: "uint256",
738
+ },
739
+ ],
740
+ stateMutability: "nonpayable",
741
+ type: "function",
742
+ },
743
+ {
744
+ inputs: [
745
+ {
746
+ internalType: "address",
747
+ name: "owner",
748
+ type: "address",
749
+ },
750
+ {
751
+ internalType: "address",
752
+ name: "spender",
753
+ type: "address",
754
+ },
755
+ ],
756
+ name: "allowance",
757
+ outputs: [
758
+ {
759
+ internalType: "uint256",
760
+ name: "",
761
+ type: "uint256",
762
+ },
763
+ ],
764
+ stateMutability: "view",
765
+ type: "function",
766
+ },
767
+ {
768
+ inputs: [
769
+ {
770
+ internalType: "address",
771
+ name: "spender",
772
+ type: "address",
773
+ },
774
+ {
775
+ internalType: "uint256",
776
+ name: "amount",
777
+ type: "uint256",
778
+ },
779
+ ],
780
+ name: "approve",
781
+ outputs: [
782
+ {
783
+ internalType: "bool",
784
+ name: "",
785
+ type: "bool",
786
+ },
787
+ ],
788
+ stateMutability: "nonpayable",
789
+ type: "function",
790
+ },
791
+ {
792
+ inputs: [
793
+ {
794
+ internalType: "address",
795
+ name: "token",
796
+ type: "address",
797
+ },
798
+ {
799
+ internalType: "address",
800
+ name: "to",
801
+ type: "address",
802
+ },
803
+ ],
804
+ name: "approveInf",
805
+ outputs: [],
806
+ stateMutability: "nonpayable",
807
+ type: "function",
808
+ },
809
+ {
810
+ inputs: [],
811
+ name: "assetInfo",
812
+ outputs: [
813
+ {
814
+ internalType: "enum IStandardizedYield.AssetType",
815
+ name: "assetType",
816
+ type: "uint8",
817
+ },
818
+ {
819
+ internalType: "address",
820
+ name: "assetAddress",
821
+ type: "address",
822
+ },
823
+ {
824
+ internalType: "uint8",
825
+ name: "assetDecimals",
826
+ type: "uint8",
827
+ },
828
+ ],
829
+ stateMutability: "view",
830
+ type: "function",
831
+ },
832
+ {
833
+ inputs: [
834
+ {
835
+ internalType: "address",
836
+ name: "account",
837
+ type: "address",
838
+ },
839
+ ],
840
+ name: "balanceOf",
841
+ outputs: [
842
+ {
843
+ internalType: "uint256",
844
+ name: "",
845
+ type: "uint256",
846
+ },
847
+ ],
848
+ stateMutability: "view",
849
+ type: "function",
850
+ },
851
+ {
852
+ inputs: [],
853
+ name: "buyBins",
854
+ outputs: [
855
+ {
856
+ internalType: "uint256",
857
+ name: "",
858
+ type: "uint256",
859
+ },
860
+ ],
861
+ stateMutability: "view",
862
+ type: "function",
863
+ },
864
+ {
865
+ inputs: [],
866
+ name: "claimOwnership",
867
+ outputs: [],
868
+ stateMutability: "nonpayable",
869
+ type: "function",
870
+ },
871
+ {
872
+ inputs: [
873
+ {
874
+ internalType: "address",
875
+ name: "user",
876
+ type: "address",
877
+ },
878
+ ],
879
+ name: "claimRewards",
880
+ outputs: [
881
+ {
882
+ internalType: "uint256[]",
883
+ name: "rewardAmounts",
884
+ type: "uint256[]",
885
+ },
886
+ ],
887
+ stateMutability: "nonpayable",
888
+ type: "function",
889
+ },
890
+ {
891
+ inputs: [
892
+ {
893
+ components: [
894
+ {
895
+ internalType: "address",
896
+ name: "tokenIn",
897
+ type: "address",
898
+ },
899
+ {
900
+ internalType: "uint256",
901
+ name: "netTokenIn",
902
+ type: "uint256",
903
+ },
904
+ {
905
+ internalType: "address",
906
+ name: "tokenMintSy",
907
+ type: "address",
908
+ },
909
+ {
910
+ internalType: "address",
911
+ name: "bulk",
912
+ type: "address",
913
+ },
914
+ {
915
+ internalType: "address",
916
+ name: "pendleSwap",
917
+ type: "address",
918
+ },
919
+ {
920
+ components: [
921
+ {
922
+ internalType: "enum SwapType",
923
+ name: "swapType",
924
+ type: "uint8",
925
+ },
926
+ {
927
+ internalType: "address",
928
+ name: "extRouter",
929
+ type: "address",
930
+ },
931
+ {
932
+ internalType: "bytes",
933
+ name: "extCalldata",
934
+ type: "bytes",
935
+ },
936
+ {
937
+ internalType: "bool",
938
+ name: "needScale",
939
+ type: "bool",
940
+ },
941
+ ],
942
+ internalType: "struct SwapData",
943
+ name: "swapData",
944
+ type: "tuple",
945
+ },
946
+ ],
947
+ internalType: "struct TokenInput",
948
+ name: "inp",
949
+ type: "tuple",
950
+ },
951
+ {
952
+ internalType: "uint256",
953
+ name: "minSyOut",
954
+ type: "uint256",
955
+ },
956
+ ],
957
+ name: "compound",
958
+ outputs: [
959
+ {
960
+ internalType: "uint256",
961
+ name: "netSyOut",
962
+ type: "uint256",
963
+ },
964
+ ],
965
+ stateMutability: "nonpayable",
966
+ type: "function",
967
+ },
968
+ {
969
+ inputs: [],
970
+ name: "decimals",
971
+ outputs: [
972
+ {
973
+ internalType: "uint8",
974
+ name: "",
975
+ type: "uint8",
976
+ },
977
+ ],
978
+ stateMutability: "view",
979
+ type: "function",
980
+ },
981
+ {
982
+ inputs: [],
983
+ name: "decisionHelper",
984
+ outputs: [
985
+ {
986
+ internalType: "contract IBotDecisionHelper",
987
+ name: "",
988
+ type: "address",
989
+ },
990
+ ],
991
+ stateMutability: "view",
992
+ type: "function",
993
+ },
994
+ {
995
+ inputs: [
996
+ {
997
+ internalType: "address",
998
+ name: "receiver",
999
+ type: "address",
1000
+ },
1001
+ {
1002
+ internalType: "address",
1003
+ name: "tokenIn",
1004
+ type: "address",
1005
+ },
1006
+ {
1007
+ internalType: "uint256",
1008
+ name: "amountTokenToDeposit",
1009
+ type: "uint256",
1010
+ },
1011
+ {
1012
+ internalType: "uint256",
1013
+ name: "minSharesOut",
1014
+ type: "uint256",
1015
+ },
1016
+ ],
1017
+ name: "deposit",
1018
+ outputs: [
1019
+ {
1020
+ internalType: "uint256",
1021
+ name: "amountSharesOut",
1022
+ type: "uint256",
1023
+ },
1024
+ ],
1025
+ stateMutability: "payable",
1026
+ type: "function",
1027
+ },
1028
+ {
1029
+ inputs: [],
1030
+ name: "exchangeRate",
1031
+ outputs: [
1032
+ {
1033
+ internalType: "uint256",
1034
+ name: "",
1035
+ type: "uint256",
1036
+ },
1037
+ ],
1038
+ stateMutability: "view",
1039
+ type: "function",
1040
+ },
1041
+ {
1042
+ inputs: [],
1043
+ name: "getMaxAmountSharesToRedeem",
1044
+ outputs: [
1045
+ {
1046
+ internalType: "uint256",
1047
+ name: "",
1048
+ type: "uint256",
1049
+ },
1050
+ ],
1051
+ stateMutability: "view",
1052
+ type: "function",
1053
+ },
1054
+ {
1055
+ inputs: [],
1056
+ name: "getRewardTokens",
1057
+ outputs: [
1058
+ {
1059
+ internalType: "address[]",
1060
+ name: "rewardTokens",
1061
+ type: "address[]",
1062
+ },
1063
+ ],
1064
+ stateMutability: "view",
1065
+ type: "function",
1066
+ },
1067
+ {
1068
+ inputs: [],
1069
+ name: "getTokensIn",
1070
+ outputs: [
1071
+ {
1072
+ internalType: "address[]",
1073
+ name: "res",
1074
+ type: "address[]",
1075
+ },
1076
+ ],
1077
+ stateMutability: "view",
1078
+ type: "function",
1079
+ },
1080
+ {
1081
+ inputs: [],
1082
+ name: "getTokensOut",
1083
+ outputs: [
1084
+ {
1085
+ internalType: "address[]",
1086
+ name: "res",
1087
+ type: "address[]",
1088
+ },
1089
+ ],
1090
+ stateMutability: "view",
1091
+ type: "function",
1092
+ },
1093
+ {
1094
+ inputs: [
1095
+ {
1096
+ internalType: "bool",
1097
+ name: "isLiquidateTvl",
1098
+ type: "bool",
1099
+ },
1100
+ ],
1101
+ name: "getTvl",
1102
+ outputs: [
1103
+ {
1104
+ internalType: "uint256",
1105
+ name: "",
1106
+ type: "uint256",
1107
+ },
1108
+ ],
1109
+ stateMutability: "view",
1110
+ type: "function",
1111
+ },
1112
+ {
1113
+ inputs: [
1114
+ {
1115
+ components: [
1116
+ {
1117
+ internalType: "uint256",
1118
+ name: "buyYtIy",
1119
+ type: "uint256",
1120
+ },
1121
+ {
1122
+ internalType: "uint256",
1123
+ name: "sellYtIy",
1124
+ type: "uint256",
1125
+ },
1126
+ {
1127
+ internalType: "uint256",
1128
+ name: "targetSyRatio",
1129
+ type: "uint256",
1130
+ },
1131
+ {
1132
+ internalType: "uint256",
1133
+ name: "bufferSyRatio",
1134
+ type: "uint256",
1135
+ },
1136
+ {
1137
+ internalType: "uint256",
1138
+ name: "minYtPtRatio",
1139
+ type: "uint256",
1140
+ },
1141
+ {
1142
+ internalType: "uint256",
1143
+ name: "numOfBins",
1144
+ type: "uint256",
1145
+ },
1146
+ ],
1147
+ internalType: "struct TradingSpecs",
1148
+ name: "_specs",
1149
+ type: "tuple",
1150
+ },
1151
+ ],
1152
+ name: "initialize",
1153
+ outputs: [],
1154
+ stateMutability: "nonpayable",
1155
+ type: "function",
1156
+ },
1157
+ {
1158
+ inputs: [
1159
+ {
1160
+ internalType: "address",
1161
+ name: "token",
1162
+ type: "address",
1163
+ },
1164
+ ],
1165
+ name: "isValidTokenIn",
1166
+ outputs: [
1167
+ {
1168
+ internalType: "bool",
1169
+ name: "",
1170
+ type: "bool",
1171
+ },
1172
+ ],
1173
+ stateMutability: "view",
1174
+ type: "function",
1175
+ },
1176
+ {
1177
+ inputs: [
1178
+ {
1179
+ internalType: "address",
1180
+ name: "token",
1181
+ type: "address",
1182
+ },
1183
+ ],
1184
+ name: "isValidTokenOut",
1185
+ outputs: [
1186
+ {
1187
+ internalType: "bool",
1188
+ name: "",
1189
+ type: "bool",
1190
+ },
1191
+ ],
1192
+ stateMutability: "view",
1193
+ type: "function",
1194
+ },
1195
+ {
1196
+ inputs: [],
1197
+ name: "lastRewardBlock",
1198
+ outputs: [
1199
+ {
1200
+ internalType: "uint256",
1201
+ name: "",
1202
+ type: "uint256",
1203
+ },
1204
+ ],
1205
+ stateMutability: "view",
1206
+ type: "function",
1207
+ },
1208
+ {
1209
+ inputs: [
1210
+ {
1211
+ internalType: "uint256",
1212
+ name: "netLpToRemove",
1213
+ type: "uint256",
1214
+ },
1215
+ {
1216
+ internalType: "uint256",
1217
+ name: "minSyOut",
1218
+ type: "uint256",
1219
+ },
1220
+ ],
1221
+ name: "liquidateLpToSy",
1222
+ outputs: [
1223
+ {
1224
+ internalType: "uint256",
1225
+ name: "netSyOut",
1226
+ type: "uint256",
1227
+ },
1228
+ ],
1229
+ stateMutability: "nonpayable",
1230
+ type: "function",
1231
+ },
1232
+ {
1233
+ inputs: [],
1234
+ name: "market",
1235
+ outputs: [
1236
+ {
1237
+ internalType: "address",
1238
+ name: "",
1239
+ type: "address",
1240
+ },
1241
+ ],
1242
+ stateMutability: "view",
1243
+ type: "function",
1244
+ },
1245
+ {
1246
+ inputs: [],
1247
+ name: "name",
1248
+ outputs: [
1249
+ {
1250
+ internalType: "string",
1251
+ name: "",
1252
+ type: "string",
1253
+ },
1254
+ ],
1255
+ stateMutability: "view",
1256
+ type: "function",
1257
+ },
1258
+ {
1259
+ inputs: [
1260
+ {
1261
+ internalType: "address",
1262
+ name: "owner",
1263
+ type: "address",
1264
+ },
1265
+ ],
1266
+ name: "nonces",
1267
+ outputs: [
1268
+ {
1269
+ internalType: "uint256",
1270
+ name: "",
1271
+ type: "uint256",
1272
+ },
1273
+ ],
1274
+ stateMutability: "view",
1275
+ type: "function",
1276
+ },
1277
+ {
1278
+ inputs: [],
1279
+ name: "owner",
1280
+ outputs: [
1281
+ {
1282
+ internalType: "address",
1283
+ name: "",
1284
+ type: "address",
1285
+ },
1286
+ ],
1287
+ stateMutability: "view",
1288
+ type: "function",
1289
+ },
1290
+ {
1291
+ inputs: [],
1292
+ name: "pause",
1293
+ outputs: [],
1294
+ stateMutability: "nonpayable",
1295
+ type: "function",
1296
+ },
1297
+ {
1298
+ inputs: [],
1299
+ name: "paused",
1300
+ outputs: [
1301
+ {
1302
+ internalType: "bool",
1303
+ name: "",
1304
+ type: "bool",
1305
+ },
1306
+ ],
1307
+ stateMutability: "view",
1308
+ type: "function",
1309
+ },
1310
+ {
1311
+ inputs: [],
1312
+ name: "pendingOwner",
1313
+ outputs: [
1314
+ {
1315
+ internalType: "address",
1316
+ name: "",
1317
+ type: "address",
1318
+ },
1319
+ ],
1320
+ stateMutability: "view",
1321
+ type: "function",
1322
+ },
1323
+ {
1324
+ inputs: [
1325
+ {
1326
+ internalType: "address",
1327
+ name: "owner",
1328
+ type: "address",
1329
+ },
1330
+ {
1331
+ internalType: "address",
1332
+ name: "spender",
1333
+ type: "address",
1334
+ },
1335
+ {
1336
+ internalType: "uint256",
1337
+ name: "value",
1338
+ type: "uint256",
1339
+ },
1340
+ {
1341
+ internalType: "uint256",
1342
+ name: "deadline",
1343
+ type: "uint256",
1344
+ },
1345
+ {
1346
+ internalType: "uint8",
1347
+ name: "v",
1348
+ type: "uint8",
1349
+ },
1350
+ {
1351
+ internalType: "bytes32",
1352
+ name: "r",
1353
+ type: "bytes32",
1354
+ },
1355
+ {
1356
+ internalType: "bytes32",
1357
+ name: "s",
1358
+ type: "bytes32",
1359
+ },
1360
+ ],
1361
+ name: "permit",
1362
+ outputs: [],
1363
+ stateMutability: "nonpayable",
1364
+ type: "function",
1365
+ },
1366
+ {
1367
+ inputs: [
1368
+ {
1369
+ internalType: "address",
1370
+ name: "tokenIn",
1371
+ type: "address",
1372
+ },
1373
+ {
1374
+ internalType: "uint256",
1375
+ name: "amountTokenToDeposit",
1376
+ type: "uint256",
1377
+ },
1378
+ ],
1379
+ name: "previewDeposit",
1380
+ outputs: [
1381
+ {
1382
+ internalType: "uint256",
1383
+ name: "amountSharesOut",
1384
+ type: "uint256",
1385
+ },
1386
+ ],
1387
+ stateMutability: "view",
1388
+ type: "function",
1389
+ },
1390
+ {
1391
+ inputs: [
1392
+ {
1393
+ internalType: "address",
1394
+ name: "tokenOut",
1395
+ type: "address",
1396
+ },
1397
+ {
1398
+ internalType: "uint256",
1399
+ name: "amountSharesToRedeem",
1400
+ type: "uint256",
1401
+ },
1402
+ ],
1403
+ name: "previewRedeem",
1404
+ outputs: [
1405
+ {
1406
+ internalType: "uint256",
1407
+ name: "amountTokenOut",
1408
+ type: "uint256",
1409
+ },
1410
+ ],
1411
+ stateMutability: "view",
1412
+ type: "function",
1413
+ },
1414
+ {
1415
+ inputs: [],
1416
+ name: "proxiableUUID",
1417
+ outputs: [
1418
+ {
1419
+ internalType: "bytes32",
1420
+ name: "",
1421
+ type: "bytes32",
1422
+ },
1423
+ ],
1424
+ stateMutability: "view",
1425
+ type: "function",
1426
+ },
1427
+ {
1428
+ inputs: [],
1429
+ name: "readStrategyData",
1430
+ outputs: [
1431
+ {
1432
+ components: [
1433
+ {
1434
+ components: [
1435
+ {
1436
+ internalType: "uint256",
1437
+ name: "lpBalance",
1438
+ type: "uint256",
1439
+ },
1440
+ {
1441
+ internalType: "uint256",
1442
+ name: "ytBalance",
1443
+ type: "uint256",
1444
+ },
1445
+ {
1446
+ internalType: "uint256",
1447
+ name: "ptBalance",
1448
+ type: "uint256",
1449
+ },
1450
+ {
1451
+ internalType: "uint256",
1452
+ name: "syBalance",
1453
+ type: "uint256",
1454
+ },
1455
+ {
1456
+ internalType: "uint256",
1457
+ name: "buyBins",
1458
+ type: "uint256",
1459
+ },
1460
+ ],
1461
+ internalType: "struct BotState",
1462
+ name: "botState",
1463
+ type: "tuple",
1464
+ },
1465
+ {
1466
+ components: [
1467
+ {
1468
+ components: [
1469
+ {
1470
+ internalType: "int256",
1471
+ name: "totalPt",
1472
+ type: "int256",
1473
+ },
1474
+ {
1475
+ internalType: "int256",
1476
+ name: "totalSy",
1477
+ type: "int256",
1478
+ },
1479
+ {
1480
+ internalType: "int256",
1481
+ name: "totalLp",
1482
+ type: "int256",
1483
+ },
1484
+ {
1485
+ internalType: "address",
1486
+ name: "treasury",
1487
+ type: "address",
1488
+ },
1489
+ {
1490
+ internalType: "int256",
1491
+ name: "scalarRoot",
1492
+ type: "int256",
1493
+ },
1494
+ {
1495
+ internalType: "uint256",
1496
+ name: "expiry",
1497
+ type: "uint256",
1498
+ },
1499
+ {
1500
+ internalType: "uint256",
1501
+ name: "lnFeeRateRoot",
1502
+ type: "uint256",
1503
+ },
1504
+ {
1505
+ internalType: "uint256",
1506
+ name: "reserveFeePercent",
1507
+ type: "uint256",
1508
+ },
1509
+ {
1510
+ internalType: "uint256",
1511
+ name: "lastLnImpliedRate",
1512
+ type: "uint256",
1513
+ },
1514
+ ],
1515
+ internalType: "struct MarketState",
1516
+ name: "state",
1517
+ type: "tuple",
1518
+ },
1519
+ {
1520
+ internalType: "PYIndex",
1521
+ name: "index",
1522
+ type: "uint256",
1523
+ },
1524
+ {
1525
+ internalType: "uint256",
1526
+ name: "blockTime",
1527
+ type: "uint256",
1528
+ },
1529
+ ],
1530
+ internalType: "struct MarketExtState",
1531
+ name: "marketExt",
1532
+ type: "tuple",
1533
+ },
1534
+ {
1535
+ components: [
1536
+ {
1537
+ internalType: "uint256",
1538
+ name: "buyYtIy",
1539
+ type: "uint256",
1540
+ },
1541
+ {
1542
+ internalType: "uint256",
1543
+ name: "sellYtIy",
1544
+ type: "uint256",
1545
+ },
1546
+ {
1547
+ internalType: "uint256",
1548
+ name: "targetSyRatio",
1549
+ type: "uint256",
1550
+ },
1551
+ {
1552
+ internalType: "uint256",
1553
+ name: "bufferSyRatio",
1554
+ type: "uint256",
1555
+ },
1556
+ {
1557
+ internalType: "uint256",
1558
+ name: "minYtPtRatio",
1559
+ type: "uint256",
1560
+ },
1561
+ {
1562
+ internalType: "uint256",
1563
+ name: "numOfBins",
1564
+ type: "uint256",
1565
+ },
1566
+ ],
1567
+ internalType: "struct TradingSpecs",
1568
+ name: "specs",
1569
+ type: "tuple",
1570
+ },
1571
+ ],
1572
+ internalType: "struct StrategyData",
1573
+ name: "strategyData",
1574
+ type: "tuple",
1575
+ },
1576
+ ],
1577
+ stateMutability: "view",
1578
+ type: "function",
1579
+ },
1580
+ {
1581
+ inputs: [
1582
+ {
1583
+ internalType: "address",
1584
+ name: "receiver",
1585
+ type: "address",
1586
+ },
1587
+ {
1588
+ internalType: "uint256",
1589
+ name: "amountSharesToRedeem",
1590
+ type: "uint256",
1591
+ },
1592
+ {
1593
+ internalType: "address",
1594
+ name: "tokenOut",
1595
+ type: "address",
1596
+ },
1597
+ {
1598
+ internalType: "uint256",
1599
+ name: "minTokenOut",
1600
+ type: "uint256",
1601
+ },
1602
+ {
1603
+ internalType: "bool",
1604
+ name: "burnFromInternalBalance",
1605
+ type: "bool",
1606
+ },
1607
+ ],
1608
+ name: "redeem",
1609
+ outputs: [
1610
+ {
1611
+ internalType: "uint256",
1612
+ name: "amountTokenOut",
1613
+ type: "uint256",
1614
+ },
1615
+ ],
1616
+ stateMutability: "nonpayable",
1617
+ type: "function",
1618
+ },
1619
+ {
1620
+ inputs: [
1621
+ {
1622
+ components: [
1623
+ {
1624
+ components: [
1625
+ {
1626
+ internalType: "uint256",
1627
+ name: "guessMin",
1628
+ type: "uint256",
1629
+ },
1630
+ {
1631
+ internalType: "uint256",
1632
+ name: "guessMax",
1633
+ type: "uint256",
1634
+ },
1635
+ {
1636
+ internalType: "uint256",
1637
+ name: "guessOffchain",
1638
+ type: "uint256",
1639
+ },
1640
+ {
1641
+ internalType: "uint256",
1642
+ name: "maxIteration",
1643
+ type: "uint256",
1644
+ },
1645
+ {
1646
+ internalType: "uint256",
1647
+ name: "eps",
1648
+ type: "uint256",
1649
+ },
1650
+ ],
1651
+ internalType: "struct ApproxParams",
1652
+ name: "botParams",
1653
+ type: "tuple",
1654
+ },
1655
+ {
1656
+ components: [
1657
+ {
1658
+ internalType: "uint256",
1659
+ name: "guessMin",
1660
+ type: "uint256",
1661
+ },
1662
+ {
1663
+ internalType: "uint256",
1664
+ name: "guessMax",
1665
+ type: "uint256",
1666
+ },
1667
+ {
1668
+ internalType: "uint256",
1669
+ name: "guessOffchain",
1670
+ type: "uint256",
1671
+ },
1672
+ {
1673
+ internalType: "uint256",
1674
+ name: "maxIteration",
1675
+ type: "uint256",
1676
+ },
1677
+ {
1678
+ internalType: "uint256",
1679
+ name: "eps",
1680
+ type: "uint256",
1681
+ },
1682
+ ],
1683
+ internalType: "struct ApproxParams",
1684
+ name: "guessTotalPtToSwap",
1685
+ type: "tuple",
1686
+ },
1687
+ {
1688
+ internalType: "uint256",
1689
+ name: "minYtOut",
1690
+ type: "uint256",
1691
+ },
1692
+ {
1693
+ internalType: "uint256",
1694
+ name: "targetIy",
1695
+ type: "uint256",
1696
+ },
1697
+ {
1698
+ internalType: "int256",
1699
+ name: "currentBin",
1700
+ type: "int256",
1701
+ },
1702
+ ],
1703
+ internalType: "struct ILongYieldTradingBot.RemoveLiqToYtInput",
1704
+ name: "inputParams",
1705
+ type: "tuple",
1706
+ },
1707
+ ],
1708
+ name: "removeLiqToYt",
1709
+ outputs: [
1710
+ {
1711
+ internalType: "uint256",
1712
+ name: "netLpRemoved",
1713
+ type: "uint256",
1714
+ },
1715
+ {
1716
+ internalType: "uint256",
1717
+ name: "netYtOut",
1718
+ type: "uint256",
1719
+ },
1720
+ ],
1721
+ stateMutability: "nonpayable",
1722
+ type: "function",
1723
+ },
1724
+ {
1725
+ inputs: [
1726
+ {
1727
+ internalType: "uint256",
1728
+ name: "netLpToRemove",
1729
+ type: "uint256",
1730
+ },
1731
+ {
1732
+ internalType: "uint256",
1733
+ name: "minSyOut",
1734
+ type: "uint256",
1735
+ },
1736
+ ],
1737
+ name: "removeLiquidityToSy",
1738
+ outputs: [
1739
+ {
1740
+ internalType: "uint256",
1741
+ name: "netSyOut",
1742
+ type: "uint256",
1743
+ },
1744
+ ],
1745
+ stateMutability: "nonpayable",
1746
+ type: "function",
1747
+ },
1748
+ {
1749
+ inputs: [],
1750
+ name: "rewardIndexesCurrent",
1751
+ outputs: [
1752
+ {
1753
+ internalType: "uint256[]",
1754
+ name: "indexes",
1755
+ type: "uint256[]",
1756
+ },
1757
+ ],
1758
+ stateMutability: "nonpayable",
1759
+ type: "function",
1760
+ },
1761
+ {
1762
+ inputs: [],
1763
+ name: "rewardIndexesStored",
1764
+ outputs: [
1765
+ {
1766
+ internalType: "uint256[]",
1767
+ name: "indexes",
1768
+ type: "uint256[]",
1769
+ },
1770
+ ],
1771
+ stateMutability: "view",
1772
+ type: "function",
1773
+ },
1774
+ {
1775
+ inputs: [
1776
+ {
1777
+ internalType: "address",
1778
+ name: "",
1779
+ type: "address",
1780
+ },
1781
+ ],
1782
+ name: "rewardState",
1783
+ outputs: [
1784
+ {
1785
+ internalType: "uint128",
1786
+ name: "index",
1787
+ type: "uint128",
1788
+ },
1789
+ {
1790
+ internalType: "uint128",
1791
+ name: "lastBalance",
1792
+ type: "uint128",
1793
+ },
1794
+ ],
1795
+ stateMutability: "view",
1796
+ type: "function",
1797
+ },
1798
+ {
1799
+ inputs: [],
1800
+ name: "router",
1801
+ outputs: [
1802
+ {
1803
+ internalType: "address",
1804
+ name: "",
1805
+ type: "address",
1806
+ },
1807
+ ],
1808
+ stateMutability: "view",
1809
+ type: "function",
1810
+ },
1811
+ {
1812
+ inputs: [
1813
+ {
1814
+ components: [
1815
+ {
1816
+ internalType: "uint256",
1817
+ name: "buyYtIy",
1818
+ type: "uint256",
1819
+ },
1820
+ {
1821
+ internalType: "uint256",
1822
+ name: "sellYtIy",
1823
+ type: "uint256",
1824
+ },
1825
+ {
1826
+ internalType: "uint256",
1827
+ name: "targetSyRatio",
1828
+ type: "uint256",
1829
+ },
1830
+ {
1831
+ internalType: "uint256",
1832
+ name: "bufferSyRatio",
1833
+ type: "uint256",
1834
+ },
1835
+ {
1836
+ internalType: "uint256",
1837
+ name: "minYtPtRatio",
1838
+ type: "uint256",
1839
+ },
1840
+ {
1841
+ internalType: "uint256",
1842
+ name: "numOfBins",
1843
+ type: "uint256",
1844
+ },
1845
+ ],
1846
+ internalType: "struct TradingSpecs",
1847
+ name: "_specs",
1848
+ type: "tuple",
1849
+ },
1850
+ ],
1851
+ name: "setSpecs",
1852
+ outputs: [],
1853
+ stateMutability: "nonpayable",
1854
+ type: "function",
1855
+ },
1856
+ {
1857
+ inputs: [],
1858
+ name: "specs",
1859
+ outputs: [
1860
+ {
1861
+ internalType: "uint256",
1862
+ name: "buyYtIy",
1863
+ type: "uint256",
1864
+ },
1865
+ {
1866
+ internalType: "uint256",
1867
+ name: "sellYtIy",
1868
+ type: "uint256",
1869
+ },
1870
+ {
1871
+ internalType: "uint256",
1872
+ name: "targetSyRatio",
1873
+ type: "uint256",
1874
+ },
1875
+ {
1876
+ internalType: "uint256",
1877
+ name: "bufferSyRatio",
1878
+ type: "uint256",
1879
+ },
1880
+ {
1881
+ internalType: "uint256",
1882
+ name: "minYtPtRatio",
1883
+ type: "uint256",
1884
+ },
1885
+ {
1886
+ internalType: "uint256",
1887
+ name: "numOfBins",
1888
+ type: "uint256",
1889
+ },
1890
+ ],
1891
+ stateMutability: "view",
1892
+ type: "function",
1893
+ },
1894
+ {
1895
+ inputs: [
1896
+ {
1897
+ internalType: "int256",
1898
+ name: "ptToAccount",
1899
+ type: "int256",
1900
+ },
1901
+ {
1902
+ internalType: "int256",
1903
+ name: "syToAccount",
1904
+ type: "int256",
1905
+ },
1906
+ {
1907
+ internalType: "bytes",
1908
+ name: "data",
1909
+ type: "bytes",
1910
+ },
1911
+ ],
1912
+ name: "swapCallback",
1913
+ outputs: [],
1914
+ stateMutability: "nonpayable",
1915
+ type: "function",
1916
+ },
1917
+ {
1918
+ inputs: [
1919
+ {
1920
+ internalType: "uint256",
1921
+ name: "netYtToSell",
1922
+ type: "uint256",
1923
+ },
1924
+ {
1925
+ internalType: "uint256",
1926
+ name: "minSyOut",
1927
+ type: "uint256",
1928
+ },
1929
+ ],
1930
+ name: "swapYtToSy",
1931
+ outputs: [
1932
+ {
1933
+ internalType: "uint256",
1934
+ name: "netSyOut",
1935
+ type: "uint256",
1936
+ },
1937
+ ],
1938
+ stateMutability: "nonpayable",
1939
+ type: "function",
1940
+ },
1941
+ {
1942
+ inputs: [],
1943
+ name: "symbol",
1944
+ outputs: [
1945
+ {
1946
+ internalType: "string",
1947
+ name: "",
1948
+ type: "string",
1949
+ },
1950
+ ],
1951
+ stateMutability: "view",
1952
+ type: "function",
1953
+ },
1954
+ {
1955
+ inputs: [],
1956
+ name: "totalSupply",
1957
+ outputs: [
1958
+ {
1959
+ internalType: "uint256",
1960
+ name: "",
1961
+ type: "uint256",
1962
+ },
1963
+ ],
1964
+ stateMutability: "view",
1965
+ type: "function",
1966
+ },
1967
+ {
1968
+ inputs: [
1969
+ {
1970
+ internalType: "address",
1971
+ name: "to",
1972
+ type: "address",
1973
+ },
1974
+ {
1975
+ internalType: "uint256",
1976
+ name: "amount",
1977
+ type: "uint256",
1978
+ },
1979
+ ],
1980
+ name: "transfer",
1981
+ outputs: [
1982
+ {
1983
+ internalType: "bool",
1984
+ name: "",
1985
+ type: "bool",
1986
+ },
1987
+ ],
1988
+ stateMutability: "nonpayable",
1989
+ type: "function",
1990
+ },
1991
+ {
1992
+ inputs: [
1993
+ {
1994
+ internalType: "address",
1995
+ name: "from",
1996
+ type: "address",
1997
+ },
1998
+ {
1999
+ internalType: "address",
2000
+ name: "to",
2001
+ type: "address",
2002
+ },
2003
+ {
2004
+ internalType: "uint256",
2005
+ name: "amount",
2006
+ type: "uint256",
2007
+ },
2008
+ ],
2009
+ name: "transferFrom",
2010
+ outputs: [
2011
+ {
2012
+ internalType: "bool",
2013
+ name: "",
2014
+ type: "bool",
2015
+ },
2016
+ ],
2017
+ stateMutability: "nonpayable",
2018
+ type: "function",
2019
+ },
2020
+ {
2021
+ inputs: [
2022
+ {
2023
+ internalType: "address",
2024
+ name: "newOwner",
2025
+ type: "address",
2026
+ },
2027
+ {
2028
+ internalType: "bool",
2029
+ name: "direct",
2030
+ type: "bool",
2031
+ },
2032
+ {
2033
+ internalType: "bool",
2034
+ name: "renounce",
2035
+ type: "bool",
2036
+ },
2037
+ ],
2038
+ name: "transferOwnership",
2039
+ outputs: [],
2040
+ stateMutability: "nonpayable",
2041
+ type: "function",
2042
+ },
2043
+ {
2044
+ inputs: [],
2045
+ name: "unpause",
2046
+ outputs: [],
2047
+ stateMutability: "nonpayable",
2048
+ type: "function",
2049
+ },
2050
+ {
2051
+ inputs: [
2052
+ {
2053
+ internalType: "address",
2054
+ name: "newImplementation",
2055
+ type: "address",
2056
+ },
2057
+ ],
2058
+ name: "upgradeTo",
2059
+ outputs: [],
2060
+ stateMutability: "nonpayable",
2061
+ type: "function",
2062
+ },
2063
+ {
2064
+ inputs: [
2065
+ {
2066
+ internalType: "address",
2067
+ name: "newImplementation",
2068
+ type: "address",
2069
+ },
2070
+ {
2071
+ internalType: "bytes",
2072
+ name: "data",
2073
+ type: "bytes",
2074
+ },
2075
+ ],
2076
+ name: "upgradeToAndCall",
2077
+ outputs: [],
2078
+ stateMutability: "payable",
2079
+ type: "function",
2080
+ },
2081
+ {
2082
+ inputs: [
2083
+ {
2084
+ internalType: "address",
2085
+ name: "",
2086
+ type: "address",
2087
+ },
2088
+ {
2089
+ internalType: "address",
2090
+ name: "",
2091
+ type: "address",
2092
+ },
2093
+ ],
2094
+ name: "userReward",
2095
+ outputs: [
2096
+ {
2097
+ internalType: "uint128",
2098
+ name: "index",
2099
+ type: "uint128",
2100
+ },
2101
+ {
2102
+ internalType: "uint128",
2103
+ name: "accrued",
2104
+ type: "uint128",
2105
+ },
2106
+ ],
2107
+ stateMutability: "view",
2108
+ type: "function",
2109
+ },
2110
+ {
2111
+ inputs: [],
2112
+ name: "yieldToken",
2113
+ outputs: [
2114
+ {
2115
+ internalType: "address",
2116
+ name: "",
2117
+ type: "address",
2118
+ },
2119
+ ],
2120
+ stateMutability: "view",
2121
+ type: "function",
2122
+ },
2123
+ {
2124
+ stateMutability: "payable",
2125
+ type: "receive",
2126
+ },
2127
+ ];
2128
+
2129
+ const _bytecode =
2130
+ "0x6102808060405234620009825760808162006ceb8038038091620000248285620009a3565b83398101031262000982576200003a81620009c7565b6200004860208301620009c7565b6200006460606200005c60408601620009c7565b9401620009c7565b92604051620000738162000987565b600e81526d119bdc9d1adb9bde0815985d5b1d60921b90816020820152604051916200009f8362000987565b600e83526020830152604051630b2339af60e21b8152906060826004816001600160a01b038a165afa91821562000579576000926200095a575b5060405163313ce56760e01b81526020816004816001600160a01b0387165afa908115620005795760009162000910575b50604051936200011a8562000987565b60018552603160f81b602086015282516001600160401b038111620006c257600354600181811c9116801562000905575b6020821014620007e557601f81116200089b575b50806020601f8211600114620008125760009162000806575b508160011b916000199060031b1c1916176003555b8051906001600160401b038211620006c25760045490600182811c92168015620007fb575b6020831014620007e55781601f84931162000773575b50602090601f8311600114620006e457600092620006d8575b50508160011b916000199060031b1c1916176004555b608052600160f81b60018060f81b036002541617600255602081519101209160208151910120826101005280610120524660c0526040519260008051602062006ccb8339815191526020850152604084015260608301524660808301523060a083015260a082528160c081011060018060401b0360c084011117620006c25760c082016040528151602083012060a0523060e05260008051602062006ccb8339815191526101405260ff196038541660385560075460ff8160a81c161592838094620006b1575b801562000695575b1562000635575060ff60a01b198116600160a01b17600755826200061c575b506001600160a01b0316610160526007549060a882901c60ff1615620005c357600680546001600160a01b0319163317905562000585575b50604051630b2339af60e21b81526060816004816001600160a01b0388165afa90811562000579576000809181936200053f575b506101a09586526101c09485526001600160a01b039081166101e09081529181166102009081529281166102209081526102409485529616610180908152306102609081526040516162a99890979196909493929091908962000a228a3960805189612fd5015260a05189615cc1015260c05189615d7c015260e05189615c9201526101005189615d1001526101205189615d3601526101405189615ced01526101605189611af60152518881816107ae01528181610cb70152818161147e0152614e580152518781816103540152818161092201528181610be4015281816115ec015281816118ce015281816119e701528181612839015281816129490152818161304f015281816142820152818161496201528181614d51015281816150f8015281816151c0015261535501525186818161052d01528181612022015261493301525185818161100a01528181611197015281816112180152818161138d01528181611b8b01528181611f6d01528181613223015281816136360152818161393d01528181613bab015281816142e20152614d7c015251848181610dbc0152614dd8015251838181611ab201528181614222015281816149c20152614daa015251828181611a620152818161205a01526155190152518181816121f7015281816122ee0152612c3f0152f35b91505062000569915060603d60601162000571575b620005608183620009a3565b810190620009dc565b913862000351565b503d62000554565b6040513d6000823e3d90fd5b60ff60a81b1916600755604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1386200031d565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b61ffff60a01b191661010160a01b1760075538620002e5565b60c060849162461bcd60e51b82820152602060c4820152602e60e48201527f496e697469616c697a61626c653a20636f6e747261637420697320616c7265616101048201526d191e481a5b9a5d1a585b1a5e995960921b61012482015201fd5b50303b158015620002c65750600160ff8360a01c1614620002c6565b50600160ff8360a01c1610620002be565b634e487b7160e01b600052604160045260246000fd5b015190503880620001e1565b6004600090815293507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b91905b601f198416851062000757576001945083601f198116106200073d575b505050811b01600455620001f7565b015160001960f88460031b161c191690553880806200072e565b8181015183556020948501946001909301929091019062000711565b60046000529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f840160051c810160208510620007dd575b90849392915b601f830160051c82018110620007cd575050620001c8565b60008155859450600101620007b5565b5080620007af565b634e487b7160e01b600052602260045260246000fd5b91607f1691620001b2565b90508401513862000178565b600360009081527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b9250601f198416905b818110620008825750908360019493921062000868575b5050811b016003556200018d565b86015160001960f88460031b161c1916905538806200085a565b9192602060018192868b01518155019401920162000843565b60036000527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410620008fa575b601f0160051c01905b818110620008ed57506200015f565b60008155600101620008de565b9091508190620008d5565b90607f16906200014b565b6020813d60201162000951575b816200092c60209383620009a3565b810103126200094d57519060ff821682036200094a5750386200010a565b80fd5b5080fd5b3d91506200091d565b6200097891925060603d6060116200057157620005608183620009a3565b50509038620000d9565b600080fd5b604081019081106001600160401b03821117620006c257604052565b601f909101601f19168101906001600160401b03821190821017620006c257604052565b51906001600160a01b03821682036200098257565b90816060910312620009825780516001600160a01b0392908381168103620009825792602083015181811681036200098257604090930151908116810362000982579056fe60406080815260048036101561001f575b5050361561001d57600080fd5b005b600090813560e01c92836306fdde03146117be578363071bc3c9146131b9578363078dfbe7146136db578363095ea7b3146136aa578363105f4029146135a8578363128fced11461351857836318160ddd146134f057836320e8c565146131c5578363213cae63146131b957836323b872dd146130b95783632b4cb4b7146130905783632ccfdeef14612ff9578363313ce56714612fbb5783633644e51514612f9e5783633659cfe614612c1957836337deed8d146129895783633846b9fd1461290a5783633ba0b9a9146127f05783633f4ba83a146127265783634c6e8f81146126e65783634e71e0c81461261f5783634f1ef286146122ae57836352d1902d146121db5783635c975abb146121b75783635cbadbe4146121425783636925c60514611de357836370a0823114611da8578363769f8e5d14611b1a57836376d5de8514611ad6578363781c18db14611a92578363784367d614611a865783637cf738d214611a425783637ecebe0014611a0b57836380f55605146119c75783638195f674146118795783638456cb59146117f25783638da5cb5b146117ca57836395d89b41146117be57836396aba49214611449578363a40bee5014611371578363a7584e5e1461130a578363a9059cbb146112a4578363a9f8d18114611285578363adb7c3f71461123c578363afd27bf5146111f8578363b8f82b2614611170578363c4f59f9b1461113f578363cbe52ae314610fe4578363d505accf14610de0578363d94073d414610d9c578363da88ecb414610d6b578363dd62ed3e14610d22578363e138b2ee14610d03578363e30c397814610cdb578363e82cee7914610c97578363e83ab23c14610b8e578363ea64a82014610b2d578363eb983ce514610b01578363ebff543914610777578363ef5cfb8c14610551578363f887ea401461050d578363f8b2f99114610495578363fa483e72146102ff5750505063fa5a4f06146102f2575b3880610010565b6102fa613b80565b6102eb565b34610491576060600319360112610491576044359167ffffffffffffffff9081841161048d573660238501121561048d5783810135918083116104895760249436868583010111610485576001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168033036104435790879173__$4841977b5e630d8d12d7143ab50b0fe229$__90813b1561043f5760a486601f19601f8a8d9b8d519e8f998a9889977fbdfa09ab0000000000000000000000000000000000000000000000000000000089528801528d35828801528135604488015260806064880152826084880152018686013788858286010152011681010301915af4801561043557610412578580f35b84116104245750505281808080808580f35b60418591634e487b7160e01b835252fd5b84513d88823e3d90fd5b8380fd5b60648460168960208a519362461bcd60e51b85528401528201527f756e617574686f72697a65642063616c6c206261636b000000000000000000006044820152fd5b8680fd5b8580fd5b8480fd5b8280fd5b90503461050957816003193601126105095761050590600254906104bf60028360f81c1415613ee5565b600160f91b6001600160f81b03809316176002556104db61413b565b5050600160f81b6104ea614722565b926002541617600255519182916020835260208301906139b3565b0390f35b5080fd5b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b8290346105095760209081600319360112610491579161056f613973565b906002549361058460028660f81c1415613ee5565b600160f91b6001600160f81b03809616176002556105a183614070565b6105a96154ee565b906105b48251613fe3565b946001600160a01b0393858516815b855181101561070357866105d7828861405c565b51168352603980855285842083855285528584205490608091821c6105fc848d61405c565b52610607838c61405c565b5161061d575b505061061890614014565b6105c3565b88610628848a61405c565b5116855285528584208385528552858420906fffffffffffffffffffffffffffffffff9182815416905561065c838c61405c565b51908282116104895789610670858b61405c565b51168652603b8752828887209216908254901c039182116106f0578a8a6106e2858c6106da828e6106d56106189b9a6106e99a906fffffffffffffffffffffffffffffffff6fffffffffffffffffffffffffffffffff1983549260801b169116179055565b61405c565b51169361405c565b5191615ed8565b908c61060d565b60248560118f634e487b7160e01b835252fd5b888461050587600160f81b8e877f2193aa20a3717f5f4ac79482f4f553e5f0afe8f4e6ec3e3d1aa2e138adc4763f61075061073c6154ee565b61075d8751928392898452898401906138c1565b8281038b8401528b6139b3565b0390a26002541617600255519282849384528301906139b3565b9034610491576101a0600319360112610491576001600160a01b03926107a284600654163314613f30565b6107aa61483a565b93807f000000000000000000000000000000000000000000000000000000000000000016928451917fa76541e500000000000000000000000000000000000000000000000000000000835261080182840188613bd2565b6020926102c490848183818a5afa908115610af7578691610aca575b506101843503610a895760029061085c8851997f03270af4000000000000000000000000000000000000000000000000000000008b52858b0190613bd2565b880152610164356102e48801526000196103048801526004356103248801526024356103448801526044356103648801526064356103848801526084356103a488015260a43594856103c489015260c43590816103e48a015260e43591826104048b015261010492833591826104248d0152878c610464816101243597886104448301525afa998a15610a7f578b9c8a9b9c98999a9c610a3c575b5087519889977f2285db260000000000000000000000000000000000000000000000000000000089527f000000000000000000000000000000000000000000000000000000000000000016908801528b602488015260448701526064860152608485015260a484015260c48301526101443560e48301528173__$4841977b5e630d8d12d7143ab50b0fe229$__5af4928315610a315792610a01575b5061099c614e0b565b83516004358152602435602082015260443560408201526064356060820152608435608082015260a0810184905260c081018390527f43950417e0eb7225b8f42332a069bc35fbdf65f3d90c124210b3d3aefc3d6a409060e090a18351928352820152f35b610a22919250843d8611610a2a575b610a1a8183613aa0565b81019061478a565b509084610993565b503d610a10565b8551903d90823e3d90fd5b8a80929d508193949596979899503d8311610a78575b610a5c8183613aa0565b81010312610a7457908b969594939291519a8d6108f7565b8980fd5b503d610a52565b8b513d8b823e3d90fd5b60648385808a519262461bcd60e51b845283015260248201527f72656d6f76654c6971546f59743a2062696e20737461746520657870697265646044820152fd5b90508481813d8311610af0575b610ae18183613aa0565b8101031261048957518961081d565b503d610ad7565b88513d88823e3d90fd5b9050346105095781600319360112610509576102c090610b2b610b2261483a565b91518092613bd2565bf35b9050346105095760206003193601126105095780610505926001600160a01b03610b55613973565b168152603b60209081529190205491516fffffffffffffffffffffffffffffffff8316815260809290921c908201529081906040820190565b34610491576020610b9e366139e7565b93610bb56001600160a01b03600654163314613f30565b610c25845195869384937f448b96190000000000000000000000000000000000000000000000000000000085527f00000000000000000000000000000000000000000000000000000000000000009085016040919493926001600160a01b03606083019616825260208201520152565b038173__$4841977b5e630d8d12d7143ab50b0fe229$__5af4918215610c8d578392610c56575b6020838351908152f35b9091506020813d8211610c85575b81610c7160209383613aa0565b810103126104915760209250519083610c4c565b3d9150610c64565b81513d85823e3d90fd5b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b9050346105095781600319360112610509576020906001600160a01b03600754169051908152f35b9050346105095781600319360112610509576020906042549051908152f35b90503461050957806003193601126105095780602092610d40613973565b610d48613989565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b90503461050957816003193601126105095761050590610d89614722565b90519182916020835260208301906139b3565b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b9250346105095760e060031936011261050957610dfb613973565b610e03613989565b90604435926064356084359060ff8216820361048557804211610fa1576001600160a01b03908185169283895260056020528989208054906001820190558a519260208401917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98352868d860152858a1660608601528a608086015260a085015260c084015260c0835260e083019267ffffffffffffffff9381811085821117610f8e578c5251902090610eb5615c88565b928b519260208401947f190100000000000000000000000000000000000000000000000000000000000086526022850152604284015260428352608083019083821090821117610f7b5791610f239391610f1b938d5260c4359260a43592519020615bd3565b919091615a2f565b1603610f385750610f359394506158fb565b80f35b606490602087519162461bcd60e51b8352820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152fd5b60248b604189634e487b7160e01b835252fd5b60248c60418a634e487b7160e01b835252fd5b60648360208a519162461bcd60e51b8352820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152fd5b90346104915781600319360112610491576001600160a01b0380611006613973565b16907f00000000000000000000000000000000000000000000000000000000000000001681036111125750602061103b614d43565b6110436148f5565b92611078855194859384937fb1ef9e500000000000000000000000000000000000000000000000000000000085528401614f5d565b038173__$a7098bf20e819a81ac73f4e6e6693165f6$__5af49283156111075780936110ca575b6020836110c36110b160243588615120565b6001600160f81b036002541690615133565b9051908152f35b9092506020833d82116110ff575b816110e560209383613aa0565b810103126110fc57509051906110c36110b161109f565b80fd5b3d91506110d8565b8251903d90823e3d90fd5b60249251917f88a50561000000000000000000000000000000000000000000000000000000008352820152fd5b9050346105095781600319360112610509576105059061115d6154ee565b90519182916020835260208301906138c1565b91346110fc57826003193601126110fc57506001600160a01b0380611193613973565b16907f00000000000000000000000000000000000000000000000000000000000000001681036111cb576020836110c36024356152e9565b60249251917faeabe718000000000000000000000000000000000000000000000000000000008352820152fd5b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b90503461050957816003193601126105095760c090603c5490603d5490603e54603f549082549260415494815196875260208701528501526060840152608083015260a0820152f35b905034610509578160031936011261050957602090603a549051908152f35b905034610509578060031936011261050957602090600160f81b6112c6613973565b6112fb600254916112dd60028460f81c1415613ee5565b600160f91b6001600160f81b0380941617600255602435903361553d565b60025416176002555160018152f35b82346110fc5760c06003193601126110fc576113326001600160a01b03600654163314613f30565b610f3561133e36613ac3565b60a0908051603c556020810151603d556040810151603e556060810151603f556080810151604055015180604155604255565b8290346105095781600319360112610509576001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016926020825180927f313ce56700000000000000000000000000000000000000000000000000000000825281875afa90811561143d578391611401575b5060ff90606094835194855260208501521690820152f35b90506020813d8211611435575b8161141b60209383613aa0565b81010312610491575160ff811681036104915760606113e9565b3d915061140e565b505051903d90823e3d90fd5b3461049157610100600319360112610491576001600160a01b039061147382600654163314613f30565b61147b61483a565b917f000000000000000000000000000000000000000000000000000000000000000016916114d18251917fa76541e500000000000000000000000000000000000000000000000000000000835285830190613bd2565b6020926102c49184818481855afa9081156117b4578791611787575b5060e435036117445761153c610464859261150661483a565b906001875196879586947f03270af40000000000000000000000000000000000000000000000000000000086528c860190613bd2565b83015260c4356102e48301526000196103048301526004356103248301526024356103448301526044356103648301526064356103848301526084356103a48301526004356103c48301526024356103e48301526044356104048301526064356104248301526084356104448301525afa92831561173a578593611708575b505080517f3525e03f0000000000000000000000000000000000000000000000000000000081526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169381019384526020840183905260a435604085015291928190839081906060015b038173__$4841977b5e630d8d12d7143ab50b0fe229$__5af49182156116fe5784926116d8575b509061050591611662614e0b565b80516004358152602435602082015260443560408201526064356060820152608435608082015260a0810183905260c081018690527fba4064507fa740cdd61480d0c0ce70e6b4e0f349dda4cd52184466a3c19936439060e090a151938493846040919493926060820195825260208201520152565b816116f592955061050593503d8611610a2a57610a1a8183613aa0565b93909391611654565b81513d86823e3d90fd5b90809350813d8311611733575b61171f8183613aa0565b8101031261043f578061162d9251926115bb565b503d611715565b82513d87823e3d90fd5b505060649350519162461bcd60e51b8352820152601f60248201527f6164644c697146726f6d59743a2062696e2073746174652065787069726564006044820152fd5b90508481813d83116117ad575b61179e8183613aa0565b810103126104855751876114ed565b503d611794565b84513d89823e3d90fd5b505050506102fa61385d565b9050346105095781600319360112610509576020906001600160a01b03600654169051908152f35b90503461050957816003193601126105095760207f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2589161183e6001600160a01b03600654163314613f30565b611846613f7b565b60017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00603854161760385551338152a180f35b9250346105095760606003193601126105095780356001600160a01b03916118a683600654163314613f30565b8451927fee723a8d0000000000000000000000000000000000000000000000000000000084527f0000000000000000000000000000000000000000000000000000000000000000169083015280602483015260243560448301526044356064830152838260848173__$4841977b5e630d8d12d7143ab50b0fe229$__5af49182156119bd578392611978575b50835190815260208101839052604081018290527f48f22f4bc9aee5b703ec4521f5f611eb37d722e592a0545e957f00ce8e9bd3ec90606090a182519182526020820152f35b7f48f22f4bc9aee5b703ec4521f5f611eb37d722e592a0545e957f00ce8e9bd3ec93506119b3919250843d8611610a2a57610a1a8183613aa0565b9092509082611932565b84513d85823e3d90fd5b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b90503461050957602060031936011261050957806020926001600160a01b03611a32613973565b1681526005845220549051908152f35b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b505050506102fa613b80565b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b905034610509578160031936011261050957602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b8290346105095760a060031936011261050957611b35613973565b90602435936044356001600160a01b03908181168091036104895760643596608435928315158403611da457600294855494611b76878760f81c1415613ee5565b600160f91b6001600160f81b038097161787557f0000000000000000000000000000000000000000000000000000000000000000908382168603611d75578415611d4d5715611d3e57611bc98430615758565b611bd1614d43565b99611bda6148f5565b8951907fb1ef9e50000000000000000000000000000000000000000000000000000000008252818060209e8f9388830191611c1492614f5d565b038173__$a7098bf20e819a81ac73f4e6e6693165f6$__5af4918215611d3357918691838d96959492611cf4575b5050611c55611c709392611c6892615120565b611c62888b8d541661412e565b90615133565b9a8b91615ed8565b8a8910611cbf575090600160f81b949392918751928352888a84015216907faee47cdf925cf525fdae94f9777ee5a06cac37e1c41220d0a8a89ed154f62d1c873392a482541617905551908152f35b6044908b8a8a51927fbfee4ca00000000000000000000000000000000000000000000000000000000084528301526024820152fd5b925080939495508d8092503d8311611d2c575b611d118183613aa0565b810103126110fc575051899291908590611c55611c70611c42565b503d611d07565b8a51903d90823e3d90fd5b611d488433615758565b611bc9565b8289517fc3d83b07000000000000000000000000000000000000000000000000000000008152fd5b602483878b51917f88a50561000000000000000000000000000000000000000000000000000000008352820152fd5b8780fd5b905034610509576020600319360112610509576020906110c3611dc9613973565b6001600160a01b0316600052600060205260406000205490565b829034610509576003199281843601126104915780359367ffffffffffffffff9081861161048d5760c081873603011261048d576001600160a01b0392611e2f84600654163314613f30565b845192611e3b846139fd565b611e4688830161399f565b845260209788850193602494858301358152611e646044840161399f565b90898801918252611e776064850161399f565b9260608901938452611e8b6084860161399f565b9460808a0195865260a48101359087821161212c579060809101918236030112612124578a51956080870187811082821117612130578c52878201358881101561212c5787528d611edd8a840161399f565b9088015260448201359081116121285790611eff606492893691840101613b39565b8c88015201358015158103612124579289869593819593828f8f9c9b9a8e839860608593015260a081019b8c52600019855114612111575b511661210b575081519b5b517f443e6512000000000000000000000000000000000000000000000000000000008152308b8201527f000000000000000000000000000000000000000000000000000000000000000082168c8201528b356044820152608060648201529c511660848d01525160a48c0152511660c48a0152511660e488015251166101048601525160c0610124860152805190929091808310156120fa57505091838080938a9561014483015287868201511661016483015260606120128a83015160806101848601526101c485019061381d565b91015115156101a48301520391867f0000000000000000000000000000000000000000000000000000000000000000165af19384156120ef5780946120bb575b505061208d907f0000000000000000000000000000000000000000000000000000000000000000906006541661208782615f9a565b91615ed8565b7f52709ca3666ff5bd61f9d9d26f0dbdadd947fdadf265f3141227189da7d48463838251848152a151908152f35b909193508482813d83116120e8575b6120d48183613aa0565b810103126110fc5750519161208d85612052565b503d6120ca565b8351903d90823e3d90fd5b60218991634e487b7160e01b835252fd5b9b611f42565b61211d82825116615f9a565b8552611f37565b8b80fd5b8c80fd5b8d80fd5b898e60418b634e487b7160e01b835252fd5b9050346105095780600319360112610509578061050592612161613973565b612169613989565b6001600160a01b0391821683526039602090815284842091909216835281529190205491516fffffffffffffffffffffffffffffffff8316815260809290921c908201529081906040820190565b90503461050957816003193601126105095760209060ff6038541690519015158152f35b91346110fc57806003193601126110fc57506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361224657602082517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b6020608492519162461bcd60e51b8352820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152fd5b80600319360112610491576122c1613973565b9060243567ffffffffffffffff811161048d576122e19036908501613b39565b906001600160a01b0391827f0000000000000000000000000000000000000000000000000000000000000000169261231b84301415613cca565b61234a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc948286541614613d3b565b61235981600654163314613f30565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156123915750505050610f359150613dac565b8491929394168351947f52d1902d00000000000000000000000000000000000000000000000000000000865260209586818981865afa8991816125f0575b5061243c576084888888519162461bcd60e51b8352820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201527f6f6e206973206e6f7420555550530000000000000000000000000000000000006064820152fd5b96929496959395036125885761245184613dac565b7fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8780a2835115801590612580575b61248d575b505050505080f35b84519461249986613a2f565b602786527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c838701527f206661696c65640000000000000000000000000000000000000000000000000081870152833b15612519575050828592839261250e9695519201905af4612508613e71565b90613ea1565b508180808080612485565b91608492519162461bcd60e51b8352820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f60448201527f6e747261637400000000000000000000000000000000000000000000000000006064820152fd5b506001612480565b5060849185519162461bcd60e51b8352820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f7860448201527f6961626c655555494400000000000000000000000000000000000000000000006064820152fd5b9091508781813d8311612618575b6126088183613aa0565b81010312610a745751908a6123cf565b503d6125fe565b34610491578260031936011261049157600754906001600160a01b0392838316918233036126a3575050806006549384167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08680a37fffffffffffffffffffffffff0000000000000000000000000000000000000000809316176006551660075580f35b906020606492519162461bcd60e51b8352820152602060248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152fd5b905034610509576003193601126110fc57610f35612702613973565b61270a613989565b906127216001600160a01b03600654163314613f30565b616020565b903461049157826003193601126104915761274d6001600160a01b03600654163314613f30565b6038549060ff8216156127ad57507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff006020921660385551338152a180f35b606490602084519162461bcd60e51b8352820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152fd5b82346110fc57806003193601126110fc57612860602061280e614d43565b8451809381927fe2102e670000000000000000000000000000000000000000000000000000000083527f0000000000000000000000000000000000000000000000000000000000000000898401614f15565b038173__$a7098bf20e819a81ac73f4e6e6693165f6$__5af49081156129005782916128cf575b506001600160f81b036002541691670de0b6b3a7640000918281029281840414901517156128bc576020846110c38585615133565b80601186634e487b7160e01b6024945252fd5b90506020813d82116128f8575b816128e960209383613aa0565b81010312610509575184612887565b3d91506128dc565b83513d84823e3d90fd5b3461049157602061291a366139e7565b83517f662d1b920000000000000000000000000000000000000000000000000000000081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016958101958652602086019290925260408501529283908190606001610c25565b90346104915760c0600319360112610491576129a436613ac3565b6007549060ff8260a81c161591828093612c09575b8015612bef575b15612b8657908183740100000000000000000000000000000000000000007fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff612a41951617600755612b43575b5060a0908051603c556020810151603d556040810151603e556060810151603f556080810151604055015180604155604255565b6007549160ff8360a81c1615612ada5750337fffffffffffffffffffffffff00000000000000000000000000000000000000006006541617600655612a84578280f35b7f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498917fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff602092166007555160018152a181808280f35b608490602085519162461bcd60e51b8352820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152fd5b7fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff1675010100000000000000000000000000000000000000001760075586612a0d565b608484602087519162461bcd60e51b8352820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152fd5b50303b1580156129c05750600160ff8260a01c16146129c0565b50600160ff8260a01c16106129b9565b346104915760208060031936011261043f57612c33613973565b916001600160a01b03807f000000000000000000000000000000000000000000000000000000000000000016612c6b81301415613cca565b612c9a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc918383541614613d3b565b612ca982600654163314613f30565b8251908482019282841067ffffffffffffffff851117612f8b578385528883527f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615612d0357505050505050610f359150613dac565b86949596169085517f52d1902d00000000000000000000000000000000000000000000000000000000815287818a81865afa8a9181612f58575b50612daa576084898989519162461bcd60e51b8352820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201527f6f6e206973206e6f7420555550530000000000000000000000000000000000006064820152fd5b979395979692949603612ef057612dc086613dac565b7fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8880a2825115801590612ee9575b612dfd575b50505050505080f35b855195612e0987613a2f565b602787527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c828801527f206661696c65640000000000000000000000000000000000000000000000000081880152853b15612e8257505050612e7693928592839251915af4612508613e71565b50818080808080612df4565b60849350519162461bcd60e51b8352820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f60448201527f6e747261637400000000000000000000000000000000000000000000000000006064820152fd5b5086612def565b6084838389519162461bcd60e51b8352820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f7860448201527f6961626c655555494400000000000000000000000000000000000000000000006064820152fd5b9091508881813d8311612f84575b612f708183613aa0565b81010312612f805751908b612d3d565b8a80fd5b503d612f66565b60248960418a634e487b7160e01b835252fd5b9050346105095781600319360112610509576020906110c3615c88565b9050346105095781600319360112610509576020905160ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b34610491576020613009366139e7565b936130206001600160a01b03600654163314613f30565b610c25845195869384937f57e7540a0000000000000000000000000000000000000000000000000000000085527f00000000000000000000000000000000000000000000000000000000000000009085016040919493926001600160a01b03606083019616825260208201520152565b903461049157602060031936011261049157359182151583036110fc57506110c3602092615017565b925034610509576060600319360112610509576130d4613973565b6130dc613989565b906044359285600254956130f660028860f81c1415613ee5565b600160f91b6001600160f81b03809816176002556001600160a01b038416815260016020528181203382526020522054906000198203613145575b602087600160f81b886112fb89898961553d565b84821061317657509260209594926112fb9261316983600160f81b970333836158fb565b9250929495819450613131565b606490602088519162461bcd60e51b8352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b505050506102fa6138fe565b82906080600319360112610509576131db613973565b916131e4613989565b6044359360643594600293845497613201868a60f81c1415613ee5565b600160f91b6001600160f81b03809a161786556001600160a01b0380951694807f00000000000000000000000000000000000000000000000000000000000000001686036134c15783156134995785613420578334036133dd575b61326584615153565b98808a106133a8575084169384156133655761328890613283613f7b565b614070565b888811610509578554908989168a831601908a82116133525750938092600160f81b9694927fff000000000000000000000000000000000000000000000000000000000000008c60209d98169116178855818152808b528881206132ed8b825461412e565b90557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8b8a518c8152a3865190815287898201527f5fe47ed6d4225326d3303476197d782ded5a4e9c14f479dc9ec4992af4e85d59873392a482541617905551908152f35b836011602492634e487b7160e01b835252fd5b60648260208a519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b826044918b8b51927fbc71f2ba0000000000000000000000000000000000000000000000000000000084528301526024820152fd5b60648260208a519162461bcd60e51b8352820152600c60248201527f657468206d69736d6174636800000000000000000000000000000000000000006044820152fd5b87517f23b872dd0000000000000000000000000000000000000000000000000000000060208201523360248201523060448201528460648201526064815260a0810181811067ffffffffffffffff8211176134865789526134819087615da2565b61325c565b602485604186634e487b7160e01b835252fd5b5086517fa907f2f0000000000000000000000000000000000000000000000000000000008152fd5b602482878a51917faeabe718000000000000000000000000000000000000000000000000000000008352820152fd5b9050346105095781600319360112610509576020906001600160f81b03600254169051908152f35b82346110fc576020918260031936011261050957613534613973565b9161353d6154ee565b926135488451613fe3565b946001600160a01b0391821691835b865181101561359657808261356e6001938a61405c565b511686526039845286862085875284528686205460801c61358f828b61405c565b5201613557565b8551838152806105058186018b6139b3565b903461049157826003193601126104915760206135c3614d43565b6135cb6148f5565b92613600855194859384937fb1ef9e500000000000000000000000000000000000000000000000000000000085528401614f5d565b038173__$a7098bf20e819a81ac73f4e6e6693165f6$__5af4928315611107578093613671575b6020836110c38661366c61365a7f0000000000000000000000000000000000000000000000000000000000000000615f9a565b6001600160f81b036002541690615120565b615133565b9092506020833d82116136a2575b8161368c60209383613aa0565b810103126110fc57506110c36020925192613627565b3d915061367f565b9050346105095780600319360112610509576020906136d46136ca613973565b60243590336158fb565b5160018152f35b34610491576060600319360112610491576136f4613973565b9160243591821515830361048d57604435928315158403610489576001600160a01b0394859161372983600654163314613f30565b156137eb5716928315908115916137e3575b50156137a0575050806006549283167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08580a37fffffffffffffffffffffffff0000000000000000000000000000000000000000809216176006556007541660075580f35b906020606492519162461bcd60e51b8352820152601560248201527f4f776e61626c653a207a65726f206164647265737300000000000000000000006044820152fd5b90508661373b565b9350505050167fffffffffffffffffffffffff0000000000000000000000000000000000000000600754161760075580f35b919082519283825260005b848110613849575050601f19601f8460006020809697860101520116010190565b602081830181015184830182015201613828565b50346138bc5760006003193601126138bc5761050560405161387e81613a68565b600e81527f466f72746b6e6f78205661756c74000000000000000000000000000000000000602082015260405191829160208352602083019061381d565b600080fd5b90815180825260208080930193019160005b8281106138e1575050505090565b83516001600160a01b0316855293810193928101926001016138d3565b50346138bc5760006003193601126138bc5761050560405161391f81613a68565b600181526020368183013761393381614039565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690526040519182916020835260208301906138c1565b600435906001600160a01b03821682036138bc57565b602435906001600160a01b03821682036138bc57565b35906001600160a01b03821682036138bc57565b90815180825260208080930193019160005b8281106139d3575050505090565b8351855293810193928101926001016139c5565b60031960409101126138bc576004359060243590565b60c0810190811067ffffffffffffffff821117613a1957604052565b634e487b7160e01b600052604160045260246000fd5b6060810190811067ffffffffffffffff821117613a1957604052565b610120810190811067ffffffffffffffff821117613a1957604052565b6040810190811067ffffffffffffffff821117613a1957604052565b6080810190811067ffffffffffffffff821117613a1957604052565b90601f601f19910116810190811067ffffffffffffffff821117613a1957604052565b60031960c09101126138bc576040519060c0820182811067ffffffffffffffff821117613a1957604052816004358152602435602082015260443560408201526064356060820152608435608082015260a060a435910152565b67ffffffffffffffff8111613a1957601f01601f191660200190565b81601f820112156138bc57803590613b5082613b1d565b92613b5e6040519485613aa0565b828452602083830101116138bc57816000926020809301838601378301015290565b50346138bc5760206003193601126138bc576020613b9c613973565b604051906001600160a01b03807f0000000000000000000000000000000000000000000000000000000000000000169116148152f35b60a060406102a092613c0d85825160808091805184526020810151602085015260408101516040850152606081015160608501520151910152565b816020820151613c7a85880182518051825260208101516020830152604081015160408301526001600160a01b0360608201511660608301526080810151608083015260a081015160a083015260c081015160c083015260e081015160e083015261010080910151910152565b60208101516101c088015201516101e08601520151805161020085015260208101516102208501526040810151610240850152606081015161026085015260808101516102808501520151910152565b15613cd157565b608460405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c00000000000000000000000000000000000000006064820152fd5b15613d4257565b608460405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f6163746976652070726f787900000000000000000000000000000000000000006064820152fd5b803b15613e07576001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc91167fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055565b608460405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201527f6f74206120636f6e7472616374000000000000000000000000000000000000006064820152fd5b3d15613e9c573d90613e8282613b1d565b91613e906040519384613aa0565b82523d6000602084013e565b606090565b90919015613ead575090565b815115613ebd5750805190602001fd5b613ee19060405191829162461bcd60e51b835260206004840152602483019061381d565b0390fd5b15613eec57565b606460405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152fd5b15613f3757565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b60ff60385416613f8757565b606460405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152fd5b67ffffffffffffffff8111613a195760051b60200190565b90613fed82613fcb565b613ffa6040519182613aa0565b828152601f1961400a8294613fcb565b0190602036910137565b60001981146140235760010190565b634e487b7160e01b600052601160045260246000fd5b8051156140465760200190565b634e487b7160e01b600052603260045260246000fd5b80518210156140465760209160051b010190565b61407861413b565b908051156140b4576001600160a01b03831680151590816140a9575b5061409e57505050565b6140a792614522565b565b905030141538614094565b505050565b6140c161413b565b9181511561411b576001600160a01b039083838383168015159081614110575b506140ff575b505050831680151590816140a9575061409e57505050565b61410892614522565b3883836140e7565b9050301415386140e1565b50505050565b9190820391821161402357565b9190820180921161402357565b6141436154ee565b9061414e8251613fe3565b82511561451f57603a5443036141bc575b6000805b84518110156141b757806001600160a01b036141826141b2938861405c565b51168352603b6020526fffffffffffffffffffffffffffffffff6040842054166141ac828661405c565b52614014565b614163565b505090565b43603a556001600160f81b03600254166040908151907f7d24da4d0000000000000000000000000000000000000000000000000000000082526004308184015260019360249185838601528560448601526000916001600160a01b03958381606481838b7f0000000000000000000000000000000000000000000000000000000000000000165af180156144b9576144dd575b5080517f9262187b000000000000000000000000000000000000000000000000000000008152308382015283818681838b7f0000000000000000000000000000000000000000000000000000000000000000165af180156144b9576144c3575b5080517fef5cfb8c000000000000000000000000000000000000000000000000000000008152308382015283818681838b7f0000000000000000000000000000000000000000000000000000000000000000165af180156144b957614497575b50869583861515985b61432b575b50505050505050505061415f565b8b518110156144925782898d8a61435a86614353878261434b828861405c565b51169561405c565b5116615f9a565b91808a52603b9060209082825261437a878d205495608096871c90614121565b95818d528383528c6fffffffffffffffffffffffffffffffff98899120541694851561448a575b50614444575b868411612124578b525283878a2091166fffffffffffffffffffffffffffffffff19825416179055828211611da457828689209216908254901c01918211614432579161442661442b928b9594906fffffffffffffffffffffffffffffffff6fffffffffffffffffffffffffffffffff1983549260801b169116179055565b614014565b9091614318565b8787601188634e487b7160e01b835252fd5b92670de0b6b3a7640000808702908782041487151715614478579061446c8f61447293615133565b9061412e565b926143a7565b8d8d60118e634e487b7160e01b835252fd5b94508f6143a1565b61431d565b6144b2903d8086833e6144aa8183613aa0565b8101906154c8565b503861430f565b82513d86823e3d90fd5b6144d6903d8086833e6144aa8183613aa0565b50386142af565b3d8085833e6144ec8183613aa0565b810190828183031261048d5760208101519067ffffffffffffffff82116104895761451892910161546a565b503861424f565b90565b909291926001600160a01b038083169283151580614718575b156147025761455e906001600160a01b0316600052600060205260406000205490565b9160005b81518110156146f95782614576828461405c565b511690614583818961405c565b51826000526039906020908282526040806000208a60005283526fffffffffffffffffffffffffffffffff918282600020541680156146b7578181146146a757670de0b6b3a76400006145e26145dc6146019385614121565b8d615120565b0488600052868652836000208d6000528652836000205460801c61412e565b918382116138bc578383116138bc578051948186019686881067ffffffffffffffff891117613a19576146a2998680956144269a86521688528483890196168652600052815281600020908d600052526000209351166fffffffffffffffffffffffffffffffff1984541617835551166fffffffffffffffffffffffffffffffff6fffffffffffffffffffffffffffffffff1983549260801b169116179055565b614562565b5050505050506146a29150614014565b5093828594929394116138bc576146a296600052815281600020908a6000525260002091166fffffffffffffffffffffffffffffffff19825416179055614014565b50505050509050565b634e487b7160e01b600052600160045260246000fd5b503084141561453b565b61472a6154ee565b906147358251613fe3565b91600090815b81518110156140b457806001600160a01b036147596001938561405c565b51168452603b6020526fffffffffffffffffffffffffffffffff604085205416614783828861405c565b520161473b565b91908260409103126138bc576020825192015190565b6040519060a0820182811067ffffffffffffffff821117613a195760405260006080838281528260208201528260408201528260608201520152565b604051906147e982613a2f565b8160408051916147f883613a4b565b60009283815283602082015283838201528360608201528360808201528360a08201528360c08201528360e08201528361010082015281528260208201520152565b60409081519161484983613a2f565b6148516147a0565b83526020830161485f6147dc565b8152818401908251614870816139fd565b6000808252806020830152808583015280606083015280608083015260a082015282528461489c614d43565b90526148a66148f5565b90528151916148b4836139fd565b603c548352603d546020840152603e5481840152603f54606084015254608083015260415460a083015252565b51906001600160a01b03821682036138bc57565b6148fd6147dc565b90604080517f794052f30000000000000000000000000000000000000000000000000000000081526001600160a01b03600491817f000000000000000000000000000000000000000000000000000000000000000016838201526101208082602481867f0000000000000000000000000000000000000000000000000000000000000000165afa908115614d2057600091614c8f575b5086525082517fafd27bf5000000000000000000000000000000000000000000000000000000008152602092907f000000000000000000000000000000000000000000000000000000000000000083169084818481855afa908115614c8457600091614c4f575b508551927fd2a3584e00000000000000000000000000000000000000000000000000000000845285848281865afa938415614c4457600094614c15575b5086517f516399df00000000000000000000000000000000000000000000000000000000815260009387828481845afa918215614c0b579088949392918692614bdc575b5081614b28575b5015614a9a57505050509050905b8401524290830152565b8751809681937f3ba0b9a9000000000000000000000000000000000000000000000000000000008352165afa928315614b1c578193614aed575b505080821115614ae657505b90614a90565b9050614ae0565b9092508381813d8311614b15575b614b058183613aa0565b8101031261049157519138614ad4565b503d614afb565b508451903d90823e3d90fd5b82939491508951928380927f60e0a9e10000000000000000000000000000000000000000000000000000000082525afa908115614bd25790879392918591614b86575b506fffffffffffffffffffffffffffffffff16431438614a82565b848193949592503d8311614bcb575b614b9f8183613aa0565b8101031261043f57516fffffffffffffffffffffffffffffffff8116810361043f579086929138614b6b565b503d614b95565b88513d86823e3d90fd5b614bfd919250853d8711614c04575b614bf58183613aa0565b810190614d2b565b9038614a7b565b503d614beb565b89513d87823e3d90fd5b90938682813d8311614c3d575b614c2c8183613aa0565b810103126110fc5750519238614a37565b503d614c22565b87513d6000823e3d90fd5b908582813d8311614c7d575b614c658183613aa0565b810103126110fc5750614c77906148e1565b386149fa565b503d614c5b565b86513d6000823e3d90fd5b82813d8311614d19575b614ca38183613aa0565b810103126110fc5750835190614cb882613a4b565b80518252602081015160208301528481015185830152614cda606082016148e1565b60608301526080810151608083015260a081015160a083015260c081015160c083015260e081015160e083015261010080910151908201528038614993565b503d614c99565b85513d6000823e3d90fd5b908160209103126138bc575180151581036138bc5790565b614d4b6147a0565b90614d757f0000000000000000000000000000000000000000000000000000000000000000615f9a565b8252614da07f0000000000000000000000000000000000000000000000000000000000000000615f9a565b6060830152614dce7f0000000000000000000000000000000000000000000000000000000000000000615f9a565b6020830152614dfc7f0000000000000000000000000000000000000000000000000000000000000000615f9a565b60408301526042546080830152565b614e1361483a565b614e47604051917fa76541e50000000000000000000000000000000000000000000000000000000083526004830190613bd2565b6020816102c4816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa908115614f0957600091614ed8575b506042547f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81116138bc576000828201928312911290801582169115161761402357600081126138bc57604255565b906020823d8211614f01575b81614ef160209383613aa0565b810103126110fc57505138614e89565b3d9150614ee4565b6040513d6000823e3d90fd5b9160206140a79294936001600160a01b0360c0820196168152019060808091805184526020810151602085015260408101516040850152606081015160608501520151910152565b90929160406101e091614f9d8461020081019760808091805184526020810151602085015260408101516040850152606081015160608501520151910152565b61500560a0850182518051825260208101516020830152604081015160408301526001600160a01b0360608201511660608301526080810151608083015260a081015160a083015260c081015160c083015260e081015160e083015261010080910151910152565b60208101516101c08501520151910152565b156150bf576150666020615029614d43565b6150316148f5565b9060405193849283927fb1ef9e5000000000000000000000000000000000000000000000000000000000845260048401614f5d565b038173__$a7098bf20e819a81ac73f4e6e6693165f6$__5af4908115614f0957600091615091575090565b906020823d82116150b7575b816150aa60209383613aa0565b810103126110fc57505190565b3d915061509d565b61506660206150cc614d43565b604051809381927fe2102e670000000000000000000000000000000000000000000000000000000083527f000000000000000000000000000000000000000000000000000000000000000060048401614f15565b8181029291811591840414171561402357565b811561513d570490565b634e487b7160e01b600052601260045260246000fd5b61515b614d43565b906151646148f5565b6001600160f81b03928360025416156152e25773__$a7098bf20e819a81ac73f4e6e6693165f6$__91604051927fe2102e670000000000000000000000000000000000000000000000000000000084526020928385806151e8847f000000000000000000000000000000000000000000000000000000000000000060048401614f15565b0381855af4948515614f09576000956152b3575b50918391615239936040518095819482937fb1ef9e5000000000000000000000000000000000000000000000000000000000845260048401614f5d565b03915af4918215614f0957600092615280575b505091615272611c629261451f95948082116000146152785750935b6002541682615120565b92614121565b905093615268565b81819392933d83116152ac575b6152978183613aa0565b810103126110fc575051615272611c6261524c565b503d61528d565b90948482813d83116152db575b6152ca8183613aa0565b810103126110fc57505193836151fc565b503d6152c0565b5050905090565b6001600160f81b0360025416801561546657615303614d43565b61530b6148f5565b9073__$a7098bf20e819a81ac73f4e6e6693165f6$__91604051927fe2102e6700000000000000000000000000000000000000000000000000000000845260209283858061537d847f000000000000000000000000000000000000000000000000000000000000000060048401614f15565b0381855af4948515614f0957600095615437575b509183916153ce936040518095819482937fb1ef9e5000000000000000000000000000000000000000000000000000000000845260048401614f5d565b03915af4918215614f0957600092615406575b50509161366c9161451f94938082116000146153fe575092615120565b905092615120565b81819392933d8311615430575b61541d8183613aa0565b810103126110fc5750518161451f6153e1565b503d615413565b90948482813d831161545f575b61544e8183613aa0565b810103126110fc5750519383615391565b503d615444565b5090565b81601f820112156138bc5780519161548183613fcb565b9261548f6040519485613aa0565b808452602092838086019260051b8201019283116138bc578301905b8282106154b9575050505090565b815181529083019083016154ab565b906020828203126138bc57815167ffffffffffffffff81116138bc5761451f920161546a565b604051906154fb82613a68565b600182526020368184013761550f82614039565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169052565b90916001600160a01b03918281169283156156ee57841693841561568457848414615640576155739161556e613f7b565b6140b9565b6000828152806020526040812054918083106155d657604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9587602096528286520382822055868152206155cb82825461412e565b9055604051908152a3565b608460405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152fd5b606460405162461bcd60e51b815260206004820152601760248201527f45524332303a207472616e7366657220746f2073656c660000000000000000006044820152fd5b608460405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152fd5b608460405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152fd5b6001600160a01b0381169081156158915761577590613283613f7b565b600091818352826020526040832054818110615827578190838552846020520360408420556001600160f81b0380821161043f57600254908083168183160381811161581357917fff000000000000000000000000000000000000000000000000000000000000007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef949260209416911617600255604051908152a3565b602486634e487b7160e01b81526011600452fd5b608460405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f63650000000000000000000000000000000000000000000000000000000000006064820152fd5b608460405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f73000000000000000000000000000000000000000000000000000000000000006064820152fd5b6001600160a01b038091169182156159c6571691821561595c5760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b608460405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152fd5b608460405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152fd5b6005811015615bbd5780615a405750565b60018103615a8c57606460405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152fd5b60028103615ad857606460405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152fd5b60038103615b4a57608460405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b600414615b5357565b608460405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b634e487b7160e01b600052602160045260246000fd5b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311615c7c5760ff16601b81141580615c71575b615c65579160809493916020936040519384528484015260408301526060820152600093849182805260015afa15615c585781516001600160a01b03811615615c52579190565b50600190565b50604051903d90823e3d90fd5b50505050600090600490565b50601c811415615c0b565b50505050600090600390565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016301480615d79575b15615ce3577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f000000000000000000000000000000000000000000000000000000000000000082527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a08152615d73816139fd565b51902090565b507f00000000000000000000000000000000000000000000000000000000000000004614615cba565b6001600160a01b03169060405190615db982613a68565b6020928383527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656484840152803b15615e945760008281928287615e059796519301915af1612508613e71565b80519081615e1257505050565b8280615e22938301019101614d2b565b15615e2a5750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152fd5b6064846040519062461bcd60e51b82526004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152fd5b82156140b4576001600160a01b039081169081615f4e575050600080809381935af1615f02613e71565b5015615f0a57565b606460405162461bcd60e51b815260206004820152600f60248201527f6574682073656e64206661696c656400000000000000000000000000000000006044820152fd5b926140a793604051937fa9059cbb000000000000000000000000000000000000000000000000000000006020860152166024840152604483015260448252615f9582613a84565b615da2565b6000906001600160a01b031680615fb15750504790565b6020602491604051928380927f70a082310000000000000000000000000000000000000000000000000000000082523060048301525afa918215616014578092615ffa57505090565b9091506020823d82116150b757816150aa60209383613aa0565b604051903d90823e3d90fd5b906001600160a01b039182811690811561411b576040918251809581957fdd62ed3e0000000000000000000000000000000000000000000000000000000083523060048401521691826024830152602096879160449788915afa80156162685760009061622f575b6b7fffffffffffffffffffffff9150106160a4575b5050505050565b8251906000808784017f095ea7b3000000000000000000000000000000000000000000000000000000009485825284602482015282898201528881526160e981613a84565b519082875af16160f7613e71565b816161ff575b50156161bd57916000929183809386519089820193845260248201526000198882015287815261612c81613a84565b51925af1616138613e71565b8161618d575b501561614b57808061609d565b606492917f5361666520417070726f7665000000000000000000000000000000000000000091519262461bcd60e51b84526004840152600c6024840152820152fd5b805180159250859083156161a5575b5050503861613e565b6161b59350820181019101614d2b565b38848161619c565b6064867f5361666520417070726f766500000000000000000000000000000000000000008787519262461bcd60e51b84526004840152600c6024840152820152fd5b80518015925088908315616217575b505050386160fd565b6162279350820181019101614d2b565b38878161620e565b8682813d8311616261575b6162448183613aa0565b810103126110fc57506b7fffffffffffffffffffffff9051616088565b503d61623a565b84513d6000823e3d90fdfea2646970667358221220e00fdbaa9351916dd403e6fa9fe8020a5a23dd64baf015fa252312e83912bc1e64736f6c634300081100338b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f";
2131
+
2132
+ type LongYieldTradingBotConstructorParams =
2133
+ | [linkLibraryAddresses: LongYieldTradingBotLibraryAddresses, signer?: Signer]
2134
+ | ConstructorParameters<typeof ContractFactory>;
2135
+
2136
+ const isSuperArgs = (
2137
+ xs: LongYieldTradingBotConstructorParams
2138
+ ): xs is ConstructorParameters<typeof ContractFactory> => {
2139
+ return (
2140
+ typeof xs[0] === "string" ||
2141
+ (Array.isArray as (arg: any) => arg is readonly any[])(xs[0]) ||
2142
+ "_isInterface" in xs[0]
2143
+ );
2144
+ };
2145
+
2146
+ export class LongYieldTradingBot__factory extends ContractFactory {
2147
+ constructor(...args: LongYieldTradingBotConstructorParams) {
2148
+ if (isSuperArgs(args)) {
2149
+ super(...args);
2150
+ } else {
2151
+ const [linkLibraryAddresses, signer] = args;
2152
+ super(
2153
+ _abi,
2154
+ LongYieldTradingBot__factory.linkBytecode(linkLibraryAddresses),
2155
+ signer
2156
+ );
2157
+ }
2158
+ this.contractName = "LongYieldTradingBot";
2159
+ }
2160
+
2161
+ static linkBytecode(
2162
+ linkLibraryAddresses: LongYieldTradingBotLibraryAddresses
2163
+ ): string {
2164
+ let linkedBytecode = _bytecode;
2165
+
2166
+ linkedBytecode = linkedBytecode.replace(
2167
+ new RegExp("__\\$4841977b5e630d8d12d7143ab50b0fe229\\$__", "g"),
2168
+ linkLibraryAddresses[
2169
+ "contracts/core/TradingBot/libraries/LongYieldActionLib.sol:LongYieldActionLib"
2170
+ ]
2171
+ .replace(/^0x/, "")
2172
+ .toLowerCase()
2173
+ );
2174
+
2175
+ linkedBytecode = linkedBytecode.replace(
2176
+ new RegExp("__\\$a7098bf20e819a81ac73f4e6e6693165f6\\$__", "g"),
2177
+ linkLibraryAddresses[
2178
+ "contracts/core/TradingBot/libraries/TvlLib.sol:TvlLib"
2179
+ ]
2180
+ .replace(/^0x/, "")
2181
+ .toLowerCase()
2182
+ );
2183
+
2184
+ return linkedBytecode;
2185
+ }
2186
+
2187
+ deploy(
2188
+ _market: string,
2189
+ _router: string,
2190
+ _PENDLE: string,
2191
+ _decisionHelper: string,
2192
+ overrides?: Overrides & { from?: string | Promise<string> }
2193
+ ): Promise<LongYieldTradingBot> {
2194
+ return super.deploy(
2195
+ _market,
2196
+ _router,
2197
+ _PENDLE,
2198
+ _decisionHelper,
2199
+ overrides || {}
2200
+ ) as Promise<LongYieldTradingBot>;
2201
+ }
2202
+ getDeployTransaction(
2203
+ _market: string,
2204
+ _router: string,
2205
+ _PENDLE: string,
2206
+ _decisionHelper: string,
2207
+ overrides?: Overrides & { from?: string | Promise<string> }
2208
+ ): TransactionRequest {
2209
+ return super.getDeployTransaction(
2210
+ _market,
2211
+ _router,
2212
+ _PENDLE,
2213
+ _decisionHelper,
2214
+ overrides || {}
2215
+ );
2216
+ }
2217
+ attach(address: string): LongYieldTradingBot {
2218
+ return super.attach(address) as LongYieldTradingBot;
2219
+ }
2220
+ connect(signer: Signer): LongYieldTradingBot__factory {
2221
+ return super.connect(signer) as LongYieldTradingBot__factory;
2222
+ }
2223
+ static readonly contractName: "LongYieldTradingBot";
2224
+ public readonly contractName: "LongYieldTradingBot";
2225
+ static readonly bytecode = _bytecode;
2226
+ static readonly abi = _abi;
2227
+ static createInterface(): LongYieldTradingBotInterface {
2228
+ return new utils.Interface(_abi) as LongYieldTradingBotInterface;
2229
+ }
2230
+ static connect(
2231
+ address: string,
2232
+ signerOrProvider: Signer | Provider
2233
+ ): LongYieldTradingBot {
2234
+ return new Contract(address, _abi, signerOrProvider) as LongYieldTradingBot;
2235
+ }
2236
+ }
2237
+
2238
+ export interface LongYieldTradingBotLibraryAddresses {
2239
+ ["contracts/core/TradingBot/libraries/LongYieldActionLib.sol:LongYieldActionLib"]: string;
2240
+ ["contracts/core/TradingBot/libraries/TvlLib.sol:TvlLib"]: string;
2241
+ }