@pendle/core-v2 2.18.1 → 2.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (442) 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/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
  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/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  19. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  20. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  22. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  25. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  26. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  27. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  28. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  31. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  32. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -2
  33. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
  35. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  36. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
  37. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  39. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.json +19 -0
  42. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +21 -2
  44. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  46. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
  50. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
  54. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +4 -0
  55. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +1189 -0
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +4 -0
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.json +10 -0
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +4 -0
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.json +322 -0
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +4 -0
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/{Thena/ThenaPreview.sol/IThenaSY.json → BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.json} +4 -4
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +4 -0
  71. package/build/artifacts/contracts/core/StandardizedYield/implementations/{CamelotV1Volatile/CamelotV1Preview.sol/ICamelotSY.json → BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.json} +4 -17
  72. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +4 -0
  73. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.json +10 -0
  74. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +4 -0
  75. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.json +234 -0
  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/MetaStable/MetaStablePreview.sol/MetaStablePreview.json +2 -2
  78. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.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/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  83. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.json +2 -28
  85. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +4 -0
  86. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.json +10 -0
  87. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +4 -0
  88. package/build/artifacts/contracts/core/StandardizedYield/implementations/{Thena/ThenaLpHelper.sol/ThenaLpHelper.json → CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.json} +2 -54
  89. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +4 -0
  90. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.json +338 -0
  91. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +4 -0
  92. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +1433 -0
  93. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  94. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  95. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  96. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  97. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  98. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.json +2 -2
  99. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  100. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.json +2 -2
  101. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  102. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.json +2 -2
  103. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  104. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  105. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
  106. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +4 -0
  107. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +976 -0
  108. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
  109. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
  110. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  111. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  112. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
  113. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
  114. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
  115. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
  116. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.dbg.json +4 -0
  117. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.json +979 -0
  118. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  119. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  120. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  121. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  122. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  123. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  124. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  125. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  126. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  127. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  128. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  129. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
  130. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  131. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
  132. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  133. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  134. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.json +2 -2
  135. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  136. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +4 -0
  137. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.json +1172 -0
  138. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  139. package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.dbg.json +4 -0
  140. package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.json +42 -0
  141. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
  142. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.json +0 -13
  143. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
  144. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.json +0 -13
  145. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
  146. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.json +0 -26
  147. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  148. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  149. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  150. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.json +82 -6
  151. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  152. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +22 -22
  153. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  154. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  155. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.json +42 -4
  156. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  157. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  158. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  159. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  160. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  161. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  162. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.json +19 -0
  163. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  164. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.json +19 -0
  165. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  166. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  167. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +146 -32
  168. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  169. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  170. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  171. package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +4 -0
  172. package/build/artifacts/contracts/{core/StandardizedYield/implementations/Thena/ThenaMath.sol/ThenaMath.json → offchain-helpers/BoringLpSeller.sol/BoringLpSeller.json} +2 -2
  173. package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  174. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  175. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
  176. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  177. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
  178. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +4 -0
  179. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +10 -0
  180. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.dbg.json +4 -0
  181. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.json +97 -0
  182. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  183. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  184. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  185. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  186. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  187. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +84 -8
  188. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  189. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +24 -24
  190. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  191. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +44 -6
  192. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  193. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  194. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  195. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  196. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  197. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +4 -0
  198. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +10 -0
  199. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
  200. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +2 -2
  201. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
  202. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +2 -2
  203. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +4 -0
  204. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.json +166 -0
  205. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
  206. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +2 -2
  207. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
  208. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.json +2 -2
  209. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  210. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
  211. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  212. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
  213. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  214. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  215. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  216. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
  217. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  218. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  219. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
  220. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +2 -2
  221. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  222. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  223. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  224. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  225. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  226. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  227. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  228. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +4 -0
  229. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +60 -0
  230. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +4 -0
  231. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/{ethereum/IAggregationExecutor.sol → IAggregationExecutor.sol}/IAggregationExecutor.json +1 -1
  232. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +4 -0
  233. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/{arbitrum/IExecutorHelper1.sol/IExecutorHelper1.json → IExecutorHelper.sol/IExecutorHelper.json} +147 -2
  234. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IHashflow.sol/IHashflow.dbg.json +4 -0
  235. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/{ethereum/IHashflow.sol → IHashflow.sol}/IHashflow.json +1 -1
  236. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +4 -0
  237. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/{arbitrum/IMetaAggregationRouterV2.sol → IMetaAggregationRouterV2.sol}/IMetaAggregationRouterV2.json +1 -1
  238. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +4 -0
  239. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/{arbitrum/KyberHelperArbitrum.sol/KyberHelperArbitrum.json → KyberInputScalingHelper.sol/KyberInputScalingHelper.json} +2 -2
  240. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +4 -0
  241. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.json +10 -0
  242. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +4 -0
  243. package/contracts/core/Market/PendleGauge.sol +3 -2
  244. package/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol +108 -0
  245. package/contracts/interfaces/BinanceEth/IWBETH.sol +9 -0
  246. package/contracts/interfaces/IPActionInfoStatic.sol +8 -7
  247. package/contracts/interfaces/IPActionMarketAuxStatic.sol +21 -14
  248. package/contracts/interfaces/IPActionMarketCoreStatic.sol +70 -67
  249. package/contracts/interfaces/IPActionMintRedeemStatic.sol +23 -11
  250. package/contracts/interfaces/IPGauge.sol +3 -0
  251. package/contracts/interfaces/IPRouterStatic.sol +5 -1
  252. package/contracts/offchain-helpers/BoringLpSeller.sol +47 -0
  253. package/contracts/offchain-helpers/BulkSellerOffchain.sol +11 -8
  254. package/contracts/offchain-helpers/PtAndLpToAsset.sol +62 -0
  255. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +14 -11
  256. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +96 -37
  257. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +88 -80
  258. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +43 -14
  259. package/contracts/oracles/samples/PendleLpGlpOracle.sol +49 -0
  260. package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2024.json +6 -6
  261. package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2025.json +10 -0
  262. package/deployments/56-core.json +28 -0
  263. package/deployments/56-markets/THENA-FRXETH-ETH-JUNE2024.json +10 -0
  264. package/deployments/56-markets/WBETH-DEC2024.json +10 -0
  265. package/deployments/56-offchain-helper.json +4 -0
  266. package/package.json +1 -1
  267. package/typechain-types/ActionMarketAuxStatic.ts +191 -38
  268. package/typechain-types/ActionMarketCoreStatic.ts +600 -134
  269. package/typechain-types/ActionMintRedeemStatic.ts +92 -26
  270. package/typechain-types/BotActionCallback.ts +763 -0
  271. package/typechain-types/BotActionHelper.ts +763 -0
  272. package/typechain-types/BotDecisionHelper.ts +527 -0
  273. package/typechain-types/BotDecisionLib.ts +335 -0
  274. package/typechain-types/CamelotRewardHelper.ts +0 -60
  275. package/typechain-types/IBotDecisionHelper.ts +507 -0
  276. package/typechain-types/ICamelotNFTPool.ts +0 -19
  277. package/typechain-types/ICamelotNitroPool.ts +0 -19
  278. package/typechain-types/ICamelotPair.ts +0 -42
  279. package/typechain-types/ILongYieldTradingBot.ts +1008 -0
  280. package/typechain-types/IPActionMarketAuxStatic.ts +191 -38
  281. package/typechain-types/IPActionMarketCoreStatic.ts +600 -134
  282. package/typechain-types/IPActionMintRedeemStatic.ts +92 -26
  283. package/typechain-types/IPGauge.ts +23 -3
  284. package/typechain-types/IPMarket.ts +18 -0
  285. package/typechain-types/IPRouterStatic.ts +888 -197
  286. package/typechain-types/ITradingBotBase.ts +523 -0
  287. package/typechain-types/IWBETH.ts +128 -0
  288. package/typechain-types/LongYieldTradingBot.ts +1468 -0
  289. package/typechain-types/MarketExtLib.ts +81 -0
  290. package/typechain-types/PendleBinanceEth.ts +1229 -0
  291. package/typechain-types/PendleGauge.ts +23 -3
  292. package/typechain-types/PendleLpGlpOracle.ts +145 -0
  293. package/typechain-types/PendleMarket.ts +18 -0
  294. package/typechain-types/PendleThenaSY.ts +153 -0
  295. package/typechain-types/PendleWbEthSY.ts +1229 -0
  296. package/typechain-types/PtAndLpToAsset.ts +136 -0
  297. package/typechain-types/ThenaLpHelper.ts +19 -0
  298. package/typechain-types/ThenaMath.ts +87 -0
  299. package/typechain-types/ThenaPreview.ts +19 -0
  300. package/typechain-types/TradingBotBase.ts +719 -0
  301. package/typechain-types/TradingBotOffchain.ts +568 -0
  302. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  303. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  304. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +83 -7
  305. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +23 -23
  306. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +43 -5
  307. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  308. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  309. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  310. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  311. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  312. package/typechain-types/factories/BotActionCallback__factory.ts +678 -0
  313. package/typechain-types/factories/BotActionHelper__factory.ts +678 -0
  314. package/typechain-types/factories/BotDecisionHelper__factory.ts +1123 -0
  315. package/typechain-types/factories/BotDecisionLib__factory.ts +642 -0
  316. package/typechain-types/factories/Broadcaster__factory.ts +1 -1
  317. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  318. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  319. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  320. package/typechain-types/factories/CamelotRewardHelper__factory.ts +1 -27
  321. package/typechain-types/factories/IBotDecisionHelper__factory.ts +932 -0
  322. package/typechain-types/factories/ICamelotNFTPool__factory.ts +0 -13
  323. package/typechain-types/factories/ICamelotNitroPool__factory.ts +0 -13
  324. package/typechain-types/factories/ICamelotPair__factory.ts +0 -26
  325. package/typechain-types/factories/ILongYieldTradingBot__factory.ts +1172 -0
  326. package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +82 -6
  327. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +22 -22
  328. package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +42 -4
  329. package/typechain-types/factories/IPGauge__factory.ts +19 -0
  330. package/typechain-types/factories/IPMarket__factory.ts +19 -0
  331. package/typechain-types/factories/IPRouterStatic__factory.ts +146 -32
  332. package/typechain-types/factories/ITradingBotBase__factory.ts +455 -0
  333. package/typechain-types/factories/IWBETH__factory.ts +51 -0
  334. package/typechain-types/factories/LongYieldTradingBot__factory.ts +1836 -0
  335. package/typechain-types/factories/MarketExtLib__factory.ts +74 -0
  336. package/typechain-types/factories/MetaStablePreview__factory.ts +1 -1
  337. package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +27 -2
  338. package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
  339. package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
  340. package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
  341. package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
  342. package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
  343. package/typechain-types/factories/PendleBinanceEth__factory.ts +1052 -0
  344. package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
  345. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  346. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  347. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  348. package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
  349. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  350. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  351. package/typechain-types/factories/PendleGauge__factory.ts +19 -0
  352. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  353. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  354. package/typechain-types/factories/PendleLpGlpOracle__factory.ts +246 -0
  355. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  356. package/typechain-types/factories/PendleMarket__factory.ts +20 -1
  357. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  358. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  359. package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
  360. package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
  361. package/typechain-types/factories/PendlePtUsdChainlinkOracle__factory.ts +1 -1
  362. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  363. package/typechain-types/factories/PendleRouterHelper__factory.ts +1 -1
  364. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  365. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  366. package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
  367. package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
  368. package/typechain-types/factories/PendleThenaSY__factory.ts +85 -1
  369. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  370. package/typechain-types/factories/PendleWbEthSY__factory.ts +1049 -0
  371. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  372. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  373. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  374. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
  375. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  376. package/typechain-types/factories/PtAndLpToAsset__factory.ts +150 -0
  377. package/typechain-types/factories/SAPE__factory.ts +1 -1
  378. package/typechain-types/factories/ThenaLpHelper__factory.ts +13 -0
  379. package/typechain-types/factories/ThenaMath__factory.ts +36 -0
  380. package/typechain-types/factories/ThenaPreview__factory.ts +14 -1
  381. package/typechain-types/factories/TradingBotBase__factory.ts +628 -0
  382. package/typechain-types/factories/TradingBotOffchain__factory.ts +1133 -0
  383. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  384. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  385. package/typechain-types/hardhat.d.ts +45 -0
  386. package/typechain-types/index.ts +10 -0
  387. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1LpHelper.sol/CamelotV1LpHelper.dbg.json +0 -4
  388. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1LpHelper.sol/CamelotV1LpHelper.json +0 -128
  389. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1Math.sol/CamelotV1Math.dbg.json +0 -4
  390. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1Math.sol/CamelotV1Math.json +0 -10
  391. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1Preview.sol/CamelotV1Preview.dbg.json +0 -4
  392. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1Preview.sol/CamelotV1Preview.json +0 -254
  393. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1Preview.sol/ICamelotSY.dbg.json +0 -4
  394. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1SY.sol/PendleCamelotV1SY.dbg.json +0 -4
  395. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1SY.sol/PendleCamelotV1SY.json +0 -1495
  396. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.dbg.json +0 -4
  397. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.json +0 -1182
  398. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaLpHelper.sol/ThenaLpHelper.dbg.json +0 -4
  399. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaMath.sol/ThenaMath.dbg.json +0 -4
  400. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/IThenaSY.dbg.json +0 -4
  401. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/ThenaPreview.dbg.json +0 -4
  402. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/ThenaPreview.json +0 -254
  403. package/build/artifacts/contracts/interfaces/IPendlePreviewHelper.sol/IPendlePreviewHelper.dbg.json +0 -4
  404. package/build/artifacts/contracts/interfaces/IPendlePreviewHelper.sol/IPendlePreviewHelper.json +0 -59
  405. package/build/artifacts/contracts/interfaces/Thena/IThenaFactory.sol/IThenaFactory.dbg.json +0 -4
  406. package/build/artifacts/contracts/interfaces/Thena/IThenaFactory.sol/IThenaFactory.json +0 -152
  407. package/build/artifacts/contracts/interfaces/Thena/IThenaGaugeV2.sol/IThenaGaugeV2.dbg.json +0 -4
  408. package/build/artifacts/contracts/interfaces/Thena/IThenaGaugeV2.sol/IThenaGaugeV2.json +0 -71
  409. package/build/artifacts/contracts/interfaces/Thena/IThenaPair.sol/IThenaPair.dbg.json +0 -4
  410. package/build/artifacts/contracts/interfaces/Thena/IThenaPair.sol/IThenaPair.json +0 -409
  411. package/build/artifacts/contracts/interfaces/Thena/IThenaRouter.sol/IThenaRouter.dbg.json +0 -4
  412. package/build/artifacts/contracts/interfaces/Thena/IThenaRouter.sol/IThenaRouter.json +0 -188
  413. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +0 -4
  414. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.json +0 -160
  415. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +0 -4
  416. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.json +0 -10
  417. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapArbitrum.sol/PendleSwapArbitrum.dbg.json +0 -4
  418. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapArbitrum.sol/PendleSwapArbitrum.json +0 -76
  419. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapEthereum.sol/PendleSwapEthereum.dbg.json +0 -4
  420. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapEthereum.sol/PendleSwapEthereum.json +0 -76
  421. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +0 -4
  422. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IAggregationExecutor.sol/IAggregationExecutor.json +0 -65
  423. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper1.sol/IExecutorHelper1.dbg.json +0 -4
  424. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper2.sol/IExecutorHelper2.dbg.json +0 -4
  425. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper2.sol/IExecutorHelper2.json +0 -40
  426. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IHashflow.sol/IHashflow.dbg.json +0 -4
  427. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IHashflow.sol/IHashflow.json +0 -101
  428. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +0 -4
  429. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/KyberHelperArbitrum.sol/KyberHelperArbitrum.dbg.json +0 -4
  430. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/ScaleDataHelperArbitrum.sol/ScaleDataHelperArbitrum.dbg.json +0 -4
  431. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/ScaleDataHelperArbitrum.sol/ScaleDataHelperArbitrum.json +0 -10
  432. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +0 -4
  433. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.dbg.json +0 -4
  434. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.json +0 -388
  435. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IHashflow.sol/IHashflow.dbg.json +0 -4
  436. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +0 -4
  437. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.json +0 -215
  438. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/KyberHelperEthereum.sol/KyberHelperEthereum.dbg.json +0 -4
  439. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/KyberHelperEthereum.sol/KyberHelperEthereum.json +0 -10
  440. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/ScaleDataHelperEthereum.sol/ScaleDataHelperEthereum.dbg.json +0 -4
  441. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/ScaleDataHelperEthereum.sol/ScaleDataHelperEthereum.json +0 -10
  442. /package/deployments/42161-markets/{RETH-ARBITRUM-JUNE2024.json → RETH-ARBITRUM-JUNE2025.json} +0 -0
