@pendle/core-v2 5.2.0-beta-4 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.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 +67 -23
- package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
- package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.json +19 -6
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/SYBaseWithoutPermitUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/{SYBaseUpg.json → SYBaseWithoutPermitUpg.json} +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSYUpg.sol/PendleAaveV3WithRewardsSYUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSYUpg.sol/PendleAaveV3WithRewardsSYUpg.json +1169 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleStkGHOSY.sol/PendleStkGHOSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleStkGHOSY.sol/PendleStkGHOSY.json +1160 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.dbg.json +1 -1
- package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.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/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/Mantle/PendleCMETHSY.sol/PendleCMETHSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Mantle/PendleCMETHSY.sol/PendleCMETHSY.json +1049 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveNonBorrowableSY.sol/PendleSiloWithIncentiveNonBorrowableSY.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveNonBorrowableSY.sol/PendleSiloWithIncentiveNonBorrowableSY.json +1222 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBaseSYUpg.sol/PendleSolvBTCBBNBaseSYUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBaseSYUpg.sol/PendleSolvBTCBBNBaseSYUpg.json +1072 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBase.sol/PendleSolvHelperBase.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBase.sol/PendleSolvHelperBase.json +115 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendEBTCSYUpg.sol/PendleZerolendEBTCSYUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendEBTCSYUpg.sol/PendleZerolendEBTCSYUpg.json +1337 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendLBTCSYUpg.sol/PendleZerolendLBTCSYUpg.dbg.json +4 -0
- package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendLBTCSYUpg.sol/PendleZerolendLBTCSYUpg.json +1226 -0
- package/build/artifacts/contracts/interfaces/AaveV3/IAaveStkGHO.sol/IAaveStkGHO.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/AaveV3/IAaveStkGHO.sol/IAaveStkGHO.json +116 -0
- package/build/artifacts/contracts/interfaces/Angle/IAngleDistributor.sol/IAngleDistributor.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Angle/IAngleDistributor.sol/IAngleDistributor.json +39 -0
- package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +66 -0
- package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
- package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.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 +66 -0
- package/build/artifacts/contracts/interfaces/Zerolend/IZerolendPool.sol/IZerolendPool.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Zerolend/IZerolendPool.sol/IZerolendPool.json +37 -0
- package/build/artifacts/contracts/interfaces/Zerolend/IZerolendZ0Token.sol/IZerolendZ0Token.dbg.json +4 -0
- package/build/artifacts/contracts/interfaces/Zerolend/IZerolendZ0Token.sol/IZerolendZ0Token.json +24 -0
- 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/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.dbg.json +1 -1
- package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.json +27 -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 +68 -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 +2 -2
- 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 +4 -0
- package/build/artifacts/contracts/oracles/{internal/PendleBoringOneracle.sol → PendleBoringOneracle.sol}/PendleBoringOneracle.json +3 -3
- package/build/artifacts/contracts/oracles/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{internal/PendleBoringSolvBTCOneracle.sol → PendleBoringSolvBTCOneracle.sol}/PendleBoringSolvBTCOneracle.json +3 -3
- package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/PendleLpOracleLib.sol → PendleLpOracleLib.sol}/PendleLpOracleLib.json +3 -3
- package/build/artifacts/contracts/oracles/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/PendlePYLpOracle.sol → PendlePYLpOracle.sol}/PendlePYLpOracle.json +3 -3
- package/build/artifacts/contracts/oracles/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/PendlePYOracleLib.sol → PendlePYOracleLib.sol}/PendlePYOracleLib.json +3 -3
- package/build/artifacts/contracts/oracles/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{internal/PendleRedStoneRateOracleAdapter.sol → PendleRedStoneRateOracleAdapter.sol}/PendleRedStoneRateOracleAdapter.json +3 -3
- package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PTExpiry.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{internal/PendleSparkLinearDiscountOracle.sol → PendleSparkLinearDiscountOracle.sol}/PTExpiry.json +1 -1
- package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{internal/PendleSparkLinearDiscountOracle.sol → PendleSparkLinearDiscountOracle.sol}/PendleSparkLinearDiscountOracle.json +3 -3
- package/build/artifacts/contracts/oracles/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpGlpOracle.sol/BoringLpGlpOracle.json +3 -3
- package/build/artifacts/contracts/oracles/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpSeller.sol/BoringLpSeller.json +1 -1
- package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +3 -3
- package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +3 -3
- package/build/artifacts/contracts/oracles/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +4 -0
- package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPtSeller.sol/BoringPtSeller.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -2
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -2
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
- package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -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 +1 -1
- package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
- package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
- package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
- package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.json +65 -0
- 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 +67 -2
- package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +16 -10
- package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +27 -6
- package/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +3 -2
- package/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol +7 -1
- package/contracts/core/StandardizedYield/implementations/AaveV3/{PendleAaveV3WithRewardsSY.sol → PendleAaveV3WithRewardsSYUpg.sol} +27 -45
- package/contracts/core/StandardizedYield/implementations/AaveV3/PendleStkGHOSY.sol +130 -0
- package/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol +1 -2
- package/contracts/core/StandardizedYield/implementations/Mantle/PendleCMETHSY.sol +82 -0
- package/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveNonBorrowableSY.sol +154 -0
- package/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBaseSYUpg.sol +103 -0
- package/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBase.sol +47 -0
- package/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendEBTCSYUpg.sol +101 -0
- package/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendLBTCSYUpg.sol +32 -0
- package/contracts/interfaces/AaveV3/IAaveStkGHO.sol +17 -0
- package/contracts/interfaces/Angle/IAngleDistributor.sol +12 -0
- package/contracts/interfaces/IPActionMarketCoreStatic.sol +4 -0
- package/contracts/interfaces/Zerolend/IZerolendPool.sol +31 -0
- package/contracts/interfaces/Zerolend/IZerolendZ0Token.sol +6 -0
- package/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol +5 -0
- package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +1 -1
- package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +1 -1
- package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +10 -4
- package/contracts/oracles/{internal/PendleBoringOneracle.sol → PendleBoringOneracle.sol} +2 -2
- package/contracts/oracles/{internal/PendleBoringSolvBTCOneracle.sol → PendleBoringSolvBTCOneracle.sol} +2 -2
- package/contracts/oracles/{PtYtLpOracle/PendlePYLpOracle.sol → PendlePYLpOracle.sol} +2 -2
- package/contracts/oracles/{PtYtLpOracle/PendlePYOracleLib.sol → PendlePYOracleLib.sol} +2 -2
- package/contracts/oracles/{internal/PendleRedStoneRateOracleAdapter.sol → PendleRedStoneRateOracleAdapter.sol} +3 -3
- package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpGlpOracle.sol +3 -3
- package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpSeller.sol +1 -1
- package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkAssetOracle.sol +3 -3
- package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkSYOracle.sol +3 -3
- package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPtSeller.sol +1 -1
- package/contracts/router/swap-aggregator/IPSwapAggregator.sol +5 -1
- package/contracts/router/swap-aggregator/PendleSwap.sol +52 -0
- package/deployments/1-core.json +1 -1
- package/deployments/1-markets/AGETH-MAINNET-JUN2025.json +14 -0
- package/deployments/1-markets/PUFETH-MAINNET-JUN2025.json +14 -0
- package/deployments/1-markets/RSETH-MAINNET-JUN2025.json +14 -0
- package/deployments/1-markets/RSWETH-MAINNET-JUN2025.json +14 -0
- package/deployments/1-markets/STKGHO-MAINNET-APR2025.json +14 -0
- package/deployments/1-markets/SUSDE-MAINNET-MAY2025.json +14 -0
- package/deployments/1-markets/UNIETH-MAINNET-JUN2025.json +14 -0
- package/deployments/1-markets/USD0++-MAINNET-JAN2025.json +14 -0
- package/deployments/1-markets/WEETH-MAINNET-JUN2025.json +14 -0
- package/deployments/1-markets/ZEROLEND-EBTC-MAINNET-MAR2025.json +14 -0
- package/deployments/10-core.json +1 -1
- package/deployments/42161-core.json +1 -1
- package/deployments/42161-markets/DOLOMITE-USDC-ARBITRUM-JUN2025.json +14 -0
- package/deployments/42161-markets/DOLOMITE-WBTC-ARBITRUM-JUN2025.json +14 -0
- package/deployments/42161-markets/RSETH-ARBITRUM-JUN2025.json +14 -0
- package/deployments/42161-markets/SPSILO-ARBITRUM-MAR2025.json +14 -0
- package/deployments/42161-markets/UNIETH-ARBITRUM-JUN2025.json +14 -0
- package/deployments/42161-markets/WEETH-ARBITRUM-JUN2025.json +14 -0
- package/deployments/5000-core.json +1 -1
- package/deployments/5000-markets/CMETH-MANTLE-FEB2025.json +14 -0
- package/deployments/56-core.json +2 -2
- package/deployments/56-markets/VENUS-BNB-BSC-JUN2025.json +14 -0
- package/deployments/8453-core.json +41 -0
- package/deployments/8453-offchain-helper.json +6 -0
- package/package.json +1 -1
- package/typechain-types/ActionMarketCoreStatic.ts +68 -0
- package/typechain-types/ActionSwapLimitV3.ts +1667 -0
- package/typechain-types/IPActionMarketCoreStatic.ts +68 -0
- package/typechain-types/IPActionSwapLimitV3.ts +1667 -0
- package/typechain-types/IPActionSwapLimitV3Events.ts +207 -0
- package/typechain-types/IPChainlinkOracleFactory.ts +6 -9
- package/typechain-types/IPRouterStatic.ts +34 -0
- package/typechain-types/IPSwapAggregator.ts +64 -3
- package/typechain-types/IZerolendPool.ts +111 -0
- package/typechain-types/IZerolendZ0Token.ts +87 -0
- package/typechain-types/PendleAaveV3WithRewardsSYUpg.ts +1498 -0
- package/typechain-types/PendleChainlinkOracle.ts +16 -16
- package/typechain-types/PendleChainlinkOracleFactory.ts +130 -64
- package/typechain-types/PendleChainlinkOracleWithQuote.ts +32 -73
- package/typechain-types/PendleSiloWithIncentiveNonBorrowableSY.ts +1543 -0
- package/typechain-types/PendleSolvBTCBBNBaseSYUpg.ts +1409 -0
- package/typechain-types/PendleSolvHelperBase.ts +220 -0
- package/typechain-types/PendleSwap.ts +64 -3
- package/typechain-types/PendleVotingControllerUpg.ts +135 -43
- package/typechain-types/PendleZerolendEBTCSYUpg.ts +1754 -0
- package/typechain-types/PendleZerolendLBTCSYUpg.ts +1598 -0
- package/typechain-types/VotingControllerStorageUpg.ts +34 -15
- package/typechain-types/factories/ActionAddRemoveLiqV3__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 +67 -1
- package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionMiscV3__factory.ts +1 -1
- package/typechain-types/factories/ActionSimple__factory.ts +1 -1
- package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
- package/typechain-types/factories/ActionStorageV4__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapLimitV3__factory.ts +2691 -0
- package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
- package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
- package/typechain-types/factories/ActionVePendleStatic__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/IPActionMarketCoreStatic__factory.ts +66 -0
- package/typechain-types/factories/IPActionSwapLimitV3Events__factory.ts +226 -0
- package/typechain-types/factories/IPActionSwapLimitV3__factory.ts +2653 -0
- package/typechain-types/factories/IPChainlinkOracleFactory__factory.ts +1 -7
- package/typechain-types/factories/IPRouterStatic__factory.ts +66 -0
- package/typechain-types/factories/IPSwapAggregator__factory.ts +65 -0
- package/typechain-types/factories/IZerolendPool__factory.ts +49 -0
- package/typechain-types/factories/IZerolendZ0Token__factory.ts +39 -0
- package/typechain-types/factories/PendleAaveV3WithRewardsSYUpg__factory.ts +1246 -0
- package/typechain-types/factories/PendleBoringOneracle__factory.ts +1 -1
- package/typechain-types/factories/PendleBoringSolvBTCOneracle__factory.ts +1 -1
- package/typechain-types/factories/PendleChainlinkOracleFactory__factory.ts +65 -38
- package/typechain-types/factories/PendleChainlinkOracleWithQuote__factory.ts +14 -54
- package/typechain-types/factories/PendleChainlinkOracle__factory.ts +7 -7
- package/typechain-types/factories/PendleChainlinkReceiver__factory.ts +1 -1
- package/typechain-types/factories/PendleChainlinkRelayer__factory.ts +1 -1
- package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
- package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
- package/typechain-types/factories/PendleMsgSendEndpointUpg__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/PendleRedStoneRateOracleAdapter__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/PendleSiloWithIncentiveNonBorrowableSY__factory.ts +1317 -0
- package/typechain-types/factories/PendleSolvBTCBBNBaseSYUpg__factory.ts +1129 -0
- package/typechain-types/factories/PendleSolvHelperBase__factory.ts +172 -0
- package/typechain-types/factories/PendleSparkLinearDiscountOracle__factory.ts +1 -1
- package/typechain-types/factories/PendleStkGHOSY__factory.ts +1 -1
- package/typechain-types/factories/PendleSwap__factory.ts +66 -1
- package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +66 -22
- package/typechain-types/factories/PendleZerolendEBTCSYUpg__factory.ts +1394 -0
- package/typechain-types/factories/PendleZerolendLBTCSYUpg__factory.ts +1283 -0
- package/typechain-types/factories/Reflector__factory.ts +1 -1
- package/typechain-types/factories/SDKErrorsDirectory__factory.ts +26 -1
- package/typechain-types/factories/VotingControllerStorageUpg__factory.ts +19 -6
- package/typechain-types/hardhat.d.ts +125 -80
- package/typechain-types/index.ts +30 -18
- package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/SYBaseUpg.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSY.sol/PendleAaveV3WithRewardsSY.dbg.json +0 -4
- package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSY.sol/PendleAaveV3WithRewardsSY.json +0 -1198
- package/build/artifacts/contracts/interfaces/IPChainlinkOracle.sol/IPChainlinkOracle.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPChainlinkOracle.sol/IPChainlinkOracle.json +0 -122
- package/build/artifacts/contracts/interfaces/IPChainlinkOracleFactory.sol/IPChainlinkOracleFactory.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPChainlinkOracleFactory.sol/IPChainlinkOracleFactory.json +0 -97
- package/build/artifacts/contracts/interfaces/IPChainlinkOracleWithQuote.sol/IPChainlinkOracleWithQuote.dbg.json +0 -4
- package/build/artifacts/contracts/interfaces/IPChainlinkOracleWithQuote.sol/IPChainlinkOracleWithQuote.json +0 -262
- package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +0 -4
- package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +0 -10
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.json +0 -274
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleBase.sol/PendleChainlinkOracleBase.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleBase.sol/PendleChainlinkOracleBase.json +0 -253
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.json +0 -316
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.json +0 -341
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/internal/PendleBoringOneracle.sol/PendleBoringOneracle.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/internal/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/internal/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PTExpiry.dbg.json +0 -4
- package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.dbg.json +0 -4
- package/contracts/interfaces/IPChainlinkOracle.sol +0 -15
- package/contracts/interfaces/IPChainlinkOracleFactory.sol +0 -23
- package/contracts/interfaces/IPChainlinkOracleWithQuote.sol +0 -8
- package/contracts/offchain-helpers/MarketExchangeRateLib.sol +0 -32
- package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol +0 -40
- package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleBase.sol +0 -129
- package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol +0 -117
- package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol +0 -80
- /package/contracts/oracles/{PtYtLpOracle/PendleLpOracleLib.sol → PendleLpOracleLib.sol} +0 -0
- /package/contracts/oracles/{internal/PendleSparkLinearDiscountOracle.sol → PendleSparkLinearDiscountOracle.sol} +0 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
pragma solidity ^0.8.17;
|
|
3
|
+
|
|
4
|
+
import "../../../../interfaces/Solv/ISolvRouter.sol";
|
|
5
|
+
import "../../../../interfaces/Solv/ISolvOpenFundMarket.sol";
|
|
6
|
+
import "../../../../interfaces/Solv/ISolvOracle.sol";
|
|
7
|
+
import "../../../../interfaces/Solv/ISolvERC3525.sol";
|
|
8
|
+
|
|
9
|
+
library PendleSolvHelperBase {
|
|
10
|
+
address public constant SOLV_BTCBBN_ROUTER = 0x814F3ae67dF0da9fe2399a29516FD14b9085263a;
|
|
11
|
+
address public constant SOLV_BTCBBN_TOKEN = 0xC26C9099BD3789107888c35bb41178079B282561;
|
|
12
|
+
bytes32 public constant SOLV_BTCBBN_POOLID = 0xb20032ac848893cf4820a7b3259020ffd5057d49f537c2adc5f74a337cc56ddc;
|
|
13
|
+
|
|
14
|
+
address public constant SOLV_BTC_ROUTER = 0x65EFfDA5e69dF470d4dBd31a805e15855Cae65c7;
|
|
15
|
+
address public constant SOLV_BTC_TOKEN = 0x3B86Ad95859b6AB773f55f8d94B4b9d443EE931f;
|
|
16
|
+
bytes32 public constant SOLV_BTC_POOLID = 0x0d85d41382f6f2effeaa41a46855870ec8b1577c6c59cf16d72856a22988e3f5;
|
|
17
|
+
|
|
18
|
+
address public constant CBBTC = 0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf;
|
|
19
|
+
|
|
20
|
+
address public constant SOLV_OPEN_FUND_MARKET = 0xf5a247157656678398B08d3eFa1673358C611A3f;
|
|
21
|
+
|
|
22
|
+
function _mintBTCBBN(address tokenIn, uint256 amountIn) internal returns (uint256) {
|
|
23
|
+
assert(tokenIn == CBBTC || tokenIn == SOLV_BTC_TOKEN);
|
|
24
|
+
|
|
25
|
+
if (tokenIn == CBBTC) {
|
|
26
|
+
amountIn = ISolvRouter(SOLV_BTC_ROUTER).createSubscription(SOLV_BTC_POOLID, amountIn);
|
|
27
|
+
}
|
|
28
|
+
return ISolvRouter(SOLV_BTCBBN_ROUTER).createSubscription(SOLV_BTCBBN_POOLID, amountIn);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function _previewMintBTCBBN(address tokenIn, uint256 amountIn) internal view returns (uint256) {
|
|
32
|
+
assert(tokenIn == CBBTC || tokenIn == SOLV_BTC_TOKEN);
|
|
33
|
+
|
|
34
|
+
if (tokenIn == CBBTC) {
|
|
35
|
+
amountIn = _convertToShare(CBBTC, amountIn);
|
|
36
|
+
}
|
|
37
|
+
return _convertToShare(SOLV_BTC_TOKEN, amountIn);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function _convertToShare(address tokenIn, uint256 amountIn) internal view returns (uint256) {
|
|
41
|
+
bytes32 poolId = tokenIn == CBBTC ? SOLV_BTC_POOLID : SOLV_BTCBBN_POOLID;
|
|
42
|
+
ISolvOpenFundMarket.PoolInfo memory info = ISolvOpenFundMarket(SOLV_OPEN_FUND_MARKET).poolInfos(poolId);
|
|
43
|
+
uint256 numerator = 10 ** ISolvERC3525(info.poolSFTInfo.openFundShare).valueDecimals();
|
|
44
|
+
(uint256 price, ) = ISolvOracle(info.navOracle).getSubscribeNav(poolId, block.timestamp);
|
|
45
|
+
return (amountIn * numerator) / price;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity ^0.8.23;
|
|
3
|
+
|
|
4
|
+
import "../AaveV3/PendleAaveV3WithRewardsSYUpg.sol";
|
|
5
|
+
import "../../../../interfaces/IPExchangeRateOracle.sol";
|
|
6
|
+
import "../PendleERC20SYUpg.sol";
|
|
7
|
+
import "../../../../interfaces/EtherFi/IVedaTeller.sol";
|
|
8
|
+
import "../../../../interfaces/EtherFi/IVedaAccountant.sol";
|
|
9
|
+
import "../../../../interfaces/Zerolend/IZerolendPool.sol";
|
|
10
|
+
import "../../../../interfaces/Zerolend/IZerolendZ0Token.sol";
|
|
11
|
+
import "../../../../interfaces/IPTokenWithSupplyCap.sol";
|
|
12
|
+
|
|
13
|
+
contract PendleZerolendEBTCSYUpg is PendleAaveV3WithRewardsSYUpg {
|
|
14
|
+
// solhint-disable immutable-vars-naming
|
|
15
|
+
// solhint-disable const-name-snakecase
|
|
16
|
+
// solhint-disable ordering
|
|
17
|
+
|
|
18
|
+
address public constant Z0EBTC = 0x52bB650211e8a6986287306A4c09B73A9Affd5e9;
|
|
19
|
+
address public constant ZEROLEND_POOL = 0xCD2b31071119D7eA449a9D211AC8eBF7Ee97F987;
|
|
20
|
+
address public constant ZEROLEND_INCENTIVE_CONTROLLER = 0x938e23c10C501CE5D42Bc516eCFDf5AbD9C51d2b; // no reward currently, leave as address(0) for gas saving
|
|
21
|
+
address public constant ZERO = 0x2Da17fAf782ae884faf7dB2208BBC66b6E085C22;
|
|
22
|
+
|
|
23
|
+
address public constant eBTC = 0x657e8C867D8B37dCC18fA4Caead9C45EB088C642;
|
|
24
|
+
address public constant cbBTC = 0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf;
|
|
25
|
+
address public constant wBTC = 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599;
|
|
26
|
+
address public constant LBTC = 0x8236a87084f8B84306f72007F36F2618A5634494;
|
|
27
|
+
address public constant vedaTeller = 0x458797A320e6313c980C2bC7D270466A6288A8bB;
|
|
28
|
+
|
|
29
|
+
uint256 public constant ONE_SHARE = 10 ** 8;
|
|
30
|
+
uint256 public constant PREMIUM_SHARE_BPS = 10 ** 4;
|
|
31
|
+
|
|
32
|
+
address public immutable vedaAccountant;
|
|
33
|
+
|
|
34
|
+
constructor() PendleAaveV3WithRewardsSYUpg(ZEROLEND_POOL, Z0EBTC, ZEROLEND_INCENTIVE_CONTROLLER, ZERO) {
|
|
35
|
+
vedaAccountant = IVedaTeller(vedaTeller).accountant();
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function approveAllForTeller() external {
|
|
39
|
+
_safeApproveInf(cbBTC, eBTC);
|
|
40
|
+
_safeApproveInf(wBTC, eBTC);
|
|
41
|
+
_safeApproveInf(LBTC, eBTC);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function _deposit(
|
|
45
|
+
address tokenIn,
|
|
46
|
+
uint256 amountDeposited
|
|
47
|
+
) internal virtual override returns (uint256 /*amountSharesOut*/) {
|
|
48
|
+
if (tokenIn != eBTC && tokenIn != aToken) {
|
|
49
|
+
(tokenIn, amountDeposited) = (
|
|
50
|
+
eBTC,
|
|
51
|
+
IVedaTeller(vedaTeller).bulkDeposit(tokenIn, amountDeposited, 0, address(this))
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return super._deposit(tokenIn, amountDeposited);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function _previewDeposit(
|
|
59
|
+
address tokenIn,
|
|
60
|
+
uint256 amountTokenToDeposit
|
|
61
|
+
) internal view virtual override returns (uint256) {
|
|
62
|
+
if (tokenIn != eBTC && tokenIn != aToken) {
|
|
63
|
+
uint256 rate = IVedaAccountant(vedaAccountant).getRateInQuoteSafe(tokenIn);
|
|
64
|
+
|
|
65
|
+
uint256 amountEBTCRaw = (amountTokenToDeposit * ONE_SHARE) / rate;
|
|
66
|
+
IVedaTeller.Asset memory data = IVedaTeller(vedaTeller).assetData(tokenIn);
|
|
67
|
+
|
|
68
|
+
amountTokenToDeposit = (amountEBTCRaw * (PREMIUM_SHARE_BPS - data.sharePremium)) / PREMIUM_SHARE_BPS;
|
|
69
|
+
tokenIn = eBTC;
|
|
70
|
+
}
|
|
71
|
+
return super._previewDeposit(tokenIn, amountTokenToDeposit);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function isValidTokenIn(address token) public view override returns (bool) {
|
|
75
|
+
return token == eBTC || token == wBTC || token == cbBTC || token == LBTC || token == aToken;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function getTokensIn() public view override returns (address[] memory res) {
|
|
79
|
+
return ArrayLib.create(wBTC, cbBTC, eBTC, LBTC, aToken);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
function assetInfo()
|
|
83
|
+
external
|
|
84
|
+
view
|
|
85
|
+
virtual
|
|
86
|
+
override
|
|
87
|
+
returns (AssetType assetType, address assetAddress, uint8 assetDecimals)
|
|
88
|
+
{
|
|
89
|
+
return (AssetType.TOKEN, eBTC, IERC20Metadata(eBTC).decimals());
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
function getAbsoluteSupplyCap() external view returns (uint256) {
|
|
93
|
+
uint256 data = (IZerolendPool(ZEROLEND_POOL).getConfiguration(eBTC)).data;
|
|
94
|
+
uint256 unscaledSupplyCap = (data & (~uint256(0xFFFFFFFFFFFFFFFFFFFFFFFFFF000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFF))) >> 116;
|
|
95
|
+
return unscaledSupplyCap * (10 ** IERC20Metadata(eBTC).decimals());
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function getAbsoluteTotalSupply() external view returns (uint256) {
|
|
99
|
+
return IZerolendZ0Token(Z0EBTC).scaledTotalSupply();
|
|
100
|
+
}
|
|
101
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity ^0.8.23;
|
|
3
|
+
|
|
4
|
+
import "../AaveV3/PendleAaveV3WithRewardsSYUpg.sol";
|
|
5
|
+
import "../../../../interfaces/IPExchangeRateOracle.sol";
|
|
6
|
+
|
|
7
|
+
contract PendleZerolendLBTCSYUpg is PendleAaveV3WithRewardsSYUpg {
|
|
8
|
+
address public constant Z0LBTC = 0xcABB8fa209CcdF98a7A0DC30b1979fC855Cb3Eb3;
|
|
9
|
+
address public constant ZEROLEND_POOL = 0xCD2b31071119D7eA449a9D211AC8eBF7Ee97F987;
|
|
10
|
+
address public constant ZEROLEND_INCENTIVE_CONTROLLER = address(0); // no reward currently, leave as address(0) for gas saving
|
|
11
|
+
address public constant ZERO = 0x2Da17fAf782ae884faf7dB2208BBC66b6E085C22;
|
|
12
|
+
|
|
13
|
+
address public constant LBTC_ORACLE = 0x1F0318B5Ab2c4084692986A2C25916Cec1195cD9;
|
|
14
|
+
|
|
15
|
+
address public constant WBTC = 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599;
|
|
16
|
+
|
|
17
|
+
constructor() PendleAaveV3WithRewardsSYUpg(ZEROLEND_POOL, Z0LBTC, ZEROLEND_INCENTIVE_CONTROLLER, ZERO) {}
|
|
18
|
+
|
|
19
|
+
function exchangeRate() public view virtual override returns (uint256) {
|
|
20
|
+
return PMath.mulDown(super.exchangeRate(), IPExchangeRateOracle(LBTC_ORACLE).getExchangeRate());
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function assetInfo()
|
|
24
|
+
external
|
|
25
|
+
view
|
|
26
|
+
virtual
|
|
27
|
+
override
|
|
28
|
+
returns (AssetType assetType, address assetAddress, uint8 assetDecimals)
|
|
29
|
+
{
|
|
30
|
+
return (AssetType.TOKEN, WBTC, IERC20Metadata(WBTC).decimals());
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
|
|
3
|
+
pragma solidity ^0.8.0;
|
|
4
|
+
|
|
5
|
+
interface IAaveStkGHO {
|
|
6
|
+
function stake(address to, uint256 amount) external;
|
|
7
|
+
|
|
8
|
+
function redeem(address to, uint256 amount) external;
|
|
9
|
+
|
|
10
|
+
function claimRewards(address to, uint256 amount) external;
|
|
11
|
+
|
|
12
|
+
function getExchangeRate() external view returns (uint216);
|
|
13
|
+
|
|
14
|
+
function previewStake(uint256 assets) external view returns (uint256);
|
|
15
|
+
|
|
16
|
+
function previewRedeem(uint256 shares) external view returns (uint256);
|
|
17
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
|
|
3
|
+
pragma solidity ^0.8.0;
|
|
4
|
+
|
|
5
|
+
interface IAngleDistributor {
|
|
6
|
+
function claim(
|
|
7
|
+
address[] calldata users,
|
|
8
|
+
address[] calldata tokens,
|
|
9
|
+
uint256[] calldata amounts,
|
|
10
|
+
bytes32[][] calldata proofs
|
|
11
|
+
) external;
|
|
12
|
+
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.0;
|
|
3
3
|
|
|
4
|
+
import "./IPMarket.sol";
|
|
5
|
+
|
|
4
6
|
interface IPActionMarketCoreStatic {
|
|
5
7
|
function addLiquidityDualSyAndPtStatic(
|
|
6
8
|
address market,
|
|
@@ -288,4 +290,6 @@ interface IPActionMarketCoreStatic {
|
|
|
288
290
|
address market,
|
|
289
291
|
uint256 exactSyOut
|
|
290
292
|
) external view returns (uint256 netYtIn, uint256 netSyFee, uint256 priceImpact, uint256 exchangeRateAfter);
|
|
293
|
+
|
|
294
|
+
function readMarketState(address market) external view returns (MarketState memory);
|
|
291
295
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
|
+
pragma solidity ^0.8.0;
|
|
3
|
+
|
|
4
|
+
interface IZerolendPool {
|
|
5
|
+
struct ReserveConfigurationMap {
|
|
6
|
+
//bit 0-15: LTV
|
|
7
|
+
//bit 16-31: Liq. threshold
|
|
8
|
+
//bit 32-47: Liq. bonus
|
|
9
|
+
//bit 48-55: Decimals
|
|
10
|
+
//bit 56: reserve is active
|
|
11
|
+
//bit 57: reserve is frozen
|
|
12
|
+
//bit 58: borrowing is enabled
|
|
13
|
+
//bit 59: stable rate borrowing enabled
|
|
14
|
+
//bit 60: asset is paused
|
|
15
|
+
//bit 61: borrowing in isolation mode is enabled
|
|
16
|
+
//bit 62: siloed borrowing enabled
|
|
17
|
+
//bit 63: flashloaning enabled
|
|
18
|
+
//bit 64-79: reserve factor
|
|
19
|
+
//bit 80-115 borrow cap in whole tokens, borrowCap == 0 => no cap
|
|
20
|
+
//bit 116-151 supply cap in whole tokens, supplyCap == 0 => no cap
|
|
21
|
+
//bit 152-167 liquidation protocol fee
|
|
22
|
+
//bit 168-175 eMode category
|
|
23
|
+
//bit 176-211 unbacked mint cap in whole tokens, unbackedMintCap == 0 => minting disabled
|
|
24
|
+
//bit 212-251 debt ceiling for isolation mode with (ReserveConfiguration::DEBT_CEILING_DECIMALS) decimals
|
|
25
|
+
//bit 252-255 unused
|
|
26
|
+
|
|
27
|
+
uint256 data;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function getConfiguration(address asset) external view returns (ReserveConfigurationMap memory);
|
|
31
|
+
}
|
|
@@ -254,4 +254,9 @@ library SDKErrorsDirectory {
|
|
|
254
254
|
error InvalidTimestamp();
|
|
255
255
|
error InvalidWithdrawalFee();
|
|
256
256
|
error InvalidTotalSupply();
|
|
257
|
+
error OperationNotAllowed();
|
|
258
|
+
error WOMBAT_COV_RATIO_LIMIT_EXCEEDED();
|
|
259
|
+
error NotEnoughLiquidity();
|
|
260
|
+
error InvalidAmountToDeposit();
|
|
261
|
+
error TellerWithMultiAssetSupport__AssetNotSupported();
|
|
257
262
|
}
|
|
@@ -70,7 +70,7 @@ contract ActionInfoStatic is IPActionInfoStatic {
|
|
|
70
70
|
|
|
71
71
|
function getUserMarketInfo(address market, address user) external returns (UserMarketInfo memory res) {
|
|
72
72
|
IPMarket _market = IPMarket(market);
|
|
73
|
-
MarketState memory state =
|
|
73
|
+
MarketState memory state = IPRouterStatic(address(this)).readMarketState(market);
|
|
74
74
|
|
|
75
75
|
if (uint256(state.totalLp) == 0) return res; // market not initialized
|
|
76
76
|
|
|
@@ -342,7 +342,7 @@ contract ActionMarketAuxStatic is IPActionMarketAuxStatic {
|
|
|
342
342
|
}
|
|
343
343
|
|
|
344
344
|
function _readState(address market) internal view returns (MarketState memory) {
|
|
345
|
-
return
|
|
345
|
+
return IPRouterStatic(address(this)).readMarketState(market);
|
|
346
346
|
}
|
|
347
347
|
|
|
348
348
|
function _readTokens(
|
|
@@ -18,6 +18,8 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
18
18
|
|
|
19
19
|
// ============ ADD REMOVE LIQUIDITY ============
|
|
20
20
|
|
|
21
|
+
address internal constant ROUTER_V4 = 0x888888888889758F76e7103c6CbF23ABbF58F946;
|
|
22
|
+
|
|
21
23
|
function addLiquidityDualSyAndPtStatic(
|
|
22
24
|
address market,
|
|
23
25
|
uint256 netSyDesired,
|
|
@@ -625,6 +627,14 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
625
627
|
exchangeRateAfter = _getTradeExchangeRateExcludeFee(market, state);
|
|
626
628
|
}
|
|
627
629
|
|
|
630
|
+
function readMarketState(address market) public view returns (MarketState memory) {
|
|
631
|
+
return _readState(market);
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
function _readState(address market) internal view returns (MarketState memory) {
|
|
635
|
+
return IPMarket(market).readState(ROUTER_V4);
|
|
636
|
+
}
|
|
637
|
+
|
|
628
638
|
function _calcPriceImpactPY(address market, int256 netPtOut) internal view returns (uint256) {
|
|
629
639
|
return IPRouterStatic(address(this)).calcPriceImpactPY(market, netPtOut);
|
|
630
640
|
}
|
|
@@ -657,10 +667,6 @@ contract ActionMarketCoreStatic is StorageLayout, IPActionMarketCoreStatic {
|
|
|
657
667
|
return IPRouterStatic(address(this)).getTradeExchangeRateExcludeFee(market, state);
|
|
658
668
|
}
|
|
659
669
|
|
|
660
|
-
function _readState(address market) internal view returns (MarketState memory) {
|
|
661
|
-
return IPMarket(market).readState(address(this));
|
|
662
|
-
}
|
|
663
|
-
|
|
664
670
|
function _pyIndex(address market) private view returns (PYIndex) {
|
|
665
671
|
return PYIndex.wrap(IPRouterStatic(address(this)).pyIndexCurrentViewMarket(market));
|
|
666
672
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
4
|
+
import "../core/libraries/math/PMath.sol";
|
|
5
|
+
import "../interfaces/IPExchangeRateOracle.sol";
|
|
6
6
|
|
|
7
7
|
contract PendleBoringOneracle is IPExchangeRateOracle {
|
|
8
8
|
function getExchangeRate() external pure returns (uint256) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
4
|
+
import "../core/libraries/math/PMath.sol";
|
|
5
|
+
import "../interfaces/IPExchangeRateOracle.sol";
|
|
6
6
|
|
|
7
7
|
contract PendleBoringSolvBTCOneracle is IPExchangeRateOracle {
|
|
8
8
|
function getExchangeRate() external pure returns (uint256) {
|
|
@@ -3,8 +3,8 @@ pragma solidity ^0.8.17;
|
|
|
3
3
|
|
|
4
4
|
import "./PendlePYOracleLib.sol";
|
|
5
5
|
import "./PendleLpOracleLib.sol";
|
|
6
|
-
import "
|
|
7
|
-
import "
|
|
6
|
+
import "../interfaces/IPPYLpOracle.sol";
|
|
7
|
+
import "../core/libraries/BoringOwnableUpgradeable.sol";
|
|
8
8
|
|
|
9
9
|
// This is a pre-deployed version of PendlePtOracleLib & PendleLpOracleLib with additional utility functions.
|
|
10
10
|
// Use of this contract rather than direct library integration resulting in a smaller bytecode size and simpler structure
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.0;
|
|
3
3
|
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
4
|
+
import "../interfaces/IPMarket.sol";
|
|
5
|
+
import "../core/libraries/math/PMath.sol";
|
|
6
6
|
|
|
7
7
|
// This library can & should be integrated directly for optimal gas usage.
|
|
8
8
|
// If you prefer not to integrate it directly, the PendlePtOracle contract (a pre-deployed version of this contract) can be used.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
import "
|
|
4
|
+
import "../core/libraries/math/PMath.sol";
|
|
5
|
+
import "../interfaces/IPExchangeRateOracle.sol";
|
|
6
|
+
import "../interfaces/IRedstonePriceFeed.sol";
|
|
7
7
|
|
|
8
8
|
contract PendleRedStoneRateOracleAdapter is IPExchangeRateOracle {
|
|
9
9
|
using PMath for int256;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
4
|
import "../PendleLpOracleLib.sol";
|
|
5
|
-
import "
|
|
6
|
-
import "
|
|
7
|
-
import "
|
|
5
|
+
import "../../interfaces/IPPYLpOracle.sol";
|
|
6
|
+
import "../../interfaces/GMX/IGlpManager.sol";
|
|
7
|
+
import "../../core/libraries/math/PMath.sol";
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* @notice The LP/GLP price gotten from the market using the LpOracleLib is multiplied with the USD price of GLP read from
|
package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkAssetOracle.sol
RENAMED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
import "
|
|
4
|
+
import "../../interfaces/IPPYLpOracle.sol";
|
|
5
|
+
import "../../interfaces/IPMarket.sol";
|
|
6
|
+
import "../../core/libraries/math/PMath.sol";
|
|
7
7
|
import "../PendleLpOracleLib.sol";
|
|
8
8
|
|
|
9
9
|
import {AggregatorV2V3Interface as IChainlinkAggregator} from "@chainlink/contracts/src/v0.8/interfaces/AggregatorV2V3Interface.sol";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
2
2
|
pragma solidity ^0.8.17;
|
|
3
3
|
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
import "
|
|
4
|
+
import "../../interfaces/IPPYLpOracle.sol";
|
|
5
|
+
import "../../interfaces/IPMarket.sol";
|
|
6
|
+
import "../../core/libraries/math/PMath.sol";
|
|
7
7
|
import "../PendleLpOracleLib.sol";
|
|
8
8
|
|
|
9
9
|
import {AggregatorV2V3Interface as IChainlinkAggregator} from "@chainlink/contracts/src/v0.8/interfaces/AggregatorV2V3Interface.sol";
|
|
@@ -18,11 +18,15 @@ struct SwapDataExtra {
|
|
|
18
18
|
enum SwapType {
|
|
19
19
|
NONE,
|
|
20
20
|
KYBERSWAP,
|
|
21
|
-
|
|
21
|
+
ODOS,
|
|
22
22
|
// ETH_WETH not used in Aggregator
|
|
23
23
|
ETH_WETH
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
interface IPSwapAggregator {
|
|
27
|
+
event SwapSingle(SwapType indexed swapType, address indexed tokenIn, uint256 amountIn);
|
|
28
|
+
|
|
27
29
|
function swap(address tokenIn, uint256 amountIn, SwapData calldata swapData) external payable;
|
|
30
|
+
|
|
31
|
+
function swapMultiOdos(address[] calldata tokensIn, SwapData calldata swapData) external payable;
|
|
28
32
|
}
|
|
@@ -17,6 +17,15 @@ contract PendleSwap is IPSwapAggregator, TokenHelper {
|
|
|
17
17
|
data.needScale ? _getScaledInputData(data.swapType, data.extCalldata, amountIn) : data.extCalldata,
|
|
18
18
|
tokenIn == NATIVE ? amountIn : 0
|
|
19
19
|
);
|
|
20
|
+
|
|
21
|
+
emit SwapSingle(data.swapType, tokenIn, amountIn);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function swapMultiOdos(address[] calldata tokensIn, SwapData calldata data) external payable {
|
|
25
|
+
for (uint256 i = 0; i < tokensIn.length; ++i) {
|
|
26
|
+
_safeApproveInf(tokensIn[i], data.extRouter);
|
|
27
|
+
}
|
|
28
|
+
data.extRouter.functionCallWithValue(data.extCalldata, msg.value);
|
|
20
29
|
}
|
|
21
30
|
|
|
22
31
|
function _getScaledInputData(
|
|
@@ -32,11 +41,35 @@ contract PendleSwap is IPSwapAggregator, TokenHelper {
|
|
|
32
41
|
);
|
|
33
42
|
|
|
34
43
|
require(isSuccess, "PendleSwap: Kyber scaling failed");
|
|
44
|
+
} else if (swapType == SwapType.ODOS) {
|
|
45
|
+
scaledCallData = _odosScaling(rawCallData, amountIn);
|
|
35
46
|
} else {
|
|
36
47
|
assert(false);
|
|
37
48
|
}
|
|
38
49
|
}
|
|
39
50
|
|
|
51
|
+
function _odosScaling(
|
|
52
|
+
bytes calldata rawCallData,
|
|
53
|
+
uint256 amountIn
|
|
54
|
+
) internal pure returns (bytes memory scaledCallData) {
|
|
55
|
+
bytes4 selector = bytes4(rawCallData[:4]);
|
|
56
|
+
bytes calldata dataToDecode = rawCallData[4:];
|
|
57
|
+
|
|
58
|
+
assert(selector == IOdosRouterV2.swap.selector);
|
|
59
|
+
(
|
|
60
|
+
IOdosRouterV2.swapTokenInfo memory tokenInfo,
|
|
61
|
+
bytes memory pathDefinition,
|
|
62
|
+
address executor,
|
|
63
|
+
uint32 referralCode
|
|
64
|
+
) = abi.decode(dataToDecode, (IOdosRouterV2.swapTokenInfo, bytes, address, uint32));
|
|
65
|
+
|
|
66
|
+
tokenInfo.outputQuote = (tokenInfo.outputQuote * amountIn) / tokenInfo.inputAmount;
|
|
67
|
+
tokenInfo.outputMin = (tokenInfo.outputMin * amountIn) / tokenInfo.inputAmount;
|
|
68
|
+
tokenInfo.inputAmount = amountIn;
|
|
69
|
+
|
|
70
|
+
return abi.encodeWithSelector(selector, tokenInfo, pathDefinition, executor, referralCode);
|
|
71
|
+
}
|
|
72
|
+
|
|
40
73
|
receive() external payable {}
|
|
41
74
|
}
|
|
42
75
|
|
|
@@ -46,3 +79,22 @@ interface IKyberScalingHelper {
|
|
|
46
79
|
uint256 newAmount
|
|
47
80
|
) external view returns (bool isSuccess, bytes memory data);
|
|
48
81
|
}
|
|
82
|
+
|
|
83
|
+
interface IOdosRouterV2 {
|
|
84
|
+
struct swapTokenInfo {
|
|
85
|
+
address inputToken;
|
|
86
|
+
uint256 inputAmount;
|
|
87
|
+
address inputReceiver;
|
|
88
|
+
address outputToken;
|
|
89
|
+
uint256 outputQuote;
|
|
90
|
+
uint256 outputMin;
|
|
91
|
+
address outputReceiver;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function swap(
|
|
95
|
+
swapTokenInfo memory tokenInfo,
|
|
96
|
+
bytes calldata pathDefinition,
|
|
97
|
+
address executor,
|
|
98
|
+
uint32 referralCode
|
|
99
|
+
) external payable returns (uint256 amountOut);
|
|
100
|
+
}
|
package/deployments/1-core.json
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"ActionStorageV4": "0x6a0Ed0A9193FCBe7ae9B0F3D90F88e365Cca64fC"
|
|
32
32
|
},
|
|
33
33
|
"routerStatic": "0x263833d47eA3fA4a30f269323aba6a107f9eB14C",
|
|
34
|
-
"pendleSwap": "
|
|
34
|
+
"pendleSwap": "0x7aE5C4Cf5CddFbda870a80D021997d8A04f4Ff11",
|
|
35
35
|
"pyYtLpOracle": "0x9a9fa8338dd5e5b2188006f1cd2ef26d921650c2",
|
|
36
36
|
"yieldContractFactoryV3": "0xdF3601014686674e53d1Fa52F7602525483F9122",
|
|
37
37
|
"marketFactoryV3": "0x1A6fCc85557BC4fB7B534ed835a03EF056552D52",
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "SY agETH",
|
|
3
|
+
"SY": "0xb1B9150f2085f6a553b547099977181CA802752A",
|
|
4
|
+
"YT": "0x0310A860CF7Efe8F54Ab9B4dE49Cd071C37fCBCB",
|
|
5
|
+
"PT": "0x6E43F6abce001c14C7115d20908d0c272338eAf1",
|
|
6
|
+
"market": "0xBe8549a20257917a0a9EF8911DAF18190A8842a4",
|
|
7
|
+
"expiry": 1750896000,
|
|
8
|
+
"scalarRoot": "64240339912000000000",
|
|
9
|
+
"initAnchor": "1040529553000000000",
|
|
10
|
+
"lnFeeRateRoot": "999500333000000",
|
|
11
|
+
"deployTxHash": "0x456464c59550a0e84410efdbeef9db3908ba55fe31ee9b8a2b23756671af0bc6",
|
|
12
|
+
"deployBlockNumber": 21177279,
|
|
13
|
+
"reversedFee": 0.09999999999164011
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "SY pufETH",
|
|
3
|
+
"SY": "0x253008ba4aE2f3E6488DC998a5321D4EB1a0c905",
|
|
4
|
+
"YT": "0x784A0bb8208C70290cac6bcBC3650cEb9227813E",
|
|
5
|
+
"PT": "0x9cFc9917C171A384c7168D3529Fc7e851a2E0d6D",
|
|
6
|
+
"market": "0x58612beB0e8a126735b19BB222cbC7fC2C162D2a",
|
|
7
|
+
"expiry": 1750896000,
|
|
8
|
+
"scalarRoot": "89629413589000000000",
|
|
9
|
+
"initAnchor": "1034397837000000000",
|
|
10
|
+
"lnFeeRateRoot": "499875041000000",
|
|
11
|
+
"deployTxHash": "0x07bb6832305177cceba7fefb17799b067cda4f7d7bac25e4ef8f3fe16e3583b1",
|
|
12
|
+
"deployBlockNumber": 21177325,
|
|
13
|
+
"reversedFee": 0.04999999993486881
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "SY ETH",
|
|
3
|
+
"SY": "0x730A5E2AcEbccAA5e9095723B3CB862739DA793c",
|
|
4
|
+
"YT": "0x9335A7A9208cdA49f287Ea9af7B3D1faAdfcfe80",
|
|
5
|
+
"PT": "0xE08C45F3cfE70f4e03668Dc6E84Af842bEE95A68",
|
|
6
|
+
"market": "0xfD482179DdEe989C45eaB19991852F80fF31457a",
|
|
7
|
+
"expiry": 1750896000,
|
|
8
|
+
"scalarRoot": "89241410861000000000",
|
|
9
|
+
"initAnchor": "1029050450000000000",
|
|
10
|
+
"lnFeeRateRoot": "499875041000000",
|
|
11
|
+
"deployTxHash": "0x95046b375a4f59baa5e3edabc749a43c02091e94ed7c8b2cc2b3f26289c273fd",
|
|
12
|
+
"deployBlockNumber": 21126538,
|
|
13
|
+
"reversedFee": 0.04999999993486881
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "SY rswETH",
|
|
3
|
+
"SY": "0x7786729eEe8b9d30fE7d91fDFf23A0f1D0C615D9",
|
|
4
|
+
"YT": "0xC1bdd44EedaEA25b07812Cd70D214BCac2D01E29",
|
|
5
|
+
"PT": "0x003984eCC30BAFe364eFA8c0112cDd94B8216406",
|
|
6
|
+
"market": "0xfd5Cf95E8b886aCE955057cA4DC69466e793FBBE",
|
|
7
|
+
"expiry": 1750896000,
|
|
8
|
+
"scalarRoot": "89721210735000000000",
|
|
9
|
+
"initAnchor": "1033334881000000000",
|
|
10
|
+
"lnFeeRateRoot": "499875041000000",
|
|
11
|
+
"deployTxHash": "0x5ab1065d2fba394c2bda02915e7ee64bb1819148c830e7d855c6690085912b05",
|
|
12
|
+
"deployBlockNumber": 21191742,
|
|
13
|
+
"reversedFee": 0.04999999993486881
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "SY stkGHO",
|
|
3
|
+
"SY": "0xCC9eFBf580120676bFB3420FbD2cfc34019A1967",
|
|
4
|
+
"YT": "0xc5e62a939d2E85F9ebB6aEffc03B053DACF90140",
|
|
5
|
+
"PT": "0xf05312A0D01E5a0F9EBa87A539c37100fABf9B5e",
|
|
6
|
+
"market": "0xff81180a7f949ba1F940EAE6aA3B3CeB890b1912",
|
|
7
|
+
"expiry": 1745452800,
|
|
8
|
+
"scalarRoot": "31061108921000000000",
|
|
9
|
+
"initAnchor": "1059899074000000000",
|
|
10
|
+
"lnFeeRateRoot": "1998002662000000",
|
|
11
|
+
"deployTxHash": "0xa5b637f1b904930fab6f91f8a7cc6dac7383613cbc1ace46d747a53a2d1e6e99",
|
|
12
|
+
"deployBlockNumber": 21071107,
|
|
13
|
+
"reversedFee": 0.19999999993256523
|
|
14
|
+
}
|