@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
@@ -0,0 +1,235 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity ^0.8.17;
3
+
4
+ import "@openzeppelin/contracts/proxy/Proxy.sol";
5
+ import "../interfaces/IPAllActionV3.sol";
6
+ import "../interfaces/IDiamondLoupe.sol";
7
+ import "../interfaces/IDiamondCut.sol";
8
+
9
+ // solhint-disable no-empty-blocks
10
+ contract PendleRouterV3 is Proxy, IDiamondLoupe {
11
+ address internal immutable ACTION_ADD_REMOVE_LIQ;
12
+ address internal immutable ACTION_SWAP_PT;
13
+ address internal immutable ACTION_SWAP_YT;
14
+ address internal immutable ACTION_MISC;
15
+ address internal immutable ACTION_CALLBACK;
16
+
17
+ event DiamondCut(IDiamondCut.FacetCut[] _diamondCut, address _init, bytes _calldata);
18
+
19
+ constructor(
20
+ address _ACTION_ADD_REMOVE_LIQ,
21
+ address _ACTION_SWAP_PT,
22
+ address _ACTION_SWAP_YT,
23
+ address _ACTION_MISC,
24
+ address _ACTION_CALLBACK
25
+ ) {
26
+ ACTION_ADD_REMOVE_LIQ = _ACTION_ADD_REMOVE_LIQ;
27
+ ACTION_SWAP_PT = _ACTION_SWAP_PT;
28
+ ACTION_SWAP_YT = _ACTION_SWAP_YT;
29
+ ACTION_MISC = _ACTION_MISC;
30
+ ACTION_CALLBACK = _ACTION_CALLBACK;
31
+ _emitEvents();
32
+ }
33
+
34
+ function _emitEvents() internal {
35
+ Facet[] memory facets_ = facets();
36
+
37
+ uint256 nFacets = facets_.length;
38
+
39
+ IDiamondCut.FacetCut[] memory cuts = new IDiamondCut.FacetCut[](nFacets);
40
+ for (uint256 i; i < nFacets; ) {
41
+ cuts[i].facetAddress = facets_[i].facetAddress;
42
+ cuts[i].action = IDiamondCut.FacetCutAction.Add;
43
+ cuts[i].functionSelectors = facets_[i].functionSelectors;
44
+ unchecked {
45
+ ++i;
46
+ }
47
+ }
48
+
49
+ emit DiamondCut(cuts, address(0), "");
50
+ }
51
+
52
+ receive() external payable virtual override {}
53
+
54
+ /// @notice Gets all facet addresses and their four byte function selectors.
55
+ /// @return facets_ Facet
56
+ function facets() public view returns (Facet[] memory facets_) {
57
+ address[] memory facetAddresses_ = facetAddresses();
58
+ uint256 numFacets = facetAddresses_.length;
59
+
60
+ facets_ = new Facet[](numFacets);
61
+ for (uint256 i; i < numFacets; ) {
62
+ facets_[i].facetAddress = facetAddresses_[i];
63
+ facets_[i].functionSelectors = facetFunctionSelectors(facetAddresses_[i]);
64
+ unchecked {
65
+ i++;
66
+ }
67
+ }
68
+ }
69
+
70
+ function facetFunctionSelectors(address facet) public view returns (bytes4[] memory res) {
71
+ if (facet == address(this)) {
72
+ res = new bytes4[](4);
73
+ res[0] = 0x52ef6b2c; // facetAddresses
74
+ res[1] = 0x7a0ed627; // facets
75
+ res[2] = 0xadfca15e; // facetFunctionSelectors
76
+ res[3] = 0xcdffacc6; // facetAddress
77
+ }
78
+ if (facet == ACTION_ADD_REMOVE_LIQ) {
79
+ res = new bytes4[](12);
80
+ res[0] = 0x12599ac6; // addLiquiditySingleToken
81
+ res[1] = 0x2756ce06; // addLiquidityDualTokenAndPt
82
+ res[2] = 0x3dbe1c55; // addLiquiditySingleTokenKeepYt
83
+ res[3] = 0x4e390267; // addLiquiditySinglePt
84
+ res[4] = 0x58bda475; // addLiquiditySingleSy
85
+ res[5] = 0x60da0860; // removeLiquiditySingleToken
86
+ res[6] = 0x6b77ac9e; // removeLiquiditySinglePt
87
+ res[7] = 0x844384aa; // addLiquiditySingleSyKeepYt
88
+ res[8] = 0x97ee279e; // addLiquidityDualSyAndPt
89
+ res[9] = 0xb00f09d7; // removeLiquidityDualTokenAndPt
90
+ res[10] = 0xb7d75b8b; // removeLiquidityDualSyAndPt
91
+ res[11] = 0xd13b4fdc; // removeLiquiditySingleSy
92
+ }
93
+ if (facet == ACTION_SWAP_YT) {
94
+ res = new bytes4[](6);
95
+ res[0] = 0x05eb5327; // swapExactYtForToken
96
+ res[1] = 0x448b9b95; // swapExactYtForPt
97
+ res[2] = 0x7b8b4b95; // swapExactSyForYt
98
+ res[3] = 0x80c4d566; // swapExactYtForSy
99
+ res[4] = 0xc861a898; // swapExactPtForYt
100
+ res[5] = 0xed48907e; // swapExactTokenForYt
101
+ }
102
+ if (facet == ACTION_SWAP_PT) {
103
+ res = new bytes4[](4);
104
+ res[0] = 0x2a50917c; // swapExactSyForPt
105
+ res[1] = 0x3346d3a3; // swapExactPtForSy
106
+ res[2] = 0x594a88cc; // swapExactPtForToken
107
+ res[3] = 0xc81f847a; // swapExactTokenForPt
108
+ }
109
+ if (facet == ACTION_CALLBACK) {
110
+ res = new bytes4[](2);
111
+ res[0] = 0xeb3a7d47; // limitRouterCallback
112
+ res[1] = 0xfa483e72; // swapCallback
113
+ }
114
+ if (facet == ACTION_MISC) {
115
+ res = new bytes4[](12);
116
+ res[0] = 0x1a8631b2; // mintPyFromSy
117
+ res[1] = 0x2d8f9d8d; // boostMarkets
118
+ res[2] = 0x2e071dc6; // mintSyFromToken
119
+ res[3] = 0x339748cb; // redeemPyToSy
120
+ res[4] = 0x339a5572; // redeemSyToToken
121
+ res[5] = 0x47f1de22; // redeemPyToToken
122
+ res[6] = 0x5d3e105c; // swapTokenToToken
123
+ res[7] = 0x60fc8466; // multicall
124
+ res[8] = 0xa89eba4a; // swapTokenToTokenViaSy
125
+ res[9] = 0xbd61951d; // simulate
126
+ res[10] = 0xd0f42385; // mintPyFromToken
127
+ res[11] = 0xf7e375e8; // redeemDueInterestAndRewards
128
+ }
129
+ }
130
+
131
+ function facetAddress(bytes4 sig) public view returns (address) {
132
+ if (sig < 0x6b77ac9e) {
133
+ if (sig < 0x3dbe1c55) {
134
+ if (sig < 0x2d8f9d8d) {
135
+ if (sig < 0x1a8631b2) {
136
+ if (sig == 0x05eb5327) return ACTION_SWAP_YT; //swapExactYtForToken
137
+ if (sig == 0x12599ac6) return ACTION_ADD_REMOVE_LIQ; //addLiquiditySingleToken
138
+ } else {
139
+ if (sig == 0x1a8631b2) return ACTION_MISC; //mintPyFromSy
140
+ if (sig == 0x2756ce06) return ACTION_ADD_REMOVE_LIQ; //addLiquidityDualTokenAndPt
141
+ if (sig == 0x2a50917c) return ACTION_SWAP_PT; //swapExactSyForPt
142
+ }
143
+ } else {
144
+ if (sig < 0x3346d3a3) {
145
+ if (sig == 0x2d8f9d8d) return ACTION_MISC; //boostMarkets
146
+ if (sig == 0x2e071dc6) return ACTION_MISC; //mintSyFromToken
147
+ } else {
148
+ if (sig == 0x3346d3a3) return ACTION_SWAP_PT; //swapExactPtForSy
149
+ if (sig == 0x339748cb) return ACTION_MISC; //redeemPyToSy
150
+ if (sig == 0x339a5572) return ACTION_MISC; //redeemSyToToken
151
+ }
152
+ }
153
+ } else {
154
+ if (sig < 0x58bda475) {
155
+ if (sig < 0x47f1de22) {
156
+ if (sig == 0x3dbe1c55) return ACTION_ADD_REMOVE_LIQ; //addLiquiditySingleTokenKeepYt
157
+ if (sig == 0x448b9b95) return ACTION_SWAP_YT; //swapExactYtForPt
158
+ } else {
159
+ if (sig == 0x47f1de22) return ACTION_MISC; //redeemPyToToken
160
+ if (sig == 0x4e390267) return ACTION_ADD_REMOVE_LIQ; //addLiquiditySinglePt
161
+ if (sig == 0x52ef6b2c) return address(this); //facetAddresses
162
+ }
163
+ } else {
164
+ if (sig < 0x5d3e105c) {
165
+ if (sig == 0x58bda475) return ACTION_ADD_REMOVE_LIQ; //addLiquiditySingleSy
166
+ if (sig == 0x594a88cc) return ACTION_SWAP_PT; //swapExactPtForToken
167
+ } else {
168
+ if (sig == 0x5d3e105c) return ACTION_MISC; //swapTokenToToken
169
+ if (sig == 0x60da0860) return ACTION_ADD_REMOVE_LIQ; //removeLiquiditySingleToken
170
+ if (sig == 0x60fc8466) return ACTION_MISC; //multicall
171
+ }
172
+ }
173
+ }
174
+ } else {
175
+ if (sig < 0xbd61951d) {
176
+ if (sig < 0x97ee279e) {
177
+ if (sig < 0x7b8b4b95) {
178
+ if (sig == 0x6b77ac9e) return ACTION_ADD_REMOVE_LIQ; //removeLiquiditySinglePt
179
+ if (sig == 0x7a0ed627) return address(this); //facets
180
+ } else {
181
+ if (sig == 0x7b8b4b95) return ACTION_SWAP_YT; //swapExactSyForYt
182
+ if (sig == 0x80c4d566) return ACTION_SWAP_YT; //swapExactYtForSy
183
+ if (sig == 0x844384aa) return ACTION_ADD_REMOVE_LIQ; //addLiquiditySingleSyKeepYt
184
+ }
185
+ } else {
186
+ if (sig < 0xadfca15e) {
187
+ if (sig == 0x97ee279e) return ACTION_ADD_REMOVE_LIQ; //addLiquidityDualSyAndPt
188
+ if (sig == 0xa89eba4a) return ACTION_MISC; //swapTokenToTokenViaSy
189
+ } else {
190
+ if (sig == 0xadfca15e) return address(this); //facetFunctionSelectors
191
+ if (sig == 0xb00f09d7) return ACTION_ADD_REMOVE_LIQ; //removeLiquidityDualTokenAndPt
192
+ if (sig == 0xb7d75b8b) return ACTION_ADD_REMOVE_LIQ; //removeLiquidityDualSyAndPt
193
+ }
194
+ }
195
+ } else {
196
+ if (sig < 0xd13b4fdc) {
197
+ if (sig < 0xc861a898) {
198
+ if (sig == 0xbd61951d) return ACTION_MISC; //simulate
199
+ if (sig == 0xc81f847a) return ACTION_SWAP_PT; //swapExactTokenForPt
200
+ } else {
201
+ if (sig == 0xc861a898) return ACTION_SWAP_YT; //swapExactPtForYt
202
+ if (sig == 0xcdffacc6) return address(this); //facetAddress
203
+ if (sig == 0xd0f42385) return ACTION_MISC; //mintPyFromToken
204
+ }
205
+ } else {
206
+ if (sig < 0xed48907e) {
207
+ if (sig == 0xd13b4fdc) return ACTION_ADD_REMOVE_LIQ; //removeLiquiditySingleSy
208
+ if (sig == 0xeb3a7d47) return ACTION_CALLBACK; //limitRouterCallback
209
+ } else {
210
+ if (sig == 0xed48907e) return ACTION_SWAP_YT; //swapExactTokenForYt
211
+ if (sig == 0xf7e375e8) return ACTION_MISC; //redeemDueInterestAndRewards
212
+ if (sig == 0xfa483e72) return ACTION_CALLBACK; //swapCallback
213
+ }
214
+ }
215
+ }
216
+ }
217
+ revert Errors.RouterInvalidAction(sig);
218
+ // NUM_FUNC: 40 AVG:4.80 WORST_CASE:6 STOP_BRANCH:3
219
+ }
220
+
221
+ function facetAddresses() public view returns (address[] memory) {
222
+ address[] memory res = new address[](6);
223
+ res[0] = address(this);
224
+ res[1] = ACTION_ADD_REMOVE_LIQ;
225
+ res[2] = ACTION_SWAP_YT;
226
+ res[3] = ACTION_SWAP_PT;
227
+ res[4] = ACTION_CALLBACK;
228
+ res[5] = ACTION_MISC;
229
+ return res;
230
+ }
231
+
232
+ function _implementation() internal view override returns (address) {
233
+ return facetAddress(msg.sig);
234
+ }
235
+ }
@@ -0,0 +1,289 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity ^0.8.0;
3
+
4
+ import "../../core/libraries/TokenHelper.sol";
5
+ import "../../interfaces/IStandardizedYield.sol";
6
+ import "../../interfaces/IPYieldToken.sol";
7
+ import "../../interfaces/IPAllActionTypeV3.sol";
8
+ import "../../interfaces/IPMarket.sol";
9
+ import "../../router/base/MarketApproxLib.sol";
10
+
11
+ import "../../core/libraries/Errors.sol";
12
+ import "../swap-aggregator/IPSwapAggregator.sol";
13
+
14
+ abstract contract ActionBase is TokenHelper, IPLimitOrderType {
15
+ using MarketApproxPtOutLib for MarketState;
16
+ using PMath for uint256;
17
+ using PYIndexLib for IPYieldToken;
18
+ using PYIndexLib for PYIndex;
19
+
20
+ bytes internal constant EMPTY_BYTES = abi.encode();
21
+
22
+ // ----------------- MINT REDEEM SY PY -----------------
23
+
24
+ function _mintSyFromToken(
25
+ address receiver,
26
+ address SY,
27
+ uint256 minSyOut,
28
+ TokenInput calldata inp
29
+ ) internal returns (uint256 netSyOut) {
30
+ SwapType swapType = inp.swapData.swapType;
31
+
32
+ uint256 netTokenMintSy;
33
+
34
+ if (swapType == SwapType.NONE) {
35
+ _transferIn(inp.tokenIn, msg.sender, inp.netTokenIn);
36
+ netTokenMintSy = inp.netTokenIn;
37
+ } else if (swapType == SwapType.ETH_WETH) {
38
+ _transferIn(inp.tokenIn, msg.sender, inp.netTokenIn);
39
+ _wrap_unwrap_ETH(inp.tokenIn, inp.tokenMintSy, inp.netTokenIn);
40
+ netTokenMintSy = inp.netTokenIn;
41
+ } else {
42
+ _swapTokenInput(inp);
43
+ netTokenMintSy = _selfBalance(inp.tokenMintSy);
44
+ }
45
+
46
+ netSyOut = __mintSy(receiver, SY, netTokenMintSy, minSyOut, inp);
47
+ }
48
+
49
+ function _swapTokenInput(TokenInput calldata inp) internal {
50
+ if (inp.tokenIn == NATIVE) _transferIn(NATIVE, msg.sender, inp.netTokenIn);
51
+ else _transferFrom(IERC20(inp.tokenIn), msg.sender, inp.pendleSwap, inp.netTokenIn);
52
+
53
+ IPSwapAggregator(inp.pendleSwap).swap{value: inp.tokenIn == NATIVE ? inp.netTokenIn : 0}(
54
+ inp.tokenIn,
55
+ inp.netTokenIn,
56
+ inp.swapData
57
+ );
58
+ }
59
+
60
+ function __mintSy(
61
+ address receiver,
62
+ address SY,
63
+ uint256 netTokenMintSy,
64
+ uint256 minSyOut,
65
+ TokenInput calldata inp
66
+ ) private returns (uint256 netSyOut) {
67
+ uint256 netNative = inp.tokenMintSy == NATIVE ? netTokenMintSy : 0;
68
+ _safeApproveInf(inp.tokenMintSy, SY);
69
+ netSyOut = IStandardizedYield(SY).deposit{value: netNative}(
70
+ receiver,
71
+ inp.tokenMintSy,
72
+ netTokenMintSy,
73
+ minSyOut
74
+ );
75
+ }
76
+
77
+ function _redeemSyToToken(
78
+ address receiver,
79
+ address SY,
80
+ uint256 netSyIn,
81
+ TokenOutput calldata out,
82
+ bool doPull
83
+ ) internal returns (uint256 netTokenOut) {
84
+ SwapType swapType = out.swapData.swapType;
85
+
86
+ if (swapType == SwapType.NONE) {
87
+ netTokenOut = __redeemSy(receiver, SY, netSyIn, out, doPull);
88
+ } else if (swapType == SwapType.ETH_WETH) {
89
+ netTokenOut = __redeemSy(address(this), SY, netSyIn, out, doPull); // ETH:WETH is 1:1
90
+
91
+ _wrap_unwrap_ETH(out.tokenRedeemSy, out.tokenOut, netTokenOut);
92
+
93
+ _transferOut(out.tokenOut, receiver, netTokenOut);
94
+ } else {
95
+ uint256 netTokenRedeemed = __redeemSy(out.pendleSwap, SY, netSyIn, out, doPull);
96
+
97
+ IPSwapAggregator(out.pendleSwap).swap(out.tokenRedeemSy, netTokenRedeemed, out.swapData);
98
+
99
+ netTokenOut = _selfBalance(out.tokenOut);
100
+
101
+ _transferOut(out.tokenOut, receiver, netTokenOut);
102
+ }
103
+
104
+ if (netTokenOut < out.minTokenOut) {
105
+ revert Errors.RouterInsufficientTokenOut(netTokenOut, out.minTokenOut);
106
+ }
107
+ }
108
+
109
+ function __redeemSy(
110
+ address receiver,
111
+ address SY,
112
+ uint256 netSyIn,
113
+ TokenOutput calldata out,
114
+ bool doPull
115
+ ) private returns (uint256 netTokenRedeemed) {
116
+ if (doPull) {
117
+ _transferFrom(IERC20(SY), msg.sender, SY, netSyIn);
118
+ }
119
+
120
+ netTokenRedeemed = IStandardizedYield(SY).redeem(receiver, netSyIn, out.tokenRedeemSy, 0, true);
121
+ }
122
+
123
+ function _mintPyFromSy(
124
+ address receiver,
125
+ address SY,
126
+ address YT,
127
+ uint256 netSyIn,
128
+ uint256 minPyOut,
129
+ bool doPull
130
+ ) internal returns (uint256 netPyOut) {
131
+ if (doPull) {
132
+ _transferFrom(IERC20(SY), msg.sender, YT, netSyIn);
133
+ }
134
+
135
+ netPyOut = IPYieldToken(YT).mintPY(receiver, receiver);
136
+ if (netPyOut < minPyOut) revert Errors.RouterInsufficientPYOut(netPyOut, minPyOut);
137
+ }
138
+
139
+ function _redeemPyToSy(
140
+ address receiver,
141
+ address YT,
142
+ uint256 netPyIn,
143
+ uint256 minSyOut
144
+ ) internal returns (uint256 netSyOut) {
145
+ address PT = IPYieldToken(YT).PT();
146
+
147
+ _transferFrom(IERC20(PT), msg.sender, YT, netPyIn);
148
+
149
+ bool needToBurnYt = (!IPYieldToken(YT).isExpired());
150
+ if (needToBurnYt) _transferFrom(IERC20(YT), msg.sender, YT, netPyIn);
151
+
152
+ netSyOut = IPYieldToken(YT).redeemPY(receiver);
153
+ if (netSyOut < minSyOut) revert Errors.RouterInsufficientSyOut(netSyOut, minSyOut);
154
+ }
155
+
156
+ // ----------------- HELPER -----------------
157
+
158
+ function _readMarket(address market) internal view returns (MarketState memory) {
159
+ return IPMarket(market).readState(address(this));
160
+ }
161
+
162
+ // ----------------- PT SWAP -----------------
163
+
164
+ function _entry_swapExactPtForSy(address market, LimitOrderData calldata limit) internal view returns (address) {
165
+ return !_isEmptyLimit(limit) ? address(this) : market;
166
+ }
167
+
168
+ function _swapExactPtForSy(
169
+ address receiver,
170
+ address market,
171
+ uint256 exactPtIn,
172
+ uint256 minSyOut,
173
+ LimitOrderData calldata limit
174
+ ) internal returns (uint256 netSyOut, uint256 netSyFee) {
175
+ (, IPPrincipalToken PT, ) = IPMarket(market).readTokens();
176
+
177
+ uint256 netPtLeft = exactPtIn;
178
+ bool doMarketOrder = true;
179
+
180
+ if (!_isEmptyLimit(limit)) {
181
+ (netPtLeft, netSyOut, netSyFee, doMarketOrder) = _fillLimit(receiver, PT, netPtLeft, limit);
182
+ if (doMarketOrder) {
183
+ _transferOut(address(PT), market, netPtLeft);
184
+ }
185
+ }
186
+
187
+ if (doMarketOrder) {
188
+ (uint256 netSyOutMarket, uint256 netSyFeeMarket) = IPMarket(market).swapExactPtForSy(
189
+ receiver,
190
+ netPtLeft,
191
+ EMPTY_BYTES
192
+ );
193
+
194
+ netSyOut += netSyOutMarket;
195
+ netSyFee += netSyFeeMarket;
196
+ }
197
+
198
+ if (netSyOut < minSyOut) revert Errors.RouterInsufficientSyOut(netSyOut, minSyOut);
199
+ }
200
+
201
+ function _entry_swapExactSyForPt(address market, LimitOrderData calldata limit) internal view returns (address) {
202
+ return !_isEmptyLimit(limit) ? address(this) : market;
203
+ }
204
+
205
+ function _swapExactSyForPt(
206
+ address receiver,
207
+ address market,
208
+ uint256 exactSyIn,
209
+ uint256 minPtOut,
210
+ ApproxParams calldata guessPtOut,
211
+ LimitOrderData calldata limit
212
+ ) internal returns (uint256 netPtOut, uint256 netSyFee) {
213
+ (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
214
+ uint256 netSyLeft = exactSyIn;
215
+ bool doMarketOrder = true;
216
+
217
+ if (!_isEmptyLimit(limit)) {
218
+ (netSyLeft, netPtOut, netSyFee, doMarketOrder) = _fillLimit(receiver, SY, netSyLeft, limit);
219
+ if (doMarketOrder) {
220
+ _transferOut(address(SY), market, netSyLeft);
221
+ }
222
+ }
223
+
224
+ if (doMarketOrder) {
225
+ (uint256 netPtOutMarket, ) = _readMarket(market).approxSwapExactSyForPt(
226
+ YT.newIndex(),
227
+ netSyLeft,
228
+ block.timestamp,
229
+ guessPtOut
230
+ );
231
+
232
+ (, uint256 netSyFeeMarket) = IPMarket(market).swapSyForExactPt(receiver, netPtOutMarket, EMPTY_BYTES);
233
+
234
+ netPtOut += netPtOutMarket;
235
+ netSyFee += netSyFeeMarket;
236
+ }
237
+
238
+ if (netPtOut < minPtOut) revert Errors.RouterInsufficientPtOut(netPtOut, minPtOut);
239
+ }
240
+
241
+ // ----------------- LIMIT ORDERS -----------------
242
+ function _fillLimit(
243
+ address receiver,
244
+ IERC20 tokenIn,
245
+ uint256 netInput,
246
+ LimitOrderData calldata lim
247
+ ) internal returns (uint256 netLeft, uint256 netOut, uint256 netSyFee, bool doMarketOrder) {
248
+ IPLimitRouter router = IPLimitRouter(lim.limitRouter);
249
+ netLeft = netInput;
250
+
251
+ if (lim.normalFills.length != 0) {
252
+ _safeApproveInf(address(tokenIn), lim.limitRouter);
253
+ (uint256 actualMaking, uint256 actualTaking, uint256 totalFee, ) = router.fill(
254
+ lim.normalFills,
255
+ receiver,
256
+ netLeft,
257
+ lim.optData,
258
+ EMPTY_BYTES
259
+ );
260
+ netOut += actualMaking;
261
+ netLeft -= actualTaking;
262
+ netSyFee += totalFee;
263
+ }
264
+
265
+ if (lim.flashFills.length != 0) {
266
+ address YT = lim.flashFills[0].order.YT;
267
+ OrderType orderType = lim.flashFills[0].order.orderType;
268
+
269
+ (, , uint256 totalFee, bytes memory ret) = router.fill(
270
+ lim.flashFills,
271
+ YT,
272
+ type(uint256).max,
273
+ lim.optData,
274
+ abi.encode(orderType, YT, netLeft, receiver)
275
+ );
276
+ (uint256 netUse, uint256 netReceived) = abi.decode(ret, (uint256, uint256));
277
+
278
+ netOut += netReceived;
279
+ netLeft -= netUse;
280
+ netSyFee += totalFee;
281
+ }
282
+
283
+ doMarketOrder = netLeft > netInput.mulDown(lim.epsSkipMarket);
284
+ }
285
+
286
+ function _isEmptyLimit(LimitOrderData calldata a) internal pure returns (bool) {
287
+ return a.normalFills.length == 0 && a.flashFills.length == 0;
288
+ }
289
+ }
@@ -1,5 +1,5 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
- pragma solidity ^0.8.17;
2
+ pragma solidity ^0.8.0;
3
3
 
4
4
  import "../../interfaces/IPYieldToken.sol";
5
5
  import "../../interfaces/IPPrincipalToken.sol";
@@ -7,7 +7,6 @@ import "../../interfaces/IStandardizedYield.sol";
7
7
 
8
8
  abstract contract CallbackHelper {
9
9
  enum ActionType {
10
- SwapSyForExactYt,
11
10
  SwapExactSyForYt,
12
11
  SwapYtForSy,
13
12
  SwapExactYtForPt,
@@ -18,67 +17,22 @@ abstract contract CallbackHelper {
18
17
  /// SwapExactSyForYt
19
18
  /// ------------------------------------------------------------
20
19
 
21
- function _encodeSwapExactSyForYt(
22
- address receiver,
23
- uint256 minYtOut,
24
- IPYieldToken YT
25
- ) internal pure returns (bytes memory res) {
26
- res = new bytes(128);
20
+ function _encodeSwapExactSyForYt(address receiver, IPYieldToken YT) internal pure returns (bytes memory res) {
21
+ res = new bytes(96);
27
22
  uint256 actionType = uint256(ActionType.SwapExactSyForYt);
28
23
 
29
24
  assembly {
30
25
  mstore(add(res, 32), actionType)
31
26
  mstore(add(res, 64), receiver)
32
- mstore(add(res, 96), minYtOut)
33
- mstore(add(res, 128), YT)
27
+ mstore(add(res, 96), YT)
34
28
  }
35
29
  }
36
30
 
37
- function _decodeSwapExactSyForYt(
38
- bytes calldata data
39
- ) internal pure returns (address receiver, uint256 minYtOut, IPYieldToken YT) {
31
+ function _decodeSwapExactSyForYt(bytes calldata data) internal pure returns (address receiver, IPYieldToken YT) {
40
32
  assembly {
41
33
  // first 32 bytes is ActionType
42
34
  receiver := calldataload(add(data.offset, 32))
43
- minYtOut := calldataload(add(data.offset, 64))
44
- YT := calldataload(add(data.offset, 96))
45
- }
46
- }
47
-
48
- /// ------------------------------------------------------------
49
- /// SwapSyForExactYt
50
- /// ------------------------------------------------------------
51
-
52
- function _encodeSwapSyForExactYt(
53
- address payer,
54
- address receiver,
55
- uint256 maxSyIn,
56
- IStandardizedYield SY,
57
- IPYieldToken YT
58
- ) internal pure returns (bytes memory res) {
59
- res = new bytes(192);
60
- uint256 actionType = uint256(ActionType.SwapSyForExactYt);
61
-
62
- assembly {
63
- mstore(add(res, 32), actionType)
64
- mstore(add(res, 64), payer)
65
- mstore(add(res, 96), receiver)
66
- mstore(add(res, 128), maxSyIn)
67
- mstore(add(res, 160), SY)
68
- mstore(add(res, 192), YT)
69
- }
70
- }
71
-
72
- function _decodeSwapSyForExactYt(
73
- bytes calldata data
74
- ) internal pure returns (address payer, address receiver, uint256 maxSyIn, IStandardizedYield SY, IPYieldToken YT) {
75
- assembly {
76
- // first 32 bytes is ActionType
77
- payer := calldataload(add(data.offset, 32))
78
- receiver := calldataload(add(data.offset, 64))
79
- maxSyIn := calldataload(add(data.offset, 96))
80
- SY := calldataload(add(data.offset, 128))
81
- YT := calldataload(add(data.offset, 160))
35
+ YT := calldataload(add(data.offset, 64))
82
36
  }
83
37
  }
84
38
 
@@ -86,67 +40,52 @@ abstract contract CallbackHelper {
86
40
  /// SwapYtForSy (common encode & decode)
87
41
  /// ------------------------------------------------------------
88
42
 
89
- function _encodeSwapYtForSy(
90
- address receiver,
91
- uint256 minSyOut,
92
- IPYieldToken YT
93
- ) internal pure returns (bytes memory res) {
94
- res = new bytes(128);
43
+ function _encodeSwapYtForSy(address receiver, IPYieldToken YT) internal pure returns (bytes memory res) {
44
+ res = new bytes(96);
95
45
  uint256 actionType = uint256(ActionType.SwapYtForSy);
96
46
 
97
47
  assembly {
98
48
  mstore(add(res, 32), actionType)
99
49
  mstore(add(res, 64), receiver)
100
- mstore(add(res, 96), minSyOut)
101
- mstore(add(res, 128), YT)
50
+ mstore(add(res, 96), YT)
102
51
  }
103
52
  }
104
53
 
105
- function _decodeSwapYtForSy(
106
- bytes calldata data
107
- ) internal pure returns (address receiver, uint256 minSyOut, IPYieldToken YT) {
54
+ function _decodeSwapYtForSy(bytes calldata data) internal pure returns (address receiver, IPYieldToken YT) {
108
55
  assembly {
109
56
  // first 32 bytes is ActionType
110
57
  receiver := calldataload(add(data.offset, 32))
111
- minSyOut := calldataload(add(data.offset, 64))
112
- YT := calldataload(add(data.offset, 96))
58
+ YT := calldataload(add(data.offset, 64))
113
59
  }
114
60
  }
115
61
 
116
62
  function _encodeSwapExactYtForPt(
117
63
  address receiver,
118
- uint256 exactYtIn,
119
- uint256 minPtOut,
64
+ uint256 netPtOut,
120
65
  IPPrincipalToken PT,
121
66
  IPYieldToken YT
122
67
  ) internal pure returns (bytes memory res) {
123
- res = new bytes(192);
68
+ res = new bytes(160);
124
69
  uint256 actionType = uint256(ActionType.SwapExactYtForPt);
125
70
 
126
71
  assembly {
127
72
  mstore(add(res, 32), actionType)
128
73
  mstore(add(res, 64), receiver)
129
- mstore(add(res, 96), exactYtIn)
130
- mstore(add(res, 128), minPtOut)
131
- mstore(add(res, 160), PT)
132
- mstore(add(res, 192), YT)
74
+ mstore(add(res, 96), netPtOut)
75
+ mstore(add(res, 128), PT)
76
+ mstore(add(res, 160), YT)
133
77
  }
134
78
  }
135
79
 
136
80
  function _decodeSwapExactYtForPt(
137
81
  bytes calldata data
138
- )
139
- internal
140
- pure
141
- returns (address receiver, uint256 exactYtIn, uint256 minPtOut, IPPrincipalToken PT, IPYieldToken YT)
142
- {
82
+ ) internal pure returns (address receiver, uint256 netPtOut, IPPrincipalToken PT, IPYieldToken YT) {
143
83
  assembly {
144
84
  // first 32 bytes is ActionType
145
85
  receiver := calldataload(add(data.offset, 32))
146
- exactYtIn := calldataload(add(data.offset, 64))
147
- minPtOut := calldataload(add(data.offset, 96))
148
- PT := calldataload(add(data.offset, 128))
149
- YT := calldataload(add(data.offset, 160))
86
+ netPtOut := calldataload(add(data.offset, 64))
87
+ PT := calldataload(add(data.offset, 96))
88
+ YT := calldataload(add(data.offset, 128))
150
89
  }
151
90
  }
152
91