@@ -0,0 +1,47 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity 0.8.17;
3
+ import "../interfaces/IPMarket.sol";
4
+
5
+ abstract contract BoringLpSeller {
6
+ bytes internal constant EMPTY_BYTES = abi.encode();
7
+
8
+ constructor() {}
9
+
10
+ /// @dev slippage control should be done on a higher level with the returned parameter
11
+ /// @param market market address
12
+ /// @param netLpIn amount of Lp to sell
13
+ /// @param tokenOut should be included in SY.getTokensOut()
14
+ /// @return netTokenOut amount of token out
15
+ function _sellLpForToken(
16
+ address market,
17
+ uint256 netLpIn,
18
+ address tokenOut
19
+ ) internal returns (uint256 netTokenOut) {
20
+ (IStandardizedYield SY, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market)
21
+ .readTokens();
22
+
23
+ IPMarket(market).transfer(market, netLpIn);
24
+
25
+ uint256 netSyToRedeem;
26
+
27
+ if (PT.isExpired()) {
28
+ (uint256 netSyRemoved, ) = IPMarket(market).burn(address(SY), address(YT), netLpIn);
29
+ uint256 netSyFromPt = YT.redeemPY(address(SY));
30
+ netSyToRedeem = netSyRemoved + netSyFromPt;
31
+ } else {
32
+ (uint256 netSyRemoved, uint256 netPtRemoved) = IPMarket(market).burn(
33
+ address(SY),
34
+ market,
35
+ netLpIn
36
+ );
37
+ (uint256 netSySwappedOut, ) = IPMarket(market).swapExactPtForSy(
38
+ address(SY),
39
+ netPtRemoved,
40
+ EMPTY_BYTES
41
+ );
42
+ netSyToRedeem = netSyRemoved + netSySwappedOut;
43
+ }
44
+
45
+ netTokenOut = SY.redeem(address(this), netSyToRedeem, tokenOut, 0, true);
46
+ }
47
+ }
@@ -3,15 +3,16 @@ pragma solidity 0.8.17;
3
3
 
