@pendle/core-v2 3.0.0 → 4.0.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 (691) 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/PendleMerkleDistributor.sol/PendleMerkleDistributor.dbg.json +1 -1
  15. package/build/artifacts/contracts/LiquidityMining/PendleMerkleDistributor.sol/PendleMerkleDistributor.json +2 -2
  16. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  18. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
  19. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +2 -2
  20. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  22. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  25. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  26. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  27. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  28. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  31. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  32. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  33. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  34. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  36. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  38. package/build/artifacts/contracts/core/Market/PendleExternalRewardDistributor.sol/PendleExternalRewardDistributor.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/Market/PendleExternalRewardDistributor.sol/PendleExternalRewardDistributor.json +2 -2
  40. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  43. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  45. package/build/artifacts/contracts/core/Market/v2/PendleGaugeV2.sol/PendleGaugeV2.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/Market/v2/PendleMarketFactoryV2.sol/PendleMarketFactoryV2.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/Market/v2/PendleMarketFactoryV2.sol/PendleMarketFactoryV2.json +2 -2
  48. package/build/artifacts/contracts/core/Market/v2/PendleMarketV2.sol/PendleMarketV2.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/Market/v2/PendleMarketV2.sol/PendleMarketV2.json +2 -2
  50. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.json +2 -2
  52. package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.json +2 -2
  54. package/build/artifacts/contracts/core/RewardManager/PendleLinearDistributor.sol/PendleLinearDistributor.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/RewardManager/PendleLinearDistributor.sol/PendleLinearDistributor.json +2 -2
  56. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  60. package/build/artifacts/contracts/core/StandardizedYield/SYBaseUpg.sol/SYBaseUpg.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  62. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewardsUpg.sol/SYBaseWithRewardsUpg.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
  64. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol/PendleAaveV3SY.dbg.json +4 -0
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol/PendleAaveV3SY.json +1057 -0
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/libraries/AaveAdapterLib.sol/AaveAdapterLib.dbg.json +4 -0
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/libraries/AaveAdapterLib.sol/AaveAdapterLib.json +10 -0
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/libraries/WadRayMath.sol/WadRayMath.dbg.json +4 -0
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/libraries/WadRayMath.sol/WadRayMath.json +10 -0
  71. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.json +2 -2
  73. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  74. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
  75. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.json +2 -2
  77. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraSwEthBbAWethSYV2.sol/AuraSwEthBbAWethSYV2.dbg.json +1 -1
  78. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraSwEthBbAWethSYV2.sol/AuraSwEthBbAWethSYV2.json +2 -2
  79. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraWethVethSYUpg.sol/AuraWethVethSYUpg.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraWethVethSYUpg.sol/AuraWethVethSYUpg.json +2 -2
  81. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +2 -2
  83. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
  85. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
  87. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
  89. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
  90. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
  91. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.dbg.json +1 -1
  92. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.json +2 -2
  93. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
  94. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
  95. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewProxy.sol/ComposableStablePreviewProxy.dbg.json +1 -1
  96. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV4.sol/ComposableStablePreviewV4.dbg.json +1 -1
  97. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV5.sol/ComposableStablePreviewV5.dbg.json +1 -1
  98. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
  99. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
  100. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
  101. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
  102. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
  103. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  104. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
  105. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV3Upg.sol/PendleAuraBalancerStableLPSYV3Upg.dbg.json +1 -1
  106. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
  107. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  108. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  109. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  110. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  111. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  112. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
  113. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.json +2 -2
  114. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
  115. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.json +2 -2
  116. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
  117. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
  118. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.json +2 -2
  119. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
  120. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +2 -2
  121. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.dbg.json +1 -1
  122. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.json +2 -2
  123. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.dbg.json +1 -1
  124. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  125. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  126. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  127. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  128. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  129. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  130. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  131. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  132. package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/FluxTokenLib.sol/FluxTokenLib.dbg.json +1 -1
  133. package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/FluxTokenLib.sol/FluxTokenLib.json +2 -2
  134. package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/PendleFluxLendingSY.sol/PendleFluxLendingSY.dbg.json +1 -1
  135. package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/PendleFluxLendingSY.sol/PendleFluxLendingSY.json +2 -2
  136. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +1 -1
  137. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/GMTokenPricingHelper.dbg.json +1 -1
  138. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/IGMXV2DataStore.dbg.json +1 -1
  139. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/IGMXV2Oracle.dbg.json +1 -1
  140. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/IGMXV2Reader.dbg.json +1 -1
  141. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGMV2TokenSY.sol/PendleGMV2TokenSY.dbg.json +1 -1
  142. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGMV2TokenSY.sol/PendleGMV2TokenSY.json +2 -2
  143. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  144. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
  145. package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/HLPPricingHelper.sol/HLPPricingHelper.dbg.json +1 -1
  146. package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/PendleHlpSY.sol/PendleHlpSY.dbg.json +1 -1
  147. package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/PendleHlpSY.sol/PendleHlpSY.json +2 -2
  148. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/KyberMathHelper.sol/KyberMathHelper.dbg.json +1 -1
  149. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/KyberNftManagerBaseUpg.sol/KyberNftManagerBaseUpg.dbg.json +1 -1
  150. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/PendleKyberElasticSYUpg.sol/PendleKyberElasticSYUpg.dbg.json +1 -1
  151. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/PendleKyberElasticSYUpg.sol/PendleKyberElasticSYUpg.json +2 -2
  152. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/FullMath.sol/FullMath.dbg.json +1 -1
  153. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/LiqDeltaMath.sol/LiqDeltaMath.dbg.json +1 -1
  154. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/LiquidityMath.sol/LiquidityMath.dbg.json +1 -1
  155. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/MathConstants.sol/MathConstants.dbg.json +1 -1
  156. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/QtyDeltaMath.sol/QtyDeltaMath.dbg.json +1 -1
  157. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/QuadMath.sol/QuadMath.dbg.json +1 -1
  158. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/ReinvestmentMath.sol/ReinvestmentMath.dbg.json +1 -1
  159. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/SafeCast.sol/SafeCast.dbg.json +1 -1
  160. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/SwapMath.sol/SwapMath.dbg.json +1 -1
  161. package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/libraries/TickMath.sol/TickMath.dbg.json +1 -1
  162. package/build/artifacts/contracts/core/StandardizedYield/implementations/MUX/MlpPricingHelper.sol/MlpPricingHelper.dbg.json +1 -1
  163. package/build/artifacts/contracts/core/StandardizedYield/implementations/MUX/PendleMlpSY.sol/PendleMlpSY.dbg.json +1 -1
  164. package/build/artifacts/contracts/core/StandardizedYield/implementations/MUX/PendleMlpSY.sol/PendleMlpSY.json +2 -2
  165. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.dbg.json +1 -1
  166. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.json +2 -2
  167. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.dbg.json +1 -1
  168. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.json +2 -2
  169. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +1 -1
  170. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +2 -2
  171. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleBridgedLSDSY.sol/PendleBridgedLSDSY.dbg.json +1 -1
  172. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleBridgedLSDSY.sol/PendleBridgedLSDSY.json +2 -2
  173. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol/PendleERC4626SY.dbg.json +1 -1
  174. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol/PendleERC4626SY.json +2 -2
  175. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleEUSDSY.sol/PendleEUSDSY.dbg.json +1 -1
  176. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleEUSDSY.sol/PendleEUSDSY.json +2 -2
  177. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
  178. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
  179. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  180. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  181. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
  182. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
  183. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
  184. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
  185. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.dbg.json +1 -1
  186. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.json +2 -2
  187. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  188. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  189. package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveSY.sol/PendleSiloWithIncentiveSY.dbg.json +1 -1
  190. package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveSY.sol/PendleSiloWithIncentiveSY.json +2 -2
  191. package/build/artifacts/contracts/core/StandardizedYield/implementations/Stader/PendleETHXSY.sol/PendleETHXSY.dbg.json +1 -1
  192. package/build/artifacts/contracts/core/StandardizedYield/implementations/Stader/PendleETHXSY.sol/PendleETHXSY.json +2 -2
  193. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.dbg.json +1 -1
  194. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.json +2 -2
  195. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.dbg.json +1 -1
  196. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.json +2 -2
  197. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaLpHelper.sol/ThenaLpHelper.dbg.json +1 -1
  198. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaMath.sol/ThenaMath.dbg.json +1 -1
  199. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/IThenaSY.dbg.json +1 -1
  200. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/ThenaPreview.dbg.json +1 -1
  201. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  202. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  203. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  204. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  205. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  206. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  207. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  208. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  209. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  210. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.json +2 -2
  211. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  212. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
  213. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  214. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
  215. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  216. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  217. package/build/artifacts/contracts/core/erc20/PendleERC20PermitUpg.sol/PendleERC20PermitUpg.dbg.json +1 -1
  218. package/build/artifacts/contracts/core/erc20/PendleERC20Upg.sol/PendleERC20Upg.dbg.json +1 -1
  219. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  220. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  221. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  222. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  223. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  224. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  225. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +18 -50
  226. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  227. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
  228. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  229. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  230. package/build/artifacts/contracts/core/libraries/math/PMath.sol/PMath.dbg.json +1 -1
  231. package/build/artifacts/contracts/interfaces/AaveV3/IAaveV3AToken.sol/IAaveV3AToken.dbg.json +4 -0
  232. package/build/artifacts/contracts/interfaces/AaveV3/IAaveV3AToken.sol/IAaveV3AToken.json +99 -0
  233. package/build/artifacts/contracts/interfaces/AaveV3/IAaveV3Pool.sol/IAaveV3Pool.dbg.json +4 -0
  234. package/build/artifacts/contracts/interfaces/AaveV3/IAaveV3Pool.sol/IAaveV3Pool.json +87 -0
  235. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  236. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
  237. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
  238. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
  239. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
  240. package/build/artifacts/contracts/interfaces/Balancer/IPComposableStablePreview.sol/IPComposableStablePreview.dbg.json +1 -1
  241. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  242. package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.dbg.json +1 -1
  243. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTFactory.sol/ICamelotNFTFactory.dbg.json +1 -1
  244. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTHandler.sol/ICamelotNFTHandler.dbg.json +1 -1
  245. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
  246. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
  247. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPoolFactory.sol/ICamelotNitroPoolFactory.dbg.json +1 -1
  248. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
  249. package/build/artifacts/contracts/interfaces/Camelot/ICamelotRouter.sol/ICamelotRouter.dbg.json +1 -1
  250. package/build/artifacts/contracts/interfaces/Camelot/IXGrail.sol/IXGrail.dbg.json +1 -1
  251. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
  252. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  253. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
  254. package/build/artifacts/contracts/interfaces/Flux/IFluxErc20.sol/IFluxErc20.dbg.json +1 -1
  255. package/build/artifacts/contracts/interfaces/Flux/IFluxInterestRateModel.sol/IFluxInterestRateModel.dbg.json +1 -1
  256. package/build/artifacts/contracts/interfaces/GMX/IGMXPriceHelper.sol/IGMXPriceHelper.dbg.json +1 -1
  257. package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
  258. package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +1 -1
  259. package/build/artifacts/contracts/interfaces/HMX/IHLPStaking.sol/IHLPStaking.dbg.json +1 -1
  260. package/build/artifacts/contracts/interfaces/HMX/IHMXCalculator.sol/IHMXCalculator.dbg.json +1 -1
  261. package/build/artifacts/contracts/interfaces/HMX/IHMXCompounder.sol/IHMXCompounder.dbg.json +1 -1
  262. package/build/artifacts/contracts/interfaces/HMX/IHMXStaking.sol/IHMXStaking.dbg.json +1 -1
  263. package/build/artifacts/contracts/interfaces/HMX/IHMXVester.sol/IHMXVester.dbg.json +1 -1
  264. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
  265. package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
  266. package/build/artifacts/contracts/interfaces/IDailLikePermit.sol/IDaiLikePermit.dbg.json +4 -0
  267. package/build/artifacts/contracts/interfaces/IDailLikePermit.sol/IDaiLikePermit.json +59 -0
  268. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +1 -1
  269. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +1 -1
  270. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  271. package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
  272. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +4 -0
  273. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.json +2614 -0
  274. package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +4 -0
  275. package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.json +68 -0
  276. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  277. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  278. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  279. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  280. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +4 -0
  281. package/build/artifacts/contracts/interfaces/{IPActionMintRedeem.sol/IPActionMintRedeem.json → IPActionMiscV3.sol/IPActionMiscV3.json} +269 -22
  282. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  283. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +4 -0
  284. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.json +1185 -0
  285. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +4 -0
  286. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.json +1364 -0
  287. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +4 -0
  288. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.json +6215 -0
  289. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  290. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  291. package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +1 -1
  292. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  293. package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +1 -1
  294. package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
  295. package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
  296. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
  297. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
  298. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitOrderType.dbg.json +4 -0
  299. package/build/artifacts/contracts/{router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.json → interfaces/IPLimitRouter.sol/IPLimitOrderType.json} +2 -2
  300. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +4 -0
  301. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.json +541 -0
  302. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.dbg.json +4 -0
  303. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.json +45 -0
  304. package/build/artifacts/contracts/interfaces/IPLinearDistributor.sol/IPLinearDistributor.dbg.json +1 -1
  305. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  306. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  307. package/build/artifacts/contracts/interfaces/IPMarketFactoryV2.sol/IPMarketFactoryV2.dbg.json +1 -1
  308. package/build/artifacts/contracts/interfaces/IPMarketFactoryV3.sol/IPMarketFactoryV3.dbg.json +1 -1
  309. package/build/artifacts/contracts/interfaces/IPMarketV3.sol/IPMarketV3.dbg.json +1 -1
  310. package/build/artifacts/contracts/interfaces/IPOffchainStorage.sol/IPOffchainStorage.dbg.json +1 -1
  311. package/build/artifacts/contracts/interfaces/IPPriceFeed.sol/IPPriceFeed.dbg.json +1 -1
  312. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  313. package/build/artifacts/contracts/interfaces/IPPtOracle.sol/IPPtOracle.dbg.json +1 -1
  314. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  315. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.json +0 -25
  316. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  317. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  318. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  319. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  320. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
  321. package/build/artifacts/contracts/interfaces/IPendlePreviewHelper.sol/IPendlePreviewHelper.dbg.json +1 -1
  322. package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
  323. package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
  324. package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
  325. package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
  326. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
  327. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  328. package/build/artifacts/contracts/interfaces/IStargateLP.sol/IStargateLP.dbg.json +1 -1
  329. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  330. package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
  331. package/build/artifacts/contracts/interfaces/Kyber/IKyberElasticFactory.sol/IKyberElasticFactory.dbg.json +1 -1
  332. package/build/artifacts/contracts/interfaces/Kyber/IKyberElasticPool.sol/IKyberElasticPool.dbg.json +1 -1
  333. package/build/artifacts/contracts/interfaces/Kyber/IKyberElasticRouter.sol/IKyberElasticRouter.dbg.json +1 -1
  334. package/build/artifacts/contracts/interfaces/Kyber/IKyberLiquidityMining.sol/IKyberLiquidityMining.dbg.json +1 -1
  335. package/build/artifacts/contracts/interfaces/Kyber/IKyberMathHelper.sol/IKyberMathHelper.dbg.json +1 -1
  336. package/build/artifacts/contracts/interfaces/Kyber/IKyberPositionManager.sol/IKyberPositionManager.dbg.json +1 -1
  337. package/build/artifacts/contracts/interfaces/Lybra/IEUSD.sol/IEUSD.dbg.json +1 -1
  338. package/build/artifacts/contracts/interfaces/MUX/IMUXRewardRouter.sol/IMUXRewardRouter.dbg.json +1 -1
  339. package/build/artifacts/contracts/interfaces/Silo/ISilo.sol/ISilo.dbg.json +1 -1
  340. package/build/artifacts/contracts/interfaces/Silo/ISiloIncentiveController.sol/ISiloIncentiveController.dbg.json +1 -1
  341. package/build/artifacts/contracts/interfaces/Silo/ISiloLens.sol/ISiloLens.dbg.json +1 -1
  342. package/build/artifacts/contracts/interfaces/Stader/IStaderStakeManager.sol/IStaderStakeManager.dbg.json +1 -1
  343. package/build/artifacts/contracts/interfaces/Thena/IThenaFactory.sol/IThenaFactory.dbg.json +1 -1
  344. package/build/artifacts/contracts/interfaces/Thena/IThenaGaugeV2.sol/IThenaGaugeV2.dbg.json +1 -1
  345. package/build/artifacts/contracts/interfaces/Thena/IThenaPair.sol/IThenaPair.dbg.json +1 -1
  346. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +4 -0
  347. package/build/artifacts/contracts/{core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json → limit/LimitMathCore.sol/LimitMathCore.json} +4 -4
  348. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +4 -0
  349. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.json +833 -0
  350. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +4 -0
  351. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +860 -0
  352. package/build/artifacts/contracts/limit/helpers/NonceManager.sol/NonceManager.dbg.json +4 -0
  353. package/build/artifacts/contracts/limit/helpers/NonceManager.sol/NonceManager.json +99 -0
  354. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
  355. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/AutomateReady.dbg.json +1 -1
  356. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/IAutomate.dbg.json +1 -1
  357. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/IOpsProxyFactory.dbg.json +1 -1
  358. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/ITaskTreasuryUpgradable.dbg.json +1 -1
  359. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  360. package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  361. package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  362. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  363. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
  364. package/build/artifacts/contracts/offchain-helpers/BytesLib.sol/BytesLib.dbg.json +4 -0
  365. package/build/artifacts/contracts/offchain-helpers/BytesLib.sol/BytesLib.json +10 -0
  366. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
  367. package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/LegacyNFTHelper.dbg.json +1 -1
  368. package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/StarNFTV1.dbg.json +1 -1
  369. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.dbg.json +4 -0
  370. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.json +174 -0
  371. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
  372. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +2 -2
  373. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
  374. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
  375. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV2.sol/PendleMulticallV2.dbg.json +1 -1
  376. package/build/artifacts/contracts/offchain-helpers/PendleOffchainStorage.sol/PendleOffchainStorage.dbg.json +1 -1
  377. package/build/artifacts/contracts/offchain-helpers/SimulateHelper.sol/SimulateHelper.dbg.json +4 -0
  378. package/build/artifacts/contracts/offchain-helpers/SimulateHelper.sol/SimulateHelper.json +84 -0
  379. package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.dbg.json +1 -1
  380. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  381. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  382. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
  383. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +2 -2
  384. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
  385. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +2 -2
  386. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +1 -1
  387. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.json +2 -2
  388. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
  389. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +2 -2
  390. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
  391. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +4 -0
  392. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2810 -0
  393. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +4 -0
  394. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +116 -0
  395. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +4 -0
  396. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +1016 -0
  397. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +4 -0
  398. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +1323 -0
  399. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +4 -0
  400. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +1518 -0
  401. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
  402. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +3 -33
  403. package/build/artifacts/contracts/router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.dbg.json +4 -0
  404. package/build/artifacts/contracts/{interfaces/IPActionSwapPT.sol/IPActionSwapPT.json → router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.json} +163 -226
  405. package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.dbg.json +4 -0
  406. package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.json +179 -0
  407. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +4 -0
  408. package/build/artifacts/contracts/{offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.json → router/base/ActionBase.sol/ActionBase.json} +2 -2
  409. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  410. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  411. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  412. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  413. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  414. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwapBase.dbg.json +1 -1
  415. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwapL1.dbg.json +1 -1
  416. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwapL1.json +2 -2
  417. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwapL2.dbg.json +1 -1
  418. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwapL2.json +2 -2
  419. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
  420. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutorOptimistic.sol/IAggregationExecutorOptimistic.dbg.json +1 -1
  421. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
  422. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2.sol/IExecutorHelperL2.dbg.json +1 -1
  423. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
  424. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l1-contracts/InputScalingHelper.sol/InputScalingHelper.dbg.json +1 -1
  425. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l1-contracts/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
  426. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/BytesHelper.sol/BytesHelper.dbg.json +1 -1
  427. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataReader.sol/CalldataReader.dbg.json +1 -1
  428. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataWriter.sol/CalldataWriter.dbg.json +1 -1
  429. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/Common.sol/Common.dbg.json +1 -1
  430. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/DexScaler.sol/DexScaler.dbg.json +1 -1
  431. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/ExecutorReader.sol/ExecutorReader.dbg.json +1 -1
  432. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/InputScalingHelperL2.sol/InputScalingHelperL2.dbg.json +1 -1
  433. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/ScalingDataL2Lib.sol/ScalingDataL2Lib.dbg.json +1 -1
  434. package/build/artifacts/contracts/router/swap-aggregator/oneinch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +1 -1
  435. package/build/artifacts/contracts/router/swap-aggregator/oneinch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +1 -1
  436. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol +11 -7
  437. package/contracts/core/StandardizedYield/SYBase.sol +1 -0
  438. package/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol +94 -0
  439. package/contracts/core/StandardizedYield/implementations/AaveV3/libraries/AaveAdapterLib.sol +19 -0
  440. package/contracts/core/StandardizedYield/implementations/AaveV3/libraries/WadRayMath.sol +126 -0
  441. package/contracts/core/libraries/Errors.sol +2 -3
  442. package/contracts/core/libraries/TokenHelper.sol +2 -0
  443. package/contracts/interfaces/AaveV3/IAaveV3AToken.sol +15 -0
  444. package/contracts/interfaces/AaveV3/IAaveV3Pool.sol +11 -0
  445. package/contracts/interfaces/IDailLikePermit.sol +17 -0
  446. package/contracts/interfaces/{IPActionAddRemoveLiq.sol → IPActionAddRemoveLiqV3.sol} +52 -40
  447. package/contracts/interfaces/IPActionCallbackV3.sol +7 -0
  448. package/contracts/interfaces/{IPActionMintRedeem.sol → IPActionMiscV3.sol} +38 -6
  449. package/contracts/interfaces/IPActionStorageStatic.sol +1 -1
  450. package/contracts/interfaces/{IPActionSwapPT.sol → IPActionSwapPTV3.sol} +21 -31
  451. package/contracts/interfaces/{IPActionSwapYT.sol → IPActionSwapYTV3.sol} +25 -35
  452. package/contracts/interfaces/IPAllActionTypeV3.sol +34 -0
  453. package/contracts/interfaces/IPAllActionV3.sol +19 -0
  454. package/contracts/interfaces/IPBulkSeller.sol +7 -1
  455. package/contracts/interfaces/IPLimitRouter.sol +118 -0
  456. package/contracts/interfaces/IPRouterHelper.sol +6 -8
  457. package/contracts/limit/LimitMathCore.sol +158 -0
  458. package/contracts/limit/LimitRouterBase.sol +440 -0
  459. package/contracts/limit/PendleLimitRouter.sol +65 -0
  460. package/contracts/limit/helpers/NonceManager.sol +30 -0
  461. package/contracts/offchain-helpers/BytesLib.sol +551 -0
  462. package/contracts/offchain-helpers/LimitBackendHelper.sol +109 -0
  463. package/contracts/offchain-helpers/SimulateHelper.sol +40 -0
  464. package/contracts/oracles/PendlePtOracle.sol +3 -2
  465. package/contracts/router/ActionAddRemoveLiqV3.sol +504 -0
  466. package/contracts/router/ActionCallbackV3.sol +141 -0
  467. package/contracts/router/ActionMiscV3.sol +164 -0
  468. package/contracts/router/ActionSwapPTV3.sol +87 -0
  469. package/contracts/router/ActionSwapYTV3.sol +240 -0
  470. package/contracts/router/PendleRouterHelper.sol +56 -14
  471. package/contracts/router/PendleRouterV3.sol +235 -0
  472. package/contracts/router/base/ActionBase.sol +289 -0
  473. package/contracts/router/base/CallbackHelper.sol +20 -81
  474. package/contracts/router/base/MarketApproxLib.sol +124 -99
  475. package/deployments/1-core.json +5 -3
  476. package/deployments/10-core.json +5 -3
  477. package/deployments/42161-core.json +6 -3
  478. package/deployments/42161-markets/AAVE-USDC-JUNE2024.json +11 -0
  479. package/deployments/42161-markets/WSTETH-ARBITRUM-MARCH2024.json +11 -0
  480. package/deployments/42161-markets/WSTETHSILO-ETH-MARCH2024.json +11 -0
  481. package/deployments/56-core.json +5 -3
  482. package/deployments/merkle-distribution/2023-11-30.json +7730 -0
  483. package/package.json +5 -5
  484. package/typechain-types/ActionAddRemoveLiqV3.ts +10 -7
  485. package/typechain-types/ActionCallbackV3.ts +164 -0
  486. package/typechain-types/ActionMarketCoreStatic.ts +18 -63
  487. package/typechain-types/ActionMintRedeemStatic.ts +10 -102
  488. package/typechain-types/ActionMiscV3.ts +36 -75
  489. package/typechain-types/ActionStorageStatic.ts +0 -55
  490. package/typechain-types/ActionSwapPTV3.ts +8 -5
  491. package/typechain-types/ActionSwapYTV3.ts +8 -49
  492. package/typechain-types/IAaveV3AToken.ts +204 -0
  493. package/typechain-types/IAaveV3Pool.ts +192 -0
  494. package/typechain-types/IPActionAddRemoveLiqV3.ts +10 -7
  495. package/typechain-types/IPActionCallbackV3.ts +164 -0
  496. package/typechain-types/IPActionMiscV3.ts +36 -75
  497. package/typechain-types/IPActionSwapPTV3.ts +8 -5
  498. package/typechain-types/IPActionSwapYTV3.ts +8 -5
  499. package/typechain-types/IPAllActionV3.ts +103 -90
  500. package/typechain-types/IPLimitRouter.ts +65 -87
  501. package/typechain-types/IPLimitRouterCallback.ts +120 -0
  502. package/typechain-types/IPRouterHelper.ts +6 -19
  503. package/typechain-types/LimitBackendHelper.ts +287 -0
  504. package/typechain-types/LimitRouterBase.ts +964 -0
  505. package/typechain-types/PendleAaveV3SY.ts +1310 -0
  506. package/typechain-types/PendleLimitRouter.ts +210 -116
  507. package/typechain-types/PendleOrderMixin.ts +292 -92
  508. package/typechain-types/PendleRouterHelper.ts +7 -23
  509. package/typechain-types/SimulateHelper.ts +42 -35
  510. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +43 -13
  511. package/typechain-types/factories/ActionCallbackV3__factory.ts +169 -0
  512. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  513. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  514. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -46
  515. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -102
  516. package/typechain-types/factories/ActionMiscV3__factory.ts +35 -59
  517. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -27
  518. package/typechain-types/factories/ActionSwapPTV3__factory.ts +29 -9
  519. package/typechain-types/factories/ActionSwapYTV3__factory.ts +29 -64
  520. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  521. package/typechain-types/factories/AuraEthxBbAWethSY__factory.ts +1 -1
  522. package/typechain-types/factories/AuraSwEthBbAWethSYV2__factory.ts +1 -1
  523. package/typechain-types/factories/AuraWethVethSYUpg__factory.ts +1 -1
  524. package/typechain-types/factories/Broadcaster__factory.ts +1 -1
  525. package/typechain-types/factories/CamelotRewardHelper__factory.ts +1 -1
  526. package/typechain-types/factories/CamelotV1VolatilePreview__factory.ts +1 -1
  527. package/typechain-types/factories/Errors__factory.ts +17 -49
  528. package/typechain-types/factories/IAaveV3AToken__factory.ts +111 -0
  529. package/typechain-types/factories/IAaveV3Pool__factory.ts +99 -0
  530. package/typechain-types/factories/IPActionAddRemoveLiqV3__factory.ts +42 -12
  531. package/typechain-types/factories/IPActionCallbackV3__factory.ts +83 -0
  532. package/typechain-types/factories/IPActionMiscV3__factory.ts +18 -42
  533. package/typechain-types/factories/IPActionSwapPTV3__factory.ts +28 -8
  534. package/typechain-types/factories/IPActionSwapYTV3__factory.ts +28 -8
  535. package/typechain-types/factories/IPAllActionV3__factory.ts +150 -70
  536. package/typechain-types/factories/IPLimitRouterCallback__factory.ts +64 -0
  537. package/typechain-types/factories/IPLimitRouter__factory.ts +37 -145
  538. package/typechain-types/factories/IPRouterHelper__factory.ts +0 -25
  539. package/typechain-types/factories/LimitBackendHelper__factory.ts +232 -0
  540. package/typechain-types/factories/LimitRouterBase__factory.ts +848 -0
  541. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  542. package/typechain-types/factories/PendleAaveV3SY__factory.ts +1130 -0
  543. package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1 -1
  544. package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +1 -1
  545. package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
  546. package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
  547. package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
  548. package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
  549. package/typechain-types/factories/PendleAuraWethVethSY__factory.ts +1 -1
  550. package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
  551. package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1 -1
  552. package/typechain-types/factories/PendleBridgedLSDSY__factory.ts +1 -1
  553. package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
  554. package/typechain-types/factories/PendleChainlinkReceiver__factory.ts +1 -1
  555. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  556. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  557. package/typechain-types/factories/PendleERC4626SY__factory.ts +1 -1
  558. package/typechain-types/factories/PendleETHXSY__factory.ts +1 -1
  559. package/typechain-types/factories/PendleEUSDSY__factory.ts +1 -1
  560. package/typechain-types/factories/PendleExternalRewardDistributor__factory.ts +1 -1
  561. package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +1 -1
  562. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  563. package/typechain-types/factories/PendleFluxLendingSY__factory.ts +1 -1
  564. package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
  565. package/typechain-types/factories/PendleGMV2TokenSY__factory.ts +1 -1
  566. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  567. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  568. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  569. package/typechain-types/factories/PendleHlpSY__factory.ts +1 -1
  570. package/typechain-types/factories/PendleKyberElasticSYUpg__factory.ts +1 -1
  571. package/typechain-types/factories/PendleLimitRouter__factory.ts +139 -155
  572. package/typechain-types/factories/PendleLinearDistributor__factory.ts +1 -1
  573. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  574. package/typechain-types/factories/PendleLpGlpOracle__factory.ts +1 -1
  575. package/typechain-types/factories/PendleMantleStakedEthSY__factory.ts +1 -1
  576. package/typechain-types/factories/PendleMarketFactoryV2__factory.ts +1 -1
  577. package/typechain-types/factories/PendleMarketFactoryV3__factory.ts +1 -1
  578. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  579. package/typechain-types/factories/PendleMarketV2__factory.ts +1 -1
  580. package/typechain-types/factories/PendleMarketV3__factory.ts +1 -1
  581. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  582. package/typechain-types/factories/PendleMerkleDistributor__factory.ts +1 -1
  583. package/typechain-types/factories/PendleMlpSY__factory.ts +1 -1
  584. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  585. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  586. package/typechain-types/factories/PendleOracleForSyProxy__factory.ts +1 -1
  587. package/typechain-types/factories/PendleOrderMixin__factory.ts +254 -129
  588. package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
  589. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  590. package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
  591. package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
  592. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  593. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  594. package/typechain-types/factories/PendleRouterHelper__factory.ts +2 -32
  595. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  596. package/typechain-types/factories/PendleRouterV3__factory.ts +10 -1
  597. package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
  598. package/typechain-types/factories/PendleSiloWithIncentiveSY__factory.ts +1 -1
  599. package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
  600. package/typechain-types/factories/PendleSwapL1__factory.ts +1 -1
  601. package/typechain-types/factories/PendleSwapL2__factory.ts +1 -1
  602. package/typechain-types/factories/PendleSwap__factory.ts +1 -1
  603. package/typechain-types/factories/PendleThenaSY__factory.ts +1 -1
  604. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  605. package/typechain-types/factories/PendleWbEthSY__factory.ts +1 -1
  606. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  607. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  608. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  609. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
  610. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  611. package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
  612. package/typechain-types/factories/SAPE__factory.ts +1 -1
  613. package/typechain-types/factories/SimulateHelper__factory.ts +71 -18
  614. package/typechain-types/factories/SwETHSY__factory.ts +1 -1
  615. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  616. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  617. package/typechain-types/hardhat.d.ts +64 -316
  618. package/typechain-types/index.ts +24 -70
  619. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +0 -4
  620. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +0 -642
  621. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +0 -4
  622. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +0 -521
  623. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +0 -4
  624. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +0 -4
  625. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.json +0 -1427
  626. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +0 -4
  627. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +0 -4
  628. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.json +0 -79
  629. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +0 -4
  630. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +0 -4
  631. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.json +0 -708
  632. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +0 -4
  633. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +0 -3503
  634. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +0 -4
  635. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +0 -125
  636. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +0 -4
  637. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +0 -30
  638. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +0 -4
  639. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +0 -307
  640. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +0 -4
  641. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +0 -409
  642. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +0 -4
  643. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +0 -1397
  644. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +0 -4
  645. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +0 -348
  646. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +0 -4
  647. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +0 -228
  648. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +0 -4
  649. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +0 -93
  650. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +0 -4
  651. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +0 -4
  652. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +0 -1623
  653. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +0 -4
  654. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +0 -753
  655. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +0 -4
  656. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.json +0 -79
  657. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +0 -4
  658. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +0 -720
  659. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +0 -4
  660. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +0 -976
  661. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +0 -4
  662. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +0 -190
  663. package/build/artifacts/contracts/router/PendleRouterHelper2.sol/PendleRouterHelper2.dbg.json +0 -4
  664. package/build/artifacts/contracts/router/PendleRouterHelper2.sol/PendleRouterHelper2.json +0 -145
  665. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +0 -4
  666. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.json +0 -141
  667. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +0 -4
  668. package/contracts/core/BulkSeller/BulkSeller.sol +0 -215
  669. package/contracts/core/BulkSeller/BulkSellerFactory.sol +0 -71
  670. package/contracts/core/BulkSeller/BulkSellerMathCore.sol +0 -126
  671. package/contracts/interfaces/IPActionMisc.sol +0 -23
  672. package/contracts/interfaces/IPAllAction.sol +0 -21
  673. package/contracts/limit/Mock.sol +0 -429
  674. package/contracts/offchain-helpers/BulkSellerOffchain.sol +0 -57
  675. package/contracts/offchain-helpers/router-static/PendleRouterStatic.sol +0 -19
  676. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +0 -111
  677. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +0 -182
  678. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +0 -682
  679. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +0 -171
  680. package/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol +0 -72
  681. package/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol +0 -55
  682. package/contracts/offchain-helpers/router-static/base/StorageLayout.sol +0 -21
  683. package/contracts/router/ActionAddRemoveLiq.sol +0 -525
  684. package/contracts/router/ActionMintRedeem.sol +0 -134
  685. package/contracts/router/ActionMisc.sol +0 -51
  686. package/contracts/router/ActionSwapPT.sol +0 -197
  687. package/contracts/router/ActionSwapYT.sol +0 -323
  688. package/contracts/router/PendleRouter.sol +0 -242
  689. package/contracts/router/PendleRouterHelper2.sol +0 -41
  690. package/contracts/router/base/ActionBaseCallback.sol +0 -152
  691. package/contracts/router/base/ActionBaseMintRedeem.sol +0 -182
