@pendle/core-v2 6.3.1 → 6.3.2-pendle-merkle-transfer

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (543) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.json +2 -2
  9. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  10. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
  11. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  12. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  13. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  14. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  15. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  16. package/build/artifacts/contracts/LiquidityMining/PendleMerkleDistributor.sol/PendleMerkleDistributor.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/PendleMerkleDistributor.sol/PendleMerkleDistributor.json +2 -2
  18. package/build/artifacts/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol/PendleMultiTokenMerkleDistributor.dbg.json +1 -1
  19. package/build/artifacts/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol/PendleMultiTokenMerkleDistributor.json +2 -2
  20. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  22. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  25. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  26. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  27. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  28. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  31. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  32. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  33. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  34. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  36. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  38. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/Market/PendleMarketFactoryV6Upg.sol/PendleMarketFactoryV6Upg.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/Market/PendleMarketFactoryV6Upg.sol/PendleMarketFactoryV6Upg.json +2 -2
  41. package/build/artifacts/contracts/core/Market/PendleMarketV6.sol/PendleMarketV6.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/Market/PendleMarketV6.sol/PendleMarketV6.json +2 -2
  43. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
  47. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  50. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactoryUpg.sol/PendleYieldContractFactoryUpg.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactoryUpg.sol/PendleYieldContractFactoryUpg.json +2 -2
  52. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  54. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.json +2 -2
  56. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.json +2 -2
  58. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.json +2 -2
  60. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.json +2 -2
  62. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableData.json +2 -2
  64. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeableV2.sol/BoringOwnableUpgradeableV2.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +2 -2
  67. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  68. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.json +2 -2
  69. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
  70. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.json +2 -2
  71. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  73. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.json +2 -2
  74. package/build/artifacts/contracts/cross-chain/FixedPricePTAMM.sol/FixedPricePTAMM.dbg.json +1 -1
  75. package/build/artifacts/contracts/cross-chain/FixedPricePTAMM.sol/FixedPricePTAMM.json +2 -2
  76. package/build/artifacts/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol/PendlePTOFTAdapterFactory.dbg.json +1 -1
  77. package/build/artifacts/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol/PendlePTOFTAdapterFactory.json +2 -2
  78. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken.dbg.json +1 -1
  79. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken.json +2 -2
  80. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  81. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  82. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
  83. package/build/artifacts/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +2 -2
  84. package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
  85. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  86. package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +1 -1
  87. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  88. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  89. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  90. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  91. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  92. package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
  93. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  94. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
  95. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  96. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  97. package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
  98. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  99. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
  100. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
  101. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
  102. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
  103. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
  104. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
  105. package/build/artifacts/contracts/interfaces/IPBridgedPrincipalToken.sol/IPBridgedPrincipalToken.dbg.json +1 -1
  106. package/build/artifacts/contracts/interfaces/IPCommonSYFactory.sol/IPCommonSYFactory.dbg.json +1 -1
  107. package/build/artifacts/contracts/interfaces/IPExchangeRateOracleApp.sol/IPExchangeRateOracleApp.dbg.json +1 -1
  108. package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +1 -1
  109. package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMM.dbg.json +1 -1
  110. package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMMSwapCallback.dbg.json +1 -1
  111. package/build/artifacts/contracts/interfaces/IPGovernanceProxy.sol/IPGovernanceProxy.dbg.json +1 -1
  112. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
  113. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitOrderType.dbg.json +1 -1
  114. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +1 -1
  115. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.json +0 -42
  116. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.dbg.json +1 -1
  117. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  118. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.json +0 -13
  119. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  120. package/build/artifacts/contracts/interfaces/IPMerkleDistributor.sol/IPMerkleDistributor.dbg.json +1 -1
  121. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  122. package/build/artifacts/contracts/interfaces/IPMultiTokenMerkleDistributor.sol/IPMultiTokenMerkleDistributor.dbg.json +1 -1
  123. package/build/artifacts/contracts/interfaces/IPPYLpOracle.sol/IPPYLpOracle.dbg.json +1 -1
  124. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  125. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  126. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  127. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  128. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  129. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
  130. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  131. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +1 -1
  132. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.json +2 -2
  133. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
  134. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
  135. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +2 -2
  136. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
  137. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.json +2 -2
  138. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/AutomateReady.dbg.json +1 -1
  139. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/IAutomate.dbg.json +1 -1
  140. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/IOpsProxyFactory.dbg.json +1 -1
  141. package/build/artifacts/contracts/offchain-helpers/AutomateReady.sol/ITaskTreasuryUpgradable.dbg.json +1 -1
  142. package/build/artifacts/contracts/offchain-helpers/BalanceReader.sol/BalanceReader.dbg.json +1 -1
  143. package/build/artifacts/contracts/offchain-helpers/BalanceReader.sol/BalanceReader.json +2 -2
  144. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  145. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.json +2 -2
  146. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  147. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
  148. package/build/artifacts/contracts/offchain-helpers/BytesLib.sol/BytesLib.dbg.json +1 -1
  149. package/build/artifacts/contracts/offchain-helpers/BytesLib.sol/BytesLib.json +2 -2
  150. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
  151. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.json +2 -2
  152. package/build/artifacts/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol/ExpiredLpPtRedeemer.dbg.json +1 -1
  153. package/build/artifacts/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol/ExpiredLpPtRedeemer.json +2 -2
  154. package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/LegacyNFTHelper.dbg.json +1 -1
  155. package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/LegacyNFTHelper.json +2 -2
  156. package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/StarNFTV1.dbg.json +1 -1
  157. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelperV2.sol/LimitBackendHelperV2.dbg.json +1 -1
  158. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelperV2.sol/LimitBackendHelperV2.json +2 -2
  159. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
  160. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.json +2 -2
  161. package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.dbg.json +1 -1
  162. package/build/artifacts/contracts/offchain-helpers/PendleExchangeRateOracle.sol/PendleExchangeRateOracle.json +2 -2
  163. package/build/artifacts/contracts/offchain-helpers/PendleGovernanceProxy.sol/PendleGovernanceProxy.dbg.json +1 -1
  164. package/build/artifacts/contracts/offchain-helpers/PendleGovernanceProxy.sol/PendleGovernanceProxy.json +2 -2
  165. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapper.sol/PendleLPWrapper.dbg.json +1 -1
  166. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapper.sol/PendleLPWrapper.json +2 -2
  167. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapperFactory.sol/PendleLPWrapperFactory.dbg.json +1 -1
  168. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapperFactory.sol/PendleLPWrapperFactory.json +2 -2
  169. package/build/artifacts/contracts/offchain-helpers/PendleMerkleDepositor.sol/PendleMerkleDepositor.dbg.json +4 -0
  170. package/build/artifacts/contracts/offchain-helpers/PendleMerkleDepositor.sol/PendleMerkleDepositor.json +102 -0
  171. package/build/artifacts/contracts/offchain-helpers/PendleMulticallOwnerV1.sol/PendleMulticallOwnerV1.dbg.json +1 -1
  172. package/build/artifacts/contracts/offchain-helpers/PendleMulticallOwnerV1.sol/PendleMulticallOwnerV1.json +2 -2
  173. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
  174. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.json +2 -2
  175. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV2.sol/PendleMulticallV2.dbg.json +1 -1
  176. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV2.sol/PendleMulticallV2.json +2 -2
  177. package/build/artifacts/contracts/offchain-helpers/PendleOffchainStorage.sol/PendleOffchainStorage.dbg.json +1 -1
  178. package/build/artifacts/contracts/offchain-helpers/PendleOffchainStorage.sol/PendleOffchainStorage.json +2 -2
  179. package/build/artifacts/contracts/offchain-helpers/PendleWstETHPriceFeed.sol/PendleWstETHPriceFeed.dbg.json +1 -1
  180. package/build/artifacts/contracts/offchain-helpers/PendleWstETHPriceFeed.sol/PendleWstETHPriceFeed.json +2 -2
  181. package/build/artifacts/contracts/offchain-helpers/SimulateHelper.sol/SimulateHelper.dbg.json +1 -1
  182. package/build/artifacts/contracts/offchain-helpers/SimulateHelper.sol/SimulateHelper.json +2 -2
  183. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.dbg.json +1 -1
  184. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.json +2 -2
  185. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.dbg.json +1 -1
  186. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol/PendleCommonSYFactory.json +2 -2
  187. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  188. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
  189. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.dbg.json +1 -1
  190. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.json +2 -2
  191. package/build/artifacts/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol/MarketDeployLib.dbg.json +1 -1
  192. package/build/artifacts/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol/MarketDeployLib.json +2 -2
  193. package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.dbg.json +1 -1
  194. package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.json +2 -2
  195. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  196. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  197. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  198. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  199. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  200. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  201. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  202. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
  203. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  204. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  205. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  206. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  207. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  208. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  209. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.dbg.json +1 -1
  210. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.json +2 -2
  211. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.dbg.json +1 -1
  212. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.json +2 -2
  213. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  214. package/build/artifacts/contracts/oracles/CrossChainOracle/base/PendleCrossChainOracleBaseApp_Init.sol/PendleCrossChainOracleBaseApp_Init.dbg.json +1 -1
  215. package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleApp.sol/PendleExchangeRateOracleApp.dbg.json +1 -1
  216. package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleApp.sol/PendleExchangeRateOracleApp.json +2 -2
  217. package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleV2.sol/PendleExchangeRateOracleV2.dbg.json +1 -1
  218. package/build/artifacts/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleV2.sol/PendleExchangeRateOracleV2.json +2 -2
  219. package/build/artifacts/contracts/oracles/CrossChainOracle/libraries/ExchangeRateMsgCodec.sol/ExchangeRateMsgCodec.dbg.json +1 -1
  220. package/build/artifacts/contracts/oracles/CrossChainOracle/libraries/ExchangeRateMsgCodec.sol/ExchangeRateMsgCodec.json +2 -2
  221. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  222. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  223. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +1 -1
  224. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.json +2 -2
  225. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +1 -1
  226. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.json +2 -2
  227. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.dbg.json +1 -1
  228. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.json +2 -2
  229. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.dbg.json +1 -1
  230. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.json +2 -2
  231. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.dbg.json +1 -1
  232. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.json +2 -2
  233. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  234. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +1 -1
  235. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +2 -2
  236. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +1 -1
  237. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +2 -2
  238. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  239. package/build/artifacts/contracts/oracles/StatelessWrapper/PendleSparkLinearDiscountOracleFactoryWrapper.sol/PendleSparkLinearDiscountOracleFactoryWrapper.dbg.json +1 -1
  240. package/build/artifacts/contracts/oracles/StatelessWrapper/PendleSparkLinearDiscountOracleFactoryWrapper.sol/PendleSparkLinearDiscountOracleFactoryWrapper.json +2 -2
  241. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.dbg.json +1 -1
  242. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.json +2 -2
  243. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  244. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
  245. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +1 -1
  246. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +2 -2
  247. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  248. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -2
  249. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
  250. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -2
  251. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
  252. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -2
  253. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  254. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
  255. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  256. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -2
  257. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
  258. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
  259. package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
  260. package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
  261. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  262. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
  263. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
  264. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  265. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
  266. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
  267. package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.dbg.json +1 -1
  268. package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.json +2 -2
  269. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
  270. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
  271. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
  272. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
  273. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.dbg.json +1 -1
  274. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.json +2 -2
  275. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.dbg.json +1 -1
  276. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.json +2 -2
  277. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.dbg.json +1 -1
  278. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.json +0 -171
  279. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/OKXScaleHelper.dbg.json +1 -1
  280. package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/IAugustusV6.dbg.json +1 -1
  281. package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/ParaswapScaleHelper.dbg.json +1 -1
  282. package/build/artifacts/contracts/router/swap-aggregator/ParaswapScaleHelper.sol/ParaswapScaleHelper.json +2 -2
  283. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
  284. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
  285. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  286. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
  287. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol +17 -15
  288. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol +1 -1
  289. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol +16 -14
  290. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol +3 -2
  291. package/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol +12 -9
  292. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +12 -12
  293. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +10 -8
  294. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol +12 -6
  295. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol +11 -4
  296. package/contracts/LiquidityMining/PendleMerkleDistributor.sol +13 -11
  297. package/contracts/LiquidityMining/PendleMultiTokenMerkleDistributor.sol +22 -17
  298. package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +28 -21
  299. package/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +27 -31
  300. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +23 -19
  301. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +8 -7
  302. package/contracts/LiquidityMining/libraries/VeBalanceLib.sol +5 -6
  303. package/contracts/core/Market/MarketMathCore.sol +112 -78
  304. package/contracts/core/Market/OracleLib.sol +41 -34
  305. package/contracts/core/Market/PendleGauge.sol +8 -8
  306. package/contracts/core/Market/PendleMarketFactoryV6Upg.sol +16 -19
  307. package/contracts/core/Market/PendleMarketV6.sol +65 -63
  308. package/contracts/core/RewardManager/RewardManager.sol +8 -8
  309. package/contracts/core/RewardManager/RewardManagerAbstract.sol +5 -6
  310. package/contracts/core/StandardizedYield/PYIndex.sol +2 -2
  311. package/contracts/core/YieldContracts/InterestManagerYT.sol +9 -8
  312. package/contracts/core/YieldContracts/PendlePrincipalToken.sol +8 -4
  313. package/contracts/core/YieldContracts/PendleYieldContractFactoryUpg.sol +12 -15
  314. package/contracts/core/YieldContracts/PendleYieldToken.sol +41 -54
  315. package/contracts/core/erc20/PendleERC20.sol +6 -9
  316. package/contracts/core/libraries/ArrayLib.sol +13 -11
  317. package/contracts/core/libraries/BaseSplitCodeFactory.sol +29 -22
  318. package/contracts/core/libraries/BoringOwnableUpgradeableV2.sol +1 -2
  319. package/contracts/core/libraries/Errors.sol +4 -1
  320. package/contracts/core/libraries/ExpiryUtilsLib.sol +10 -10
  321. package/contracts/core/libraries/StringLib.sol +13 -13
  322. package/contracts/core/libraries/TokenHelper.sol +3 -3
  323. package/contracts/core/libraries/math/LogExpMath.sol +67 -77
  324. package/contracts/cross-chain/FixedPricePTAMM.sol +39 -38
  325. package/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol +1 -1
  326. package/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol +1 -1
  327. package/contracts/deprecated/VeDistributor/PendleFeeDistributor.sol +12 -15
  328. package/contracts/deprecated/VeDistributor/PendleFeeDistributorV2.sol +24 -21
  329. package/contracts/interfaces/ILayerZeroEndpoint.sol +3 -5
  330. package/contracts/interfaces/IPActionCallbackV3.sol +1 -1
  331. package/contracts/interfaces/IPActionInfoStatic.sol +3 -1
  332. package/contracts/interfaces/IPActionMarketAuxStatic.sol +15 -11
  333. package/contracts/interfaces/IPActionMarketCoreStatic.sol +109 -58
  334. package/contracts/interfaces/IPActionMintRedeemStatic.sol +26 -21
  335. package/contracts/interfaces/IPActionMiscV3.sol +44 -24
  336. package/contracts/interfaces/IPActionSimple.sol +43 -24
  337. package/contracts/interfaces/IPActionVePendleStatic.sol +5 -4
  338. package/contracts/interfaces/IPAllActionTypeV3.sol +16 -14
  339. package/contracts/interfaces/IPAllActionV3.sol +4 -4
  340. package/contracts/interfaces/IPAllEventsV3.sol +21 -5
  341. package/contracts/interfaces/IPBridgedPrincipalToken.sol +2 -2
  342. package/contracts/interfaces/IPCommonSYFactory.sol +6 -3
  343. package/contracts/interfaces/IPExchangeRateOracleApp.sol +26 -25
  344. package/contracts/interfaces/IPFeeDistributorV2.sol +16 -13
  345. package/contracts/interfaces/IPFixedPricePTAMM.sol +34 -22
  346. package/contracts/interfaces/IPGovernanceProxy.sol +6 -2
  347. package/contracts/interfaces/IPInterestManagerYTV2.sol +3 -4
  348. package/contracts/interfaces/IPLimitRouter.sol +16 -16
  349. package/contracts/interfaces/IPMarket.sol +35 -25
  350. package/contracts/interfaces/IPMarketFactory.sol +16 -9
  351. package/contracts/interfaces/IPMerkleDistributor.sol +10 -6
  352. package/contracts/interfaces/IPMsgSendEndpoint.sol +12 -7
  353. package/contracts/interfaces/IPMultiTokenMerkleDistributor.sol +12 -6
  354. package/contracts/interfaces/IPPYLpOracle.sol +4 -1
  355. package/contracts/interfaces/IPRouterStatic.sol +3 -3
  356. package/contracts/interfaces/IPVotingController.sol +4 -4
  357. package/contracts/interfaces/IPVotingEscrowMainchain.sol +1 -1
  358. package/contracts/interfaces/IPYieldContractFactory.sol +5 -3
  359. package/contracts/interfaces/IPYieldToken.sol +11 -8
  360. package/contracts/interfaces/IPYieldTokenV2.sol +11 -8
  361. package/contracts/interfaces/IStandardizedYield.sol +17 -16
  362. package/contracts/limit/LimitMathCore.sol +56 -38
  363. package/contracts/limit/LimitRouterBase.sol +88 -66
  364. package/contracts/limit/PendleLimitRouter.sol +7 -11
  365. package/contracts/offchain-helpers/AddressProvider.sol +1 -1
  366. package/contracts/offchain-helpers/AutomateReady.sol +2 -2
  367. package/contracts/offchain-helpers/BalanceReader.sol +9 -21
  368. package/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol +7 -5
  369. package/contracts/offchain-helpers/Broadcaster.sol +3 -3
  370. package/contracts/offchain-helpers/BytesLib.sol +5 -3
  371. package/contracts/offchain-helpers/EmptyUUPS.sol +2 -2
  372. package/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol +8 -5
  373. package/contracts/offchain-helpers/LegacyNFTHelper.sol +5 -1
  374. package/contracts/offchain-helpers/LimitBackendHelperV2.sol +12 -12
  375. package/contracts/offchain-helpers/Multicall2.sol +7 -9
  376. package/contracts/offchain-helpers/PendleExchangeRateOracle.sol +8 -4
  377. package/contracts/offchain-helpers/PendleGovernanceProxy.sol +10 -7
  378. package/contracts/offchain-helpers/PendleLPWrapper.sol +3 -12
  379. package/contracts/offchain-helpers/PendleLPWrapperFactory.sol +2 -2
  380. package/contracts/offchain-helpers/PendleMerkleDepositor.sol +64 -0
  381. package/contracts/offchain-helpers/PendleMulticallV1.sol +7 -7
  382. package/contracts/offchain-helpers/PendleMulticallV2.sol +12 -13
  383. package/contracts/offchain-helpers/PendleOffchainStorage.sol +1 -1
  384. package/contracts/offchain-helpers/PendleWstETHPriceFeed.sol +2 -4
  385. package/contracts/offchain-helpers/SimulateHelper.sol +6 -7
  386. package/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol +32 -13
  387. package/contracts/offchain-helpers/deploy/PendleCommonSYFactory.sol +11 -7
  388. package/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol +35 -16
  389. package/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol +35 -15
  390. package/contracts/offchain-helpers/deploy/lib/MarketDeployLib.sol +13 -12
  391. package/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol +4 -1
  392. package/contracts/offchain-helpers/router-static/PendleRouterStatic.sol +1 -1
  393. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +9 -12
  394. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +91 -60
  395. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +190 -103
  396. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +26 -26
  397. package/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol +3 -3
  398. package/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol +10 -8
  399. package/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol +40 -100
  400. package/contracts/oracles/CrossChainOracle/base/PendleCrossChainOracleBaseApp_Init.sol +6 -14
  401. package/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleApp.sol +47 -55
  402. package/contracts/oracles/CrossChainOracle/exchangeRate/PendleExchangeRateOracleV2.sol +3 -2
  403. package/contracts/oracles/CrossChainOracle/libraries/ExchangeRateMsgCodec.sol +12 -12
  404. package/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol +20 -17
  405. package/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol +19 -15
  406. package/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol +6 -7
  407. package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol +9 -13
  408. package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol +21 -20
  409. package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol +7 -4
  410. package/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol +2 -2
  411. package/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol +10 -13
  412. package/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol +10 -13
  413. package/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol +5 -6
  414. package/contracts/oracles/StatelessWrapper/PendleSparkLinearDiscountOracleFactoryWrapper.sol +1 -1
  415. package/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol +3 -3
  416. package/contracts/router/ActionAddRemoveLiqV3.sol +150 -55
  417. package/contracts/router/ActionCallbackV3.sol +13 -20
  418. package/contracts/router/ActionMiscV3.sol +78 -54
  419. package/contracts/router/ActionSimple.sol +128 -76
  420. package/contracts/router/ActionSwapPTV3.sol +19 -7
  421. package/contracts/router/ActionSwapYTV3.sol +20 -8
  422. package/contracts/router/PendleRouterV4.sol +1 -1
  423. package/contracts/router/Reflector.sol +21 -15
  424. package/contracts/router/base/ActionBase.sol +105 -61
  425. package/contracts/router/base/ActionDelegateBase.sol +38 -39
  426. package/contracts/router/base/CallbackHelper.sol +19 -21
  427. package/contracts/router/math/ApproxStateLib.sol +28 -28
  428. package/contracts/router/math/MarketApproxEstimateLib.sol +13 -11
  429. package/contracts/router/math/MarketApproxLibOnchain.sol +24 -47
  430. package/contracts/router/math/MarketApproxLibV2.sol +44 -63
  431. package/contracts/router/swap-aggregator/OKXScaleHelper.sol +55 -191
  432. package/contracts/router/swap-aggregator/ParaswapScaleHelper.sol +48 -34
  433. package/contracts/router/swap-aggregator/PendleSwap.sol +28 -26
  434. package/deployments/1-core.json +2 -1
  435. package/deployments/1-offchain-helper.json +1 -2
  436. package/deployments/10-core.json +2 -1
  437. package/deployments/10-offchain-helper.json +1 -2
  438. package/deployments/146-core.json +2 -1
  439. package/deployments/146-offchain-helper.json +1 -2
  440. package/deployments/42161-core.json +2 -1
  441. package/deployments/42161-offchain-helper.json +1 -2
  442. package/deployments/5000-core.json +2 -1
  443. package/deployments/5000-offchain-helper.json +1 -2
  444. package/deployments/56-core.json +2 -1
  445. package/deployments/56-offchain-helper.json +1 -2
  446. package/deployments/80094-core.json +2 -1
  447. package/deployments/80094-offchain-helper.json +1 -2
  448. package/deployments/8453-core.json +2 -1
  449. package/deployments/8453-offchain-helper.json +1 -2
  450. package/deployments/9745-core.json +2 -1
  451. package/deployments/9745-offchain-helper.json +1 -2
  452. package/deployments/999-core.json +2 -1
  453. package/deployments/999-offchain-helper.json +1 -2
  454. package/package.json +4 -2
  455. package/typechain-types/IOKXDexRouter.ts +0 -99
  456. package/typechain-types/IPLimitRouter.ts +0 -69
  457. package/typechain-types/IPMarket.ts +0 -13
  458. package/typechain-types/PendleMerkleDepositor.ts +171 -0
  459. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
  460. package/typechain-types/factories/ActionCallbackV3__factory.ts +1 -1
  461. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  462. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  463. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
  464. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  465. package/typechain-types/factories/ActionMiscV3__factory.ts +1 -1
  466. package/typechain-types/factories/ActionSimple__factory.ts +1 -1
  467. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  468. package/typechain-types/factories/ActionStorageV4__factory.ts +1 -1
  469. package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
  470. package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
  471. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  472. package/typechain-types/factories/AddressProvider__factory.ts +1 -1
  473. package/typechain-types/factories/BalanceReader__factory.ts +1 -1
  474. package/typechain-types/factories/BaseSplitCodeFactoryContract__factory.ts +1 -1
  475. package/typechain-types/factories/BoringOwnableUpgradeableData__factory.ts +1 -1
  476. package/typechain-types/factories/BoringPYUsdChainlinkAssetOracle__factory.ts +1 -1
  477. package/typechain-types/factories/BoringPYUsdChainlinkSYOracle__factory.ts +1 -1
  478. package/typechain-types/factories/Broadcaster__factory.ts +1 -1
  479. package/typechain-types/factories/EmptyUUPS__factory.ts +1 -1
  480. package/typechain-types/factories/Errors__factory.ts +1 -1
  481. package/typechain-types/factories/ExchangeRateMsgCodec__factory.ts +1 -1
  482. package/typechain-types/factories/ExpiredLpPtRedeemer__factory.ts +1 -1
  483. package/typechain-types/factories/FixedPricePTAMM__factory.ts +1 -1
  484. package/typechain-types/factories/IOKXDexRouter__factory.ts +0 -171
  485. package/typechain-types/factories/IPLimitRouter__factory.ts +0 -42
  486. package/typechain-types/factories/IPMarket__factory.ts +0 -13
  487. package/typechain-types/factories/LegacyNFTHelper__factory.ts +1 -1
  488. package/typechain-types/factories/LimitBackendHelperV2__factory.ts +1 -1
  489. package/typechain-types/factories/Multicall2__factory.ts +1 -1
  490. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  491. package/typechain-types/factories/PendleBridgedPrincipalToken__factory.ts +1 -1
  492. package/typechain-types/factories/PendleChainlinkOracleFactory__factory.ts +1 -1
  493. package/typechain-types/factories/PendleChainlinkOracleWithQuote__factory.ts +1 -1
  494. package/typechain-types/factories/PendleChainlinkOracle__factory.ts +1 -1
  495. package/typechain-types/factories/PendleCommonPoolDeployHelperV2__factory.ts +1 -1
  496. package/typechain-types/factories/PendleCommonSYFactory__factory.ts +1 -1
  497. package/typechain-types/factories/PendleERC20__factory.ts +1 -1
  498. package/typechain-types/factories/PendleExchangeRateOracleApp__factory.ts +1 -1
  499. package/typechain-types/factories/PendleExchangeRateOracleV2__factory.ts +1 -1
  500. package/typechain-types/factories/PendleExchangeRateOracle__factory.ts +1 -1
  501. package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +1 -1
  502. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  503. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  504. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  505. package/typechain-types/factories/PendleGovernanceProxy__factory.ts +1 -1
  506. package/typechain-types/factories/PendleLPWrapperFactory__factory.ts +1 -1
  507. package/typechain-types/factories/PendleLPWrapper__factory.ts +1 -1
  508. package/typechain-types/factories/PendleLimitRouter__factory.ts +1 -1
  509. package/typechain-types/factories/PendleMarketFactoryV6Upg__factory.ts +1 -1
  510. package/typechain-types/factories/PendleMarketV6__factory.ts +1 -1
  511. package/typechain-types/factories/PendleMerkleDepositor__factory.ts +164 -0
  512. package/typechain-types/factories/PendleMerkleDistributor__factory.ts +1 -1
  513. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  514. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  515. package/typechain-types/factories/PendleMultiTokenMerkleDistributor__factory.ts +1 -1
  516. package/typechain-types/factories/PendleMulticallOwnerV1__factory.ts +1 -1
  517. package/typechain-types/factories/PendleMulticallV1__factory.ts +1 -1
  518. package/typechain-types/factories/PendleMulticallV2__factory.ts +1 -1
  519. package/typechain-types/factories/PendleOffchainStorage__factory.ts +1 -1
  520. package/typechain-types/factories/PendlePTOFTAdapterFactory__factory.ts +1 -1
  521. package/typechain-types/factories/PendlePYLpOracle__factory.ts +1 -1
  522. package/typechain-types/factories/PendlePoolDeployHelperV2__factory.ts +1 -1
  523. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
  524. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  525. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  526. package/typechain-types/factories/PendleRouterV4__factory.ts +1 -1
  527. package/typechain-types/factories/PendleSparkLinearDiscountOracleFactoryWrapper__factory.ts +1 -1
  528. package/typechain-types/factories/PendleSparkLinearDiscountOracleFactory__factory.ts +1 -1
  529. package/typechain-types/factories/PendleSwap__factory.ts +1 -1
  530. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  531. package/typechain-types/factories/PendleWstETHPriceFeed__factory.ts +1 -1
  532. package/typechain-types/factories/PendleYieldContractFactoryUpg__factory.ts +1 -1
  533. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  534. package/typechain-types/factories/Reflector__factory.ts +1 -1
  535. package/typechain-types/factories/SDKErrorsDirectory__factory.ts +1 -1
  536. package/typechain-types/factories/SimulateHelper__factory.ts +1 -1
  537. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  538. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  539. package/typechain-types/hardhat.d.ts +9 -18
  540. package/typechain-types/index.ts +2 -4
  541. package/build/artifacts/contracts/offchain-helpers/PendleFeeSetter.sol/PendleFeeSetter.dbg.json +0 -4
  542. package/build/artifacts/contracts/offchain-helpers/PendleFeeSetter.sol/PendleFeeSetter.json +0 -326
  543. package/contracts/offchain-helpers/PendleFeeSetter.sol +0 -149
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
2
  pragma solidity ^0.8.17;
