@pendle/core-v2 5.0.7 → 5.1.1-beta
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/Venus/PendleVTokenRateHelper.sol/PendleVTokenRateHelper.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Venus/PendleVTokenRateHelper.sol/PendleVTokenRateHelper.json +24 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Venus/PendleVenusBNBSY.sol/PendleVenusBNBSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Venus/PendleVenusBNBSY.sol/PendleVenusBNBSY.json +1139 -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/interfaces/Venus/IVenusBNB.sol/IVenusBNB.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Venus/IVenusBNB.sol/IVenusBNB.json +37 -0
- package/build/artifacts/contracts/interfaces/Venus/IVenusComptroller.sol/IVenusComptroller.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Venus/IVenusComptroller.sol/IVenusComptroller.json +29 -0
- package/build/artifacts/contracts/interfaces/Venus/IVenusInterestModel.sol/IVenusInterestRateModel.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Venus/IVenusInterestModel.sol/IVenusInterestRateModel.json +74 -0
- package/build/artifacts/contracts/interfaces/Venus/IVenusToken.sol/IVenusToken.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Venus/IVenusToken.sol/IVenusToken.json +128 -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/IOdosRouterV2.dbg.json +4 -0
- package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.json +82 -0
- 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 +67 -0
- package/contracts/core/StandardizedYield/implementations/PendleERC20SYUpg.sol +2 -4
- 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/StandardizedYield/implementations/Venus/PendleVTokenRateHelper.sol +76 -0
- package/contracts/core/StandardizedYield/implementations/Venus/PendleVenusBNBSY.sol +116 -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/interfaces/Venus/IVenusBNB.sol +8 -0
- package/contracts/interfaces/Venus/IVenusComptroller.sol +6 -0
- package/contracts/interfaces/Venus/IVenusInterestModel.sol +13 -0
- package/contracts/interfaces/Venus/IVenusToken.sol +22 -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 +8 -1
- package/contracts/router/swap-aggregator/PendleSwap.sol +43 -0
- package/deployments/1-core.json +6 -5
- package/deployments/1-markets/CORN-EBTC-MAINNET-MAR2025.json +14 -0
- package/deployments/1-markets/EEIGEN-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 +6 -5
- package/deployments/42161-core.json +6 -5
- 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 +6 -5
- package/deployments/56-core.json +6 -5
- 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/IOdosRouterV2.ts +147 -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/IVenusBNB.ts +124 -0
- package/typechain-types/IVenusComptroller.ts +106 -0
- package/typechain-types/IVenusInterestRateModel.ts +162 -0
- package/typechain-types/IVenusToken.ts +249 -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 +1383 -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/PendleVTokenRateHelper.ts +81 -0
- package/typechain-types/PendleVenusBNBSY.ts +1440 -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/IOdosRouterV2__factory.ts +94 -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/IVenusBNB__factory.ts +49 -0
- package/typechain-types/factories/IVenusComptroller__factory.ts +44 -0
- package/typechain-types/factories/IVenusInterestRateModel__factory.ts +93 -0
- package/typechain-types/factories/IVenusToken__factory.ts +140 -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/PendleVTokenRateHelper__factory.ts +43 -0
- package/typechain-types/factories/PendleVenusBNBSY__factory.ts +1192 -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 +327 -39
- package/typechain-types/index.ts +72 -10
- 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
|
@@ -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,
|
|
@@ -4,8 +4,9 @@ pragma solidity ^0.8.17;
|
|
|
4
4
|
import "./base/ActionBase.sol";
|
|
5
5
|
import "./base/CallbackHelper.sol";
|
|
6
6
|
import "../interfaces/IPActionSwapYTV3.sol";
|
|
7
|
+
import {ActionDelegateBase} from "./base/ActionDelegateBase.sol";
|
|
7
8
|
|
|
8
|
-
contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
9
|
+
contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase, ActionDelegateBase {
|
|
9
10
|
using PMath for uint256;
|
|
10
11
|
using MarketApproxPtInLib for MarketState;
|
|
11
12
|
using MarketApproxPtOutLib for MarketState;
|
|
@@ -13,6 +14,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
13
14
|
|
|
14
15
|
// ------------------ SWAP TOKEN FOR YT ------------------
|
|
15
16
|
|
|
17
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
16
18
|
function swapExactTokenForYt(
|
|
17
19
|
address receiver,
|
|
18
20
|
address market,
|
|
@@ -21,6 +23,10 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
21
23
|
TokenInput calldata input,
|
|
22
24
|
LimitOrderData calldata limit
|
|
23
25
|
) external payable returns (uint256 netYtOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
26
|
+
if (canUseOnchainApproximation(guessYtOut, limit)) {
|
|
27
|
+
return delegateToSwapExactTokenForYtSimple(receiver, market, minYtOut, input);
|
|
28
|
+
}
|
|
29
|
+
|
|
24
30
|
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
25
31
|
|
|
26
32
|
netSyInterm = _mintSyFromToken(_entry_swapExactSyForYt(YT, limit), address(SY), 1, input);
|
|
@@ -37,6 +43,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
37
43
|
);
|
|
38
44
|
}
|
|
39
45
|
|
|
46
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
40
47
|
function swapExactSyForYt(
|
|
41
48
|
address receiver,
|
|
42
49
|
address market,
|
|
@@ -45,6 +52,10 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
45
52
|
ApproxParams calldata guessYtOut,
|
|
46
53
|
LimitOrderData calldata limit
|
|
47
54
|
) external returns (uint256 netYtOut, uint256 netSyFee) {
|
|
55
|
+
if (canUseOnchainApproximation(guessYtOut, limit)) {
|
|
56
|
+
return delegateToSwapExactSyForYtSimple(receiver, market, exactSyIn, minYtOut);
|
|
57
|
+
}
|
|
58
|
+
|
|
48
59
|
(IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
|
|
49
60
|
_transferFrom(SY, msg.sender, _entry_swapExactSyForYt(YT, limit), exactSyIn);
|
|
50
61
|
|
|
@@ -54,6 +65,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
54
65
|
|
|
55
66
|
// ------------------ SWAP TOKEN FOR TOKEN ------------------
|
|
56
67
|
|
|
68
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
57
69
|
function swapExactYtForToken(
|
|
58
70
|
address receiver,
|
|
59
71
|
address market,
|
|
@@ -79,6 +91,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
79
91
|
);
|
|
80
92
|
}
|
|
81
93
|
|
|
94
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
82
95
|
function swapExactYtForSy(
|
|
83
96
|
address receiver,
|
|
84
97
|
address market,
|
|
@@ -95,6 +108,7 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
95
108
|
|
|
96
109
|
// ------------------ SWAP PT FOR YT ------------------
|
|
97
110
|
|
|
111
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
98
112
|
function swapExactPtForYt(
|
|
99
113
|
address receiver,
|
|
100
114
|
address market,
|
|
@@ -124,6 +138,8 @@ contract ActionSwapYTV3 is CallbackHelper, IPActionSwapYTV3, ActionBase {
|
|
|
124
138
|
}
|
|
125
139
|
|
|
126
140
|
// ------------------ SWAP YT FOR PT ------------------
|
|
141
|
+
|
|
142
|
+
/// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
|
|
127
143
|
function swapExactYtForPt(
|
|
128
144
|
address receiver,
|
|
129
145
|
address market,
|
|
@@ -6,7 +6,7 @@ import "../../interfaces/IStandardizedYield.sol";
|
|
|
6
6
|
import "../../interfaces/IPYieldToken.sol";
|
|
7
7
|
import "../../interfaces/IPAllActionTypeV3.sol";
|
|
8
8
|
import "../../interfaces/IPMarket.sol";
|
|
9
|
-
import "../../router/
|
|
9
|
+
import "../../router/math/MarketApproxLib.sol";
|
|
10
10
|
|
|
11
11
|
import "../../core/libraries/Errors.sol";
|
|
12
12
|
import "../swap-aggregator/IPSwapAggregator.sol";
|
|
@@ -162,7 +162,11 @@ abstract contract ActionBase is TokenHelper, CallbackHelper, IPLimitOrderType {
|
|
|
162
162
|
// ----------------- PT SWAP -----------------
|
|
163
163
|
|
|
164
164
|
function _entry_swapExactPtForSy(address market, LimitOrderData calldata limit) internal view returns (address) {
|
|
165
|
-
return !_isEmptyLimit(limit)
|
|
165
|
+
return _entry_swapExactPtForSy(market, !_isEmptyLimit(limit));
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
function _entry_swapExactPtForSy(address market, bool hasLimitOrder) internal view returns (address) {
|
|
169
|
+
return hasLimitOrder ? address(this) : market;
|
|
166
170
|
}
|
|
167
171
|
|
|
168
172
|
function _swapExactPtForSy(
|
|
@@ -199,7 +203,11 @@ abstract contract ActionBase is TokenHelper, CallbackHelper, IPLimitOrderType {
|
|
|
199
203
|
}
|
|
200
204
|
|
|
201
205
|
function _entry_swapExactSyForPt(address market, LimitOrderData calldata limit) internal view returns (address) {
|
|
202
|
-
return !_isEmptyLimit(limit)
|
|
206
|
+
return _entry_swapExactSyForPt(market, !_isEmptyLimit(limit));
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
function _entry_swapExactSyForPt(address market, bool hasLimitOrder) internal view returns (address) {
|
|
210
|
+
return hasLimitOrder ? address(this) : market;
|
|
203
211
|
}
|
|
204
212
|
|
|
205
213
|
function _swapExactSyForPt(
|
|
@@ -241,7 +249,11 @@ abstract contract ActionBase is TokenHelper, CallbackHelper, IPLimitOrderType {
|
|
|
241
249
|
// ----------------- YT SWAP -----------------
|
|
242
250
|
|
|
243
251
|
function _entry_swapExactYtForSy(IPYieldToken YT, LimitOrderData calldata limit) internal view returns (address) {
|
|
244
|
-
return !_isEmptyLimit(limit)
|
|
252
|
+
return _entry_swapExactYtForSy(YT, !_isEmptyLimit(limit));
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
function _entry_swapExactYtForSy(IPYieldToken YT, bool hasLimitOrder) internal view returns (address) {
|
|
256
|
+
return hasLimitOrder ? address(this) : address(YT);
|
|
245
257
|
}
|
|
246
258
|
|
|
247
259
|
function _swapExactYtForSy(
|
|
@@ -281,7 +293,11 @@ abstract contract ActionBase is TokenHelper, CallbackHelper, IPLimitOrderType {
|
|
|
281
293
|
}
|
|
282
294
|
|
|
283
295
|
function _entry_swapExactSyForYt(IPYieldToken YT, LimitOrderData calldata limit) internal view returns (address) {
|
|
284
|
-
return !_isEmptyLimit(limit)
|
|
296
|
+
return _entry_swapExactSyForYt(YT, !_isEmptyLimit(limit));
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
function _entry_swapExactSyForYt(IPYieldToken YT, bool hasLimitOrder) internal view returns (address) {
|
|
300
|
+
return hasLimitOrder ? address(this) : address(YT);
|
|
285
301
|
}
|
|
286
302
|
|
|
287
303
|
function _swapExactSyForYt(
|
|
@@ -373,4 +389,38 @@ abstract contract ActionBase is TokenHelper, CallbackHelper, IPLimitOrderType {
|
|
|
373
389
|
function _isEmptyLimit(LimitOrderData calldata a) internal pure returns (bool) {
|
|
374
390
|
return a.normalFills.length == 0 && a.flashFills.length == 0;
|
|
375
391
|
}
|
|
392
|
+
|
|
393
|
+
// ----------------- ADD & REMOVE LIQUIDITY -----------------
|
|
394
|
+
|
|
395
|
+
function _entry_addLiquiditySinglePt(address market, LimitOrderData calldata lim) internal view returns (address) {
|
|
396
|
+
return _entry_addLiquiditySinglePt(market, !_isEmptyLimit(lim));
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
function _entry_addLiquiditySinglePt(address market, bool hasLimitOrder) internal view returns (address) {
|
|
400
|
+
return hasLimitOrder ? address(this) : market;
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
function _entry_addLiquiditySingleSy(address market, LimitOrderData calldata lim) internal view returns (address) {
|
|
404
|
+
return _entry_addLiquiditySingleSy(market, !_isEmptyLimit(lim));
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
function _entry_addLiquiditySingleSy(address market, bool hasLimitOrder) internal view returns (address) {
|
|
408
|
+
return hasLimitOrder ? address(this) : market;
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
// ----------------- MISC HELPER -----------------
|
|
412
|
+
|
|
413
|
+
function _delegateToSelf(
|
|
414
|
+
bytes memory data,
|
|
415
|
+
bool allowFailure
|
|
416
|
+
) internal returns (bool success, bytes memory result) {
|
|
417
|
+
(success, result) = address(this).delegatecall(data);
|
|
418
|
+
|
|
419
|
+
if (!success && !allowFailure) {
|
|
420
|
+
assembly {
|
|
421
|
+
// We use Yul's revert() to bubble up errors from the target contract.
|
|
422
|
+
revert(add(32, result), mload(result))
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
}
|
|
376
426
|
}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity ^0.8.0;
|
|
3
|
+
|
|
4
|
+
import {ActionBase} from "./ActionBase.sol";
|
|
5
|
+
import {IPActionSimple} from "../../interfaces/IPActionSimple.sol";
|
|
6
|
+
import {ApproxParams, TokenInput, LimitOrderData} from "../../interfaces/IPAllActionTypeV3.sol";
|
|
7
|
+
|
|
8
|
+
contract ActionDelegateBase is ActionBase {
|
|
9
|
+
function delegateToAddLiquiditySinglePtSimple(
|
|
10
|
+
address receiver,
|
|
11
|
+
address market,
|
|
12
|
+
uint256 netPtIn,
|
|
13
|
+
uint256 minLpOut
|
|
14
|
+
) internal returns (uint256 netLpOut, uint256 netSyFee) {
|
|
15
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
16
|
+
abi.encodeCall(IPActionSimple.addLiquiditySinglePtSimple, (receiver, market, netPtIn, minLpOut)),
|
|
17
|
+
/* allowFailure= */ false
|
|
18
|
+
);
|
|
19
|
+
assert(success);
|
|
20
|
+
return abi.decode(res, (uint256, uint256));
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function delegateToAddLiquiditySingleTokenSimple(
|
|
24
|
+
address receiver,
|
|
25
|
+
address market,
|
|
26
|
+
uint256 minLpOut,
|
|
27
|
+
TokenInput calldata input
|
|
28
|
+
) internal returns (uint256 netLpOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
29
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
30
|
+
abi.encodeCall(IPActionSimple.addLiquiditySingleTokenSimple, (receiver, market, minLpOut, input)),
|
|
31
|
+
/* allowFailure= */ false
|
|
32
|
+
);
|
|
33
|
+
assert(success);
|
|
34
|
+
return abi.decode(res, (uint256, uint256, uint256));
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function delegateToAddLiquiditySingleSySimple(
|
|
38
|
+
address receiver,
|
|
39
|
+
address market,
|
|
40
|
+
uint256 netSyIn,
|
|
41
|
+
uint256 minLpOut
|
|
42
|
+
) internal returns (uint256 netLpOut, uint256 netSyFee) {
|
|
43
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
44
|
+
abi.encodeCall(IPActionSimple.addLiquiditySingleSySimple, (receiver, market, netSyIn, minLpOut)),
|
|
45
|
+
/* allowFailure= */ false
|
|
46
|
+
);
|
|
47
|
+
assert(success);
|
|
48
|
+
return abi.decode(res, (uint256, uint256));
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function delegateToRemoveLiquiditySinglePtSimple(
|
|
52
|
+
address receiver,
|
|
53
|
+
address market,
|
|
54
|
+
uint256 netLpToRemove,
|
|
55
|
+
uint256 minPtOut
|
|
56
|
+
) internal returns (uint256 netPtOut, uint256 netSyFee) {
|
|
57
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
58
|
+
abi.encodeCall(IPActionSimple.removeLiquiditySinglePtSimple, (receiver, market, netLpToRemove, minPtOut)),
|
|
59
|
+
/* allowFailure= */ false
|
|
60
|
+
);
|
|
61
|
+
assert(success);
|
|
62
|
+
return abi.decode(res, (uint256, uint256));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
function delegateToSwapExactTokenForPtSimple(
|
|
66
|
+
address receiver,
|
|
67
|
+
address market,
|
|
68
|
+
uint256 minPtOut,
|
|
69
|
+
TokenInput calldata input
|
|
70
|
+
) internal returns (uint256 netPtOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
71
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
72
|
+
abi.encodeCall(IPActionSimple.swapExactTokenForPtSimple, (receiver, market, minPtOut, input)),
|
|
73
|
+
/* allowFailure= */ false
|
|
74
|
+
);
|
|
75
|
+
assert(success);
|
|
76
|
+
return abi.decode(res, (uint256, uint256, uint256));
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
function delegateToSwapExactSyForPtSimple(
|
|
80
|
+
address receiver,
|
|
81
|
+
address market,
|
|
82
|
+
uint256 exactSyIn,
|
|
83
|
+
uint256 minPtOut
|
|
84
|
+
) internal returns (uint256 netPtOut, uint256 netSyFee) {
|
|
85
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
86
|
+
abi.encodeCall(IPActionSimple.swapExactSyForPtSimple, (receiver, market, exactSyIn, minPtOut)),
|
|
87
|
+
/* allowFailure= */ false
|
|
88
|
+
);
|
|
89
|
+
assert(success);
|
|
90
|
+
return abi.decode(res, (uint256, uint256));
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function delegateToSwapExactTokenForYtSimple(
|
|
94
|
+
address receiver,
|
|
95
|
+
address market,
|
|
96
|
+
uint256 minYtOut,
|
|
97
|
+
TokenInput calldata input
|
|
98
|
+
) internal returns (uint256 netYtOut, uint256 netSyFee, uint256 netSyInterm) {
|
|
99
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
100
|
+
abi.encodeCall(IPActionSimple.swapExactTokenForYtSimple, (receiver, market, minYtOut, input)),
|
|
101
|
+
/* allowFailure= */ false
|
|
102
|
+
);
|
|
103
|
+
assert(success);
|
|
104
|
+
return abi.decode(res, (uint256, uint256, uint256));
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function delegateToSwapExactSyForYtSimple(
|
|
108
|
+
address receiver,
|
|
109
|
+
address market,
|
|
110
|
+
uint256 exactSyIn,
|
|
111
|
+
uint256 minYtOut
|
|
112
|
+
) internal returns (uint256 netYtOut, uint256 netSyFee) {
|
|
113
|
+
(bool success, bytes memory res) = _delegateToSelf(
|
|
114
|
+
abi.encodeCall(IPActionSimple.swapExactSyForYtSimple, (receiver, market, exactSyIn, minYtOut)),
|
|
115
|
+
/* allowFailure= */ false
|
|
116
|
+
);
|
|
117
|
+
assert(success);
|
|
118
|
+
return abi.decode(res, (uint256, uint256));
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
function canUseOnchainApproximation(
|
|
122
|
+
ApproxParams calldata approx,
|
|
123
|
+
LimitOrderData calldata limit
|
|
124
|
+
) internal pure returns (bool) {
|
|
125
|
+
return approx.guessOffchain == 0 && _isEmptyLimit(limit);
|
|
126
|
+
}
|
|
127
|
+
}
|