@pendle/core-v2 0.8.1-gamma → 0.9.2-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/SuperComposableYield/SCY-implementations/AaveV3/PendleAaveV3SCY.sol/PendleAaveV3SCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/AaveV3/PendleAaveV3SCY.sol/PendleAaveV3SCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/AaveV3/WadRayMath.sol/WadRayMath.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiSAvaxSCY.sol/PendleQiSAvaxSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiSAvaxSCY.sol/PendleQiSAvaxSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol/PendleQiTokenSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol/PendleQiTokenSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol/PendleSAvaxSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol/PendleSAvaxSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol/PendleEulerSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol/PendleEulerSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleERC4626SCY.sol/PendleERC4626SCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleERC4626SCY.sol/PendleERC4626SCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleStargateSCY.sol/PendleStargateSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleStargateSCY.sol/PendleStargateSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleWstEthSCY.sol/PendleWstEthSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleWstEthSCY.sol/PendleWstEthSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleYearnVaultScy.sol/PendleYearnVaultSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleYearnVaultScy.sol/PendleYearnVaultSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol/PendleSJoeSCY.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol/PendleSJoeSCY.json +2 -2
- package/build/artifacts/contracts/SuperComposableYield/base-implementations/SCYBase.sol/SCYBase.dbg.json +1 -1
- package/build/artifacts/contracts/SuperComposableYield/base-implementations/SCYBaseWithRewards.sol/SCYBaseWithRewards.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerReceiverUpg.sol/CelerReceiverUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerSenderUpg.sol/CelerSenderUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
- package/build/artifacts/contracts/core/LiquidityMining/PendleGauge.sol/PendleGauge.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
- package/build/artifacts/contracts/core/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
- package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
- package/build/artifacts/contracts/core/PendleERC20.sol/PendleERC20.dbg.json +1 -1
- package/build/artifacts/contracts/core/PendleRouter.sol/PendleRouter.dbg.json +1 -1
- package/build/artifacts/contracts/core/PendleRouter.sol/PendleRouter.json +2 -2
- package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
- package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.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/actions/ActionCallback.sol/ActionCallback.dbg.json +1 -1
- package/build/artifacts/contracts/core/actions/ActionCallback.sol/ActionCallback.json +2 -2
- package/build/artifacts/contracts/core/actions/ActionCore.sol/ActionCore.dbg.json +1 -1
- package/build/artifacts/contracts/core/actions/ActionCore.sol/ActionCore.json +446 -131
- package/build/artifacts/contracts/core/actions/ActionYT.sol/ActionYT.dbg.json +1 -1
- package/build/artifacts/contracts/core/actions/ActionYT.sol/ActionYT.json +75 -41
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndPTBase.sol/ActionSCYAndPTBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndPTBase.sol/ActionSCYAndPTBase.json +1 -1
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndPYBase.sol/ActionSCYAndPYBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndPYBase.sol/ActionSCYAndPYBase.json +1 -1
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndYTBase.sol/ActionSCYAndYTBase.dbg.json +1 -1
- package/build/artifacts/contracts/core/actions/base/ActionSCYAndYTBase.sol/ActionSCYAndYTBase.json +1 -1
- package/build/artifacts/contracts/core/actions/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAToken.sol/IAToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAavePool.sol/IAavePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IAaveRewardsController.sol/IAaveRewardsController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ICelerMessageBus.sol/ICelerMessageBus.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ICelerMessageReceiverApp.sol/ICelerMessageReceiverApp.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IEulerEToken.sol/IEulerEToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IEulerMarkets.sol/IEulerMarkets.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionCore.sol/IPActionCore.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionCore.sol/IPActionCore.json +442 -127
- package/build/artifacts/contracts/interfaces/IPActionYT.sol/IPActionYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionYT.sol/IPActionYT.json +71 -37
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +513 -164
- package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPGovernanceManager.sol/IPGovernanceManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPermissionsV2Upg.sol/IPermissionsV2Upg.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.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 +2 -2
- package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPVotingEscrow.sol/IPVotingEscrow.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ISAvax.sol/ISAvax.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ISJoe.sol/ISJoe.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateLPStaking.sol/IStargateLPStaking.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargatePool.sol/IStargatePool.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/ISuperComposableYield.sol/ISuperComposableYield.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWAvax.sol/IWAvax.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IYearnVault.sol/IYearnVault.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/RewardManager.sol/RewardManager.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/SCY/SCYUtils.sol/SCYUtils.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
- package/build/artifacts/contracts/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
- package/build/artifacts/contracts/libraries/helpers/ArrayLib.sol/ArrayLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/PYIndex.sol/PYIndexLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/PYIndex.sol/PYIndexLib.json +2 -2
- package/build/artifacts/contracts/libraries/helpers/SSTORE2Deployer.sol/SSTORE2Deployer.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/helpers/TokenHelper.sol/TokenHelper.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +4 -0
- package/build/artifacts/contracts/libraries/{traderjoe/PendleJoeSwapHelperUpg.sol/PendleJoeSwapHelperUpg.json → kyberswap/KyberSwapHelper.sol/KyberSwapHelper.json} +3 -3
- package/build/artifacts/contracts/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/MarketApproxLib.sol/MarketApproxLib.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/MarketApproxLib.sol/MarketApproxLib.json +2 -2
- package/build/artifacts/contracts/libraries/math/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/MarketMathCore.sol/MarketMathCore.json +2 -2
- package/build/artifacts/contracts/libraries/math/Math.sol/Math.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/math/Math.sol/Math.json +2 -2
- package/build/artifacts/contracts/libraries/math/WeekMath.sol/WeekMath.dbg.json +1 -1
- package/build/artifacts/contracts/libraries/solmate/SSTORE2.sol/SSTORE2.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +80 -41
- package/build/artifacts/contracts/periphery/PermissionsV2Upg.sol/PermissionsV2Upg.dbg.json +1 -1
- package/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol +6 -8
- package/contracts/core/PendleRouter.sol +14 -12
- package/contracts/core/actions/ActionCore.sol +125 -89
- package/contracts/core/actions/ActionYT.sol +17 -37
- package/contracts/core/actions/base/ActionSCYAndPTBase.sol +82 -42
- package/contracts/core/actions/base/ActionSCYAndPYBase.sol +39 -51
- package/contracts/core/actions/base/ActionSCYAndYTBase.sol +10 -27
- package/contracts/interfaces/IPActionCore.sol +89 -54
- package/contracts/interfaces/IPActionYT.sol +11 -12
- package/contracts/interfaces/IPRouterStatic.sol +2 -2
- package/contracts/libraries/helpers/TokenHelper.sol +8 -3
- package/contracts/libraries/kyberswap/KyberSwapHelper.sol +61 -0
- package/contracts/libraries/math/Math.sol +4 -0
- package/contracts/offchain-helpers/RouterStatic.sol +39 -3
- package/package.json +1 -1
- package/typechain-types/ActionCore.ts +545 -379
- package/typechain-types/ActionSCYAndPTBase.ts +11 -8
- package/typechain-types/ActionSCYAndPYBase.ts +11 -8
- package/typechain-types/ActionSCYAndYTBase.ts +11 -8
- package/typechain-types/ActionYT.ts +119 -106
- package/typechain-types/FeeDistributorAbstract.ts +164 -0
- package/typechain-types/IPActionCore.ts +533 -370
- package/typechain-types/IPActionYT.ts +110 -100
- package/typechain-types/IPAllAction.ts +611 -466
- package/typechain-types/IPRouterStatic.ts +16 -16
- package/typechain-types/IPVotingControllerStorage.ts +169 -0
- package/typechain-types/{PermissionsV2.ts → KyberSwapHelper.ts} +13 -13
- package/typechain-types/{PendleYearnVaultScy.ts → PendleYearnVaultSCY.ts} +0 -0
- package/typechain-types/RouterStatic.ts +145 -95
- package/typechain-types/factories/ActionCallback__factory.ts +1 -1
- package/typechain-types/factories/ActionCore__factory.ts +449 -134
- package/typechain-types/factories/ActionSCYAndPTBase__factory.ts +1 -1
- package/typechain-types/factories/ActionSCYAndPYBase__factory.ts +1 -1
- package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +1 -1
- package/typechain-types/factories/ActionYT__factory.ts +78 -44
- package/typechain-types/factories/{VotingEscrowController__factory.ts → FeeDistributorAbstract__factory.ts} +33 -23
- package/typechain-types/factories/IPActionCore__factory.ts +442 -127
- package/typechain-types/factories/IPActionYT__factory.ts +71 -37
- package/typechain-types/factories/IPAllAction__factory.ts +513 -164
- package/typechain-types/factories/IPRouterStatic__factory.ts +2 -2
- package/typechain-types/factories/IPVotingControllerStorage__factory.ts +107 -0
- package/typechain-types/factories/{IPermissionsV2__factory.ts → KyberSwapHelper__factory.ts} +9 -9
- package/typechain-types/factories/PendleAaveV3SCY__factory.ts +1 -1
- package/typechain-types/factories/PendleERC4626SCY__factory.ts +1 -1
- package/typechain-types/factories/PendleEulerSCY__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/PendleMarketFactory__factory.ts +1 -1
- package/typechain-types/factories/PendleMarket__factory.ts +1 -1
- package/typechain-types/factories/PendleQiSAvaxSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleQiTokenSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleRouter__factory.ts +1 -1
- package/typechain-types/factories/PendleSAvaxSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleSJoeSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleStargateSCY__factory.ts +1 -1
- package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleWstEthSCY__factory.ts +1 -1
- package/typechain-types/factories/{PendleYearnVaultScy__factory.ts → PendleYearnVaultSCY__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/RouterStatic__factory.ts +79 -40
- package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
- package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
- package/typechain-types/hardhat.d.ts +9 -54
- package/typechain-types/index.ts +2 -12
- package/build/artifacts/contracts/interfaces/IJoePair.sol/IJoePair.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IJoePair.sol/IJoePair.json +0 -662
- package/build/artifacts/contracts/interfaces/IJoeRouter01.sol/IJoeRouter01.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IJoeRouter01.sol/IJoeRouter01.json +0 -760
- package/build/artifacts/contracts/interfaces/IJoeRouter02.sol/IJoeRouter02.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IJoeRouter02.sol/IJoeRouter02.json +0 -962
- package/build/artifacts/contracts/libraries/traderjoe/JoeLibrary.sol/JoeLibrary.dbg.json +0 -4
- package/build/artifacts/contracts/libraries/traderjoe/JoeLibrary.sol/JoeLibrary.json +0 -10
- package/build/artifacts/contracts/libraries/traderjoe/PendleJoeSwapHelperUpg.sol/PendleJoeSwapHelperUpg.dbg.json +0 -4
- package/contracts/interfaces/IJoePair.sol +0 -98
- package/contracts/interfaces/IJoeRouter01.sol +0 -162
- package/contracts/interfaces/IJoeRouter02.sol +0 -52
- package/contracts/libraries/traderjoe/JoeLibrary.sol +0 -122
- package/contracts/libraries/traderjoe/PendleJoeSwapHelperUpg.sol +0 -80
- package/typechain-types/ActionRedeem.ts +0 -125
- package/typechain-types/ActionSCYAndYOBase.ts +0 -223
- package/typechain-types/AggregatorV2V3Interface.ts +0 -380
- package/typechain-types/BenqiChainlinkOracle.ts +0 -362
- package/typechain-types/BoringOwnable.ts +0 -194
- package/typechain-types/BoringOwnableData.ts +0 -100
- package/typechain-types/BoringOwnableUpg.ts +0 -194
- package/typechain-types/BoringOwnableUpgData.ts +0 -100
- package/typechain-types/CelerReceiver.ts +0 -267
- package/typechain-types/CelerSender.ts +0 -197
- package/typechain-types/Comptroller.ts +0 -2860
- package/typechain-types/ComptrollerErrorReporter.ts +0 -70
- package/typechain-types/ComptrollerInterface.ts +0 -881
- package/typechain-types/ComptrollerVXStorage.ts +0 -781
- package/typechain-types/CrosschainContract.ts +0 -113
- package/typechain-types/CrosschainReceiver.ts +0 -347
- package/typechain-types/CrosschainSender.ts +0 -210
- package/typechain-types/EIP20Interface.ts +0 -337
- package/typechain-types/EIP20NonStandardInterface.ts +0 -298
- package/typechain-types/ERC20Burnable.ts +0 -473
- package/typechain-types/ERC20Locker.ts +0 -91
- package/typechain-types/ERC20Permit.ts +0 -521
- package/typechain-types/ERC20Premined.ts +0 -473
- package/typechain-types/ERC20PresetFixedSupply.ts +0 -473
- package/typechain-types/EpochController.ts +0 -195
- package/typechain-types/FundKeeper.ts +0 -347
- package/typechain-types/GaugeTypeControllerAbstract.ts +0 -546
- package/typechain-types/GaugeTypeControllerCrosschain.ts +0 -733
- package/typechain-types/GaugeTypeControllerMainchain.ts +0 -604
- package/typechain-types/IERC20Permit.ts +0 -175
- package/typechain-types/IGaugeController.ts +0 -99
- package/typechain-types/IJoePair.ts +0 -888
- package/typechain-types/IJoeRouter01.ts +0 -1107
- package/typechain-types/IJoeRouter02.ts +0 -1420
- package/typechain-types/ILiquidYieldToken.ts +0 -639
- package/typechain-types/ILiquidYieldTokenWrap.ts +0 -790
- package/typechain-types/IMessageBus.ts +0 -543
- package/typechain-types/IMessageReceiverApp.ts +0 -110
- package/typechain-types/IPActionRedeem.ts +0 -125
- package/typechain-types/IPActionSCYAndPY.ts +0 -183
- package/typechain-types/IPBaseToken.ts +0 -365
- package/typechain-types/IPFlashCallback.ts +0 -115
- package/typechain-types/IPGauge.ts +0 -212
- package/typechain-types/IPLiquidYieldToken.ts +0 -641
- package/typechain-types/IPMarketAddRemoveCallback.ts +0 -169
- package/typechain-types/IPMarketCallback.ts +0 -107
- package/typechain-types/IPOwnershipToken.ts +0 -488
- package/typechain-types/IPRouterCore.ts +0 -769
- package/typechain-types/IPRouterRedeem.ts +0 -155
- package/typechain-types/IPRouterYT.ts +0 -489
- package/typechain-types/IPVotingEscrowController.ts +0 -154
- package/typechain-types/IPendleGauge.ts +0 -241
- package/typechain-types/IPermissionsV2.ts +0 -87
- package/typechain-types/IRainbowBridge.ts +0 -91
- package/typechain-types/ISCYRewardIndex.ts +0 -695
- package/typechain-types/IVEPendleToken.ts +0 -121
- package/typechain-types/IVePToken.ts +0 -103
- package/typechain-types/IVotingEscrowPendle.ts +0 -297
- package/typechain-types/IXPendle.ts +0 -114
- package/typechain-types/InterestRateModel.ts +0 -178
- package/typechain-types/JumpRateModel.ts +0 -347
- package/typechain-types/LYTBase.ts +0 -721
- package/typechain-types/LYTBaseWithRewards.ts +0 -806
- package/typechain-types/LYTWrap.ts +0 -872
- package/typechain-types/LYTWrapWithRewards.ts +0 -979
- package/typechain-types/LiquidityMining.ts +0 -468
- package/typechain-types/Maximillion.ts +0 -145
- package/typechain-types/Ownable.ts +0 -160
- package/typechain-types/PendleAaveV3LYT.ts +0 -808
- package/typechain-types/PendleBaseToken.ts +0 -475
- package/typechain-types/PendleBenQiErc20LYT.ts +0 -901
- package/typechain-types/PendleBenQiErc20SCY.ts +0 -1050
- package/typechain-types/PendleBenqiLiquidYieldToken.ts +0 -1013
- package/typechain-types/PendleBtrflyLYT.ts +0 -781
- package/typechain-types/PendleBtrflyScy.ts +0 -822
- package/typechain-types/PendleCelerRouter.ts +0 -359
- package/typechain-types/PendleERC20Permit.ts +0 -443
- package/typechain-types/PendleGaugeController.ts +0 -346
- package/typechain-types/PendleGaugeControllerMainchain.ts +0 -410
- package/typechain-types/PendleGaugeControllerSidechain.ts +0 -524
- package/typechain-types/PendleJoeLpSCY.ts +0 -835
- package/typechain-types/PendleJoeSwapHelper.ts +0 -92
- package/typechain-types/PendleJoeSwapHelperUpg.ts +0 -84
- package/typechain-types/PendleLYTMockYT.ts +0 -894
- package/typechain-types/PendleLiquidYieldToken.ts +0 -814
- package/typechain-types/PendleLiquidYieldTokenBase.ts +0 -941
- package/typechain-types/PendleOwnershipToken.ts +0 -598
- package/typechain-types/PendleRouter01.ts +0 -184
- package/typechain-types/PendleRouter02.ts +0 -564
- package/typechain-types/PendleRouter03.ts +0 -224
- package/typechain-types/PendleRouterBase.ts +0 -126
- package/typechain-types/PendleRouterCore.ts +0 -328
- package/typechain-types/PendleRouterCoreUpg.ts +0 -798
- package/typechain-types/PendleRouterLytAndForge.ts +0 -331
- package/typechain-types/PendleRouterMarketBase.ts +0 -82
- package/typechain-types/PendleRouterOT.ts +0 -463
- package/typechain-types/PendleRouterProxy.ts +0 -335
- package/typechain-types/PendleRouterRawTokenOT.ts +0 -865
- package/typechain-types/PendleRouterRawTokenYT.ts +0 -520
- package/typechain-types/PendleRouterRedeemUpg.ts +0 -125
- package/typechain-types/PendleRouterSCYAndForgeBaseUpg.ts +0 -98
- package/typechain-types/PendleRouterStaticUpg.ts +0 -399
- package/typechain-types/PendleRouterYT.ts +0 -227
- package/typechain-types/PendleRouterYTBaseUpg.ts +0 -134
- package/typechain-types/PendleRouterYTUpg.ts +0 -537
- package/typechain-types/PendleStEthSCY.ts +0 -872
- package/typechain-types/PendleStargatePool.ts +0 -1135
- package/typechain-types/PendleVotingController.ts +0 -983
- package/typechain-types/PendleYTLYTBenqi.ts +0 -863
- package/typechain-types/PendleYearnVaultLYT.ts +0 -723
- package/typechain-types/PermlessAbstract.ts +0 -57
- package/typechain-types/PglStakingContract.ts +0 -662
- package/typechain-types/PglStakingContractProxy.ts +0 -256
- package/typechain-types/PglStakingContractProxyStorage.ts +0 -136
- package/typechain-types/PglStakingContractStorage.ts +0 -397
- package/typechain-types/PriceOracle.ts +0 -116
- package/typechain-types/ProtocolFakeUser.ts +0 -105
- package/typechain-types/Qi.ts +0 -760
- package/typechain-types/QiAvax.ts +0 -1720
- package/typechain-types/QiDelegateInterface.ts +0 -145
- package/typechain-types/QiDelegationStorage.ts +0 -82
- package/typechain-types/QiDelegatorInterface.ts +0 -149
- package/typechain-types/QiErc20.ts +0 -1846
- package/typechain-types/QiErc20Delegate.ts +0 -1926
- package/typechain-types/QiErc20Delegator.ts +0 -1885
- package/typechain-types/QiErc20Interface.ts +0 -382
- package/typechain-types/QiErc20Storage.ts +0 -79
- package/typechain-types/QiToken.ts +0 -1475
- package/typechain-types/QiTokenInterface.ts +0 -1419
- package/typechain-types/QiTokenSaleDistributor.ts +0 -771
- package/typechain-types/QiTokenSaleDistributorProxy.ts +0 -256
- package/typechain-types/QiTokenSaleDistributorProxyStorage.ts +0 -136
- package/typechain-types/QiTokenSaleDistributorStorage.ts +0 -401
- package/typechain-types/QiTokenStorage.ts +0 -311
- package/typechain-types/ReentrancyGuard.ts +0 -52
- package/typechain-types/SingleGaugeTypeController.ts +0 -478
- package/typechain-types/TokenErrorReporter.ts +0 -70
- package/typechain-types/Unitroller.ts +0 -356
- package/typechain-types/UnitrollerAdminStorage.ts +0 -143
- package/typechain-types/VePendle.ts +0 -1156
- package/typechain-types/VePendleCrosschain.ts +0 -969
- package/typechain-types/VePendleToken.ts +0 -688
- package/typechain-types/VotingController.ts +0 -1004
- package/typechain-types/VotingControllerStorage.ts +0 -448
- package/typechain-types/VotingEscrowController.ts +0 -154
- package/typechain-types/VotingEscrowPendle.ts +0 -752
- package/typechain-types/VotingEscrowToken.ts +0 -251
- package/typechain-types/WETH9.ts +0 -414
- package/typechain-types/WhitePaperInterestRateModel.ts +0 -304
- package/typechain-types/XPendle.ts +0 -618
- package/typechain-types/factories/ActionRedeem__factory.ts +0 -105
- package/typechain-types/factories/ActionSCYAndYOBase__factory.ts +0 -200
- package/typechain-types/factories/AggregatorV2V3Interface__factory.ts +0 -288
- package/typechain-types/factories/BenqiChainlinkOracle__factory.ts +0 -311
- package/typechain-types/factories/BoringOwnableData__factory.ts +0 -90
- package/typechain-types/factories/BoringOwnableUpgData__factory.ts +0 -94
- package/typechain-types/factories/BoringOwnableUpg__factory.ts +0 -139
- package/typechain-types/factories/BoringOwnable__factory.ts +0 -149
- package/typechain-types/factories/CelerReceiver__factory.ts +0 -140
- package/typechain-types/factories/CelerSender__factory.ts +0 -85
- package/typechain-types/factories/ComptrollerErrorReporter__factory.ts +0 -93
- package/typechain-types/factories/ComptrollerInterface__factory.ts +0 -595
- package/typechain-types/factories/ComptrollerVXStorage__factory.ts +0 -610
- package/typechain-types/factories/Comptroller__factory.ts +0 -2189
- package/typechain-types/factories/CrosschainContract__factory.ts +0 -52
- package/typechain-types/factories/CrosschainReceiver__factory.ts +0 -187
- package/typechain-types/factories/CrosschainSender__factory.ts +0 -104
- package/typechain-types/factories/EIP20Interface__factory.ts +0 -248
- package/typechain-types/factories/EIP20NonStandardInterface__factory.ts +0 -213
- package/typechain-types/factories/ERC20Burnable__factory.ts +0 -324
- package/typechain-types/factories/ERC20Locker__factory.ts +0 -73
- package/typechain-types/factories/ERC20Permit__factory.ts +0 -368
- package/typechain-types/factories/ERC20Premined__factory.ts +0 -393
- package/typechain-types/factories/ERC20PresetFixedSupply__factory.ts +0 -422
- package/typechain-types/factories/EpochController__factory.ts +0 -170
- package/typechain-types/factories/FundKeeper__factory.ts +0 -212
- package/typechain-types/factories/GaugeTypeControllerAbstract__factory.ts +0 -387
- package/typechain-types/factories/GaugeTypeControllerCrosschain__factory.ts +0 -522
- package/typechain-types/factories/GaugeTypeControllerMainchain__factory.ts +0 -431
- package/typechain-types/factories/IERC20Permit__factory.ts +0 -98
- package/typechain-types/factories/IGaugeController__factory.ts +0 -45
- package/typechain-types/factories/IJoePair__factory.ts +0 -674
- package/typechain-types/factories/IJoeRouter01__factory.ts +0 -772
- package/typechain-types/factories/IJoeRouter02__factory.ts +0 -974
- package/typechain-types/factories/ILiquidYieldTokenWrap__factory.ts +0 -533
- package/typechain-types/factories/ILiquidYieldToken__factory.ts +0 -429
- package/typechain-types/factories/IMessageBus__factory.ts +0 -396
- package/typechain-types/factories/IMessageReceiverApp__factory.ts +0 -55
- package/typechain-types/factories/IPActionRedeem__factory.ts +0 -70
- package/typechain-types/factories/IPActionSCYAndPY__factory.ts +0 -174
- package/typechain-types/factories/IPBaseToken__factory.ts +0 -271
- package/typechain-types/factories/IPFlashCallback__factory.ts +0 -49
- package/typechain-types/factories/IPGauge__factory.ts +0 -110
- package/typechain-types/factories/IPLiquidYieldToken__factory.ts +0 -433
- package/typechain-types/factories/IPMarketAddRemoveCallback__factory.ts +0 -86
- package/typechain-types/factories/IPMarketCallback__factory.ts +0 -55
- package/typechain-types/factories/IPOwnershipToken__factory.ts +0 -349
- package/typechain-types/factories/IPRouterCore__factory.ts +0 -531
- package/typechain-types/factories/IPRouterRedeem__factory.ts +0 -72
- package/typechain-types/factories/IPRouterYT__factory.ts +0 -305
- package/typechain-types/factories/IPVotingEscrowController__factory.ts +0 -80
- package/typechain-types/factories/IPendleGauge__factory.ts +0 -125
- package/typechain-types/factories/IRainbowBridge__factory.ts +0 -76
- package/typechain-types/factories/ISCYRewardIndex__factory.ts +0 -465
- package/typechain-types/factories/IVEPendleToken__factory.ts +0 -71
- package/typechain-types/factories/IVePToken__factory.ts +0 -55
- package/typechain-types/factories/IVotingEscrowPendle__factory.ts +0 -182
- package/typechain-types/factories/IXPendle__factory.ts +0 -61
- package/typechain-types/factories/InterestRateModel__factory.ts +0 -108
- package/typechain-types/factories/JumpRateModel__factory.ts +0 -334
- package/typechain-types/factories/LYTBaseWithRewards__factory.ts +0 -530
- package/typechain-types/factories/LYTBase__factory.ts +0 -474
- package/typechain-types/factories/LYTWrapWithRewards__factory.ts +0 -643
- package/typechain-types/factories/LYTWrap__factory.ts +0 -574
- package/typechain-types/factories/LiquidityMining__factory.ts +0 -367
- package/typechain-types/factories/Maximillion__factory.ts +0 -125
- package/typechain-types/factories/Ownable__factory.ts +0 -75
- package/typechain-types/factories/PendleAaveV3LYT__factory.ts +0 -657
- package/typechain-types/factories/PendleBaseToken__factory.ts +0 -348
- package/typechain-types/factories/PendleBenQiErc20LYT__factory.ts +0 -748
- package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +0 -871
- package/typechain-types/factories/PendleBenqiLiquidYieldToken__factory.ts +0 -785
- package/typechain-types/factories/PendleBtrflyLYT__factory.ts +0 -647
- package/typechain-types/factories/PendleBtrflyScy__factory.ts +0 -710
- package/typechain-types/factories/PendleCelerRouter__factory.ts +0 -259
- package/typechain-types/factories/PendleERC20Permit__factory.ts +0 -405
- package/typechain-types/factories/PendleGaugeControllerMainchain__factory.ts +0 -332
- package/typechain-types/factories/PendleGaugeControllerSidechain__factory.ts +0 -391
- package/typechain-types/factories/PendleGaugeController__factory.ts +0 -212
- package/typechain-types/factories/PendleJoeLpSCY__factory.ts +0 -732
- package/typechain-types/factories/PendleJoeSwapHelperUpg__factory.ts +0 -43
- package/typechain-types/factories/PendleJoeSwapHelper__factory.ts +0 -52
- package/typechain-types/factories/PendleLYTMockYT__factory.ts +0 -732
- package/typechain-types/factories/PendleLiquidYieldTokenBase__factory.ts +0 -603
- package/typechain-types/factories/PendleLiquidYieldToken__factory.ts +0 -510
- package/typechain-types/factories/PendleOwnershipToken__factory.ts +0 -527
- package/typechain-types/factories/PendleRouter01__factory.ts +0 -152
- package/typechain-types/factories/PendleRouter02__factory.ts +0 -438
- package/typechain-types/factories/PendleRouter03__factory.ts +0 -190
- package/typechain-types/factories/PendleRouterBase__factory.ts +0 -68
- package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +0 -635
- package/typechain-types/factories/PendleRouterCore__factory.ts +0 -268
- package/typechain-types/factories/PendleRouterLytAndForge__factory.ts +0 -294
- package/typechain-types/factories/PendleRouterMarketBase__factory.ts +0 -43
- package/typechain-types/factories/PendleRouterOT__factory.ts +0 -372
- package/typechain-types/factories/PendleRouterProxy__factory.ts +0 -285
- package/typechain-types/factories/PendleRouterRawTokenOT__factory.ts +0 -697
- package/typechain-types/factories/PendleRouterRawTokenYT__factory.ts +0 -431
- package/typechain-types/factories/PendleRouterRedeemUpg__factory.ts +0 -112
- package/typechain-types/factories/PendleRouterSCYAndForgeBaseUpg__factory.ts +0 -56
- package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +0 -315
- package/typechain-types/factories/PendleRouterYTBaseUpg__factory.ts +0 -66
- package/typechain-types/factories/PendleRouterYTUpg__factory.ts +0 -422
- package/typechain-types/factories/PendleRouterYT__factory.ts +0 -184
- package/typechain-types/factories/PendleStEthSCY__factory.ts +0 -716
- package/typechain-types/factories/PendleStargatePool__factory.ts +0 -961
- package/typechain-types/factories/PendleVotingController__factory.ts +0 -730
- package/typechain-types/factories/PendleYTLYTBenqi__factory.ts +0 -713
- package/typechain-types/factories/PendleYearnVaultLYT__factory.ts +0 -586
- package/typechain-types/factories/PermissionsV2__factory.ts +0 -36
- package/typechain-types/factories/PermlessAbstract__factory.ts +0 -30
- package/typechain-types/factories/PglStakingContractProxyStorage__factory.ts +0 -130
- package/typechain-types/factories/PglStakingContractProxy__factory.ts +0 -187
- package/typechain-types/factories/PglStakingContractStorage__factory.ts +0 -309
- package/typechain-types/factories/PglStakingContract__factory.ts +0 -446
- package/typechain-types/factories/PriceOracle__factory.ts +0 -59
- package/typechain-types/factories/ProtocolFakeUser__factory.ts +0 -87
- package/typechain-types/factories/QiAvax__factory.ts +0 -1471
- package/typechain-types/factories/QiDelegateInterface__factory.ts +0 -65
- package/typechain-types/factories/QiDelegationStorage__factory.ts +0 -79
- package/typechain-types/factories/QiDelegatorInterface__factory.ts +0 -89
- package/typechain-types/factories/QiErc20Delegate__factory.ts +0 -1563
- package/typechain-types/factories/QiErc20Delegator__factory.ts +0 -1648
- package/typechain-types/factories/QiErc20Interface__factory.ts +0 -239
- package/typechain-types/factories/QiErc20Storage__factory.ts +0 -79
- package/typechain-types/factories/QiErc20__factory.ts +0 -1515
- package/typechain-types/factories/QiTokenInterface__factory.ts +0 -1182
- package/typechain-types/factories/QiTokenSaleDistributorProxyStorage__factory.ts +0 -124
- package/typechain-types/factories/QiTokenSaleDistributorProxy__factory.ts +0 -171
- package/typechain-types/factories/QiTokenSaleDistributorStorage__factory.ts +0 -289
- package/typechain-types/factories/QiTokenSaleDistributor__factory.ts +0 -480
- package/typechain-types/factories/QiTokenStorage__factory.ts +0 -274
- package/typechain-types/factories/QiToken__factory.ts +0 -1219
- package/typechain-types/factories/Qi__factory.ts +0 -648
- package/typechain-types/factories/ReentrancyGuard__factory.ts +0 -69
- package/typechain-types/factories/SingleGaugeTypeController__factory.ts +0 -341
- package/typechain-types/factories/TokenErrorReporter__factory.ts +0 -89
- package/typechain-types/factories/UnitrollerAdminStorage__factory.ts +0 -128
- package/typechain-types/factories/Unitroller__factory.ts +0 -305
- package/typechain-types/factories/VePendleCrosschain__factory.ts +0 -727
- package/typechain-types/factories/VePendleToken__factory.ts +0 -494
- package/typechain-types/factories/VePendle__factory.ts +0 -800
- package/typechain-types/factories/VotingControllerStorage__factory.ts +0 -315
- package/typechain-types/factories/VotingController__factory.ts +0 -645
- package/typechain-types/factories/VotingEscrowPendle__factory.ts +0 -527
- package/typechain-types/factories/VotingEscrowToken__factory.ts +0 -153
- package/typechain-types/factories/WETH9__factory.ts +0 -342
- package/typechain-types/factories/WhitePaperInterestRateModel__factory.ts +0 -281
- package/typechain-types/factories/XPendle__factory.ts +0 -473
|
@@ -40,10 +40,10 @@ contract PendleSJoeSCY is SCYBaseWithRewards {
|
|
|
40
40
|
string memory _name,
|
|
41
41
|
string memory _symbol,
|
|
42
42
|
address _sJOE
|
|
43
|
-
) SCYBaseWithRewards(_name, _symbol, _sJOE) {
|
|
43
|
+
) SCYBaseWithRewards(_name, _symbol, ISJoe(_sJOE).joe()) {
|
|
44
44
|
require(_sJOE != address(0), "zero address");
|
|
45
45
|
SJOE = _sJOE;
|
|
46
|
-
JOE =
|
|
46
|
+
JOE = yieldToken;
|
|
47
47
|
|
|
48
48
|
_safeApprove(JOE, SJOE, type(uint256).max);
|
|
49
49
|
}
|
|
@@ -130,7 +130,7 @@ contract PendleSJoeSCY is SCYBaseWithRewards {
|
|
|
130
130
|
MISC FUNCTIONS FOR METADATA
|
|
131
131
|
//////////////////////////////////////////////////////////////*/
|
|
132
132
|
|
|
133
|
-
function _previewDeposit(address
|
|
133
|
+
function _previewDeposit(address, uint256 amountTokenToDeposit)
|
|
134
134
|
internal
|
|
135
135
|
view
|
|
136
136
|
override
|
|
@@ -138,18 +138,16 @@ contract PendleSJoeSCY is SCYBaseWithRewards {
|
|
|
138
138
|
{
|
|
139
139
|
uint256 sJoeDepositFeePrecision = ISJoe(SJOE).depositFeePercent();
|
|
140
140
|
|
|
141
|
-
amountSharesOut =
|
|
142
|
-
(((1e18 - sJoeDepositFeePrecision / 1e18) * amountTokenToDeposit) * 1e18) /
|
|
143
|
-
exchangeRate();
|
|
141
|
+
amountSharesOut = ((1e18 - sJoeDepositFeePrecision / 1e18) * amountTokenToDeposit);
|
|
144
142
|
}
|
|
145
143
|
|
|
146
|
-
function _previewRedeem(address
|
|
144
|
+
function _previewRedeem(address, uint256 amountSharesToRedeem)
|
|
147
145
|
internal
|
|
148
146
|
pure
|
|
149
147
|
override
|
|
150
148
|
returns (uint256 amountTokenOut)
|
|
151
149
|
{
|
|
152
|
-
amountTokenOut =
|
|
150
|
+
amountTokenOut = amountSharesToRedeem;
|
|
153
151
|
}
|
|
154
152
|
|
|
155
153
|
function getTokensIn() public view virtual override returns (address[] memory res) {
|
|
@@ -44,26 +44,28 @@ contract PendleRouter is Proxy, Initializable, UUPSUpgradeable, PermissionsV2Upg
|
|
|
44
44
|
|
|
45
45
|
function getRouterImplementation(bytes4 sig) public view returns (address) {
|
|
46
46
|
if (
|
|
47
|
-
sig == IPActionCore.
|
|
48
|
-
sig == IPActionCore.
|
|
49
|
-
sig == IPActionCore.
|
|
50
|
-
sig == IPActionCore.
|
|
47
|
+
sig == IPActionCore.mintScyFromToken.selector ||
|
|
48
|
+
sig == IPActionCore.redeemScyToToken.selector ||
|
|
49
|
+
sig == IPActionCore.mintPyFromToken.selector ||
|
|
50
|
+
sig == IPActionCore.redeemPyToToken.selector ||
|
|
51
51
|
sig == IPActionCore.mintPyFromScy.selector ||
|
|
52
52
|
sig == IPActionCore.redeemPyToScy.selector ||
|
|
53
|
-
sig == IPActionCore.
|
|
53
|
+
sig == IPActionCore.addLiquidityDualScyAndPt.selector ||
|
|
54
|
+
sig == IPActionCore.addLiquidityDualIbTokenAndPt.selector ||
|
|
54
55
|
sig == IPActionCore.addLiquiditySinglePt.selector ||
|
|
55
56
|
sig == IPActionCore.addLiquiditySingleScy.selector ||
|
|
56
|
-
sig == IPActionCore.
|
|
57
|
-
sig == IPActionCore.
|
|
57
|
+
sig == IPActionCore.addLiquiditySingleToken.selector ||
|
|
58
|
+
sig == IPActionCore.removeLiquidityDualScyAndPt.selector ||
|
|
59
|
+
sig == IPActionCore.removeLiquidityDualIbTokenAndPt.selector ||
|
|
58
60
|
sig == IPActionCore.removeLiquiditySinglePt.selector ||
|
|
59
61
|
sig == IPActionCore.removeLiquiditySingleScy.selector ||
|
|
60
|
-
sig == IPActionCore.
|
|
62
|
+
sig == IPActionCore.removeLiquiditySingleToken.selector ||
|
|
61
63
|
sig == IPActionCore.swapExactPtForScy.selector ||
|
|
62
64
|
sig == IPActionCore.swapPtForExactScy.selector ||
|
|
63
65
|
sig == IPActionCore.swapScyForExactPt.selector ||
|
|
64
66
|
sig == IPActionCore.swapExactScyForPt.selector ||
|
|
65
|
-
sig == IPActionCore.
|
|
66
|
-
sig == IPActionCore.
|
|
67
|
+
sig == IPActionCore.swapExactTokenForPt.selector ||
|
|
68
|
+
sig == IPActionCore.swapExactPtForToken.selector ||
|
|
67
69
|
sig == IPActionCore.redeemDueInterestAndRewards.selector
|
|
68
70
|
) {
|
|
69
71
|
return ACTION_CORE;
|
|
@@ -71,8 +73,8 @@ contract PendleRouter is Proxy, Initializable, UUPSUpgradeable, PermissionsV2Upg
|
|
|
71
73
|
sig == IPActionYT.swapExactYtForScy.selector ||
|
|
72
74
|
sig == IPActionYT.swapScyForExactYt.selector ||
|
|
73
75
|
sig == IPActionYT.swapExactScyForYt.selector ||
|
|
74
|
-
sig == IPActionYT.
|
|
75
|
-
sig == IPActionYT.
|
|
76
|
+
sig == IPActionYT.swapExactTokenForYt.selector ||
|
|
77
|
+
sig == IPActionYT.swapExactYtForToken.selector ||
|
|
76
78
|
sig == IPActionYT.swapYtForExactScy.selector
|
|
77
79
|
) {
|
|
78
80
|
return ACTION_YT;
|
|
@@ -13,12 +13,12 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
13
13
|
using Math for int256;
|
|
14
14
|
|
|
15
15
|
/// @dev since this contract will be proxied, it must not contains non-immutable variabless
|
|
16
|
-
constructor(address
|
|
17
|
-
ActionSCYAndPYBase(
|
|
16
|
+
constructor(address _kyberSwapRouter, address _marketFactory)
|
|
17
|
+
ActionSCYAndPYBase(_kyberSwapRouter) //solhint-disable-next-line no-empty-blocks
|
|
18
18
|
{}
|
|
19
19
|
|
|
20
20
|
/// @dev refer to the internal function
|
|
21
|
-
function
|
|
21
|
+
function addLiquidityDualScyAndPt(
|
|
22
22
|
address receiver,
|
|
23
23
|
address market,
|
|
24
24
|
uint256 scyDesired,
|
|
@@ -32,7 +32,7 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
32
32
|
uint256 ptUsed
|
|
33
33
|
)
|
|
34
34
|
{
|
|
35
|
-
(netLpOut, scyUsed, ptUsed) =
|
|
35
|
+
(netLpOut, scyUsed, ptUsed) = _addLiquidityDualScyAndPt(
|
|
36
36
|
receiver,
|
|
37
37
|
market,
|
|
38
38
|
scyDesired,
|
|
@@ -40,7 +40,39 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
40
40
|
minLpOut,
|
|
41
41
|
true
|
|
42
42
|
);
|
|
43
|
-
emit
|
|
43
|
+
emit AddLiquidityDualScyAndPt(msg.sender, market, receiver, scyUsed, ptUsed, netLpOut);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/// @dev refer to the internal function
|
|
47
|
+
function addLiquidityDualIbTokenAndPt(
|
|
48
|
+
address receiver,
|
|
49
|
+
address market,
|
|
50
|
+
uint256 ibTokenDesired,
|
|
51
|
+
uint256 ptDesired,
|
|
52
|
+
uint256 minLpOut
|
|
53
|
+
)
|
|
54
|
+
external
|
|
55
|
+
returns (
|
|
56
|
+
uint256 netLpOut,
|
|
57
|
+
uint256 ibTokenUsed,
|
|
58
|
+
uint256 ptUsed
|
|
59
|
+
)
|
|
60
|
+
{
|
|
61
|
+
(netLpOut, ibTokenUsed, ptUsed) = _addLiquidityDualIbTokenAndPt(
|
|
62
|
+
receiver,
|
|
63
|
+
market,
|
|
64
|
+
ibTokenDesired,
|
|
65
|
+
ptDesired,
|
|
66
|
+
minLpOut
|
|
67
|
+
);
|
|
68
|
+
emit AddLiquidityDualIbTokenAndPt(
|
|
69
|
+
msg.sender,
|
|
70
|
+
market,
|
|
71
|
+
receiver,
|
|
72
|
+
ibTokenDesired,
|
|
73
|
+
ptUsed,
|
|
74
|
+
netLpOut
|
|
75
|
+
);
|
|
44
76
|
}
|
|
45
77
|
|
|
46
78
|
function addLiquiditySinglePt(
|
|
@@ -48,7 +80,7 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
48
80
|
address market,
|
|
49
81
|
uint256 netPtIn,
|
|
50
82
|
uint256 minLpOut,
|
|
51
|
-
ApproxParams
|
|
83
|
+
ApproxParams calldata guessPtSwapToScy
|
|
52
84
|
) external returns (uint256 netLpOut) {
|
|
53
85
|
require(false, "NOT IMPLEMENTED");
|
|
54
86
|
}
|
|
@@ -58,39 +90,69 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
58
90
|
address market,
|
|
59
91
|
uint256 netScyIn,
|
|
60
92
|
uint256 minLpOut,
|
|
61
|
-
ApproxParams
|
|
93
|
+
ApproxParams calldata guessPtReceivedFromScy
|
|
62
94
|
) external returns (uint256 netLpOut) {
|
|
63
95
|
require(false, "NOT IMPLEMENTED");
|
|
64
96
|
}
|
|
65
97
|
|
|
66
|
-
function
|
|
98
|
+
function addLiquiditySingleToken(
|
|
67
99
|
address receiver,
|
|
68
100
|
address market,
|
|
69
|
-
uint256 netRawTokenIn,
|
|
70
101
|
uint256 minLpOut,
|
|
71
|
-
|
|
72
|
-
|
|
102
|
+
ApproxParams calldata guessPtReceivedFromScy,
|
|
103
|
+
TokenInput calldata input
|
|
73
104
|
) external returns (uint256 netLpOut) {
|
|
74
105
|
require(false, "NOT IMPLEMENTED");
|
|
75
106
|
}
|
|
76
107
|
|
|
77
108
|
/// @dev refer to the internal function
|
|
78
|
-
function
|
|
109
|
+
function removeLiquidityDualScyAndPt(
|
|
79
110
|
address receiver,
|
|
80
111
|
address market,
|
|
81
112
|
uint256 lpToRemove,
|
|
82
113
|
uint256 scyOutMin,
|
|
83
114
|
uint256 ptOutMin
|
|
84
115
|
) external returns (uint256 netScyOut, uint256 netPtOut) {
|
|
85
|
-
(netScyOut, netPtOut) =
|
|
116
|
+
(netScyOut, netPtOut) = _removeLiquidityDualScyAndPt(
|
|
86
117
|
receiver,
|
|
87
118
|
market,
|
|
88
119
|
lpToRemove,
|
|
89
120
|
scyOutMin,
|
|
90
|
-
ptOutMin
|
|
91
|
-
|
|
121
|
+
ptOutMin
|
|
122
|
+
);
|
|
123
|
+
emit RemoveLiquidityDualScyAndPt(
|
|
124
|
+
msg.sender,
|
|
125
|
+
market,
|
|
126
|
+
receiver,
|
|
127
|
+
lpToRemove,
|
|
128
|
+
netPtOut,
|
|
129
|
+
netScyOut
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/// @dev refer to the internal function
|
|
134
|
+
function removeLiquidityDualIbTokenAndPt(
|
|
135
|
+
address receiver,
|
|
136
|
+
address market,
|
|
137
|
+
uint256 lpToRemove,
|
|
138
|
+
uint256 ibTokenMin,
|
|
139
|
+
uint256 ptOutMin
|
|
140
|
+
) external returns (uint256 netIbTokenOut, uint256 netPtOut) {
|
|
141
|
+
(netIbTokenOut, netPtOut) = _removeLiquidityDualIbTokenAndPt(
|
|
142
|
+
receiver,
|
|
143
|
+
market,
|
|
144
|
+
lpToRemove,
|
|
145
|
+
ibTokenMin,
|
|
146
|
+
ptOutMin
|
|
147
|
+
);
|
|
148
|
+
emit RemoveLiquidityDualIbTokenAndPt(
|
|
149
|
+
msg.sender,
|
|
150
|
+
market,
|
|
151
|
+
receiver,
|
|
152
|
+
lpToRemove,
|
|
153
|
+
netPtOut,
|
|
154
|
+
netIbTokenOut
|
|
92
155
|
);
|
|
93
|
-
emit RemoveLiquidity(msg.sender, market, receiver, lpToRemove, netPtOut, netScyOut);
|
|
94
156
|
}
|
|
95
157
|
|
|
96
158
|
function removeLiquiditySinglePt(
|
|
@@ -98,7 +160,7 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
98
160
|
address market,
|
|
99
161
|
uint256 lpToRemove,
|
|
100
162
|
uint256 minPtOut,
|
|
101
|
-
ApproxParams
|
|
163
|
+
ApproxParams calldata guessPtOut
|
|
102
164
|
) external returns (uint256 netPtOut) {
|
|
103
165
|
require(false, "NOT IMPLEMENTED");
|
|
104
166
|
}
|
|
@@ -112,13 +174,12 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
112
174
|
require(false, "NOT IMPLEMENTED");
|
|
113
175
|
}
|
|
114
176
|
|
|
115
|
-
function
|
|
177
|
+
function removeLiquiditySingleToken(
|
|
116
178
|
address receiver,
|
|
117
179
|
address market,
|
|
118
180
|
uint256 lpToRemove,
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
) external returns (uint256 netRawTokenOut) {
|
|
181
|
+
TokenOutput calldata output
|
|
182
|
+
) external returns (uint256 netTokenOut) {
|
|
122
183
|
require(false, "NOT IMPLEMENTED");
|
|
123
184
|
}
|
|
124
185
|
|
|
@@ -139,7 +200,7 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
139
200
|
address market,
|
|
140
201
|
uint256 exactScyOut,
|
|
141
202
|
uint256 maxPtIn,
|
|
142
|
-
ApproxParams
|
|
203
|
+
ApproxParams calldata guessPtIn
|
|
143
204
|
) external returns (uint256 netPtIn) {
|
|
144
205
|
netPtIn = _swapPtForExactScy(receiver, market, exactScyOut, maxPtIn, guessPtIn, true);
|
|
145
206
|
emit SwapPtAndScy(msg.sender, market, receiver, netPtIn.neg(), exactScyOut.Int());
|
|
@@ -162,71 +223,62 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
162
223
|
address market,
|
|
163
224
|
uint256 exactScyIn,
|
|
164
225
|
uint256 minPtOut,
|
|
165
|
-
ApproxParams
|
|
226
|
+
ApproxParams calldata guessPtOut
|
|
166
227
|
) external returns (uint256 netPtOut) {
|
|
167
228
|
netPtOut = _swapExactScyForPt(receiver, market, exactScyIn, minPtOut, guessPtOut, true);
|
|
168
229
|
emit SwapPtAndScy(msg.sender, market, receiver, netPtOut.Int(), exactScyIn.neg());
|
|
169
230
|
}
|
|
170
231
|
|
|
171
232
|
/// @dev refer to the internal function
|
|
172
|
-
function
|
|
233
|
+
function mintScyFromToken(
|
|
173
234
|
address receiver,
|
|
174
235
|
address SCY,
|
|
175
|
-
uint256 netRawTokenIn,
|
|
176
236
|
uint256 minScyOut,
|
|
177
|
-
|
|
237
|
+
TokenInput calldata input
|
|
178
238
|
) external returns (uint256 netScyOut) {
|
|
179
|
-
|
|
239
|
+
netScyOut = _mintScyFromToken(receiver, SCY, minScyOut, input);
|
|
240
|
+
|
|
241
|
+
emit MintScyFromToken(
|
|
242
|
+
msg.sender,
|
|
243
|
+
receiver,
|
|
244
|
+
SCY,
|
|
245
|
+
input.tokenIn,
|
|
246
|
+
input.netTokenIn,
|
|
247
|
+
netScyOut
|
|
248
|
+
);
|
|
180
249
|
}
|
|
181
250
|
|
|
182
251
|
/// @dev refer to the internal function
|
|
183
|
-
function
|
|
252
|
+
function redeemScyToToken(
|
|
184
253
|
address receiver,
|
|
185
254
|
address SCY,
|
|
186
255
|
uint256 netScyIn,
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
emit RedeemScyToRawToken(
|
|
192
|
-
msg.sender,
|
|
193
|
-
receiver,
|
|
194
|
-
SCY,
|
|
195
|
-
netScyIn,
|
|
196
|
-
path[path.length - 1],
|
|
197
|
-
netRawTokenOut
|
|
198
|
-
);
|
|
256
|
+
TokenOutput calldata output
|
|
257
|
+
) external returns (uint256 netTokenOut) {
|
|
258
|
+
netTokenOut = _redeemScyToToken(receiver, SCY, netScyIn, output, true);
|
|
259
|
+
emit RedeemScyToToken(msg.sender, receiver, SCY, netScyIn, output.tokenOut, netTokenOut);
|
|
199
260
|
}
|
|
200
261
|
|
|
201
262
|
/// @dev refer to the internal function
|
|
202
|
-
function
|
|
263
|
+
function mintPyFromToken(
|
|
203
264
|
address receiver,
|
|
204
265
|
address YT,
|
|
205
|
-
uint256 netRawTokenIn,
|
|
206
266
|
uint256 minPyOut,
|
|
207
|
-
|
|
267
|
+
TokenInput calldata input
|
|
208
268
|
) external returns (uint256 netPyOut) {
|
|
209
|
-
netPyOut =
|
|
210
|
-
emit
|
|
269
|
+
netPyOut = _mintPyFromToken(receiver, YT, minPyOut, input);
|
|
270
|
+
emit MintPyFromToken(msg.sender, receiver, YT, input.tokenIn, input.netTokenIn, netPyOut);
|
|
211
271
|
}
|
|
212
272
|
|
|
213
273
|
/// @dev refer to the internal function
|
|
214
|
-
function
|
|
274
|
+
function redeemPyToToken(
|
|
215
275
|
address receiver,
|
|
216
276
|
address YT,
|
|
217
277
|
uint256 netPyIn,
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
emit RedeemPyToRawToken(
|
|
223
|
-
msg.sender,
|
|
224
|
-
receiver,
|
|
225
|
-
YT,
|
|
226
|
-
netPyIn,
|
|
227
|
-
path[path.length - 1],
|
|
228
|
-
netRawTokenOut
|
|
229
|
-
);
|
|
278
|
+
TokenOutput calldata output
|
|
279
|
+
) external returns (uint256 netTokenOut) {
|
|
280
|
+
netTokenOut = _redeemPyToToken(receiver, YT, netPyIn, output, true);
|
|
281
|
+
emit RedeemPyToToken(msg.sender, receiver, YT, netPyIn, output.tokenOut, netTokenOut);
|
|
230
282
|
}
|
|
231
283
|
|
|
232
284
|
function mintPyFromScy(
|
|
@@ -250,57 +302,41 @@ contract ActionCore is IPActionCore, ActionSCYAndPTBase {
|
|
|
250
302
|
}
|
|
251
303
|
|
|
252
304
|
/// @dev refer to the internal function
|
|
253
|
-
function
|
|
305
|
+
function swapExactTokenForPt(
|
|
254
306
|
address receiver,
|
|
255
307
|
address market,
|
|
256
|
-
uint256 exactRawTokenIn,
|
|
257
308
|
uint256 minPtOut,
|
|
258
|
-
|
|
259
|
-
|
|
309
|
+
ApproxParams calldata guessPtOut,
|
|
310
|
+
TokenInput calldata input
|
|
260
311
|
) external returns (uint256 netPtOut) {
|
|
261
|
-
netPtOut =
|
|
262
|
-
receiver,
|
|
263
|
-
market,
|
|
264
|
-
exactRawTokenIn,
|
|
265
|
-
minPtOut,
|
|
266
|
-
path,
|
|
267
|
-
guessPtOut,
|
|
268
|
-
true
|
|
269
|
-
);
|
|
312
|
+
netPtOut = _swapExactTokenForPt(receiver, market, minPtOut, guessPtOut, input);
|
|
270
313
|
|
|
271
|
-
emit
|
|
314
|
+
emit SwapPtAndToken(
|
|
272
315
|
msg.sender,
|
|
273
316
|
market,
|
|
274
|
-
|
|
317
|
+
input.tokenIn,
|
|
275
318
|
receiver,
|
|
276
319
|
netPtOut.Int(),
|
|
277
|
-
|
|
320
|
+
input.netTokenIn.neg()
|
|
278
321
|
);
|
|
279
322
|
}
|
|
280
323
|
|
|
281
324
|
/// @dev refer to the internal function
|
|
282
|
-
function
|
|
325
|
+
function swapExactPtForToken(
|
|
283
326
|
address receiver,
|
|
284
327
|
address market,
|
|
285
328
|
uint256 exactPtIn,
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
market,
|
|
292
|
-
exactPtIn,
|
|
293
|
-
minRawTokenOut,
|
|
294
|
-
path,
|
|
295
|
-
true
|
|
296
|
-
);
|
|
297
|
-
emit SwapPtAndRawToken(
|
|
329
|
+
TokenOutput calldata output
|
|
330
|
+
) external returns (uint256 netTokenOut) {
|
|
331
|
+
netTokenOut = _swapExactPtForToken(receiver, market, exactPtIn, output, true);
|
|
332
|
+
|
|
333
|
+
emit SwapPtAndToken(
|
|
298
334
|
msg.sender,
|
|
299
335
|
market,
|
|
300
|
-
|
|
336
|
+
output.tokenOut,
|
|
301
337
|
receiver,
|
|
302
338
|
exactPtIn.neg(),
|
|
303
|
-
|
|
339
|
+
netTokenOut.Int()
|
|
304
340
|
);
|
|
305
341
|
}
|
|
306
342
|
|
|
@@ -12,12 +12,9 @@ contract ActionYT is IPActionYT, ActionSCYAndYTBase {
|
|
|
12
12
|
using Math for int256;
|
|
13
13
|
|
|
14
14
|
/// @dev since this contract will be proxied, it must not contains non-immutable variables
|
|
15
|
-
constructor(address
|
|
16
|
-
ActionSCYAndPYBase(
|
|
17
|
-
|
|
18
|
-
{
|
|
19
|
-
|
|
20
|
-
}
|
|
15
|
+
constructor(address _kyberSwapRouter)
|
|
16
|
+
ActionSCYAndPYBase(_kyberSwapRouter) //solhint-disable-next-line no-empty-blocks
|
|
17
|
+
{}
|
|
21
18
|
|
|
22
19
|
/// @dev refer to the internal function
|
|
23
20
|
function swapExactYtForScy(
|
|
@@ -66,48 +63,31 @@ contract ActionYT is IPActionYT, ActionSCYAndYTBase {
|
|
|
66
63
|
}
|
|
67
64
|
|
|
68
65
|
/// @dev refer to the internal function
|
|
69
|
-
function
|
|
66
|
+
function swapExactTokenForYt(
|
|
70
67
|
address receiver,
|
|
71
68
|
address market,
|
|
72
|
-
uint256 exactRawTokenIn,
|
|
73
69
|
uint256 minYtOut,
|
|
74
|
-
|
|
75
|
-
|
|
70
|
+
ApproxParams memory guessYtOut,
|
|
71
|
+
TokenInput calldata input
|
|
76
72
|
) external returns (uint256 netYtOut) {
|
|
77
|
-
netYtOut =
|
|
73
|
+
netYtOut = _swapExactTokenForYt(receiver, market, minYtOut, guessYtOut, input);
|
|
74
|
+
emit SwapYTAndToken(
|
|
78
75
|
receiver,
|
|
79
76
|
market,
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
guessYtOut,
|
|
84
|
-
true
|
|
77
|
+
input.tokenIn,
|
|
78
|
+
netYtOut.Int(),
|
|
79
|
+
input.netTokenIn.neg()
|
|
85
80
|
);
|
|
86
|
-
emit SwapYTAndRawToken(receiver, market, path[0], netYtOut.Int(), exactRawTokenIn.neg());
|
|
87
81
|
}
|
|
88
82
|
|
|
89
83
|
/// @dev refer to the internal function
|
|
90
|
-
function
|
|
84
|
+
function swapExactYtForToken(
|
|
91
85
|
address receiver,
|
|
92
86
|
address market,
|
|
93
|
-
uint256
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
receiver,
|
|
99
|
-
market,
|
|
100
|
-
exactYtIn,
|
|
101
|
-
minRawTokenOut,
|
|
102
|
-
path,
|
|
103
|
-
true
|
|
104
|
-
);
|
|
105
|
-
emit SwapYTAndRawToken(
|
|
106
|
-
receiver,
|
|
107
|
-
market,
|
|
108
|
-
path[path.length - 1],
|
|
109
|
-
exactYtIn.neg(),
|
|
110
|
-
netRawTokenOut.Int()
|
|
111
|
-
);
|
|
87
|
+
uint256 netYtIn,
|
|
88
|
+
TokenOutput calldata output
|
|
89
|
+
) external returns (uint256 netTokenOut) {
|
|
90
|
+
netTokenOut = _swapExactYtForToken(receiver, market, netYtIn, output, true);
|
|
91
|
+
emit SwapYTAndToken(receiver, market, output.tokenOut, netYtIn.neg(), netTokenOut.Int());
|
|
112
92
|
}
|
|
113
93
|
}
|