@@ -1,51 +0,0 @@
1
- // SPDX-License-Identifier: GPL-3.0-or-later
2
- pragma solidity ^0.8.17;
3
-
4
- import "../interfaces/IPActionMisc.sol";
5
- import "../core/libraries/TokenHelper.sol";
6
-
7
- contract ActionMisc is IPActionMisc, TokenHelper {
8
- function approveInf(MultiApproval[] calldata arr) external {
9
- for (uint256 i = 0; i < arr.length; ) {
10
- MultiApproval calldata ele = arr[i];
11
- for (uint256 j = 0; j < ele.tokens.length; ) {
12
- _safeApproveInf(ele.tokens[j], ele.spender);
13
- unchecked {
14
- j++;
15
- }
16
- }
17
- unchecked {
18
- i++;
19
- }
20
- }
21
- }
22
-
23
- function batchExec(Call3[] calldata calls) external returns (Result[] memory res) {
24
- uint256 length = calls.length;
25
-
26
- res = new Result[](length);
27
-
28
- Call3 calldata calli;
29
-
30
- for (uint256 i = 0; i < length; ) {
31
- calli = calls[i];
32
-
33
- // delegatecall to itself, it turns allowing invoking functions from other actions
34
- (bool success, bytes memory result) = address(this).delegatecall(calli.callData);
35
-
36
- if (!success && !calli.allowFailure) {
37
- assembly {
38
- // We use Yul's revert() to bubble up errors from the target contract.
39
- revert(add(32, result), mload(result))
40
- }
41
- }
42
-
43
- res[i].success = success;
44
- res[i].returnData = result;
45
-
46
- unchecked {
47
- ++i;
48
- }
49
- }
50
- }
51
- }
@@ -1,197 +0,0 @@
1
- // SPDX-License-Identifier: GPL-3.0-or-later
2
- pragma solidity ^0.8.17;
3
-
4
- import "./base/ActionBaseMintRedeem.sol";
5
- import "../interfaces/IPActionSwapPT.sol";
6
- import "../interfaces/IPMarket.sol";
7
- import "../core/libraries/Errors.sol";
8
-
9
- /// @dev All swap actions will revert if market is expired
10
- contract ActionSwapPT is IPActionSwapPT, ActionBaseMintRedeem {
11
- using MarketMathCore for MarketState;
12
- using MarketApproxPtInLib for MarketState;
13
- using MarketApproxPtOutLib for MarketState;
14
- using PMath for uint256;
15
- using PMath for int256;
16
- using PYIndexLib for IPYieldToken;
17
-
18
- /**
19
- * @notice swaps exact amount of PT for SY
20
- * @param exactPtIn will always consume this exact amount of PT for as much SY as possible
21
- * @return netSyOut amount SY output, will not be less than `minSyOut`
22
- * @return netSyFee amount SY fee incurred
23
- */
24
- function swapExactPtForSy(
25
- address receiver,
26
- address market,
27
- uint256 exactPtIn,
28
- uint256 minSyOut
29
- ) external returns (uint256 netSyOut, uint256 netSyFee) {
30
- (, IPPrincipalToken PT, ) = IPMarket(market).readTokens();
31
- _transferFrom(IERC20(PT), msg.sender, market, exactPtIn);
32
-
33
- (netSyOut, netSyFee) = IPMarket(market).swapExactPtForSy(receiver, exactPtIn, EMPTY_BYTES);
34
-
35
- if (netSyOut < minSyOut) revert Errors.RouterInsufficientSyOut(netSyOut, minSyOut);
36
-
37
- emit SwapPtAndSy(msg.sender, market, receiver, exactPtIn.neg(), netSyOut.Int());
38
- }
39
-
40
- /**
41
- * @notice swaps some amount of PT for the desired SY amount
42
- * @param guessPtIn approximation data for input PT amount
43
- * @param exactSyOut will consume as little PT as possible for this much SY amount
44
- * @return netPtIn amount of PT used, will not be more than `maxPtIn`
45
- * @return netSyFee amount SY fee incurred
46
- * @dev the SY output might be slightly more than `exactSyOut` since an approximation is used.
47
- * It is guaranteed that exactSyOut <= actualSyOut <= exactSyOut*(100% + guessPtIn.eps)
48
- */
49
- function swapPtForExactSy(
50
- address receiver,
51
- address market,
52
- uint256 exactSyOut,
53
- uint256 maxPtIn,
54
- ApproxParams calldata guessPtIn
55
- ) external returns (uint256 netPtIn, uint256 netSyFee) {
56
- MarketState memory state = IPMarket(market).readState(address(this));
57
- (, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market).readTokens();
58
-
59
- (netPtIn, , ) = state.approxSwapPtForExactSy(YT.newIndex(), exactSyOut, block.timestamp, guessPtIn);
60
-
61
- if (netPtIn > maxPtIn) revert Errors.RouterExceededLimitPtIn(netPtIn, maxPtIn);
62
-
63
- _transferFrom(IERC20(PT), msg.sender, market, netPtIn);
64
-
65
- uint256 netSyOut;
66
- (netSyOut, netSyFee) = IPMarket(market).swapExactPtForSy(receiver, netPtIn, EMPTY_BYTES);
67
-
68
- // fail-safe
69
- if (netSyOut < exactSyOut) assert(false);
70
-
71
- emit SwapPtAndSy(msg.sender, market, receiver, netPtIn.neg(), exactSyOut.Int());
72
- }
73
-
74
- /**
75
- * @notice swaps SY for exact amount of PT
76
- * @param exactPtOut will always consume as little SY as possible for this much amount of PT
77
- * @return netSyIn amount SY used, will not be more than `maxSyIn`
78
- * @return netSyFee amount SY fee incurred
79
- * @dev the output amount of PT here is exact, no approximation is used
80
- */
81
- function swapSyForExactPt(
82
- address receiver,
83
- address market,
84
- uint256 exactPtOut,
85
- uint256 maxSyIn
86
- ) external returns (uint256 netSyIn, uint256 netSyFee) {
87
- MarketState memory state = IPMarket(market).readState(address(this));
88
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
89
-
90
- (netSyIn, , ) = state.swapSyForExactPt(YT.newIndex(), exactPtOut, block.timestamp);
91
-
92
- if (netSyIn > maxSyIn) revert Errors.RouterExceededLimitSyIn(netSyIn, maxSyIn);
93
-
94
- _transferFrom(IERC20(SY), msg.sender, market, netSyIn);
95
-
96
- (, netSyFee) = IPMarket(market).swapSyForExactPt(receiver, exactPtOut, EMPTY_BYTES); // ignore return
97
-
98
- // no fail-safe since exactly netSyIn will go into the market
99
- emit SwapPtAndSy(msg.sender, market, receiver, exactPtOut.Int(), netSyIn.neg());
100
- }
101
-
102
- /**
103
- * @notice swaps exact amount of SY for as much PT as possible
104
- * @param exactSyIn will always consume this much amount of SY
105
- * @param guessPtOut approximation data for output PT amount
106
- * @return netPtOut amount of PT output, will not be less than `minPtOut`
107
- * @return netSyFee amount SY fee incurred
108
- */
109
- function swapExactSyForPt(
110
- address receiver,
111
- address market,
112
- uint256 exactSyIn,
113
- uint256 minPtOut,
114
- ApproxParams calldata guessPtOut
115
- ) external returns (uint256 netPtOut, uint256 netSyFee) {
116
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
117
-
118
- _transferFrom(IERC20(SY), msg.sender, market, exactSyIn);
119
-
120
- (netPtOut, netSyFee) = _swapExactSyForPt(receiver, market, YT, exactSyIn, minPtOut, guessPtOut);
121
-
122
- emit SwapPtAndSy(msg.sender, market, receiver, netPtOut.Int(), exactSyIn.neg());
123
- }
124
-
125
- /**
126
- * @notice swap (through Kyberswap) from any input token for SY-mintable tokens, then mints SY
127
- * and swaps said SY for PT
128
- * @param input data for input token, see {`./kyberswap/KyberSwapHelper.sol`}
129
- * @dev is a combination of `_mintSyFromToken()` and `_swapExactSyForPt()`
130
- */
131
- function swapExactTokenForPt(
132
- address receiver,
133
- address market,
134
- uint256 minPtOut,
135
- ApproxParams calldata guessPtOut,
136
- TokenInput calldata input
137
- ) external payable returns (uint256 netPtOut, uint256 netSyFee) {
138
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
139
-
140
- // all output SY is transferred directly to the market
141
- uint256 netSyUseToBuyPt = _mintSyFromToken(address(market), address(SY), 1, input);
142
-
143
- // SY is already in the market, hence doPull = false
144
- (netPtOut, netSyFee) = _swapExactSyForPt(receiver, market, YT, netSyUseToBuyPt, minPtOut, guessPtOut);
145
-
146
- emit SwapPtAndToken(msg.sender, market, input.tokenIn, receiver, netPtOut.Int(), input.netTokenIn.neg());
147
- }
148
-
149
- /**
150
- * @notice swap from exact amount of PT to SY, then redeem SY for assets, finally swaps
151
- * resulting assets through Kyberswap to get desired output token
152
- * @param exactPtIn will always consume this much PT for as much SY as possible
153
- * @param output data for desired output token, see {`./kyberswap/KyberSwapHelper.sol`}
154
- * @dev is a combination of `_swapExactPtForSy()` and `_redeemSyToToken()`
155
- */
156
- function swapExactPtForToken(
157
- address receiver,
158
- address market,
159
- uint256 exactPtIn,
160
- TokenOutput calldata output
161
- ) external returns (uint256 netTokenOut, uint256 netSyFee) {
162
- (IStandardizedYield SY, IPPrincipalToken PT, ) = IPMarket(market).readTokens();
163
-
164
- _transferFrom(IERC20(PT), msg.sender, market, exactPtIn);
165
-
166
- // all output SY is directly transferred to the SY contract
167
- uint256 netSyReceived;
168
- (netSyReceived, netSyFee) = IPMarket(market).swapExactPtForSy(
169
- _syOrBulk(address(SY), output),
170
- exactPtIn,
171
- EMPTY_BYTES
172
- );
173
-
174
- // since all SY is already at the SY contract, doPull = false
175
- netTokenOut = _redeemSyToToken(receiver, address(SY), netSyReceived, output, false);
176
-
177
- emit SwapPtAndToken(msg.sender, market, output.tokenOut, receiver, exactPtIn.neg(), netTokenOut.Int());
178
- }
179
-
180
- function _swapExactSyForPt(
181
- address receiver,
182
- address market,
183
- IPYieldToken YT,
184
- uint256 exactSyIn,
185
- uint256 minPtOut,
186
- ApproxParams calldata guessPtOut
187
- ) internal returns (uint256 netPtOut, uint256 netSyFee) {
188
- MarketState memory state = IPMarket(market).readState(address(this));
189
-
190
- (netPtOut, ) = state.approxSwapExactSyForPt(YT.newIndex(), exactSyIn, block.timestamp, guessPtOut);
191
-
192
- if (netPtOut < minPtOut) revert Errors.RouterInsufficientPtOut(netPtOut, minPtOut);
193
-
194
- (, netSyFee) = IPMarket(market).swapSyForExactPt(receiver, netPtOut, EMPTY_BYTES);
195
- // no fail-safe since exactly netPtOut >= minPtOut will be out
196
- }
197
- }
@@ -1,323 +0,0 @@
1
- // SPDX-License-Identifier: GPL-3.0-or-later
2
- pragma solidity ^0.8.17;
3
-
4
- import "./base/ActionBaseMintRedeem.sol";
5
- import "./base/CallbackHelper.sol";
6
- import "../interfaces/IPActionSwapYT.sol";
7
- import "../interfaces/IAddressProvider.sol";
8
- import "../interfaces/IPMarket.sol";
9
- import "../core/libraries/Errors.sol";
10
-
11
- import "./base/ActionBaseCallback.sol";
12
-
13
- /// @dev All swap actions will revert if market is expired
14
- contract ActionSwapYT is ActionBaseCallback, IPActionSwapYT, ActionBaseMintRedeem {
15
- using PMath for uint256;
16
- using PMath for int256;
17
- using MarketMathCore for MarketState;
18
- using MarketApproxPtInLib for MarketState;
19
- using MarketApproxPtOutLib for MarketState;
20
- using PYIndexLib for IPYieldToken;
21
-
22
- constructor(
23
- IAddressProvider provider,
24
- uint256 providerId
25
- ) ActionBaseCallback(_getMarketFactory(provider, providerId)) {}
26
-
27
- function _getMarketFactory(IAddressProvider provider, uint256 providerId) internal view returns (address) {
28
- return provider.get(providerId);
29
- }
30
-
31
- /**
32
- * @notice swap exact SY to YT with the help of flashswaps & YT tokenization / redemption
33
- * @dev inner working of this function:
34
- - `exactSyIn` SY is transferred to YT contract
35
- - `market.swapExactPtForSy` is called, which will transfer more SY directly to YT contract &
36
- callback is invoked. Note that now we owe PT
37
- - in callback, all SY in YT contract is used to mint PT + YT, with all PT used to pay back the
38
- loan, and all YT transferred to the receiver
39
- * @param exactSyIn will always consume this amount of SY for as much YT as possible
40
- * @param guessYtOut approximation data for total YT output
41
- * @dev this function works in conjunction with ActionCallback
42
- */
43
- function swapExactSyForYt(
44
- address receiver,
45
- address market,
46
- uint256 exactSyIn,
47
- uint256 minYtOut,
48
- ApproxParams calldata guessYtOut
49
- ) external returns (uint256 netYtOut, uint256 netSyFee) {
50
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
51
-
52
- _transferFrom(IERC20(SY), msg.sender, address(YT), exactSyIn);
53
-
54
- (netYtOut, netSyFee) = _swapExactSyForYt(receiver, market, YT, exactSyIn, minYtOut, guessYtOut);
55
-
56
- emit SwapYtAndSy(msg.sender, market, receiver, netYtOut.Int(), exactSyIn.neg());
57
- }
58
-
59
- /**
60
- * @notice swap exact YT to SY with the help of flashswaps & YT tokenization / redemption
61
- * @dev inner working of this function:
62
- - `exactYtIn` YT is transferred to YT contract
63
- - `market.swapSyForExactPt` is called, which will transfer PT directly to YT contract &
64
- callback is invoked. Note that now we owe SY.
65
- - In callback, all PT + YT in YT contract is used to redeem SY. A portion of SY is used to
66
- payback the loan, the rest is transferred to the `receiver`
67
- * @param exactYtIn will consume exactly this much YT for as much SY as possible
68
- * @dev this function works in conjunction with ActionCallback
69
- */
70
- function swapExactYtForSy(
71
- address receiver,
72
- address market,
73
- uint256 exactYtIn,
74
- uint256 minSyOut
75
- ) external returns (uint256 netSyOut, uint256 netSyFee) {
76
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
77
-
78
- _transferFrom(IERC20(YT), msg.sender, address(YT), exactYtIn);
79
-
80
- (netSyOut, netSyFee) = _swapExactYtForSy(receiver, market, SY, YT, exactYtIn, minSyOut);
81
-
82
- emit SwapYtAndSy(msg.sender, market, receiver, exactYtIn.neg(), netSyOut.Int());
83
- }
84
-
85
- /**
86
- * @notice swap SY to exact YT with the help of flashswaps & YT tokenization / redemption
87
- * @dev inner working of this function:
88
- - `market.swapExactPtForSy` is called, which will transfer SY directly to YT contract &
89
- callback is invoked. Note that now we owe PT
90
- - In callback, we will pull in more SY as needed from caller & mint all SY to PT + YT. PT is
91
- then used to payback the loan, while YT is transferred to `receiver`
92
- * @param exactYtOut will output exactly this amount of YT, no approximation is used
93
- * @dev this function works in conjunction with ActionCallback
94
- */
95
- function swapSyForExactYt(
96
- address receiver,
97
- address market,
98
- uint256 exactYtOut,
99
- uint256 maxSyIn
100
- ) external returns (uint256 netSyIn, uint256 netSyFee) {
101
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
102
-
103
- uint256 preSyBalance = SY.balanceOf(msg.sender);
104
-
105
- (, netSyFee) = IPMarket(market).swapExactPtForSy(
106
- address(YT),
107
- exactYtOut, // exactPtIn = exactYtOut
108
- _encodeSwapSyForExactYt(msg.sender, receiver, maxSyIn, SY, YT)
109
- );
110
-
111
- netSyIn = preSyBalance - SY.balanceOf(msg.sender);
112
-
113
- emit SwapYtAndSy(msg.sender, market, receiver, exactYtOut.Int(), netSyIn.neg());
114
- }
115
-
116
- /**
117
- * @notice swap YT to exact SY with the help of flashswaps & YT tokenization / redemption
118
- * @dev inner working of this function:
119
- - Approximates `netYtIn` using the data from `guessYtIn`
120
- - Pulls `netYtIn` amount of YT from caller
121
- - `market.swapSyForExactPt` is called, which will transfer PT directly to YT contract &
122
- callback is invoked. Note that now we owe SY
123
- - In callback, we will redeem all PT + YT to get SY. A portion of it is used to payback the
124
- loan. The rest is transferred to `receiver`
125
- * @dev this function works in conjunction with ActionCallback
126
- */
127
- function swapYtForExactSy(
128
- address receiver,
129
- address market,
130
- uint256 exactSyOut,
131
- uint256 maxYtIn,
132
- ApproxParams calldata guessYtIn
133
- ) external returns (uint256 netYtIn, uint256 netSyFee) {
134
- MarketState memory state = IPMarket(market).readState(address(this));
135
- (, , IPYieldToken YT) = IPMarket(market).readTokens();
136
-
137
- (netYtIn, , ) = state.approxSwapYtForExactSy(YT.newIndex(), exactSyOut, block.timestamp, guessYtIn);
138
-
139
- if (netYtIn > maxYtIn) revert Errors.RouterExceededLimitYtIn(netYtIn, maxYtIn);
140
-
141
- _transferFrom(IERC20(YT), msg.sender, address(YT), netYtIn);
142
-
143
- (, netSyFee) = IPMarket(market).swapSyForExactPt(
144
- address(YT),
145
- netYtIn, // exactPtOut = netYtIn
146
- _encodeSwapYtForSy(receiver, exactSyOut, YT)
147
- );
148
-
149
- emit SwapYtAndSy(msg.sender, market, receiver, netYtIn.neg(), exactSyOut.Int());
150
- }
151
-
152
- /**
153
- * @notice swaps any token to YT
154
- * @dev this function swaps token for SY-mintable token first through Kyberswap, then mints SY
155
- * from such, finally swaps SY to YT (see `swapSyForExactYt()`)
156
- */
157
- function swapExactTokenForYt(
158
- address receiver,
159
- address market,
160
- uint256 minYtOut,
161
- ApproxParams calldata guessYtOut,
162
- TokenInput calldata input
163
- ) external payable returns (uint256 netYtOut, uint256 netSyFee) {
164
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
165
-
166
- uint256 netSyUsedToBuyYT = _mintSyFromToken(address(YT), address(SY), 1, input);
167
-
168
- (netYtOut, netSyFee) = _swapExactSyForYt(receiver, market, YT, netSyUsedToBuyYT, minYtOut, guessYtOut);
169
-
170
- emit SwapYtAndToken(msg.sender, market, input.tokenIn, receiver, netYtOut.Int(), input.netTokenIn.neg());
171
- }
172
-
173
- /**
174
- * @notice swaps YT to a given token
175
- * @dev the function first swaps YT to SY (see `swapExactYtForSy()`), then redeems SY,
176
- * finally swaps resulting tokens to desired output token using Kyberswap
177
- */
178
- function swapExactYtForToken(
179
- address receiver,
180
- address market,
181
- uint256 netYtIn,
182
- TokenOutput calldata output
183
- ) external returns (uint256 netTokenOut, uint256 netSyFee) {
184
- (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
185
-
186
- _transferFrom(IERC20(YT), msg.sender, address(YT), netYtIn);
187
-
188
- uint256 netSyOut;
189
-
190
- (netSyOut, netSyFee) = _swapExactYtForSy(_syOrBulk(address(SY), output), market, SY, YT, netYtIn, 1);
191
-
192
- netTokenOut = _redeemSyToToken(receiver, address(SY), netSyOut, output, false);
193
-
194
- emit SwapYtAndToken(msg.sender, market, output.tokenOut, receiver, netYtIn.neg(), netTokenOut.Int());
195
- }
196
-
197
- /**
198
- * @notice swap exact PT to YT with the help of flashswaps & YT tokenization / redemption
199
- * @dev inner working of this function:
200
- - `exactPtIn` PT is transferred to market contract
201
- - `market.swapExactPtForSy` is called, which will transfer SY directly to YT contract & callback is invoked.
202
- Note that we will owe PT, the amount before is not sufficient
203
- - in callback, all SY in YT contract is used to mint PT + YT, with PT used to pay the rest of the loan, and YT
204
- transferred to the receiver
205
- * @param exactPtIn will always consume this amount of PT for as much YT as possible
206
- * @param guessTotalPtToSwap approximation data for PT used for the PT-to-SY flashswap
207
- * @dev this function works in conjunction with ActionCallback
208
- */
209
- function swapExactPtForYt(
210
- address receiver,
211
- address market,
212
- uint256 exactPtIn,
213
- uint256 minYtOut,
214
- ApproxParams calldata guessTotalPtToSwap
215
- ) external returns (uint256 netYtOut, uint256 netSyFee) {
216
- (, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market).readTokens();
217
- MarketState memory state = IPMarket(market).readState(address(this));
218
-
219
- _transferFrom(IERC20(PT), msg.sender, market, exactPtIn);
220
-
221
- uint256 totalPtToSwap;
222
- (netYtOut, totalPtToSwap, netSyFee) = state.approxSwapExactPtForYt(
223
- YT.newIndex(),
224
- exactPtIn,
225
- block.timestamp,
226
- guessTotalPtToSwap
227
- );
228
-
229
- if (netYtOut < minYtOut) revert Errors.RouterInsufficientYtOut(netYtOut, minYtOut);
230
-
231
- IPMarket(market).swapExactPtForSy(
232
- address(YT),
233
- totalPtToSwap,
234
- _encodeSwapExactPtForYt(receiver, exactPtIn, minYtOut, YT)
235
- );
236
-
237
- emit SwapPtAndYt(msg.sender, market, receiver, exactPtIn.neg(), netYtOut.Int());
238
- }
239
-
240
- /**
241
- * @notice swap exact YT to PT with the help of flashswaps & YT tokenization / redemption
242
- * @dev inner working of this function:
243
- - `exactYtIn` YT is transferred to yield contract
244
- - `market.swapSyForExactPt` is called, which will transfer PT directly to this contract & callback is invoked.
245
- Note that we now owe SY
246
- - in callback, a portion of PT + YT is used to redeem SY, which is then used to payback the loan. The rest of
247
- of the PT is transferred to `receiver`
248
- * @param exactYtIn will always consume this amount of YT for as much PT as possible
249
- * @param guessTotalPtFromSwap approximation data for PT output of the SY-to-PT flashswap
250
- * @dev this function works in conjunction with ActionCallback
251
- */
252
- function swapExactYtForPt(
253
- address receiver,
254
- address market,
255
- uint256 exactYtIn,
256
- uint256 minPtOut,
257
- ApproxParams calldata guessTotalPtFromSwap
258
- ) external returns (uint256 netPtOut, uint256 netSyFee) {
259
- (, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market).readTokens();
260
- MarketState memory state = IPMarket(market).readState(address(this));
261
-
262
- _transferFrom(IERC20(YT), msg.sender, address(YT), exactYtIn);
263
-
264
- uint256 totalPtFromSwap;
265
- (netPtOut, totalPtFromSwap, netSyFee) = state.approxSwapExactYtForPt(
266
- YT.newIndex(),
267
- exactYtIn,
268
- block.timestamp,
269
- guessTotalPtFromSwap
270
- );
271
-
272
- if (netPtOut < minPtOut) revert Errors.RouterInsufficientPtOut(netPtOut, minPtOut);
273
-
274
- IPMarket(market).swapSyForExactPt(
275
- address(this),
276
- totalPtFromSwap,
277
- _encodeSwapExactYtForPt(receiver, exactYtIn, minPtOut, PT, YT)
278
- );
279
-
280
- emit SwapPtAndYt(msg.sender, market, receiver, netPtOut.Int(), exactYtIn.neg());
281
- }
282
-
283
- function _swapExactSyForYt(
284
- address receiver,
285
- address market,
286
- IPYieldToken YT,
287
- uint256 exactSyIn,
288
- uint256 minYtOut,
289
- ApproxParams calldata guessYtOut
290
- ) internal returns (uint256 netYtOut, uint256 netSyFee) {
291
- MarketState memory state = IPMarket(market).readState(address(this));
292
-
293
- (netYtOut, ) = state.approxSwapExactSyForYt(YT.newIndex(), exactSyIn, block.timestamp, guessYtOut);
294
-
295
- // early-check
296
- if (netYtOut < minYtOut) revert Errors.RouterInsufficientYtOut(netYtOut, minYtOut);
297
-
298
- (, netSyFee) = IPMarket(market).swapExactPtForSy(
299
- address(YT),
300
- netYtOut, // exactPtIn = netYtOut
301
- _encodeSwapExactSyForYt(receiver, minYtOut, YT)
302
- );
303
- }
304
-
305
- function _swapExactYtForSy(
306
- address receiver,
307
- address market,
308
- IStandardizedYield SY,
309
- IPYieldToken YT,
310
- uint256 exactYtIn,
311
- uint256 minSyOut
312
- ) internal returns (uint256 netSyOut, uint256 netSyFee) {
313
- uint256 preSyBalance = SY.balanceOf(receiver);
314
-
315
- (, netSyFee) = IPMarket(market).swapSyForExactPt(
316
- address(YT),
317
- exactYtIn, // exactPtOut = exactYtIn
318
- _encodeSwapYtForSy(receiver, minSyOut, YT)
319
- );
320
-
321
- netSyOut = SY.balanceOf(receiver) - preSyBalance;
322
- }
323
- }