3
3
 
4
- import "../interfaces/IPActionAddRemoveLiqV3.sol";
5
4
  import "./base/ActionBase.sol";
5
+ import "../interfaces/IPActionAddRemoveLiqV3.sol";
6
6
 
7
7
  import {ActionDelegateBase} from "./base/ActionDelegateBase.sol";
8
8
 
@@ -25,12 +25,12 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
25
25
  uint256 netPtDesired,
26
26
  uint256 minLpOut
27
27
  ) external payable returns (uint256 netLpOut, uint256 netPtUsed, uint256 netSyInterm) {
28
- (IStandardizedYield SY, IPPrincipalToken PT,) = IPMarket(market).readTokens();
28
+ (IStandardizedYield SY, IPPrincipalToken PT, ) = IPMarket(market).readTokens();
29
29
 
30
30
  netSyInterm = _mintSyFromToken(market, address(SY), 1, input);
31
31
  uint256 netSyUsed;
32
32
 
33
- (,, netSyUsed, netPtUsed) = _readMarket(market).addLiquidity(netSyInterm, netPtDesired, block.timestamp);
33
+ (, , netSyUsed, netPtUsed) = _readMarket(market).addLiquidity(netSyInterm, netPtDesired, block.timestamp);
34
34
 
35
35
  if (netSyInterm != netSyUsed) {
36
36
  revert("Slippage: NOT_ALL_SY_USED");
@@ -38,12 +38,19 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
38
38
 
39
39
  // SY has been minted and transferred to the market
40
40
  _transferFrom(PT, msg.sender, market, netPtUsed);
41
- (netLpOut,,) = IPMarket(market).mint(receiver, netSyUsed, netPtUsed);
41
+ (netLpOut, , ) = IPMarket(market).mint(receiver, netSyUsed, netPtUsed);
42
42
 
43
43
  if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
44
44
 
45
45
  emit AddLiquidityDualTokenAndPt(
46
- msg.sender, market, input.tokenIn, receiver, input.netTokenIn, netPtUsed, netLpOut, netSyInterm
46
+ msg.sender,
47
+ market,
48
+ input.tokenIn,
49
+ receiver,
50
+ input.netTokenIn,
51
+ netPtUsed,
52
+ netLpOut,
53
+ netSyInterm
47
54
  );
48
55
  }
49
56
 
@@ -54,15 +61,18 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
54
61
  uint256 netPtDesired,
55
62
  uint256 minLpOut
56
63
  ) external returns (uint256 netLpOut, uint256 netSyUsed, uint256 netPtUsed) {
57
- (IStandardizedYield SY, IPPrincipalToken PT,) = IPMarket(market).readTokens();
64
+ (IStandardizedYield SY, IPPrincipalToken PT, ) = IPMarket(market).readTokens();
58
65
 
59
66
  // calculate the amount of SY and PT to be used
60
- (, netLpOut, netSyUsed, netPtUsed) =
61
- _readMarket(market).addLiquidity(netSyDesired, netPtDesired, block.timestamp);
67
+ (, netLpOut, netSyUsed, netPtUsed) = _readMarket(market).addLiquidity(
68
+ netSyDesired,
69
+ netPtDesired,
70
+ block.timestamp
71
+ );
62
72
 
63
73
  _transferFrom(SY, msg.sender, market, netSyUsed);
64
74
  _transferFrom(PT, msg.sender, market, netPtUsed);
65
- (netLpOut,,) = IPMarket(market).mint(receiver, netSyUsed, netPtUsed);
75
+ (netLpOut, , ) = IPMarket(market).mint(receiver, netSyUsed, netPtUsed);
66
76
 
67
77
  if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
68
78
 
@@ -90,23 +100,31 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
90
100
  uint256 netSyReceived;
91
101
 
92
102
  if (!_isEmptyLimit(limit)) {
93
- (netPtLeft, netSyReceived, netSyFee,) = _fillLimit(market, PT, netPtLeft, limit);
103
+ (netPtLeft, netSyReceived, netSyFee, ) = _fillLimit(market, PT, netPtLeft, limit);
94
104
  _transferOut(address(PT), market, netPtLeft);
95
105
  }
96
106
 
97
- (uint256 netPtSwapMarket,,) = _readMarket(market)
98
- .approxSwapPtToAddLiquidityV2(YT.newIndex(), netPtLeft, netSyReceived, block.timestamp, guessPtSwapToSy);
107
+ (uint256 netPtSwapMarket, , ) = _readMarket(market).approxSwapPtToAddLiquidityV2(
108
+ YT.newIndex(),
109
+ netPtLeft,
110
+ netSyReceived,
111
+ block.timestamp,
112
+ guessPtSwapToSy
113
+ );
99
114
 
100
115
  // execute the swap
101
- (uint256 netSyOutMarket, uint256 netSyFeeMarket) =
102
- IPMarket(market).swapExactPtForSy(market, netPtSwapMarket, EMPTY_BYTES);
116
+ (uint256 netSyOutMarket, uint256 netSyFeeMarket) = IPMarket(market).swapExactPtForSy(
117
+ market,
118
+ netPtSwapMarket,
119
+ EMPTY_BYTES
120
+ );
103
121
 
104
122
  netPtLeft -= netPtSwapMarket;
105
123
  netSyReceived += netSyOutMarket;
106
124
  netSyFee += netSyFeeMarket;
107
125
 
108
126
  // execute the addLiquidity
109
- (netLpOut,,) = IPMarket(market).mint(receiver, netSyReceived, netPtLeft);
127
+ (netLpOut, , ) = IPMarket(market).mint(receiver, netSyReceived, netPtLeft);
110
128
 
111
129
  if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
112
130
 
@@ -128,15 +146,29 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
128
146
  return delegateToAddLiquiditySingleTokenSimple(receiver, market, minLpOut, input);
129
147
  }
