@pendle/core-v2 5.0.7 → 5.1.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.
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
- package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
- package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v1/PendleMarket.sol/PendleMarket.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v1/PendleMarket.sol/PendleMarket.json +2 -2
- package/build/artifacts/contracts/core/Market/v1/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v1/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
- package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.json +2 -2
- package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.json +2 -2
- package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseUpg.sol/SYBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewardsUpg.sol/SYBaseWithRewardsUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/SYBaseUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/SYBaseUpg.json +852 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol/PendleAaveV3SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol/PendleAaveV3SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSY.sol/PendleAaveV3WithRewardsSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSY.sol/PendleAaveV3WithRewardsSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraSwEthBbAWethSYV2.sol/AuraSwEthBbAWethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraSwEthBbAWethSYV2.sol/AuraSwEthBbAWethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraWethVethSYUpg.sol/AuraWethVethSYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraWethVethSYUpg.sol/AuraWethVethSYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV3Upg.sol/PendleAuraBalancerStableLPSYV3Upg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BedRock/PendleUniBTCSYUpg.sol/PendleUniBTCSYUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BedRock/PendleUniBTCSYUpg.sol/PendleUniBTCSYUpg.json +1053 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BedRock/PendleUniETHSY.sol/PendleUniETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BedRock/PendleUniETHSY.sol/PendleUniETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornBaseSY.sol/PendleCornBaseSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornBaseSYUpg.sol/PendleCornBaseSYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornEBTCSY.sol/PendleCornEBTCSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornEBTCSY.sol/PendleCornEBTCSY.json +1183 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornLBTCSY.sol/PendleCornLBTCSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornLBTCSY.sol/PendleCornLBTCSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornPumpBTCSY.sol/PendleCornPumpBTCSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornPumpBTCSY.sol/PendleCornPumpBTCSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornSolvBTCBBNSYUpg.sol/PendleCornSolvBTCBBNSYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornSolvBTCBBNSYUpg.sol/PendleCornSolvBTCBBNSYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornUniBTCSYUpg.sol/PendleCornUniBTCSYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Corn/PendleCornUniBTCSYUpg.sol/PendleCornUniBTCSYUpg.json +22 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Dolomite/PendleDolomiteSY.sol/PendleDolomiteSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Dolomite/PendleDolomiteSY.sol/PendleDolomiteSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Equilibria/PendleArbitrumEPendleSY.sol/PendleArbitrumEPendleSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Equilibria/PendleArbitrumEPendleSY.sol/PendleArbitrumEPendleSY.json +1141 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleSENASY.sol/PendleSENASY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleSENASY.sol/PendleSENASY.json +1110 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleSUSDEMantleSY.sol/PendleSUSDEMantleSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleSUSDEMantleSY.sol/PendleSUSDEMantleSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleSUSDESY.sol/PendleSUSDESY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleSUSDESY.sol/PendleSUSDESY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleUSDEL2SY.sol/PendleUSDEL2SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleUSDEL2SY.sol/PendleUSDEL2SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleUSDESY.sol/PendleUSDESY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Ethena/PendleUSDESY.sol/PendleUSDESY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleEBTCSY.sol/PendleEBTCSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleEBTCSY.sol/PendleEBTCSY.json +28 -15
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleEEigenSYUpg.sol/PendleEEigenSYUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleEEigenSYUpg.sol/PendleEEigenSYUpg.json +1058 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthSY.sol/PendleWEEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthSY.sol/PendleWEEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthkSY.sol/PendleWEEthkSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthkSY.sol/PendleWEEthkSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthsSY.sol/PendleWEEthsSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthsSY.sol/PendleWEEthsSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/PendleFluxLendingSY.sol/PendleFluxLendingSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Flux/PendleFluxLendingSY.sol/PendleFluxLendingSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/GMTokenPricingHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/GMTokenPricingHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/IGMXV2DataStore.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/IGMXV2Oracle.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GMTokenPricingHelper.sol/IGMXV2Reader.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGMV2TokenSY.sol/PendleGMV2TokenSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGMV2TokenSY.sol/PendleGMV2TokenSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Gains/PendleGTokenSY.sol/PendleGTokenSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Gains/PendleGTokenSY.sol/PendleGTokenSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Gains/PendleGUSDCSY.sol/PendleGUSDCSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Gains/PendleGUSDCSY.sol/PendleGUSDCSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Gains/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Gains/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/PendleHlpSY.sol/PendleHlpSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/HMX/PendleHlpSY.sol/PendleHlpSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultERC20SY.sol/PendleKarakVaultERC20SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultERC20SY.sol/PendleKarakVaultERC20SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultEzETHSY.sol/PendleKarakVaultEzETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultEzETHSY.sol/PendleKarakVaultEzETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultSUSDESY.sol/PendleKarakVaultSUSDESY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultSUSDESY.sol/PendleKarakVaultSUSDESY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultSYBaseUpg.sol/PendleKarakVaultSYBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultUSDESY.sol/PendleKarakVaultUSDESY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultUSDESY.sol/PendleKarakVaultUSDESY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultWEETHSY.sol/PendleKarakVaultWEETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Karak/PendleKarakVaultWEETHSY.sol/PendleKarakVaultWEETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/KelpDAO/PendleAgETHSY.sol/PendleAgETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/KelpDAO/PendleAgETHSY.sol/PendleAgETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/KelpDAO/PendleRsETHSY.sol/PendleRsETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/KelpDAO/PendleRsETHSY.sol/PendleRsETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/KyberMathHelper.sol/KyberMathHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/KyberMathHelper.sol/KyberMathHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/KyberNftManagerBaseUpg.sol/KyberNftManagerBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/PendleKyberElasticSYUpg.sol/PendleKyberElasticSYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Kyber/PendleKyberElasticSYUpg.sol/PendleKyberElasticSYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Lombard/PendleLBTCSY.sol/PendleLBTCSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Lombard/PendleLBTCSY.sol/PendleLBTCSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MUX/PendleMlpSY.sol/PendleMlpSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MUX/PendleMlpSY.sol/PendleMlpSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mantle/PendleMETHSY.sol/PendleMETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mantle/PendleMETHSY.sol/PendleMETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleAmphorWstETHVaultSY.sol/PendleAmphorWstETHVaultSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleAmphorWstETHVaultSY.sol/PendleAmphorWstETHVaultSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultERC20SYUpg.sol/PendleMellowVaultERC20SYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultERC20SYUpg.sol/PendleMellowVaultERC20SYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultERC4626SYUpg.sol/PendleMellowVaultERC4626SYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultERC4626SYUpg.sol/PendleMellowVaultERC4626SYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultSYBaseUpg.sol/PendleMellowVaultSYBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultSYBaseUpg.sol/PendleMellowVaultSYBaseUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultWstETHSYUpg.sol/PendleMellowVaultWstETHSYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mellow/PendleMellowVaultWstETHSYUpg.sol/PendleMellowVaultWstETHSYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleBridgedLSDSY.sol/PendleBridgedLSDSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleBridgedLSDSY.sol/PendleBridgedLSDSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20SY.sol/PendleERC20SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20SY.sol/PendleERC20SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20SYUpg.sol/PendleERC20SYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20SYUpg.sol/PendleERC20SYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol/PendleERC20WithSupplyCapSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol/PendleERC20WithSupplyCapSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626NotRedeemableToAssetSY.sol/PendleERC4626NotRedeemableToAssetSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626NotRedeemableToAssetSY.sol/PendleERC4626NotRedeemableToAssetSY.json +1026 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol/PendleERC4626SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol/PendleERC4626SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626UpgSY.sol/PendleERC4626SYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC4626UpgSY.sol/PendleERC4626SYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleEUSDSY.sol/PendleEUSDSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleEUSDSY.sol/PendleEUSDSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleL2LRTSY.sol/PendleL2LRTSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleL2LRTSY.sol/PendleL2LRTSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PirexETH/PendleApxETHSY.sol/PendleApxETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/PirexETH/PendleApxETHSY.sol/PendleApxETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Puffer/PendlePufStETHSY.sol/PendlePufStETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Puffer/PendlePufStETHSY.sol/PendlePufStETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Puffer/PendlePufWETHSY.sol/PendlePufWETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Puffer/PendlePufWETHSY.sol/PendlePufWETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Pump/PendlePumpBTCSY.sol/PendlePumpBTCSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Pump/PendlePumpBTCSY.sol/PendlePumpBTCSY.json +1023 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Pump/PendlePumpHelperLib.sol/PendlePumpHelperLib.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Pump/PendlePumpHelperLib.sol/PendlePumpHelperLib.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleEzETHL2SY.sol/PendleEzETHL2SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleEzETHL2SY.sol/PendleEzETHL2SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleEzETHSY.sol/PendleEzETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleEzETHSY.sol/PendleEzETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleREZtakeSY.sol/PendleREZtakeSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleREZtakeSY.sol/PendleREZtakeSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleRenzoPreviewHelper.sol/PendleRenzoPreviewHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleRenzoPreviewHelper.sol/PendleRenzoPreviewHelper.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveSY.sol/PendleSiloWithIncentiveSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveSY.sol/PendleSiloWithIncentiveSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Sky/PendleSUSDSSY.sol/PendleSUSDSSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Sky/PendleSUSDSSY.sol/PendleSUSDSSY.json +1062 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Sky/PendleStakingUSDSSY.sol/PendleStakingUSDSSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Sky/PendleStakingUSDSSY.sol/PendleStakingUSDSSY.json +1128 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBSCSYUpg.sol/PendleSolvBTCBBNBSCSYUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBSCSYUpg.sol/PendleSolvBTCBBNBSCSYUpg.json +1072 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNSYUpg.sol/PendleSolvBTCBBNSYUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNSYUpg.sol/PendleSolvBTCBBNSYUpg.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBSC.sol/PendleSolvHelperBSC.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBSC.sol/PendleSolvHelperBSC.json +115 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Sophon/PendleSophonFarmingSY.sol/PendleSophonFarmingSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Sophon/PendleSophonFarmingSY.sol/PendleSophonFarmingSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Stader/PendleETHXSY.sol/PendleETHXSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Stader/PendleETHXSY.sol/PendleETHXSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleRswETHSY.sol/PendleRswETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleRswETHSY.sol/PendleRswETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwellRswETHStakingSY.sol/PendleSwellRswETHStakingSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwellRswETHStakingSY.sol/PendleSwellRswETHStakingSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwellStakingERC20SY.sol/PendleSwellStakingERC20SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwellStakingERC20SY.sol/PendleSwellStakingERC20SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Syrup/PendleSyrupSY.sol/PendleSyrupSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Syrup/PendleSyrupSY.sol/PendleSyrupSY.json +1052 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol/PendleStTAOSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol/PendleStTAOSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaLpHelper.sol/ThenaLpHelper.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaMath.sol/ThenaMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/IThenaSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/ThenaPreview.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/ThenaPreview.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Usual/PendleUsualUSD0PPSY.sol/PendleUsualUSD0PPSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Usual/PendleUsualUSD0PPSY.sol/PendleUsualUSD0PPSY.json +1023 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeERC20SY.sol/PendleZtakeERC20SY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeERC20SY.sol/PendleZtakeERC20SY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeEzETHSY.sol/PendleZtakeEzETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeEzETHSY.sol/PendleZtakeEzETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeRsETHSY.sol/PendleZtakeRsETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeRsETHSY.sol/PendleZtakeRsETHSY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeUSDESY.sol/PendleZtakeUSDESY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeUSDESY.sol/PendleZtakeUSDESY.json +2 -2
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeWeETHSY.sol/PendleZtakeWeETHSY.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zircuit/PendleZtakeWeETHSY.sol/PendleZtakeWeETHSY.json +2 -2
- package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
- package/build/artifacts/contracts/core/libraries/math/PMath.sol/PMath.dbg.json +1 -1
- package/build/artifacts/contracts/core/libraries/math/PMath.sol/PMath.json +2 -2
- package/build/artifacts/contracts/interfaces/Equilibria/IEquilibriaConverter.sol/IEquilibriaConverter.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Equilibria/IEquilibriaConverter.sol/IEquilibriaConverter.json +49 -0
- package/build/artifacts/contracts/interfaces/Equilibria/IEquilibriaVault.sol/IEquilibriaVault.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Equilibria/IEquilibriaVault.sol/IEquilibriaVault.json +75 -0
- package/build/artifacts/contracts/interfaces/EtherFi/IVedaTeller.sol/IVedaTeller.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/EtherFi/IVedaTeller.sol/IVedaTeller.json +36 -0
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.json +825 -0
- package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.json +1231 -244
- package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.json +1862 -0
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.json +1360 -2
- package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.json +1341 -2
- package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.json +1291 -0
- package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.json +1254 -0
- package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.json +727 -65
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.json +563 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.json +589 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.json +49 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.json +97 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.json +134 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.json +1388 -0
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitOrderType.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketV3.sol/IPMarketV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +1360 -2
- package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRedstonePriceFeed.sol/IRedstonePriceFeed.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/Sky/ISkyConverter.sol/ISkyConverter.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Sky/ISkyConverter.sol/ISkyConverter.json +47 -0
- package/build/artifacts/contracts/interfaces/Sky/ISkyStaking.sol/ISkyStaking.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Sky/ISkyStaking.sol/ISkyStaking.json +44 -0
- package/build/artifacts/contracts/interfaces/Syrup/ISyrupRouter.sol/ISyrupRouter.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Syrup/ISyrupRouter.sol/ISyrupRouter.json +48 -0
- package/build/artifacts/contracts/interfaces/Usual/IUsualUSD0PP.sol/IUsualUSD0PP.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Usual/IUsualUSD0PP.sol/IUsualUSD0PP.json +24 -0
- package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.json +2 -2
- package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
- package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleOffchainStorage.sol/PendleOffchainStorage.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleOffchainStorage.sol/PendleOffchainStorage.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/PendleWstETHPriceFeed.sol/PendleWstETHPriceFeed.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/PendleWstETHPriceFeed.sol/PendleWstETHPriceFeed.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +1362 -4
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
- package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleBoringOneracle.sol/PendleBoringOneracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleBoringOneracle.sol/PendleBoringOneracle.json +2 -2
- package/build/artifacts/contracts/oracles/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.json +2 -2
- package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendlePYLpOracle.sol/PendlePYLpOracle.json +2 -2
- package/build/artifacts/contracts/oracles/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendlePYOracleLib.sol/PendlePYOracleLib.json +2 -2
- package/build/artifacts/contracts/oracles/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.json +2 -2
- package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PTExpiry.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PTExpiry.json +24 -0
- package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.json +131 -0
- package/build/artifacts/contracts/oracles/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.json +2 -2
- package/build/artifacts/contracts/oracles/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +2 -2
- package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +1 -1
- package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +2 -2
- package/build/artifacts/contracts/oracles/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +827 -2
- package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +2 -2
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +1233 -246
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +4 -0
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +1926 -0
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +1343 -4
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +1293 -2
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +1256 -2
- package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
- package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
- package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
- package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
- package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
- package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +4 -0
- package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +10 -0
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +4 -0
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +10 -0
- package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.dbg.json +4 -0
- package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.json +10 -0
- package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +4 -0
- package/build/artifacts/contracts/router/{base → math}/MarketApproxLib.sol/MarketApproxPtInLib.json +3 -3
- package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +4 -0
- package/build/artifacts/contracts/router/{base → math}/MarketApproxLib.sol/MarketApproxPtOutLib.json +3 -3
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +4 -0
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +10 -0
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +4 -0
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +10 -0
- package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
- package/contracts/core/StandardizedYield/SYBaseUpg.sol +0 -2
- package/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol +193 -0
- package/contracts/core/StandardizedYield/implementations/BedRock/{PendleUniBTCSY.sol → PendleUniBTCSYUpg.sol} +12 -5
- package/contracts/core/StandardizedYield/implementations/Corn/PendleCornEBTCSY.sol +71 -0
- package/contracts/core/StandardizedYield/implementations/Corn/PendleCornUniBTCSYUpg.sol +8 -2
- package/contracts/core/StandardizedYield/implementations/Equilibria/PendleArbitrumEPendleSY.sol +124 -0
- package/contracts/core/StandardizedYield/implementations/Ethena/PendleSENASY.sol +72 -0
- package/contracts/core/StandardizedYield/implementations/EtherFi/PendleEBTCSY.sol +9 -5
- package/contracts/core/StandardizedYield/implementations/EtherFi/PendleEEigenSYUpg.sol +56 -0
- package/contracts/core/StandardizedYield/implementations/PendleERC20SYUpg.sol +1 -3
- package/contracts/core/StandardizedYield/implementations/PendleERC4626NotRedeemableToAssetSY.sol +84 -0
- package/contracts/core/StandardizedYield/implementations/PendleERC4626SY.sol +1 -1
- package/contracts/core/StandardizedYield/implementations/Pump/PendlePumpBTCSY.sol +86 -0
- package/contracts/core/StandardizedYield/implementations/Pump/PendlePumpHelperLib.sol +2 -5
- package/contracts/core/StandardizedYield/implementations/Sky/PendleSUSDSSY.sol +65 -0
- package/contracts/core/StandardizedYield/implementations/Sky/PendleStakingUSDSSY.sol +103 -0
- package/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBSCSYUpg.sol +103 -0
- package/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBSC.sol +47 -0
- package/contracts/core/StandardizedYield/implementations/Syrup/PendleSyrupSY.sol +30 -0
- package/contracts/core/StandardizedYield/implementations/Usual/PendleUsualUSD0PPSY.sol +70 -0
- package/contracts/core/libraries/math/PMath.sol +26 -2
- package/contracts/interfaces/Equilibria/IEquilibriaConverter.sol +9 -0
- package/contracts/interfaces/Equilibria/IEquilibriaVault.sol +13 -0
- package/contracts/interfaces/EtherFi/IVedaTeller.sol +8 -0
- package/contracts/interfaces/IPActionAddRemoveLiqV3.sol +4 -127
- package/contracts/interfaces/IPActionMarketAuxStatic.sol +1 -1
- package/contracts/interfaces/IPActionMiscV3.sol +20 -123
- package/contracts/interfaces/IPActionSimple.sol +65 -0
- package/contracts/interfaces/IPActionStorageStatic.sol +3 -3
- package/contracts/interfaces/IPActionStorageV4.sol +3 -5
- package/contracts/interfaces/IPActionSwapPTV3.sol +4 -31
- package/contracts/interfaces/IPActionSwapYTV3.sol +4 -39
- package/contracts/interfaces/IPAllActionTypeV3.sol +110 -14
- package/contracts/interfaces/IPAllActionV3.sol +3 -1
- package/contracts/interfaces/IPAllEventsV3.sol +274 -0
- package/contracts/interfaces/Sky/ISkyConverter.sol +8 -0
- package/contracts/interfaces/Sky/ISkyStaking.sol +10 -0
- package/contracts/interfaces/Syrup/ISyrupRouter.sol +9 -0
- package/contracts/interfaces/Usual/IUsualUSD0PP.sol +6 -0
- package/contracts/offchain-helpers/PendleOffchainStorage.sol +0 -2
- package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +2 -2
- package/contracts/offchain-helpers/router-static/base/StorageLayout.sol +1 -1
- package/contracts/oracles/PendleSparkLinearDiscountOracle.sol +45 -0
- package/contracts/router/ActionAddRemoveLiqV3.sol +29 -9
- package/contracts/router/ActionMiscV3.sol +184 -17
- package/contracts/router/ActionSimple.sol +310 -0
- package/contracts/router/ActionSwapPTV3.sol +14 -1
- package/contracts/router/ActionSwapYTV3.sol +17 -1
- package/contracts/router/base/ActionBase.sol +55 -5
- package/contracts/router/base/ActionDelegateBase.sol +127 -0
- package/contracts/router/math/ApproxStateLib.sol +143 -0
- package/contracts/router/math/MarketApproxEstimateLib.sol +107 -0
- package/contracts/router/{base → math}/MarketApproxLib.sol +1 -9
- package/contracts/router/math/MarketApproxLibOnchain.sol +241 -0
- package/contracts/router/swap-aggregator/IPSwapAggregator.sol +7 -0
- package/deployments/1-core.json +5 -4
- package/deployments/1-markets/CORN-EBTC-MAINNET-MAR2025.json +14 -0
- package/deployments/1-markets/LBTC-MAINNET-MAR2025.json +14 -0
- package/deployments/1-markets/PUMPBTC-MAINNET-MAR2025.json +14 -0
- package/deployments/1-markets/SENA-MAINNET-APR2025.json +14 -0
- package/deployments/1-markets/STAKING-USDS-MAR2025.json +14 -0
- package/deployments/1-markets/SUSDS-MAINNET-MAR2025.json +14 -0
- package/deployments/1-markets/SYRUP-USDC-MAINNET-JAN2025.json +14 -0
- package/deployments/1-markets/USD0++-MAINNET-MARCH2025.json +14 -0
- package/deployments/10-core.json +5 -4
- package/deployments/42161-core.json +5 -4
- package/deployments/42161-markets/EPENDLE-ARBITRUM-DEC2024.json +14 -0
- package/deployments/42161-markets/MPENDLE-ARBITRUM-DEC2024.json +14 -0
- package/deployments/5000-core.json +5 -4
- package/deployments/56-core.json +5 -4
- package/deployments/56-markets/SOLVBTCBBN-BSC-MAR2025.json +14 -0
- package/deployments/merkle-distribution/2024-09-26-retroactive.json +21525 -0
- package/deployments/merkle-distribution/2024-09-26.json +22340 -0
- package/package.json +1 -1
- package/typechain-types/ActionAddRemoveLiqV3.ts +604 -0
- package/typechain-types/ActionMiscV3.ts +852 -74
- package/typechain-types/ActionSimple.ts +1574 -0
- package/typechain-types/ActionStorageStatic.ts +1025 -0
- package/typechain-types/ActionStorageV4.ts +1007 -0
- package/typechain-types/ActionSwapPTV3.ts +978 -0
- package/typechain-types/ActionSwapYTV3.ts +948 -0
- package/typechain-types/IEquilibriaConverter.ts +136 -0
- package/typechain-types/IEquilibriaVault.ts +171 -0
- package/typechain-types/IPActionAddRemoveLiqV3.ts +604 -0
- package/typechain-types/IPActionAddRemoveLiqV3Events.ts +499 -0
- package/typechain-types/IPActionMiscV3.ts +852 -74
- package/typechain-types/IPActionMiscV3Events.ts +463 -0
- package/typechain-types/IPActionSimple.ts +1574 -0
- package/typechain-types/IPActionStorageEvents.ts +97 -0
- package/typechain-types/IPActionStorageStatic.ts +1025 -0
- package/typechain-types/IPActionStorageV4.ts +1007 -0
- package/typechain-types/IPActionSwapPTV3.ts +978 -0
- package/typechain-types/IPActionSwapPTV3Events.ts +125 -0
- package/typechain-types/IPActionSwapYTV3.ts +948 -0
- package/typechain-types/IPActionSwapYTV3Events.ts +155 -0
- package/typechain-types/IPAllActionV3.ts +637 -79
- package/typechain-types/IPAllEventsV3.ts +1110 -0
- package/typechain-types/IPRouterStatic.ts +1025 -0
- package/typechain-types/ISkyConverter.ts +143 -0
- package/typechain-types/ISkyStaking.ts +145 -0
- package/typechain-types/ISyrupRouter.ts +120 -0
- package/typechain-types/IUsualUSD0PP.ts +96 -0
- package/typechain-types/IVedaTeller.ts +39 -0
- package/typechain-types/PTExpiry.ts +81 -0
- package/typechain-types/PendleArbitrumEPendleSY.ts +1439 -0
- package/typechain-types/PendleCornEBTCSY.ts +1542 -0
- package/typechain-types/PendleCornUniBTCSYUpg.ts +40 -0
- package/typechain-types/PendleEBTCSY.ts +32 -13
- package/typechain-types/PendleEEigenSYUpg.ts +1385 -0
- package/typechain-types/PendleERC4626NotRedeemableToAssetSY.ts +1282 -0
- package/typechain-types/PendlePumpBTCSY.ts +1290 -0
- package/typechain-types/PendleSENASY.ts +1398 -0
- package/typechain-types/PendleSUSDSSY.ts +1333 -0
- package/typechain-types/PendleSolvBTCBBNBSCSYUpg.ts +1409 -0
- package/typechain-types/PendleSolvHelperBSC.ts +220 -0
- package/typechain-types/PendleSparkLinearDiscountOracle.ts +213 -0
- package/typechain-types/PendleStakingUSDSSY.ts +1428 -0
- package/typechain-types/PendleSyrupSY.ts +1321 -0
- package/typechain-types/PendleUniBTCSYUpg.ts +1359 -0
- package/typechain-types/PendleUsualUSD0PPSY.ts +1296 -0
- package/typechain-types/SYBaseUpg.ts +0 -169
- package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +826 -1
- package/typechain-types/factories/ActionCallbackV3__factory.ts +1 -1
- package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMiscV3__factory.ts +1232 -245
- package/typechain-types/factories/ActionSimple__factory.ts +1976 -0
- package/typechain-types/factories/ActionStorageStatic__factory.ts +1361 -3
- package/typechain-types/factories/ActionStorageV4__factory.ts +1342 -3
- package/typechain-types/factories/ActionSwapPTV3__factory.ts +1292 -1
- package/typechain-types/factories/ActionSwapYTV3__factory.ts +1255 -1
- package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
- package/typechain-types/factories/AuraEthxBbAWethSY__factory.ts +1 -1
- package/typechain-types/factories/AuraSwEthBbAWethSYV2__factory.ts +1 -1
- package/typechain-types/factories/AuraWethVethSYUpg__factory.ts +1 -1
- package/typechain-types/factories/BoringLpGlpOracle__factory.ts +1 -1
- package/typechain-types/factories/BoringPYUsdChainlinkAssetOracle__factory.ts +1 -1
- package/typechain-types/factories/BoringPYUsdChainlinkSYOracle__factory.ts +1 -1
- package/typechain-types/factories/Broadcaster__factory.ts +1 -1
- package/typechain-types/factories/CamelotV1VolatilePreview__factory.ts +1 -1
- package/typechain-types/factories/GMTokenPricingHelper__factory.ts +1 -1
- package/typechain-types/factories/IEquilibriaConverter__factory.ts +68 -0
- package/typechain-types/factories/IEquilibriaVault__factory.ts +90 -0
- package/typechain-types/factories/IPActionAddRemoveLiqV3Events__factory.ts +582 -0
- package/typechain-types/factories/IPActionAddRemoveLiqV3__factory.ts +825 -0
- package/typechain-types/factories/IPActionMiscV3Events__factory.ts +608 -0
- package/typechain-types/factories/IPActionMiscV3__factory.ts +1231 -244
- package/typechain-types/factories/IPActionSimple__factory.ts +1877 -0
- package/typechain-types/factories/IPActionStorageEvents__factory.ts +68 -0
- package/typechain-types/factories/IPActionStorageStatic__factory.ts +1360 -2
- package/typechain-types/factories/IPActionStorageV4__factory.ts +1341 -2
- package/typechain-types/factories/IPActionSwapPTV3Events__factory.ts +116 -0
- package/typechain-types/factories/IPActionSwapPTV3__factory.ts +1291 -0
- package/typechain-types/factories/IPActionSwapYTV3Events__factory.ts +153 -0
- package/typechain-types/factories/IPActionSwapYTV3__factory.ts +1254 -0
- package/typechain-types/factories/IPAllActionV3__factory.ts +727 -65
- package/typechain-types/factories/IPAllEventsV3__factory.ts +1400 -0
- package/typechain-types/factories/IPRouterStatic__factory.ts +1360 -2
- package/typechain-types/factories/ISkyConverter__factory.ts +59 -0
- package/typechain-types/factories/ISkyStaking__factory.ts +56 -0
- package/typechain-types/factories/ISyrupRouter__factory.ts +60 -0
- package/typechain-types/factories/IUsualUSD0PP__factory.ts +36 -0
- package/typechain-types/factories/IVedaTeller__factory.ts +36 -0
- package/typechain-types/factories/KyberMathHelper__factory.ts +1 -1
- package/typechain-types/factories/LimitBackendHelper__factory.ts +1 -1
- package/typechain-types/factories/PTExpiry__factory.ts +36 -0
- package/typechain-types/factories/PendleAaveV3SY__factory.ts +1 -1
- package/typechain-types/factories/PendleAaveV3WithRewardsSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAgETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAmphorWstETHVaultSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1 -1
- package/typechain-types/factories/PendleApxETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleArbitrumEPendleSY__factory.ts +1198 -0
- package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
- package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1 -1
- package/typechain-types/factories/PendleBoringOneracle__factory.ts +1 -1
- package/typechain-types/factories/PendleBoringSolvBTCOneracle__factory.ts +1 -1
- package/typechain-types/factories/PendleBridgedLSDSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
- package/typechain-types/factories/PendleChainlinkRelayer__factory.ts +1 -1
- package/typechain-types/factories/PendleCornEBTCSY__factory.ts +1236 -0
- package/typechain-types/factories/PendleCornLBTCSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCornPumpBTCSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCornSolvBTCBBNSYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleCornUniBTCSYUpg__factory.ts +21 -1
- package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
- package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
- package/typechain-types/factories/PendleDolomiteSY__factory.ts +1 -1
- package/typechain-types/factories/PendleEBTCSY__factory.ts +27 -14
- package/typechain-types/factories/PendleEEigenSYUpg__factory.ts +1111 -0
- package/typechain-types/factories/PendleERC20SYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleERC20SY__factory.ts +1 -1
- package/typechain-types/factories/PendleERC20WithSupplyCapSY__factory.ts +1 -1
- package/typechain-types/factories/PendleERC4626NotRedeemableToAssetSY__factory.ts +1103 -0
- package/typechain-types/factories/PendleERC4626SYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleERC4626SY__factory.ts +1 -1
- package/typechain-types/factories/PendleETHXSY__factory.ts +1 -1
- package/typechain-types/factories/PendleEUSDSY__factory.ts +1 -1
- package/typechain-types/factories/PendleExchangeRateOracle__factory.ts +1 -1
- package/typechain-types/factories/PendleEzETHL2SY__factory.ts +1 -1
- package/typechain-types/factories/PendleEzETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
- package/typechain-types/factories/PendleFluxLendingSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGMV2TokenSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGTokenSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGUSDCSY__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
- package/typechain-types/factories/PendleHlpSY__factory.ts +1 -1
- package/typechain-types/factories/PendleKarakVaultERC20SY__factory.ts +1 -1
- package/typechain-types/factories/PendleKarakVaultEzETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleKarakVaultSUSDESY__factory.ts +1 -1
- package/typechain-types/factories/PendleKarakVaultUSDESY__factory.ts +1 -1
- package/typechain-types/factories/PendleKarakVaultWEETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleKyberElasticSYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleL2LRTSY__factory.ts +1 -1
- package/typechain-types/factories/PendleLBTCSY__factory.ts +1 -1
- package/typechain-types/factories/PendleLimitRouter__factory.ts +1 -1
- package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
- package/typechain-types/factories/PendleMETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleMantleStakedEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketFactoryV3__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleMarketV3__factory.ts +1 -1
- package/typechain-types/factories/PendleMarket__factory.ts +1 -1
- package/typechain-types/factories/PendleMellowVaultERC20SYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMellowVaultERC4626SYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMellowVaultSYBaseUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMellowVaultWstETHSYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMlpSY__factory.ts +1 -1
- package/typechain-types/factories/PendleOffchainStorage__factory.ts +1 -1
- package/typechain-types/factories/PendleOracleForSyProxy__factory.ts +1 -1
- package/typechain-types/factories/PendlePYLpOracle__factory.ts +1 -1
- package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
- package/typechain-types/factories/PendlePufStETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendlePufWETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendlePumpBTCSY__factory.ts +1076 -0
- package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
- package/typechain-types/factories/PendleREZtakeSY__factory.ts +1 -1
- package/typechain-types/factories/PendleRedStoneRateOracleAdapter__factory.ts +1 -1
- package/typechain-types/factories/PendleRenzoPreviewHelper__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
- package/typechain-types/factories/PendleRouterV4__factory.ts +1 -1
- package/typechain-types/factories/PendleRsETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleRswETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSENASY__factory.ts +1172 -0
- package/typechain-types/factories/PendleSUSDEMantleSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSUSDESY__factory.ts +1 -1
- package/typechain-types/factories/PendleSUSDSSY__factory.ts +1112 -0
- package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSiloWithIncentiveSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSolvBTCBBNBSCSYUpg__factory.ts +1129 -0
- package/typechain-types/factories/PendleSolvBTCBBNSYUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleSolvHelperBSC__factory.ts +168 -0
- package/typechain-types/factories/PendleSophonFarmingSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSparkLinearDiscountOracle__factory.ts +209 -0
- package/typechain-types/factories/PendleStTAOSY__factory.ts +1 -1
- package/typechain-types/factories/PendleStakingUSDSSY__factory.ts +1181 -0
- package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSwap__factory.ts +1 -1
- package/typechain-types/factories/PendleSwellRswETHStakingSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSwellStakingERC20SY__factory.ts +1 -1
- package/typechain-types/factories/PendleSyrupSY__factory.ts +1118 -0
- package/typechain-types/factories/PendleThenaSY__factory.ts +1 -1
- package/typechain-types/factories/PendleUSDEL2SY__factory.ts +1 -1
- package/typechain-types/factories/PendleUSDESY__factory.ts +1 -1
- package/typechain-types/factories/PendleUniBTCSYUpg__factory.ts +1106 -0
- package/typechain-types/factories/PendleUniETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleUsualUSD0PPSY__factory.ts +1076 -0
- package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleWEEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleWEEthkSY__factory.ts +1 -1
- package/typechain-types/factories/PendleWEEthsSY__factory.ts +1 -1
- package/typechain-types/factories/PendleWbEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleWstETHPriceFeed__factory.ts +1 -1
- package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
- package/typechain-types/factories/PendleZtakeERC20SY__factory.ts +1 -1
- package/typechain-types/factories/PendleZtakeEzETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleZtakeRsETHSY__factory.ts +1 -1
- package/typechain-types/factories/PendleZtakeUSDESY__factory.ts +1 -1
- package/typechain-types/factories/PendleZtakeWeETHSY__factory.ts +1 -1
- package/typechain-types/factories/Reflector__factory.ts +1 -1
- package/typechain-types/factories/SAPE__factory.ts +1 -1
- package/typechain-types/factories/SYBaseUpg__factory.ts +0 -124
- package/typechain-types/factories/SwETHSY__factory.ts +1 -1
- package/typechain-types/factories/ThenaPreview__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
- package/typechain-types/hardhat.d.ts +270 -27
- package/typechain-types/index.ts +58 -6
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BedRock/PendleUniBTCSY.sol/PendleUniBTCSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/BedRock/PendleUniBTCSY.sol/PendleUniBTCSY.json +0 -1049
- package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.json +0 -863
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +0 -4
- package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +0 -4
- package/contracts/interfaces/IPRouterHelper.sol +0 -146
- package/deployments/1-markets/SOPHON-PEPE-MAINNET-DEC2024.json +0 -14
|
@@ -6,6 +6,8 @@ import "../interfaces/IPActionMiscV3.sol";
|
|
|
6
6
|
import "../interfaces/IPReflector.sol";
|
|
7
7
|
|
|
8
8
|
contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
9
|
+
uint256 private constant NOT_FOUND = type(uint256).max;
|
|
10
|
+
|
|
9
11
|
function mintSyFromToken(
|
|
10
12
|
address receiver,
|
|
11
13
|
address SY,
|
|
@@ -16,6 +18,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
16
18
|
emit MintSyFromToken(msg.sender, input.tokenIn, SY, receiver, input.netTokenIn, netSyOut);
|
|
17
19
|
}
|
|
18
20
|
|
|
21
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
19
22
|
function redeemSyToToken(
|
|
20
23
|
address receiver,
|
|
21
24
|
address SY,
|
|
@@ -26,6 +29,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
26
29
|
emit RedeemSyToToken(msg.sender, output.tokenOut, SY, receiver, netSyIn, netTokenOut);
|
|
27
30
|
}
|
|
28
31
|
|
|
32
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
29
33
|
function mintPyFromToken(
|
|
30
34
|
address receiver,
|
|
31
35
|
address YT,
|
|
@@ -40,6 +44,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
40
44
|
emit MintPyFromToken(msg.sender, input.tokenIn, YT, receiver, input.netTokenIn, netPyOut, netSyInterm);
|
|
41
45
|
}
|
|
42
46
|
|
|
47
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
43
48
|
function redeemPyToToken(
|
|
44
49
|
address receiver,
|
|
45
50
|
address YT,
|
|
@@ -93,6 +98,114 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
93
98
|
}
|
|
94
99
|
}
|
|
95
100
|
|
|
101
|
+
/// @dev The interface might change in the future, check with Pendle team before use
|
|
102
|
+
function redeemDueInterestAndRewardsV2(
|
|
103
|
+
IStandardizedYield[] calldata SYs,
|
|
104
|
+
RedeemYtIncomeToTokenStruct[] calldata YTs,
|
|
105
|
+
IPMarket[] calldata markets,
|
|
106
|
+
IPSwapAggregator pendleSwap,
|
|
107
|
+
SwapDataExtra[] calldata swaps
|
|
108
|
+
) external returns (uint256[] memory netOutFromSwaps, uint256[] memory netInterests) {
|
|
109
|
+
if (swaps.length == 0) {
|
|
110
|
+
return (netOutFromSwaps, __redeemDueInterestAndRewardsV2NoSwap(SYs, YTs, markets));
|
|
111
|
+
} else {
|
|
112
|
+
return __redeemDueInterestAndRewardsV2AndSwap(SYs, YTs, markets, pendleSwap, swaps);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
function __redeemDueInterestAndRewardsV2NoSwap(
|
|
117
|
+
IStandardizedYield[] calldata SYs,
|
|
118
|
+
RedeemYtIncomeToTokenStruct[] calldata YTs,
|
|
119
|
+
IPMarket[] calldata markets
|
|
120
|
+
) private returns (uint256[] memory netInterests) {
|
|
121
|
+
netInterests = new uint256[](YTs.length);
|
|
122
|
+
for (uint256 i = 0; i < SYs.length; ++i) SYs[i].claimRewards(msg.sender);
|
|
123
|
+
|
|
124
|
+
for (uint256 i = 0; i < YTs.length; ++i) {
|
|
125
|
+
(uint256 netSyInt, ) = YTs[i].yt.redeemDueInterestAndRewards(
|
|
126
|
+
msg.sender,
|
|
127
|
+
YTs[i].doRedeemInterest,
|
|
128
|
+
YTs[i].doRedeemRewards
|
|
129
|
+
);
|
|
130
|
+
|
|
131
|
+
if (netSyInt == 0) continue;
|
|
132
|
+
|
|
133
|
+
IStandardizedYield SY = IStandardizedYield(YTs[i].yt.SY());
|
|
134
|
+
_transferFrom(SY, msg.sender, address(SY), netSyInt);
|
|
135
|
+
netInterests[i] = SY.redeem(msg.sender, netSyInt, YTs[i].tokenRedeemSy, YTs[i].minTokenRedeemOut, true);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
for (uint256 i = 0; i < markets.length; ++i) markets[i].redeemRewards(msg.sender);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
function __redeemDueInterestAndRewardsV2AndSwap(
|
|
142
|
+
IStandardizedYield[] calldata SYs,
|
|
143
|
+
RedeemYtIncomeToTokenStruct[] calldata YTs,
|
|
144
|
+
IPMarket[] calldata markets,
|
|
145
|
+
IPSwapAggregator pendleSwap,
|
|
146
|
+
SwapDataExtra[] calldata swaps
|
|
147
|
+
) private returns (uint256[] memory netOutFromSwaps, uint256[] memory netInterests) {
|
|
148
|
+
netOutFromSwaps = new uint256[](swaps.length);
|
|
149
|
+
uint256[] memory netSwaps = new uint256[](swaps.length);
|
|
150
|
+
|
|
151
|
+
for (uint256 i = 0; i < SYs.length; ++i) {
|
|
152
|
+
_add(swaps, netSwaps, SYs[i].getRewardTokens(), SYs[i].claimRewards(msg.sender));
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
netInterests = new uint256[](YTs.length);
|
|
156
|
+
for (uint256 i = 0; i < YTs.length; ++i) {
|
|
157
|
+
uint256[] memory netRewards;
|
|
158
|
+
(netInterests[i], netRewards) = YTs[i].yt.redeemDueInterestAndRewards(
|
|
159
|
+
msg.sender,
|
|
160
|
+
YTs[i].doRedeemInterest,
|
|
161
|
+
YTs[i].doRedeemRewards
|
|
162
|
+
);
|
|
163
|
+
|
|
164
|
+
if (YTs[i].doRedeemRewards) _add(swaps, netSwaps, YTs[i].yt.getRewardTokens(), netRewards);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
for (uint256 i = 0; i < markets.length; ++i) {
|
|
168
|
+
_add(swaps, netSwaps, markets[i].getRewardTokens(), markets[i].redeemRewards(msg.sender));
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
for (uint256 i = 0; i < swaps.length; ++i) {
|
|
172
|
+
_transferIn(swaps[i].tokenIn, msg.sender, netSwaps[i]);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
for (uint256 i = 0; i < YTs.length; ++i) {
|
|
176
|
+
if (netInterests[i] == 0) continue;
|
|
177
|
+
IStandardizedYield SY = IStandardizedYield(YTs[i].yt.SY());
|
|
178
|
+
netInterests[i] = _redeemSyAndAdd(
|
|
179
|
+
swaps,
|
|
180
|
+
netSwaps,
|
|
181
|
+
SY,
|
|
182
|
+
netInterests[i],
|
|
183
|
+
YTs[i].tokenRedeemSy,
|
|
184
|
+
YTs[i].minTokenRedeemOut
|
|
185
|
+
);
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
for (uint256 i = 0; i < swaps.length; ++i) netOutFromSwaps[i] = _swap(swaps[i], netSwaps[i], pendleSwap, true);
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/// @dev The interface might change in the future, check with Pendle team before use
|
|
192
|
+
function swapTokensToTokens(
|
|
193
|
+
IPSwapAggregator pendleSwap,
|
|
194
|
+
SwapDataExtra[] calldata swaps,
|
|
195
|
+
uint256[] calldata netSwaps
|
|
196
|
+
) external payable returns (uint256[] memory netOutFromSwaps) {
|
|
197
|
+
netOutFromSwaps = new uint256[](swaps.length);
|
|
198
|
+
|
|
199
|
+
for (uint256 i = 0; i < swaps.length; ++i) {
|
|
200
|
+
_transferIn(swaps[i].tokenIn, msg.sender, netSwaps[i]);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
for (uint256 i = 0; i < swaps.length; ++i) {
|
|
204
|
+
netOutFromSwaps[i] = _swap(swaps[i], netSwaps[i], pendleSwap, false);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
/// @dev Deprecated, please use swapTokensToTokens which support unwrapping ETH too
|
|
96
209
|
function swapTokenToToken(
|
|
97
210
|
address receiver,
|
|
98
211
|
uint256 minTokenOut,
|
|
@@ -106,6 +219,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
106
219
|
_transferOut(inp.tokenMintSy, receiver, netTokenOut);
|
|
107
220
|
}
|
|
108
221
|
|
|
222
|
+
/// @dev The interface might change in the future, check with Pendle team before use
|
|
109
223
|
function swapTokenToTokenViaSy(
|
|
110
224
|
address receiver,
|
|
111
225
|
address SY,
|
|
@@ -117,7 +231,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
117
231
|
netTokenOut = IStandardizedYield(SY).redeem(receiver, netSyInterm, tokenRedeemSy, minTokenOut, true);
|
|
118
232
|
}
|
|
119
233
|
|
|
120
|
-
/// @
|
|
234
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
121
235
|
function exitPreExpToToken(
|
|
122
236
|
address receiver,
|
|
123
237
|
address market,
|
|
@@ -135,7 +249,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
135
249
|
emit ExitPreExpToToken(msg.sender, market, output.tokenOut, receiver, netLpIn, totalTokenOut, params);
|
|
136
250
|
}
|
|
137
251
|
|
|
138
|
-
/// @
|
|
252
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
139
253
|
function exitPreExpToSy(
|
|
140
254
|
address receiver,
|
|
141
255
|
address market,
|
|
@@ -198,7 +312,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
198
312
|
p.totalSyOut = p.netSyFromRemove + p.netSyFromRedeem + p.netSyFromSwap;
|
|
199
313
|
}
|
|
200
314
|
|
|
201
|
-
/// @
|
|
315
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
202
316
|
function exitPostExpToToken(
|
|
203
317
|
address receiver,
|
|
204
318
|
address market,
|
|
@@ -228,6 +342,73 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
228
342
|
emit ExitPostExpToSy(msg.sender, market, receiver, netLpIn, params);
|
|
229
343
|
}
|
|
230
344
|
|
|
345
|
+
function _redeemSyAndAdd(
|
|
346
|
+
SwapDataExtra[] calldata swaps,
|
|
347
|
+
uint256[] memory netSwaps,
|
|
348
|
+
IStandardizedYield SY,
|
|
349
|
+
uint256 netSyToRedeem,
|
|
350
|
+
address tokenRedeemSy,
|
|
351
|
+
uint256 minTokenRedeemSy
|
|
352
|
+
) internal returns (uint256 netTokenOut) {
|
|
353
|
+
_transferFrom(SY, msg.sender, address(SY), netSyToRedeem);
|
|
354
|
+
|
|
355
|
+
uint256 index = _find(swaps, tokenRedeemSy);
|
|
356
|
+
if (index == NOT_FOUND) {
|
|
357
|
+
return SY.redeem(msg.sender, netSyToRedeem, tokenRedeemSy, minTokenRedeemSy, true);
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
netTokenOut = SY.redeem(address(this), netSyToRedeem, tokenRedeemSy, minTokenRedeemSy, true);
|
|
361
|
+
netSwaps[index] += netTokenOut;
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
function _add(
|
|
365
|
+
SwapDataExtra[] calldata swaps,
|
|
366
|
+
uint256[] memory netSwaps,
|
|
367
|
+
address[] memory tokens,
|
|
368
|
+
uint256[] memory amounts
|
|
369
|
+
) internal pure {
|
|
370
|
+
for (uint256 i = 0; i < tokens.length; ++i) {
|
|
371
|
+
uint256 index = _find(swaps, tokens[i]);
|
|
372
|
+
if (index == NOT_FOUND) continue;
|
|
373
|
+
|
|
374
|
+
netSwaps[index] += amounts[i];
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
function _swap(
|
|
379
|
+
SwapDataExtra calldata $,
|
|
380
|
+
uint256 netSwap,
|
|
381
|
+
IPSwapAggregator pendleSwap,
|
|
382
|
+
bool needScale
|
|
383
|
+
) internal returns (uint256 netTokenOut) {
|
|
384
|
+
SwapType swapType = $.swapData.swapType;
|
|
385
|
+
assert(swapType != SwapType.NONE);
|
|
386
|
+
|
|
387
|
+
if (swapType == SwapType.ETH_WETH) {
|
|
388
|
+
_wrap_unwrap_ETH($.tokenIn, $.tokenOut, netSwap);
|
|
389
|
+
|
|
390
|
+
netTokenOut = netSwap;
|
|
391
|
+
} else {
|
|
392
|
+
assert($.swapData.needScale == needScale);
|
|
393
|
+
|
|
394
|
+
_transferOut($.tokenIn, address(pendleSwap), netSwap);
|
|
395
|
+
|
|
396
|
+
uint256 preBalance = _selfBalance($.tokenOut);
|
|
397
|
+
IPSwapAggregator(pendleSwap).swap($.tokenIn, netSwap, $.swapData);
|
|
398
|
+
netTokenOut = _selfBalance($.tokenOut) - preBalance;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
require(netTokenOut >= $.minOut, "Slippage: INSUFFICIENT_TOKEN_OUT");
|
|
402
|
+
_transferOut($.tokenOut, msg.sender, netTokenOut);
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
function _find(SwapDataExtra[] calldata swaps, address token) internal pure returns (uint256 index) {
|
|
406
|
+
for (uint256 i = 0; i < swaps.length; ++i) {
|
|
407
|
+
if (swaps[i].tokenIn == token) return i;
|
|
408
|
+
}
|
|
409
|
+
return NOT_FOUND;
|
|
410
|
+
}
|
|
411
|
+
|
|
231
412
|
function _exitPostExpToSy(
|
|
232
413
|
bool setReceiverToSy,
|
|
233
414
|
address receiver,
|
|
@@ -290,20 +471,6 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
|
|
|
290
471
|
revert Errors.SimulationResults(success, result);
|
|
291
472
|
}
|
|
292
473
|
|
|
293
|
-
function _delegateToSelf(
|
|
294
|
-
bytes memory data,
|
|
295
|
-
bool allowFailure
|
|
296
|
-
) internal returns (bool success, bytes memory result) {
|
|
297
|
-
(success, result) = address(this).delegatecall(data);
|
|
298
|
-
|
|
299
|
-
if (!success && !allowFailure) {
|
|
300
|
-
assembly {
|
|
301
|
-
// We use Yul's revert() to bubble up errors from the target contract.
|
|
302
|
-
revert(add(32, result), mload(result))
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
|
|
307
474
|
function _callToReflector(address payable reflector, bytes memory data) internal returns (bytes memory) {
|
|
308
475
|
return IPReflector(reflector).reflect(data);
|
|
309
476
|
}
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity ^0.8.0;
|
|
3
|
+
|
|
4
|
+
import {IPMarket} from "../interfaces/IPMarket.sol";
|
|
5
|
+
import {IStandardizedYield} from "../interfaces/IStandardizedYield.sol";
|
|
6
|
+
import {IPPrincipalToken} from "../interfaces/IPPrincipalToken.sol";
|
|
7
|
+
import {IPActionSimple} from "../interfaces/IPActionSimple.sol";
|
|
8
|
+
import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
|
|
9
|
+
|
|
10
|
+
import {TokenHelper} from "../core/libraries/TokenHelper.sol";
|
|
11
|
+
import {PYIndexLib, IPYieldToken, PYIndex} from "../core/StandardizedYield/PYIndex.sol";
|
|
12
|
+
import {MarketState} from "../core/Market/MarketMathCore.sol";
|
|
13
|
+
import {PMath} from "../core/libraries/math/PMath.sol";
|
|
14
|
+
|
|
15
|
+
import {CallbackHelper} from "./base/CallbackHelper.sol";
|
|
16
|
+
import {MarketApproxPtInLibOnchain, MarketApproxPtOutLibOnchain} from "./math/MarketApproxLibOnchain.sol";
|
|
17
|
+
import {TokenInput, TokenOutput} from "../interfaces/IPAllActionTypeV3.sol";
|
|
18
|
+
import {ActionBase} from "./base/ActionBase.sol";
|
|
19
|
+
|
|
20
|
+
contract ActionSimple is ActionBase, IPActionSimple {
|
|
21
|
+
using MarketApproxPtInLibOnchain for MarketState;
|
|
22
|
+
using MarketApproxPtOutLibOnchain for MarketState;
|
|
23
|
+
using PYIndexLib for IPYieldToken;
|
|
24
|
+
using PYIndexLib for PYIndex;
|
|
25
|
+
using PMath for uint256;
|
|
26
|
+
|
|
27
|
+
// ------------------ SWAP TOKEN FOR PT ------------------
|
|
28
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
29
|
+
/// @dev Use swapExactTokenForPt from the main router instead.
|
|
30
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
31
|
+
function swapExactTokenForPtSimple(
|
|
32
|
+
address receiver,
|
|
33
|
+
address market,
|
|
34
|
+
uint256 minPtOut,
|
|
35
|
+
TokenInput calldata input
|
|
36
|
+
) external payable returns (uint256 netPtOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
37
|
+
(IStandardizedYield SY, , ) = IPMarket(market).readTokens();
|
|
38
|
+
netSyInterm = _mintSyFromToken(_entry_swapExactSyForPt(market, false), address(SY), 1, input);
|
|
39
|
+
|
|
40
|
+
(netPtOut, netSyFee) = _swapExactSyForPtSimple(receiver, market, netSyInterm, minPtOut);
|
|
41
|
+
emit SwapPtAndToken(
|
|
42
|
+
msg.sender,
|
|
43
|
+
market,
|
|
44
|
+
input.tokenIn,
|
|
45
|
+
receiver,
|
|
46
|
+
netPtOut.Int(),
|
|
47
|
+
input.netTokenIn.neg(),
|
|
48
|
+
netSyInterm
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
53
|
+
/// @dev Use swapExactSyForPt from the main router instead.
|
|
54
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
55
|
+
function swapExactSyForPtSimple(
|
|
56
|
+
address receiver,
|
|
57
|
+
address market,
|
|
58
|
+
uint256 exactSyIn,
|
|
59
|
+
uint256 minPtOut
|
|
60
|
+
) external returns (uint256 netPtOut, uint256 netSyFee) {
|
|
61
|
+
(IStandardizedYield SY, , ) = IPMarket(market).readTokens();
|
|
62
|
+
_transferFrom(SY, msg.sender, _entry_swapExactSyForPt(market, false), exactSyIn);
|
|
63
|
+
|
|
64
|
+
(netPtOut, netSyFee) = _swapExactSyForPtSimple(receiver, market, exactSyIn, minPtOut);
|
|
65
|
+
emit SwapPtAndSy(msg.sender, market, receiver, netPtOut.Int(), exactSyIn.neg());
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
69
|
+
/// @dev Use swapExactTokenForYt from the main router instead.
|
|
70
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
71
|
+
function swapExactTokenForYtSimple(
|
|
72
|
+
address receiver,
|
|
73
|
+
address market,
|
|
74
|
+
uint256 minYtOut,
|
|
75
|
+
TokenInput calldata input
|
|
76
|
+
) external payable returns (uint256 netYtOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
77
|
+
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
78
|
+
|
|
79
|
+
netSyInterm = _mintSyFromToken(_entry_swapExactSyForYt(YT, false), address(SY), 1, input);
|
|
80
|
+
(netYtOut, netSyFee) = _swapExactSyForYtSimple(receiver, market, SY, YT, netSyInterm, minYtOut);
|
|
81
|
+
|
|
82
|
+
emit SwapYtAndToken(
|
|
83
|
+
msg.sender,
|
|
84
|
+
market,
|
|
85
|
+
input.tokenIn,
|
|
86
|
+
receiver,
|
|
87
|
+
netYtOut.Int(),
|
|
88
|
+
input.netTokenIn.neg(),
|
|
89
|
+
netSyInterm
|
|
90
|
+
);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
94
|
+
/// @dev Use swapExactSyForYt from the main router instead.
|
|
95
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
96
|
+
function swapExactSyForYtSimple(
|
|
97
|
+
address receiver,
|
|
98
|
+
address market,
|
|
99
|
+
uint256 exactSyIn,
|
|
100
|
+
uint256 minYtOut
|
|
101
|
+
) external returns (uint256 netYtOut, uint256 netSyFee) {
|
|
102
|
+
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
103
|
+
_transferFrom(SY, msg.sender, _entry_swapExactSyForYt(YT, false), exactSyIn);
|
|
104
|
+
|
|
105
|
+
(netYtOut, netSyFee) = _swapExactSyForYtSimple(receiver, market, SY, YT, exactSyIn, minYtOut);
|
|
106
|
+
emit SwapYtAndSy(msg.sender, market, receiver, netYtOut.Int(), exactSyIn.neg());
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
110
|
+
/// @dev Use addLiquiditySinglePt from the main router instead.
|
|
111
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
112
|
+
function addLiquiditySinglePtSimple(
|
|
113
|
+
address receiver,
|
|
114
|
+
address market,
|
|
115
|
+
uint256 netPtIn,
|
|
116
|
+
uint256 minLpOut
|
|
117
|
+
) external returns (uint256 netLpOut, uint256 netSyFee) {
|
|
118
|
+
(, IPPrincipalToken PT, IPYieldToken YT) = IPMarket(market).readTokens();
|
|
119
|
+
_transferFrom(PT, msg.sender, _entry_addLiquiditySinglePt(market, false), netPtIn);
|
|
120
|
+
|
|
121
|
+
uint256 netPtLeft = netPtIn;
|
|
122
|
+
uint256 netSyReceived;
|
|
123
|
+
|
|
124
|
+
(uint256 netPtSwapMarket, , , ) = _readMarket(market).approxSwapPtToAddLiquidityOnchain(
|
|
125
|
+
YT.newIndex(),
|
|
126
|
+
netPtLeft,
|
|
127
|
+
netSyReceived,
|
|
128
|
+
block.timestamp
|
|
129
|
+
);
|
|
130
|
+
|
|
131
|
+
// execute the swap
|
|
132
|
+
(uint256 netSyOutMarket, uint256 netSyFeeMarket) = IPMarket(market).swapExactPtForSy(
|
|
133
|
+
market,
|
|
134
|
+
netPtSwapMarket,
|
|
135
|
+
EMPTY_BYTES
|
|
136
|
+
);
|
|
137
|
+
|
|
138
|
+
netPtLeft -= netPtSwapMarket;
|
|
139
|
+
netSyReceived += netSyOutMarket;
|
|
140
|
+
netSyFee += netSyFeeMarket;
|
|
141
|
+
|
|
142
|
+
// execute the addLiquidity
|
|
143
|
+
(netLpOut, , ) = IPMarket(market).mint(receiver, netSyReceived, netPtLeft);
|
|
144
|
+
|
|
145
|
+
if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
|
|
146
|
+
|
|
147
|
+
emit AddLiquiditySinglePt(msg.sender, market, receiver, netPtIn, netLpOut);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// ------------------ ADD LIQUIDITY SINGLE TOKEN ------------------
|
|
151
|
+
|
|
152
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
153
|
+
/// @dev Use addLiquiditySingleToken from the main router instead.
|
|
154
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
155
|
+
function addLiquiditySingleTokenSimple(
|
|
156
|
+
address receiver,
|
|
157
|
+
address market,
|
|
158
|
+
uint256 minLpOut,
|
|
159
|
+
TokenInput calldata input
|
|
160
|
+
) external payable returns (uint256 netLpOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
161
|
+
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
162
|
+
|
|
163
|
+
netSyInterm = _mintSyFromToken(_entry_addLiquiditySingleSy(market, false), address(SY), 1, input);
|
|
164
|
+
|
|
165
|
+
(netLpOut, netSyFee) = _addLiquiditySingleSySimple(receiver, market, SY, YT, netSyInterm, minLpOut);
|
|
166
|
+
|
|
167
|
+
emit AddLiquiditySingleToken(
|
|
168
|
+
msg.sender,
|
|
169
|
+
market,
|
|
170
|
+
input.tokenIn,
|
|
171
|
+
receiver,
|
|
172
|
+
input.netTokenIn,
|
|
173
|
+
netLpOut,
|
|
174
|
+
netSyInterm
|
|
175
|
+
);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
179
|
+
/// @dev Use addLiquiditySingleSy from the main router instead.
|
|
180
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
181
|
+
function addLiquiditySingleSySimple(
|
|
182
|
+
address receiver,
|
|
183
|
+
address market,
|
|
184
|
+
uint256 netSyIn,
|
|
185
|
+
uint256 minLpOut
|
|
186
|
+
) external returns (uint256 netLpOut, uint256 netSyFee) {
|
|
187
|
+
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
188
|
+
|
|
189
|
+
_transferFrom(SY, msg.sender, _entry_addLiquiditySingleSy(market, false), netSyIn);
|
|
190
|
+
|
|
191
|
+
(netLpOut, netSyFee) = _addLiquiditySingleSySimple(receiver, market, SY, YT, netSyIn, minLpOut);
|
|
192
|
+
|
|
193
|
+
emit AddLiquiditySingleSy(msg.sender, market, receiver, netSyIn, netLpOut);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
function _addLiquiditySingleSySimple(
|
|
197
|
+
address receiver,
|
|
198
|
+
address market,
|
|
199
|
+
IStandardizedYield /*SY*/,
|
|
200
|
+
IPYieldToken YT,
|
|
201
|
+
uint256 netSyIn,
|
|
202
|
+
uint256 minLpOut
|
|
203
|
+
) internal returns (uint256 netLpOut, uint256 netSyFee) {
|
|
204
|
+
uint256 netSyLeft = netSyIn;
|
|
205
|
+
uint256 netPtReceived;
|
|
206
|
+
|
|
207
|
+
(uint256 netPtOutMarket, , , ) = _readMarket(market).approxSwapSyToAddLiquidityOnchain(
|
|
208
|
+
YT.newIndex(),
|
|
209
|
+
netSyLeft,
|
|
210
|
+
netPtReceived,
|
|
211
|
+
block.timestamp
|
|
212
|
+
);
|
|
213
|
+
|
|
214
|
+
(uint256 netSySwapMarket, uint256 netSyFeeMarket) = IPMarket(market).swapSyForExactPt(
|
|
215
|
+
market,
|
|
216
|
+
netPtOutMarket,
|
|
217
|
+
EMPTY_BYTES
|
|
218
|
+
);
|
|
219
|
+
|
|
220
|
+
netSyLeft -= netSySwapMarket;
|
|
221
|
+
netPtReceived += netPtOutMarket;
|
|
222
|
+
netSyFee += netSyFeeMarket;
|
|
223
|
+
|
|
224
|
+
(netLpOut, , ) = IPMarket(market).mint(receiver, netSyLeft, netPtReceived);
|
|
225
|
+
|
|
226
|
+
if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
// ------------------ REMOVE LIQUIDITY SINGLE PT ------------------
|
|
230
|
+
/// @notice This function is for internal router use only and should not be called directly.
|
|
231
|
+
/// @dev Use removeLiquiditySinglePt from the main router instead.
|
|
232
|
+
/// @dev The interface of this simple function is subject to change without notice.
|
|
233
|
+
function removeLiquiditySinglePtSimple(
|
|
234
|
+
address receiver,
|
|
235
|
+
address market,
|
|
236
|
+
uint256 netLpToRemove,
|
|
237
|
+
uint256 minPtOut
|
|
238
|
+
) external returns (uint256 netPtOut, uint256 netSyFee) {
|
|
239
|
+
uint256 netSyLeft;
|
|
240
|
+
|
|
241
|
+
// execute the burn
|
|
242
|
+
_transferFrom(IERC20(market), msg.sender, market, netLpToRemove);
|
|
243
|
+
(uint256 netSyOutBurn, uint256 netPtOutBurn) = IPMarket(market).burn(
|
|
244
|
+
_entry_swapExactSyForPt(market, false),
|
|
245
|
+
receiver,
|
|
246
|
+
netLpToRemove
|
|
247
|
+
);
|
|
248
|
+
netSyLeft += netSyOutBurn;
|
|
249
|
+
netPtOut += netPtOutBurn;
|
|
250
|
+
|
|
251
|
+
(uint256 netPtOutSwap, uint256 netSyFeeSwap) = _swapExactSyForPtSimple(receiver, market, netSyLeft, 0);
|
|
252
|
+
netPtOut += netPtOutSwap;
|
|
253
|
+
netSyFee += netSyFeeSwap;
|
|
254
|
+
|
|
255
|
+
if (netPtOut < minPtOut) revert("Slippage: INSUFFICIENT_PT_OUT");
|
|
256
|
+
|
|
257
|
+
emit RemoveLiquiditySinglePt(msg.sender, market, receiver, netLpToRemove, netPtOut);
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
function _swapExactSyForPtSimple(
|
|
261
|
+
address receiver,
|
|
262
|
+
address market,
|
|
263
|
+
uint256 exactSyIn,
|
|
264
|
+
uint256 minPtOut
|
|
265
|
+
) internal returns (uint256 netPtOut, uint256 netSyFee) {
|
|
266
|
+
(, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
267
|
+
uint256 netSyLeft = exactSyIn;
|
|
268
|
+
|
|
269
|
+
(uint256 netPtOutMarket, , ) = _readMarket(market).approxSwapExactSyForPtOnchain(
|
|
270
|
+
YT.newIndex(),
|
|
271
|
+
netSyLeft,
|
|
272
|
+
block.timestamp
|
|
273
|
+
);
|
|
274
|
+
|
|
275
|
+
(, uint256 netSyFeeMarket) = IPMarket(market).swapSyForExactPt(receiver, netPtOutMarket, "");
|
|
276
|
+
|
|
277
|
+
netPtOut += netPtOutMarket;
|
|
278
|
+
netSyFee += netSyFeeMarket;
|
|
279
|
+
|
|
280
|
+
if (netPtOut < minPtOut) revert("Slippage: INSUFFICIENT_PT_OUT");
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
function _swapExactSyForYtSimple(
|
|
284
|
+
address receiver,
|
|
285
|
+
address market,
|
|
286
|
+
IStandardizedYield /* SY */,
|
|
287
|
+
IPYieldToken YT,
|
|
288
|
+
uint256 exactSyIn,
|
|
289
|
+
uint256 minYtOut
|
|
290
|
+
) internal returns (uint256 netYtOut, uint256 netSyFee) {
|
|
291
|
+
uint256 netSyLeft = exactSyIn;
|
|
292
|
+
|
|
293
|
+
(uint256 netYtOutMarket, , ) = _readMarket(market).approxSwapExactSyForYtOnchain(
|
|
294
|
+
YT.newIndex(),
|
|
295
|
+
netSyLeft,
|
|
296
|
+
block.timestamp
|
|
297
|
+
);
|
|
298
|
+
|
|
299
|
+
(, uint256 netSyFeeMarket) = IPMarket(market).swapExactPtForSy(
|
|
300
|
+
address(YT),
|
|
301
|
+
netYtOutMarket, // exactPtIn = netYtOut
|
|
302
|
+
_encodeSwapExactSyForYt(receiver, YT)
|
|
303
|
+
);
|
|
304
|
+
|
|
305
|
+
netYtOut += netYtOutMarket;
|
|
306
|
+
netSyFee += netSyFeeMarket;
|
|
307
|
+
|
|
308
|
+
if (netYtOut < minYtOut) revert("Slippage: INSUFFICIENT_YT_OUT");
|
|
309
|
+
}
|
|
310
|
+
}
|
|
@@ -3,11 +3,13 @@ pragma solidity ^0.8.17;
|
|
|
3
3
|
|
|
4
4
|
import "./base/ActionBase.sol";
|
|
5
5
|
import "../interfaces/IPActionSwapPTV3.sol";
|
|
6
|
+
import {ActionDelegateBase} from "./base/ActionDelegateBase.sol";
|
|
6
7
|
|
|
7
|
-
contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase {
|
|
8
|
+
contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase, ActionDelegateBase {
|
|
8
9
|
using PMath for uint256;
|
|
9
10
|
|
|
10
11
|
// ------------------ SWAP TOKEN FOR PT ------------------
|
|
12
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
11
13
|
function swapExactTokenForPt(
|
|
12
14
|
address receiver,
|
|
13
15
|
address market,
|
|
@@ -16,6 +18,10 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase {
|
|
|
16
18
|
TokenInput calldata input,
|
|
17
19
|
LimitOrderData calldata limit
|
|
18
20
|
) external payable returns (uint256 netPtOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
21
|
+
if (canUseOnchainApproximation(guessPtOut, limit)) {
|
|
22
|
+
return delegateToSwapExactTokenForPtSimple(receiver, market, minPtOut, input);
|
|
23
|
+
}
|
|
24
|
+
|
|
19
25
|
(IStandardizedYield SY, , ) = IPMarket(market).readTokens();
|
|
20
26
|
netSyInterm = _mintSyFromToken(_entry_swapExactSyForPt(market, limit), address(SY), 1, input);
|
|
21
27
|
|
|
@@ -31,6 +37,7 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase {
|
|
|
31
37
|
);
|
|
32
38
|
}
|
|
33
39
|
|
|
40
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
34
41
|
function swapExactSyForPt(
|
|
35
42
|
address receiver,
|
|
36
43
|
address market,
|
|
@@ -39,6 +46,10 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase {
|
|
|
39
46
|
ApproxParams calldata guessPtOut,
|
|
40
47
|
LimitOrderData calldata limit
|
|
41
48
|
) external returns (uint256 netPtOut, uint256 netSyFee) {
|
|
49
|
+
if (canUseOnchainApproximation(guessPtOut, limit)) {
|
|
50
|
+
return delegateToSwapExactSyForPtSimple(receiver, market, exactSyIn, minPtOut);
|
|
51
|
+
}
|
|
52
|
+
|
|
42
53
|
(IStandardizedYield SY, , ) = IPMarket(market).readTokens();
|
|
43
54
|
_transferFrom(SY, msg.sender, _entry_swapExactSyForPt(market, limit), exactSyIn);
|
|
44
55
|
|
|
@@ -46,6 +57,7 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase {
|
|
|
46
57
|
emit SwapPtAndSy(msg.sender, market, receiver, netPtOut.Int(), exactSyIn.neg());
|
|
47
58
|
}
|
|
48
59
|
|
|
60
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
49
61
|
function swapExactPtForToken(
|
|
50
62
|
address receiver,
|
|
51
63
|
address market,
|
|
@@ -71,6 +83,7 @@ contract ActionSwapPTV3 is IPActionSwapPTV3, ActionBase {
|
|
|
71
83
|
);
|
|
72
84
|
}
|
|
73
85
|
|
|
86
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
74
87
|
function swapExactPtForSy(
|
|
75
88
|
address receiver,
|
|
76
89
|
address market,
|