4
4
  import "../core/BulkSeller/BulkSellerMathCore.sol";
5
5
  import "../core/BulkSeller/BulkSeller.sol";
6
- import "hardhat/console.sol";
7
6
 
8
7
  contract BulkSellerOffchain {
9
8
  using BulkSellerMathCore for BulkSellerState;
10
9
  using Math for uint256;
11
10
 
12
- function calcCurrentRates(
13
- IPBulkSeller bulk
14
- ) external view returns (uint256 rateTokenToSy, uint256 rateSyToToken) {
11
+ function calcCurrentRates(IPBulkSeller bulk)
12
+ external
13
+ view
14
+ returns (uint256 rateTokenToSy, uint256 rateSyToToken)
15
+ {
15
16
  BulkSellerState memory state = bulk.readState();
16
17
  address SY = bulk.SY();
17
18
  address token = bulk.token();
@@ -30,12 +31,14 @@ contract BulkSellerOffchain {
30
31
  }
31
32
  }
32
33
 
33
- function getCurrentState(
34
- IPBulkSeller bulk
35
- )
34
+ function getCurrentState(IPBulkSeller bulk)
36
35
  external
37
36
  view
38
- returns (BulkSellerState memory state, uint256 tokenProp, uint256 hypoTokenBal)
37
+ returns (
38
+ BulkSellerState memory state,
39
+ uint256 tokenProp,
40
+ uint256 hypoTokenBal
41
+ )
39
42
  {
40
43
  state = bulk.readState();
41
44
 
@@ -0,0 +1,62 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity 0.8.17;
3
+
4
+ import "../interfaces/IPMarket.sol";
5
+ import "../core/libraries/math/Math.sol";
6
+ import "../core/Market/MarketMathCore.sol";
7
+
8
+ contract PtAndLpToAsset {
9
+ using Math for int256;
10
+ using Math for uint256;
11
+ using MarketMathCore for MarketState;
12
+
13
+ function getLpToAssetRate(IPMarket market) public view returns (uint256 lpToAssetRate) {
14
+ MarketState memory state = market.readState(address(0));
15
+ uint256 pyIndexCurrent = _getPYIndexCurrent(market);
16
+ MarketPreCompute memory comp = state.getMarketPreCompute(
17
+ PYIndex.wrap(pyIndexCurrent),
18
+ block.timestamp
19
+ );
20
+
21
+ int256 totalHypotheticalAsset = comp.totalAsset +
22
+ state.totalPt.mulDown(int256(_getPtToAssetRate(market, state, pyIndexCurrent)));
23
+
24
+ lpToAssetRate = uint256(totalHypotheticalAsset.divDown(state.totalLp));
25
+ }
26
+
27
+ function getPtToAssetRate(IPMarket market) public view returns (uint256 ptToAssetRate) {
28
+ MarketState memory state = market.readState(address(0));
29
+ return _getPtToAssetRate(market, state, _getPYIndexCurrent(market));
30
+ }
31
+
32
+ function _getPtToAssetRate(
33
+ IPMarket market,
34
+ MarketState memory state,
35
+ uint256 pyIndexCurrent
36
+ ) internal view returns (uint256 ptToAssetRate) {
37
+ if (state.expiry <= block.timestamp) {
38
+ (IStandardizedYield SY, , ) = market.readTokens();
39
+ return (SY.exchangeRate().divDown(pyIndexCurrent));
40
+ }
41
+ uint256 timeToExpiry = state.expiry - block.timestamp;
42
+ int256 assetToPtRate = MarketMathCore._getExchangeRateFromImpliedRate(
43
+ state.lastLnImpliedRate,
44
+ timeToExpiry
45
+ );
46
+
47
+ ptToAssetRate = uint256(Math.IONE.divDown(assetToPtRate));
48
+ }
49
+
50
+ function _getPYIndexCurrent(IPMarket market) private view returns (uint256) {
51
+ (IStandardizedYield SY, , IPYieldToken YT) = market.readTokens();
52
+
53
+ uint256 syIndex = SY.exchangeRate();
54
+ uint256 pyIndexStored = YT.pyIndexStored();
55
+
56
+ if (YT.doCacheIndexSameBlock() && YT.pyIndexLastUpdatedBlock() == block.number) {
57
+ return pyIndexStored;
58
+ } else {
59
+ return Math.max(syIndex, pyIndexStored);
60
+ }
61
+ }
62
+ }
@@ -21,9 +21,11 @@ contract ActionInfoStatic is IPActionInfoStatic {
21
21
  }
22
22
 
23
23
  /// can be SY, PY or Market
24
- function getTokensInOut(
25
- address token
26
- ) external view returns (address[] memory tokensIn, address[] memory tokensOut) {
24
+ function getTokensInOut(address token)
25
+ external
26
+ view
27
+ returns (address[] memory tokensIn, address[] memory tokensOut)
28
+ {
27
29
  try IStandardizedYield(token).getTokensIn() returns (address[] memory res) {
28
30
  return (res, IStandardizedYield(token).getTokensOut());
29
31
  } catch {}
@@ -78,10 +80,10 @@ contract ActionInfoStatic is IPActionInfoStatic {
78
80
  res.unclaimedRewards = _zipTokenAmounts(rewardTokens, rewardsOut);
79
81
  }
80
82
 
81
- function getUserMarketInfo(
82
- address market,
83
- address user
84
- ) external returns (UserMarketInfo memory res) {
83
+ function getUserMarketInfo(address market, address user)
84
+ external
85
+ returns (UserMarketInfo memory res)
86
+ {
85
87
  IPMarket _market = IPMarket(market);
86
88
  MarketState memory state = _market.readState(address(this));
87
89
 
@@ -105,10 +107,11 @@ contract ActionInfoStatic is IPActionInfoStatic {
105
107
  res.unclaimedRewards = _zipTokenAmounts(rewardTokens, rewardsOut);
106
108
  }
107
109
 
108
- function _zipTokenAmounts(
109
- address[] memory tokens,
110
- uint256[] memory amounts
111
- ) internal pure returns (TokenAmount[] memory res) {
110
+ function _zipTokenAmounts(address[] memory tokens, uint256[] memory amounts)
111
+ internal
112
+ pure
113
+ returns (TokenAmount[] memory res)
114
+ {
112
115
  res = new TokenAmount[](tokens.length);
113
116
 
114
117
  for (uint256 i = 0; i < tokens.length; i++) {
@@ -13,10 +13,9 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
13
13
  using PYIndexLib for PYIndex;
14
14
  using PYIndexLib for IPYieldToken;
15
15
 
16
- function getMarketState(
17
- address market
18
- )
16
+ function getMarketState(address market)
19
17
  public
18
+ view
20
19
  returns (
21
20
  address pt,
22
21
  address yt,
@@ -26,9 +25,7 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
26
25
  MarketState memory state
27
26
  )
28
27
  {
29
- (IStandardizedYield SY, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market)
30
- .readTokens();
31
-
28
+ (IStandardizedYield SY, IPPrincipalToken PT, IPYieldToken YT) = _readTokens(market);
32
29
  pt = address(PT);
33
30
  yt = address(YT);
34
31
  sy = address(SY);
@@ -37,10 +34,11 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
37
34
  marketExchangeRateExcludeFee = getTradeExchangeRateExcludeFee(market, state);
38
35
  }
39
36
 
40
- function getTradeExchangeRateExcludeFee(
41
- address market,
42
- MarketState memory state
43
- ) public returns (uint256) {
37
+ function getTradeExchangeRateExcludeFee(address market, MarketState memory state)
38
+ public
39
+ view
40
+ returns (uint256)
41
+ {
44
42
  if (IPMarket(market).isExpired()) return Math.ONE;
45
43
 
46
44
  MarketPreCompute memory comp = state.getMarketPreCompute(
@@ -57,10 +55,11 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
57
55
  return preFeeExchangeRate.Uint();
58
56
  }
59
57
 
60
- function getTradeExchangeRateIncludeFee(
61
- address market,
62
- int256 netPtOut
63
- ) public returns (uint256) {
58
+ function getTradeExchangeRateIncludeFee(address market, int256 netPtOut)
59
+ public
60
+ view
61
+ returns (uint256)
62
+ {
64
63
  if (IPMarket(market).isExpired()) return Math.ONE;
65
64
 
66
65
  int256 netPtToAccount = netPtOut;
@@ -88,19 +87,21 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
88
87
  }
89
88
  }
90
89
 
91
- function calcPriceImpactPt(
92
- address market,
93
- int256 netPtOut
94
- ) public returns (uint256 priceImpact) {
90
+ function calcPriceImpactPt(address market, int256 netPtOut)
91
+ public
92
+ view
93
+ returns (uint256 priceImpact)
94
+ {
95
95
  uint256 preTradeRate = getTradeExchangeRateIncludeFee(market, _getSign(netPtOut));
96
96
  uint256 tradedRate = getTradeExchangeRateIncludeFee(market, netPtOut);
97
97
  priceImpact = _calculateImpact(preTradeRate, tradedRate);
98
98
  }
99
99
 
100
- function calcPriceImpactYt(
101
- address market,
102
- int256 netPtOut
103
- ) public returns (uint256 priceImpact) {
100
+ function calcPriceImpactYt(address market, int256 netPtOut)
101
+ public
102
+ view
103
+ returns (uint256 priceImpact)
104
+ {
104
105
  uint256 ytPreTradeRate = _calcVirtualYTPrice(
105
106
  getTradeExchangeRateIncludeFee(market, _getSign(netPtOut))
106
107
  );
@@ -110,10 +111,11 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
110
111
  priceImpact = _calculateImpact(ytPreTradeRate, ytTradedRate);
111
112
  }
112
113
 
113
- function calcPriceImpactPY(
114
- address market,
115
- int256 netPtOut
116
- ) public returns (uint256 priceImpact) {
114
+ function calcPriceImpactPY(address market, int256 netPtOut)
115
+ public
116
+ view
117
+ returns (uint256 priceImpact)
118
+ {
117
119
  uint256 ptPreTradeRate = getTradeExchangeRateIncludeFee(market, _getSign(netPtOut));
118
120
  uint256 ytPreTradeRate = _calcVirtualYTPrice(ptPreTradeRate);
119
121
  uint256 ptTradeRate = getTradeExchangeRateIncludeFee(market, netPtOut);
@@ -124,6 +126,50 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
124
126
  priceImpact = _calculateImpact(pyPreTradeRate, pyTradeRate);
125
127
  }
126
128
 
129
+ function getLpToSyRate(address market) public view returns (uint256) {
130
+ (IStandardizedYield SY, , ) = _readTokens(market);
131
+ return getLpToAssetRate(market).divDown(SY.exchangeRate());
132
+ }
133
+
134
+ function getPtToSyRate(address market) public view returns (uint256) {
135
+ (IStandardizedYield SY, , ) = _readTokens(market);
136
+ return getPtToAssetRate(market).divDown(SY.exchangeRate());
137
+ }
138
+
139
+ function getLpToAssetRate(address market) public view returns (uint256) {
140
+ MarketState memory state = _readState(market);
141
+ PYIndex pyIndexCurrent = _pyIndex(market);
142
+ MarketPreCompute memory comp = state.getMarketPreCompute(pyIndexCurrent, block.timestamp);
143
+
144
+ int256 totalHypotheticalAsset = comp.totalAsset +
145
+ state.totalPt.mulDown(int256(_getPtToAssetRate(market, state, pyIndexCurrent)));
146
+
147
+ return uint256(totalHypotheticalAsset.divDown(state.totalLp));
148
+ }
149
+
150
+ function getPtToAssetRate(address market) public view returns (uint256) {
151
+ MarketState memory state = _readState(market);
152
+ return _getPtToAssetRate(market, state, _pyIndex(market));
153
+ }
154
+
155
+ function _getPtToAssetRate(
156
+ address market,
157
+ MarketState memory state,
158
+ PYIndex pyIndexCurrent
159
+ ) internal view returns (uint256 ptToAssetRate) {
160
+ if (state.expiry <= block.timestamp) {
161
+ (IStandardizedYield SY, , ) = _readTokens(market);
162
+ return (SY.exchangeRate().divDown(PYIndex.unwrap(pyIndexCurrent)));
163
+ }
164
+ uint256 timeToExpiry = state.expiry - block.timestamp;
165
+ int256 assetToPtRate = MarketMathCore._getExchangeRateFromImpliedRate(
166
+ state.lastLnImpliedRate,
167
+ timeToExpiry
168
+ );
169
+
170
+ ptToAssetRate = uint256(Math.IONE.divDown(assetToPtRate));
171
+ }
172
+
127
173
  function _getPtImpliedYield(address market) internal view returns (int256) {
128
174
  MarketState memory state = _readState(market);
129
175
 
@@ -131,9 +177,11 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
131
177
  return lnImpliedRate.exp();
132
178
  }
133
179
 
134
- function _calcVirtualYTPrice(
135
- uint256 ptAssetExchangeRate
136
- ) private pure returns (uint256 ytAssetExchangeRate) {
180
+ function _calcVirtualYTPrice(uint256 ptAssetExchangeRate)
181
+ private
182
+ pure
183
+ returns (uint256 ytAssetExchangeRate)
184
+ {
137
185
  // 1 asset = EX pt
138
186
  // 1 pt = 1/EX Asset
139
187
  // 1 yt + 1/EX Asset = 1 Asset
@@ -146,20 +194,31 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
146
194
  return IPMarket(market).readState(address(this));
147
195
  }
148
196
 
197
+ function _readTokens(address market)
198
+ internal
199
+ view
200
+ returns (
201
+ IStandardizedYield _SY,
202
+ IPPrincipalToken _PT,
203
+ IPYieldToken _YT
204
+ )
205
+ {
206
+ return IPMarket(market).readTokens();
207
+ }
208
+
149
209
  function _getSign(int256 netPtOut) private pure returns (int256) {
150
210
  return netPtOut > 0 ? int256(1) : int256(-1);
151
211
  }
152
212
 
153
- function _calculateImpact(
154
- uint256 rateBefore,
155
- uint256 rateTraded
156
- ) private pure returns (uint256 impact) {
213
+ function _calculateImpact(uint256 rateBefore, uint256 rateTraded)
214
+ private
215
+ pure
216
+ returns (uint256 impact)
217
+ {
157
218
  impact = (rateBefore.Int() - rateTraded.Int()).abs().divDown(rateBefore);
158
219
  }
159
220
 
160
- function _pyIndex(address market) internal returns (PYIndex index) {
161
- (, , IPYieldToken YT) = IPMarket(market).readTokens();
162
-
163
- return YT.newIndex();
221
+ function _pyIndex(address market) private view returns (PYIndex) {
222
+ return PYIndex.wrap(IPRouterStatic(address(this)).pyIndexCurrentViewMarket(market));
164
223
  }
165
224
  }