130
148
 
131
- (IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
149
+ (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
132
150
 
133
151
  netSyInterm = _mintSyFromToken(_entry_addLiquiditySingleSy(market, limit), address(SY), 1, input);
134
152
 
135
- (netLpOut, netSyFee) =
136
- _addLiquiditySingleSy(receiver, market, SY, YT, netSyInterm, minLpOut, guessPtReceivedFromSy, limit);
153
+ (netLpOut, netSyFee) = _addLiquiditySingleSy(
154
+ receiver,
155
+ market,
156
+ SY,
157
+ YT,
158
+ netSyInterm,
159
+ minLpOut,
160
+ guessPtReceivedFromSy,
161
+ limit
162
+ );
137
163
 
138
164
  emit AddLiquiditySingleToken(
139
- msg.sender, market, input.tokenIn, receiver, input.netTokenIn, netLpOut, netSyInterm
165
+ msg.sender,
166
+ market,
167
+ input.tokenIn,
168
+ receiver,
169
+ input.netTokenIn,
170
+ netLpOut,
171
+ netSyInterm
140
172
  );
141
173
  }
142
174
 
@@ -153,12 +185,20 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
153
185
  return delegateToAddLiquiditySingleSySimple(receiver, market, netSyIn, minLpOut);
154
186
  }
155
187
 
156
- (IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
188
+ (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
157
189
 
158
190
  _transferFrom(SY, msg.sender, _entry_addLiquiditySingleSy(market, limit), netSyIn);
159
191
 
160
- (netLpOut, netSyFee) =
161
- _addLiquiditySingleSy(receiver, market, SY, YT, netSyIn, minLpOut, guessPtReceivedFromSy, limit);
192
+ (netLpOut, netSyFee) = _addLiquiditySingleSy(
193
+ receiver,
194
+ market,
195
+ SY,
196
+ YT,
197
+ netSyIn,
198
+ minLpOut,
199
+ guessPtReceivedFromSy,
200
+ limit
201
+ );
162
202
 
163
203
  emit AddLiquiditySingleSy(msg.sender, market, receiver, netSyIn, netLpOut);
164
204
  }
@@ -177,23 +217,29 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
177
217
  uint256 netPtReceived;
178
218
 
179
219
  if (!_isEmptyLimit(limit)) {
180
- (netSyLeft, netPtReceived, netSyFee,) = _fillLimit(market, SY, netSyLeft, limit);
220
+ (netSyLeft, netPtReceived, netSyFee, ) = _fillLimit(market, SY, netSyLeft, limit);
181
221
  _transferOut(address(SY), market, netSyLeft);
182
222
  }
183
223
 
184
- (uint256 netPtOutMarket,,) = _readMarket(market)
185
- .approxSwapSyToAddLiquidityV2(
186
- YT.newIndex(), netSyLeft, netPtReceived, block.timestamp, guessPtReceivedFromSy
187
- );
224
+ (uint256 netPtOutMarket, , ) = _readMarket(market).approxSwapSyToAddLiquidityV2(
225
+ YT.newIndex(),
226
+ netSyLeft,
227
+ netPtReceived,
228
+ block.timestamp,
229
+ guessPtReceivedFromSy
230
+ );
188
231
 
189
- (uint256 netSySwapMarket, uint256 netSyFeeMarket) =
190
- IPMarket(market).swapSyForExactPt(market, netPtOutMarket, EMPTY_BYTES);
232
+ (uint256 netSySwapMarket, uint256 netSyFeeMarket) = IPMarket(market).swapSyForExactPt(
233
+ market,
234
+ netPtOutMarket,
235
+ EMPTY_BYTES
236
+ );
191
237
 
192
238
  netSyLeft -= netSySwapMarket;
193
239
  netPtReceived += netPtOutMarket;
194
240
  netSyFee += netSyFeeMarket;
195
241
 
196
- (netLpOut,,) = IPMarket(market).mint(receiver, netSyLeft, netPtReceived);
242
+ (netLpOut, , ) = IPMarket(market).mint(receiver, netSyLeft, netPtReceived);
197
243
 
198
244
  if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
199
245
  }
@@ -208,15 +254,30 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
208
254
  uint256 minYtOut,
209
255
  TokenInput calldata input
210
256
  ) external payable returns (uint256 netLpOut, uint256 netYtOut, uint256 netSyMintPy, uint256 netSyInterm) {
211
- (IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
257
+ (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
212
258
 
213
259
  netSyInterm = _mintSyFromToken(address(this), address(SY), 1, input);
214
260
 
215
- (netLpOut, netYtOut, netSyMintPy) =
216
- _addLiquiditySingleSyKeepYt(receiver, market, SY, YT, netSyInterm, minLpOut, minYtOut);
261
+ (netLpOut, netYtOut, netSyMintPy) = _addLiquiditySingleSyKeepYt(
262
+ receiver,
263
+ market,
264
+ SY,
265
+ YT,
266
+ netSyInterm,
267
+ minLpOut,
268
+ minYtOut
269
+ );
217
270
 
218
271
  emit AddLiquiditySingleTokenKeepYt(
219
- msg.sender, market, input.tokenIn, receiver, input.netTokenIn, netLpOut, netYtOut, netSyMintPy, netSyInterm
272
+ msg.sender,
273
+ market,
274
+ input.tokenIn,
275
+ receiver,
276
+ input.netTokenIn,
277
+ netLpOut,
278
+ netYtOut,
279
+ netSyMintPy,
280
+ netSyInterm
220
281
  );
221
282
  }
222
283
 
@@ -227,12 +288,19 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
227
288
  uint256 minLpOut,
228
289
  uint256 minYtOut
229
290
  ) external returns (uint256 netLpOut, uint256 netYtOut, uint256 netSyMintPy) {
230
- (IStandardizedYield SY,, IPYieldToken YT) = IPMarket(market).readTokens();
291
+ (IStandardizedYield SY, , IPYieldToken YT) = IPMarket(market).readTokens();
231
292
 
232
293
  _transferIn(address(SY), msg.sender, netSyIn);
233
294
 
234
- (netLpOut, netYtOut, netSyMintPy) =
235
- _addLiquiditySingleSyKeepYt(receiver, market, SY, YT, netSyIn, minLpOut, minYtOut);
295
+ (netLpOut, netYtOut, netSyMintPy) = _addLiquiditySingleSyKeepYt(
296
+ receiver,
297
+ market,
298
+ SY,
299
+ YT,
300
+ netSyIn,
301
+ minLpOut,
302
+ minYtOut
303
+ );
236
304
 
237
305
  emit AddLiquiditySingleSyKeepYt(msg.sender, market, receiver, netSyIn, netSyMintPy, netLpOut, netYtOut);
238
306
  }
@@ -251,7 +319,8 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
251
319
  PYIndex pyIndex = YT.newIndex();
252
320
 
253
321
  netSyMintPy =
254
- (netSyIn * state.totalPt.Uint()) / (state.totalPt.Uint() + pyIndex.syToAsset(state.totalSy.Uint()));
322
+ (netSyIn * state.totalPt.Uint()) /
323
+ (state.totalPt.Uint() + pyIndex.syToAsset(state.totalSy.Uint()));
255
324
 
256
325
  uint256 netSyAddLiquidity = netSyIn - netSyMintPy;
257
326
 
@@ -264,7 +333,7 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
264
333
  // PT goes to market, YT goes to receiver
265
334
  netYtOut = YT.mintPY(market, receiver);
266
335
 
267
- (netLpOut,,) = IPMarket(market).mint(receiver, netSyAddLiquidity, netYtOut);
336
+ (netLpOut, , ) = IPMarket(market).mint(receiver, netSyAddLiquidity, netYtOut);
268
337
 
269
338
  if (netLpOut < minLpOut) revert("Slippage: INSUFFICIENT_LP_OUT");
270
339
  if (netYtOut < minYtOut) revert("Slippage: INSUFFICIENT_YT_OUT");
@@ -280,7 +349,7 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
280
349
  TokenOutput calldata output,
281
350
  uint256 minPtOut
282
351
  ) external returns (uint256 netTokenOut, uint256 netPtOut, uint256 netSyInterm) {
283
- (IStandardizedYield SY,,) = IPMarket(market).readTokens();
352
+ (IStandardizedYield SY, , ) = IPMarket(market).readTokens();
284
353
 
285
354
  // burn LP, SY sent to SY, PT sent to receiver
286
355
  _transferFrom(IERC20(market), msg.sender, market, netLpToRemove);
@@ -291,7 +360,14 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
291
360
  // redeem SY to token
292
361
  netTokenOut = _redeemSyToToken(receiver, address(SY), netSyInterm, output, false);
293
362
  emit RemoveLiquidityDualTokenAndPt(
294
- msg.sender, market, output.tokenOut, receiver, netLpToRemove, netPtOut, netTokenOut, netSyInterm
363
+ msg.sender,
364
+ market,
365
+ output.tokenOut,
366
+ receiver,
367
+ netLpToRemove,
368
+ netPtOut,
369
+ netTokenOut,
370
+ netSyInterm
295
371
  );
296
372
  }
297
373
 
@@ -331,13 +407,22 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
331
407
 
332
408
  // execute the burn
333
409
  _transferFrom(IERC20(market), msg.sender, market, netLpToRemove);
334
- (uint256 netSyOutBurn, uint256 netPtOutBurn) =
335
- IPMarket(market).burn(_entry_swapExactSyForPt(market, limit), receiver, netLpToRemove);
410
+ (uint256 netSyOutBurn, uint256 netPtOutBurn) = IPMarket(market).burn(
411
+ _entry_swapExactSyForPt(market, limit),
412
+ receiver,
413
+ netLpToRemove
414
+ );
336
415
  netSyLeft += netSyOutBurn;
337
416
  netPtOut += netPtOutBurn;
338
417
 
339
- (uint256 netPtOutSwap, uint256 netSyFeeSwap) =
340
- _swapExactSyForPt(receiver, market, netSyLeft, 0, guessPtReceivedFromSy, limit);
418
+ (uint256 netPtOutSwap, uint256 netSyFeeSwap) = _swapExactSyForPt(
419
+ receiver,
420
+ market,
421
+ netSyLeft,
422
+ 0,
423
+ guessPtReceivedFromSy,
424
+ limit
425
+ );
341
426
  netPtOut += netPtOutSwap;
342
427
  netSyFee += netSyFeeSwap;
343
428
 
@@ -356,7 +441,7 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
356
441
  TokenOutput calldata output,
357
442
  LimitOrderData calldata limit
358
443
  ) external returns (uint256 netTokenOut, uint256 netSyFee, uint256 netSyInterm) {
359
- (IStandardizedYield SY,,) = IPMarket(market).readTokens();
444
+ (IStandardizedYield SY, , ) = IPMarket(market).readTokens();
360
445
 
361
446
  _transferFrom(IERC20(market), msg.sender, market, netLpToRemove);
362
447
 
@@ -365,7 +450,13 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
365
450
  netTokenOut = _redeemSyToToken(receiver, address(SY), netSyInterm, output, false);
366
451
 
367
452
  emit RemoveLiquiditySingleToken(
368
- msg.sender, market, output.tokenOut, receiver, netLpToRemove, netTokenOut, netSyInterm
453
+ msg.sender,
454
+ market,
455
+ output.tokenOut,
456
+ receiver,
457
+ netLpToRemove,
458
+ netTokenOut,
459
+ netSyInterm
369
460
  );
370
461
  }
371
462
 
@@ -400,12 +491,13 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
400
491
  if (netSyOut < minSyOut) revert("Slippage: INSUFFICIENT_SY_OUT");
401
492
  }
402
493
 
403
- function __removeLpToSyAfterExpiry(address receiver, address market, uint256 netLpToRemove)
404
- internal
405
- returns (uint256 netSyOut)
406
- {
407
- (,, IPYieldToken YT) = IPMarket(market).readTokens();
408
- (uint256 syFromBurn,) = IPMarket(market).burn(receiver, address(YT), netLpToRemove);
494
+ function __removeLpToSyAfterExpiry(
495
+ address receiver,
496
+ address market,
497
+ uint256 netLpToRemove
498
+ ) internal returns (uint256 netSyOut) {
499
+ (, , IPYieldToken YT) = IPMarket(market).readTokens();
500
+ (uint256 syFromBurn, ) = IPMarket(market).burn(receiver, address(YT), netLpToRemove);
409
501
  netSyOut = syFromBurn + YT.redeemPY(receiver);
410
502
  }
411
503
 
@@ -417,8 +509,11 @@ contract ActionAddRemoveLiqV3 is IPActionAddRemoveLiqV3, ActionBase, ActionDeleg
417
509
  ) internal returns (uint256 netSyOut, uint256 netSyFee) {
418
510
  uint256 netPtLeft;
419
511
 
420
- (uint256 netSyOutBurn, uint256 netPtOutBurn) =
421
- IPMarket(market).burn(receiver, _entry_swapExactPtForSy(market, limit), netLpToRemove);
512
+ (uint256 netSyOutBurn, uint256 netPtOutBurn) = IPMarket(market).burn(
513
+ receiver,
514
+ _entry_swapExactPtForSy(market, limit),
515
+ netLpToRemove
516
+ );
422
517
  netSyOut += netSyOutBurn;
423
518
  netPtLeft += netPtOutBurn;
424
519
 
@@ -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 "../core/libraries/Errors.sol";
5
4
  import "../interfaces/IPActionCallbackV3.sol";
5
+ import "../core/libraries/Errors.sol";
6
6
  import "./base/CallbackHelper.sol";
7
7
 
8
8
  import "../core/libraries/TokenHelper.sol";
@@ -28,7 +28,12 @@ contract ActionCallbackV3 is IPLimitOrderType, IPActionCallbackV3, CallbackHelpe
28
28
  }
29
29
  }
30
30
 
31
- function limitRouterCallback(uint256 actualMaking, uint256 actualTaking, uint256 totalFee, bytes memory data)
31
+ function limitRouterCallback(
32
+ uint256 actualMaking,
33
+ uint256 actualTaking,
34
+ uint256 totalFee,
35
+ bytes memory data
36
+ )
32
37
  external
33
38
  returns (
34
39
  bytes memory // encode as netTransferToLimit, netOutputFromLimit
@@ -39,8 +44,10 @@ contract ActionCallbackV3 is IPLimitOrderType, IPActionCallbackV3, CallbackHelpe
39
44
  return abi.encode(0, 0);
40
45
  }
41
46
 
42
- (OrderType orderType, IPYieldToken YT, uint256 netRemaining, address receiver) =
43
- abi.decode(data, (OrderType, IPYieldToken, uint256, address));
47
+ (OrderType orderType, IPYieldToken YT, uint256 netRemaining, address receiver) = abi.decode(
48
+ data,
49
+ (OrderType, IPYieldToken, uint256, address)
50
+ );
44
51
 
45
52
  if (orderType == OrderType.SY_FOR_PT || orderType == OrderType.SY_FOR_YT) {
46
53
  PYIndex index = YT.newIndex();
@@ -85,14 +92,7 @@ contract ActionCallbackV3 is IPLimitOrderType, IPActionCallbackV3, CallbackHelpe
85
92
  }
86
93
  }
87
94
 
88
- function _callbackSwapExactSyForYt(
89
- int256 ptToAccount,
90
- int256,
91
- /*syToAccount*/
92
- bytes calldata data
93
- )
94
- internal
95
- {
95
+ function _callbackSwapExactSyForYt(int256 ptToAccount, int256, /*syToAccount*/ bytes calldata data) internal {
96
96
  (address receiver, IPYieldToken YT) = _decodeSwapExactSyForYt(data);
97
97
 
98
98
  uint256 ptOwed = ptToAccount.abs();
@@ -116,14 +116,7 @@ contract ActionCallbackV3 is IPLimitOrderType, IPActionCallbackV3, CallbackHelpe
116
116
  YT.redeemPYMulti(receivers, amountPYToRedeems);
117
117
  }
118
118
 
119
- function _callbackSwapExactPtForYt(
120
- int256 ptToAccount,
121
- int256,
122
- /*syToAccount*/
123
- bytes calldata data
124
- )
125
- internal
126
- {
119
+ function _callbackSwapExactPtForYt(int256 ptToAccount, int256, /*syToAccount*/ bytes calldata data) internal {
127
120
  (address receiver, uint256 exactPtIn, uint256 minYtOut, IPYieldToken YT) = _decodeSwapExactPtForYt(data);
128
121
  uint256 netPtOwed = ptToAccount.abs();
129
122
 
@@ -1,37 +1,41 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
2
  pragma solidity ^0.8.17;
3
3
 
4
+ import "./base/ActionBase.sol";
4
5
  import "../interfaces/IPActionMiscV3.sol";
5
6
  import "../interfaces/IPReflector.sol";
6
- import "./base/ActionBase.sol";
7
7
 
8
8
  contract ActionMiscV3 is IPActionMiscV3, ActionBase {
9
9
  uint256 private constant NOT_FOUND = type(uint256).max;
10
10
 
11
- function mintSyFromToken(address receiver, address SY, uint256 minSyOut, TokenInput calldata input)
12
- external
13
- payable
14
- returns (uint256 netSyOut)
15
- {
11
+ function mintSyFromToken(
12
+ address receiver,
13
+ address SY,
14
+ uint256 minSyOut,
15
+ TokenInput calldata input
16
+ ) external payable returns (uint256 netSyOut) {
16
17
  netSyOut = _mintSyFromToken(receiver, SY, minSyOut, input);
17
18
  emit MintSyFromToken(msg.sender, input.tokenIn, SY, receiver, input.netTokenIn, netSyOut);
18
19
  }
19
20
 
20
21
  /// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
21
- function redeemSyToToken(address receiver, address SY, uint256 netSyIn, TokenOutput calldata output)
22
- external
23
- returns (uint256 netTokenOut)
24
- {
22
+ function redeemSyToToken(
23
+ address receiver,
24
+ address SY,
25
+ uint256 netSyIn,
26
+ TokenOutput calldata output
27
+ ) external returns (uint256 netTokenOut) {
25
28
  netTokenOut = _redeemSyToToken(receiver, SY, netSyIn, output, true);
26
29
  emit RedeemSyToToken(msg.sender, output.tokenOut, SY, receiver, netSyIn, netTokenOut);
27
30
  }
28
31
 
29
32
  /// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
30
- function mintPyFromToken(address receiver, address YT, uint256 minPyOut, TokenInput calldata input)
31
- external
32
- payable
33
- returns (uint256 netPyOut, uint256 netSyInterm)
34
- {
33
+ function mintPyFromToken(
34
+ address receiver,
35
+ address YT,
36
+ uint256 minPyOut,
37
+ TokenInput calldata input
38
+ ) external payable returns (uint256 netPyOut, uint256 netSyInterm) {
35
39
  address SY = IPYieldToken(YT).SY();
36
40
 
37
41
  netSyInterm = _mintSyFromToken(YT, SY, 0, input);
@@ -41,10 +45,12 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
41
45
  }
42
46
 
43
47
  /// @notice For details on the parameters (input, guessPtSwapToSy, limit, etc.), please refer to IPAllActionTypeV3.
44
- function redeemPyToToken(address receiver, address YT, uint256 netPyIn, TokenOutput calldata output)
45
- external
46
- returns (uint256 netTokenOut, uint256 netSyInterm)
47
- {
48
+ function redeemPyToToken(
49
+ address receiver,
50
+ address YT,
51
+ uint256 netPyIn,
52
+ TokenOutput calldata output
53
+ ) external returns (uint256 netTokenOut, uint256 netSyInterm) {
48
54
  address SY = IPYieldToken(YT).SY();
49
55
 
50
56
  netSyInterm = _redeemPyToSy(SY, YT, netPyIn, 1);
@@ -53,18 +59,22 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
53
59
  emit RedeemPyToToken(msg.sender, output.tokenOut, YT, receiver, netPyIn, netTokenOut, netSyInterm);
54
60
  }
55
61
 
56
- function mintPyFromSy(address receiver, address YT, uint256 netSyIn, uint256 minPyOut)
57
- external
58
- returns (uint256 netPyOut)
59
- {
62
+ function mintPyFromSy(
63
+ address receiver,
64
+ address YT,
65
+ uint256 netSyIn,
66
+ uint256 minPyOut
67
+ ) external returns (uint256 netPyOut) {
60
68
  netPyOut = _mintPyFromSy(receiver, IPYieldToken(YT).SY(), YT, netSyIn, minPyOut, true);
61
69
  emit MintPyFromSy(msg.sender, receiver, YT, netSyIn, netPyOut);
62
70
  }
63
71
 
64
- function redeemPyToSy(address receiver, address YT, uint256 netPyIn, uint256 minSyOut)
65
- external
66
- returns (uint256 netSyOut)
67
- {
72
+ function redeemPyToSy(
73
+ address receiver,
74
+ address YT,
75
+ uint256 netPyIn,
76
+ uint256 minSyOut
77
+ ) external returns (uint256 netSyOut) {
68
78
  netSyOut = _redeemPyToSy(receiver, YT, netPyIn, minSyOut);
69
79
  emit RedeemPyToSy(msg.sender, receiver, YT, netPyIn, netSyOut);
70
80
  }
@@ -109,13 +119,14 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
109
119
  IPMarket[] calldata markets
110
120
  ) private returns (uint256[] memory netInterests) {
111
121
  netInterests = new uint256[](YTs.length);
112
- for (uint256 i = 0; i < SYs.length; ++i) {
113
- SYs[i].claimRewards(msg.sender);
114
- }
122
+ for (uint256 i = 0; i < SYs.length; ++i) SYs[i].claimRewards(msg.sender);
115
123
 
116
124
  for (uint256 i = 0; i < YTs.length; ++i) {
117
- (uint256 netSyInt,) =
118
- YTs[i].yt.redeemDueInterestAndRewards(msg.sender, YTs[i].doRedeemInterest, YTs[i].doRedeemRewards);
125
+ (uint256 netSyInt, ) = YTs[i].yt.redeemDueInterestAndRewards(
126
+ msg.sender,
127
+ YTs[i].doRedeemInterest,
128
+ YTs[i].doRedeemRewards
129
+ );
119
130
 
120
131
  if (netSyInt == 0) continue;
121
132
 
@@ -124,9 +135,7 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
124
135
  netInterests[i] = SY.redeem(msg.sender, netSyInt, YTs[i].tokenRedeemSy, YTs[i].minTokenRedeemOut, true);
125
136
  }
126
137
 
127
- for (uint256 i = 0; i < markets.length; ++i) {
128
- markets[i].redeemRewards(msg.sender);
129
- }
138
+ for (uint256 i = 0; i < markets.length; ++i) markets[i].redeemRewards(msg.sender);
130
139
  }
131
140
 
132
141
  function __redeemDueInterestAndRewardsV2AndSwap(
@@ -146,8 +155,11 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
146
155
  netInterests = new uint256[](YTs.length);
147
156
  for (uint256 i = 0; i < YTs.length; ++i) {
148
157
  uint256[] memory netRewards;
149
- (netInterests[i], netRewards) =
150
- YTs[i].yt.redeemDueInterestAndRewards(msg.sender, YTs[i].doRedeemInterest, YTs[i].doRedeemRewards);
158
+ (netInterests[i], netRewards) = YTs[i].yt.redeemDueInterestAndRewards(
159
+ msg.sender,
160
+ YTs[i].doRedeemInterest,
161
+ YTs[i].doRedeemRewards
162
+ );
151
163
 
152
164
  if (YTs[i].doRedeemRewards) _add(swaps, netSwaps, YTs[i].yt.getRewardTokens(), netRewards);
153
165
  }
@@ -163,13 +175,17 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
163
175
  for (uint256 i = 0; i < YTs.length; ++i) {
164
176
  if (netInterests[i] == 0) continue;
165
177
  IStandardizedYield SY = IStandardizedYield(YTs[i].yt.SY());
166
- netInterests[i] =
167
- _redeemSyAndAdd(swaps, netSwaps, SY, netInterests[i], YTs[i].tokenRedeemSy, YTs[i].minTokenRedeemOut);
178
+ netInterests[i] = _redeemSyAndAdd(
179
+ swaps,
180
+ netSwaps,
181
+ SY,
182
+ netInterests[i],
183
+ YTs[i].tokenRedeemSy,
184
+ YTs[i].minTokenRedeemOut
185
+ );
168
186
  }
169
187
 
170
- for (uint256 i = 0; i < swaps.length; ++i) {
171
- netOutFromSwaps[i] = _swap(swaps[i], netSwaps[i], pendleSwap, true);
172
- }
188
+ for (uint256 i = 0; i < swaps.length; ++i) netOutFromSwaps[i] = _swap(swaps[i], netSwaps[i], pendleSwap, true);
173
189
  }
174
190
 
175
191
  /// @dev The interface might change in the future, check with Pendle team before use
@@ -299,10 +315,13 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
299
315
  }
300
316
 
301
317
  /// @dev The interface might change in the future, check with Pendle team before use
302
- function exitPostExpToSy(address receiver, address market, uint256 netPtIn, uint256 netLpIn, uint256 minSyOut)
303
- external
304
- returns (ExitPostExpReturnParams memory params)
305
- {
318
+ function exitPostExpToSy(
319
+ address receiver,
320
+ address market,
321
+ uint256 netPtIn,
322
+ uint256 netLpIn,
323
+ uint256 minSyOut
324
+ ) external returns (ExitPostExpReturnParams memory params) {
306
325
  (, params) = _exitPostExpToSy(false, receiver, market, netPtIn, netLpIn);
307
326
  require(params.totalSyOut >= minSyOut, "Slippage: INSUFFICIENT_SY_OUT");
308
327
 
@@ -342,10 +361,12 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
342
361
  }
343
362
  }
344
363
 
345
- function _swap(SwapDataExtra calldata $, uint256 netSwap, IPSwapAggregator pendleSwap, bool needScale)
346
- internal
347
- returns (uint256 netTokenOut)
348
- {
364
+ function _swap(
365
+ SwapDataExtra calldata $,
366
+ uint256 netSwap,
367
+ IPSwapAggregator pendleSwap,
368
+ bool needScale
369
+ ) internal returns (uint256 netTokenOut) {
349
370
  SwapType swapType = $.swapData.swapType;
350
371
  assert(swapType != SwapType.NONE);
351
372
 
@@ -374,10 +395,13 @@ contract ActionMiscV3 is IPActionMiscV3, ActionBase {
374
395
  return NOT_FOUND;
375
396
  }
376
397
 
377
- function _exitPostExpToSy(bool setReceiverToSy, address receiver, address market, uint256 netPtIn, uint256 netLpIn)
378
- internal
379
- returns (IStandardizedYield SY, ExitPostExpReturnParams memory p)
380
- {
398
+ function _exitPostExpToSy(
399
+ bool setReceiverToSy,
400
+ address receiver,
401
+ address market,
402
+ uint256 netPtIn,
403
+ uint256 netLpIn
404
+ ) internal returns (IStandardizedYield SY, ExitPostExpReturnParams memory p) {
381
405
  IPPrincipalToken PT;
382
406
  IPYieldToken YT;
383
407
  (SY, PT, YT) = IPMarket(market).readTokens();