@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,10 +1,10 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
2
  pragma solidity ^0.8.17;
3
3
 
4
+ import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
4
5
  import "../core/libraries/BoringOwnableUpgradeableV2.sol";
5
6
  import "../interfaces/IPMarket.sol";
6
7
  import "../interfaces/IStandardizedYield.sol";
7
- import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
8
8
 
9
9
  contract BalanceReader is UUPSUpgradeable, BoringOwnableUpgradeableV2 {
10
10
  struct UserMarketInfo {
@@ -66,12 +66,7 @@ contract BalanceReader is UUPSUpgradeable, BoringOwnableUpgradeableV2 {
66
66
  }
67
67
  }
68
68
 
69
- function _redeemRewards(IPMarket market, address user)
70
- internal
71
- returns (
72
- uint256[] memory /*rewardsOut*/
73
- )
74
- {
69
+ function _redeemRewards(IPMarket market, address user) internal returns (uint256[] memory /*rewardsOut*/) {
75
70
  try market.redeemRewards(user) returns (uint256[] memory rewardsOut) {
76
71
  return rewardsOut;
77
72
  } catch {
@@ -79,15 +74,13 @@ contract BalanceReader is UUPSUpgradeable, BoringOwnableUpgradeableV2 {
79
74
  }
80
75
  }
81
76
 
82
- function _redeemDueInterestAndRewards(IPYieldToken YT, address user)
83
- internal
84
- returns (
85
- uint256, /*interestOut*/
86
- uint256[] memory /*rewardsOut*/
87
- )
88
- {
77
+ function _redeemDueInterestAndRewards(
78
+ IPYieldToken YT,
79
+ address user
80
+ ) internal returns (uint256 /*interestOut*/, uint256[] memory /*rewardsOut*/) {
89
81
  try YT.redeemDueInterestAndRewards(user, true, true) returns (
90
- uint256 interestOut, uint256[] memory rewardsOut
82
+ uint256 interestOut,
83
+ uint256[] memory rewardsOut
91
84
  ) {
92
85
  return (interestOut, rewardsOut);
93
86
  } catch {
@@ -95,12 +88,7 @@ contract BalanceReader is UUPSUpgradeable, BoringOwnableUpgradeableV2 {
95
88
  }
96
89
  }
97
90
 
98
- function _claimRewards(IStandardizedYield SY, address user)
99
- internal
100
- returns (
101
- uint256[] memory /*rewardsOut*/
102
- )
103
- {
91
+ function _claimRewards(IStandardizedYield SY, address user) internal returns (uint256[] memory /*rewardsOut*/) {
104
92
  try SY.claimRewards(user) returns (uint256[] memory rewardsOut) {
105
93
  return rewardsOut;
106
94
  } catch {
@@ -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 "../core/libraries/BaseSplitCodeFactory.sol";
5
4
  import "../core/libraries/BoringOwnableUpgradeableV2.sol";
5
+ import "../core/libraries/BaseSplitCodeFactory.sol";
6
6
 
7
7
  contract BaseSplitCodeFactoryContract is BoringOwnableUpgradeableV2 {
8
8
  event Deployed(
@@ -17,7 +17,10 @@ contract BaseSplitCodeFactoryContract is BoringOwnableUpgradeableV2 {
17
17
  __BoringOwnableV2_init(msg.sender);
18
18
  }
19
19
 
20
- function deploy(string memory name, bytes calldata creationCode)
20
+ function deploy(
21
+ string memory name,
22
+ bytes calldata creationCode
23
+ )
21
24
  external
22
25
  onlyOwner
23
26
  returns (
@@ -27,9 +30,8 @@ contract BaseSplitCodeFactoryContract is BoringOwnableUpgradeableV2 {
27
30
  uint256 creationCodeSizeB
28
31
  )
29
32
  {
30
- (
31
- creationCodeContractA, creationCodeSizeA, creationCodeContractB, creationCodeSizeB
32
- ) = BaseSplitCodeFactory.setCreationCode(creationCode);
33
+ (creationCodeContractA, creationCodeSizeA, creationCodeContractB, creationCodeSizeB) = BaseSplitCodeFactory
34
+ .setCreationCode(creationCode);
33
35
  emit Deployed(name, creationCodeContractA, creationCodeSizeA, creationCodeContractB, creationCodeSizeB);
34
36
  }
35
37
  }
@@ -1,14 +1,14 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
2
  pragma solidity ^0.8.17;
3
3
 
4
+ import "../interfaces/IPVotingController.sol";
4
5
  import "../LiquidityMining/libraries/WeekMath.sol";
5
6
  import "../core/libraries/BoringOwnableUpgradeableV2.sol";
6
7
  import "../core/libraries/TokenHelper.sol";
7
- import "../interfaces/IPVotingController.sol";
8
8
 
9
9
  import "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
10
- import "@openzeppelin/contracts/proxy/Proxy.sol";
11
10
  import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
11
+ import "@openzeppelin/contracts/proxy/Proxy.sol";
12
12
 
13
13
  contract Broadcaster is Initializable, BoringOwnableUpgradeableV2, UUPSUpgradeable, TokenHelper {
14
14
  IPVotingController public immutable votingController;
@@ -28,7 +28,7 @@ contract Broadcaster is Initializable, BoringOwnableUpgradeableV2, UUPSUpgradeab
28
28
  lastBroadcastedWeek = currentWeek;
29
29
 
30
30
  votingController.finalizeEpoch();
31
- for (uint256 i = 0; i < chainIds.length;) {
31
+ for (uint256 i = 0; i < chainIds.length; ) {
32
32
  uint64 chainId = chainIds[i];
33
33
  uint256 fee = votingController.getBroadcastResultFee(chainId);
34
34
  votingController.broadcastResults{value: fee}(chainId);
@@ -439,8 +439,8 @@ library BytesLib {
439
439
  let cc := add(_postBytes, 0x20)
440
440
 
441
441
  for {
442
- // the next line is the loop condition:
443
- // while(uint256(mc < endWord) + cb == 2)
442
+ // the next line is the loop condition:
443
+ // while(uint256(mc < endWord) + cb == 2)
444
444
  } eq(add(lt(mc, endMinusWord), cb), 2) {
445
445
  mc := add(mc, 0x20)
446
446
  cc := add(cc, 0x20)
@@ -527,7 +527,9 @@ library BytesLib {
527
527
 
528
528
  // the next line is the loop condition:
529
529
  // while(uint256(mc < end) + cb == 2)
530
- for {} eq(add(lt(mc, end), cb), 2) {
530
+ for {
531
+
532
+ } eq(add(lt(mc, end), cb), 2) {
531
533
  sc := add(sc, 1)
532
534
  mc := add(mc, 0x20)
533
535
  } {
@@ -1,9 +1,9 @@
1
1
  // SPDX-License-Identifier: MIT
2
2
 
3
3
  pragma solidity ^0.8.17;
4
- import "../core/libraries/BoringOwnableUpgradeableV2.sol";
5
- import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
6
4
  import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
5
+ import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
6
+ import "../core/libraries/BoringOwnableUpgradeableV2.sol";
7
7
 
8
8
  contract EmptyUUPS is Initializable, UUPSUpgradeable, BoringOwnableUpgradeableV2 {
9
9
  constructor() initializer {}
@@ -1,12 +1,12 @@
1
1
  // SPDX-License-Identifier: SEE LICENSE IN LICENSE
2
2
  pragma solidity ^0.8.0;
3
3
 
4
- import "../core/libraries/BoringOwnableUpgradeableV2.sol";
4
+ import "../router/base/ActionBase.sol";
5
5
  import "../interfaces/IPActionMiscV3.sol";
6
6
  import "../interfaces/IPReflector.sol";
7
- import "../router/base/ActionBase.sol";
8
- import "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol";
7
+ import "../core/libraries/BoringOwnableUpgradeableV2.sol";
9
8
  import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
9
+ import "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol";
10
10
 
11
11
  contract ExpiredLpPtRedeemer is TokenHelper, ReentrancyGuardUpgradeable, BoringOwnableUpgradeableV2, UUPSUpgradeable {
12
12
  mapping(address => bool) public whitelistedMarkets;
@@ -46,8 +46,11 @@ contract ExpiredLpPtRedeemer is TokenHelper, ReentrancyGuardUpgradeable, BoringO
46
46
 
47
47
  if (netLpIn > 0) {
48
48
  _transferFrom(IERC20(market), msg.sender, market, netLpIn);
49
- (uint256 netSyFromRemove, uint256 netPtFromRemove) =
50
- IPMarket(market).burn(address(this), address(this), netLpIn);
49
+ (uint256 netSyFromRemove, uint256 netPtFromRemove) = IPMarket(market).burn(
50
+ address(this),
51
+ address(this),
52
+ netLpIn
53
+ );
51
54
 
52
55
  totalSyRedeem += netSyFromRemove;
53
56
  totalPtRedeem += netPtFromRemove;
@@ -20,7 +20,11 @@ interface StarNFTV1 {
20
20
  event ApprovalForAll(address indexed account, address indexed operator, bool approved);
21
21
  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
22
22
  event TransferBatch(
23
- address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values
23
+ address indexed operator,
24
+ address indexed from,
25
+ address indexed to,
26
+ uint256[] ids,
27
+ uint256[] values
24
28
  );
25
29
  event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);
26
30
  event URI(string value, uint256 indexed id);
@@ -2,11 +2,11 @@
2
2
 
3
3
  pragma solidity ^0.8.17;
4
4
 
5
- import "../core/libraries/Errors.sol";
6
- import "../core/libraries/TokenHelper.sol";
7
5
  import "../interfaces/IPLimitRouter.sol";
6
+ import "../core/libraries/TokenHelper.sol";
8
7
  import "../interfaces/IStandardizedYield.sol";
9
8
  import "../interfaces/IWETH.sol";
9
+ import "../core/libraries/Errors.sol";
10
10
  import "./BytesLib.sol";
11
11
 
12
12
  contract LimitBackendHelperV2 is TokenHelper {
@@ -19,11 +19,11 @@ contract LimitBackendHelperV2 is TokenHelper {
19
19
  }
20
20
 
21
21
  /// @notice vanilla read
22
- function readSingleToken(address token, address[] calldata owners, address spender)
23
- public
24
- view
25
- returns (uint256[] memory balances, uint256[] memory allowances)
26
- {
22
+ function readSingleToken(
23
+ address token,
24
+ address[] calldata owners,
25
+ address spender
26
+ ) public view returns (uint256[] memory balances, uint256[] memory allowances) {
27
27
  balances = new uint256[](owners.length);
28
28
  allowances = new uint256[](owners.length);
29
29
  for (uint256 i = 0; i < owners.length; i++) {
@@ -33,11 +33,11 @@ contract LimitBackendHelperV2 is TokenHelper {
33
33
  }
34
34
 
35
35
  /// @notice auto return balances and allowances the input tokens of the orders, based on type
36
- function readMultiTokens(address[] calldata tokens, address[] calldata owners, address spender)
37
- public
38
- view
39
- returns (uint256[] memory balances, uint256[] memory allowances)
40
- {
36
+ function readMultiTokens(
37
+ address[] calldata tokens,
38
+ address[] calldata owners,
39
+ address spender
40
+ ) public view returns (uint256[] memory balances, uint256[] memory allowances) {
41
41
  require(tokens.length == owners.length, "Length mismatch");
42
42
  balances = new uint256[](owners.length);
43
43
  allowances = new uint256[](owners.length);
@@ -11,7 +11,6 @@ contract Multicall2 {
11
11
  address target;
12
12
  bytes callData;
13
13
  }
14
-
15
14
  struct Result {
16
15
  bool success;
17
16
  bytes returnData;
@@ -27,10 +26,9 @@ contract Multicall2 {
27
26
  }
28
27
  }
29
28
 
30
- function blockAndAggregate(Call[] memory calls)
31
- public
32
- returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData)
33
- {
29
+ function blockAndAggregate(
30
+ Call[] memory calls
31
+ ) public returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData) {
34
32
  (blockNumber, blockHash, returnData) = tryBlockAndAggregate(true, calls);
35
33
  }
36
34
 
@@ -79,10 +77,10 @@ contract Multicall2 {
79
77
  }
80
78
  }
81
79
 
82
- function tryBlockAndAggregate(bool requireSuccess, Call[] memory calls)
83
- public
84
- returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData)
85
- {
80
+ function tryBlockAndAggregate(
81
+ bool requireSuccess,
82
+ Call[] memory calls
83
+ ) public returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData) {
86
84
  blockNumber = block.number;
87
85
  blockHash = blockhash(block.number);
88
86
  returnData = tryAggregate(requireSuccess, calls);
@@ -1,10 +1,10 @@
1
1
  // SPDX-License-Identifier: MIT
2
2
  pragma solidity ^0.8.17;
3
3
 
4
+ import "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
4
5
  import "../core/libraries/BoringOwnableUpgradeableV2.sol";
5
6
  import "../core/libraries/math/PMath.sol";
6
7
  import "../interfaces/IPExchangeRateOracle.sol";
7
- import "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
8
8
 
9
9
  contract PendleExchangeRateOracle is BoringOwnableUpgradeableV2, IPExchangeRateOracle {
10
10
  using PMath for uint256;
@@ -45,7 +45,10 @@ contract PendleExchangeRateOracle is BoringOwnableUpgradeableV2, IPExchangeRateO
45
45
 
46
46
  function setExchangeRate(uint128 rate, uint64 dataBlock, uint32 dataTimestamp) external onlyOwner {
47
47
  ExchangeRateData memory newData = ExchangeRateData({
48
- rate: rate, dataBlock: dataBlock, dataTimestamp: dataTimestamp, updatedAt: uint32(block.timestamp)
48
+ rate: rate,
49
+ dataBlock: dataBlock,
50
+ dataTimestamp: dataTimestamp,
51
+ updatedAt: uint32(block.timestamp)
49
52
  });
50
53
  _setExchangeRate(newData);
51
54
  }
@@ -72,8 +75,9 @@ contract PendleExchangeRateOracle is BoringOwnableUpgradeableV2, IPExchangeRateO
72
75
 
73
76
  function _validateMetadata(ExchangeRateData memory oldData, ExchangeRateData memory newData) internal pure {
74
77
  if (
75
- oldData.dataBlock >= newData.dataBlock || oldData.dataTimestamp >= newData.dataTimestamp
76
- || oldData.updatedAt + MIN_UPDATE_TIME_GAP >= newData.updatedAt
78
+ oldData.dataBlock >= newData.dataBlock ||
79
+ oldData.dataTimestamp >= newData.dataTimestamp ||
80
+ oldData.updatedAt + MIN_UPDATE_TIME_GAP >= newData.updatedAt
77
81
  ) {
78
82
  revert InvalidMetadata(newData);
79
83
  }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
2
  pragma solidity ^0.8.23;
3
3
 
4
- import "../interfaces/IPGovernanceProxy.sol";
5
4
  import "../interfaces/IPPausingInterface.sol";
5
+ import "../interfaces/IPGovernanceProxy.sol";
6
6
  import "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
7
7
  import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
8
8
 
@@ -31,8 +31,8 @@ contract PendleGovernanceProxy is AccessControlUpgradeable, UUPSUpgradeable, IPG
31
31
  // to execute calls
32
32
 
33
33
  mapping(address caller => mapping(bytes4 selector => bool isAdmin)) public isSelectorAdminOf;
34
- mapping(address caller => mapping(bytes4 selector => mapping(address target => bool isAllowed))) public
35
- hasScopedAccess;
34
+ mapping(address caller => mapping(bytes4 selector => mapping(address target => bool isAllowed)))
35
+ public hasScopedAccess;
36
36
 
37
37
  modifier onlyGuardian() {
38
38
  require(hasRole(GUARDIAN, msg.sender) || hasRole(DEFAULT_ADMIN_ROLE, msg.sender), "PGP: n/a");
@@ -65,9 +65,12 @@ contract PendleGovernanceProxy is AccessControlUpgradeable, UUPSUpgradeable, IPG
65
65
  }
66
66
  }
67
67
 
68
- function modifyScopedAccess(address caller, address[] memory targets, bytes4 selector, bool[] memory accesses)
69
- external
70
- {
68
+ function modifyScopedAccess(
69
+ address caller,
70
+ address[] memory targets,
71
+ bytes4 selector,
72
+ bool[] memory accesses
73
+ ) external {
71
74
  require(targets.length == accesses.length, "PGP: Array length mismatch");
72
75
  require(hasRole(DEFAULT_ADMIN_ROLE, msg.sender) || isSelectorAdminOf[msg.sender][selector], "PGP: n/a");
73
76
 
@@ -92,7 +95,7 @@ contract PendleGovernanceProxy is AccessControlUpgradeable, UUPSUpgradeable, IPG
92
95
 
93
96
  function pause(address[] calldata addrs) external onlyGuardian {
94
97
  uint256 length = addrs.length;
95
- for (uint256 i = 0; i < length;) {
98
+ for (uint256 i = 0; i < length; ) {
96
99
  IPPausingInterface(addrs[i]).pause();
97
100
  unchecked {
98
101
  ++i;
@@ -3,9 +3,9 @@ pragma solidity ^0.8.0;
3
3
 
4
4
  import "../core/erc20/PendleERC20.sol";
5
5
  import "../core/libraries/TokenHelper.sol";
6
- import "../interfaces/ILPWrapper.sol";
7
- import "../interfaces/IPLPWrapperFactory.sol";
8
6
  import "../interfaces/IPMarket.sol";
7
+ import "../interfaces/IPLPWrapperFactory.sol";
8
+ import "../interfaces/ILPWrapper.sol";
9
9
 
10
10
  contract PendleLPWrapper is PendleERC20, TokenHelper, ILPWrapper {
11
11
  address public immutable LP;
@@ -32,16 +32,7 @@ contract PendleLPWrapper is PendleERC20, TokenHelper, ILPWrapper {
32
32
  _transferOut(LP, receiver, netWrapIn);
33
33
  }
34
34
 
35
- function _beforeTokenTransfer(
36
- address,
37
- /*from*/
38
- address,
39
- /*to*/
40
- uint256 /*amount*/
41
- )
42
- internal
43
- override
44
- {
35
+ function _beforeTokenTransfer(address /*from*/, address /*to*/, uint256 /*amount*/) internal override {
45
36
  if (!isRewardRedemptionDisabled) {
46
37
  IPMarket(LP).redeemRewards(address(this));
47
38
  }
@@ -1,9 +1,9 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
2
  pragma solidity ^0.8.0;
3
3
 
4
- import "../core/libraries/BoringOwnableUpgradeableV2.sol";
5
- import "./PendleLPWrapper.sol";
6
4
  import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
5
+ import "./PendleLPWrapper.sol";
6
+ import "../core/libraries/BoringOwnableUpgradeableV2.sol";
7
7
 
8
8
  contract PendleLPWrapperFactory is BoringOwnableUpgradeableV2 {
9
9
  event LPWrapperCreated(address indexed lpToken, address indexed wrapper);
@@ -0,0 +1,64 @@
1
+ // SPDX-License-Identifier: MIT
2
+ pragma solidity ^0.8.0;
3
+
4
+ import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
5
+
6
+ contract PendleMerkleDepositor {
7
+ using SafeERC20 for IERC20;
8
+
9
+ event MerkleDeposit(bytes32 indexed campaignId, address indexed from, address indexed token, uint256 amount);
10
+
11
+ address public constant NATIVE = address(0);
12
+ address public immutable merkleDistributor;
13
+
14
+ constructor(address _merkleDistributor) {
15
+ merkleDistributor = _merkleDistributor;
16
+ }
17
+
18
+ /// @notice The `tokens` array must be sorted in strictly ascending order with no duplicates.
19
+ function depositToMerkleCampaign(
20
+ bytes32 campaignId,
21
+ address[] calldata tokens,
22
+ uint256[] calldata amounts
23
+ ) external payable {
24
+ uint256 length = tokens.length;
25
+
26
+ require(length != 0, "PMD: empty array");
27
+ require(length == amounts.length, "PMD: array length mismatch");
28
+
29
+ uint256 amountNative;
30
+ for (uint256 i = 0; i < length; ++i) {
31
+ if (i != length - 1) require(_lt(tokens[i], tokens[i + 1]), "PMD: invalid tokens order");
32
+ if (tokens[i] == NATIVE) amountNative = amounts[i];
33
+ }
34
+
35
+ require(amountNative == msg.value, "PMD: msg.value mismatch");
36
+
37
+ for (uint256 i = 0; i < length; ++i) {
38
+ if (amounts[i] != 0) {
39
+ uint256 preBalance = _tokenBalance(tokens[i], merkleDistributor);
40
+ _transferFrom(tokens[i], msg.sender, merkleDistributor, amounts[i]);
41
+ uint256 amountDeposited = _tokenBalance(tokens[i], merkleDistributor) - preBalance;
42
+
43
+ emit MerkleDeposit(campaignId, msg.sender, tokens[i], amountDeposited);
44
+ }
45
+ }
46
+ }
47
+
48
+ function _tokenBalance(address token, address account) internal view returns (uint256) {
49
+ return token == NATIVE ? account.balance : IERC20(token).balanceOf(account);
50
+ }
51
+
52
+ function _transferFrom(address token, address from, address to, uint256 amount) internal {
53
+ if (token == NATIVE) {
54
+ (bool success, ) = to.call{value: amount}("");
55
+ require(success, "PMD: eth send failed");
56
+ } else {
57
+ IERC20(token).safeTransferFrom(from, to, amount);
58
+ }
59
+ }
60
+
61
+ function _lt(address token0, address token1) internal pure returns (bool) {
62
+ return token0 < token1;
63
+ }
64
+ }
@@ -15,7 +15,7 @@ contract PendleMulticallV1 {
15
15
  function aggregate(Call[] calldata calls) public payable virtual {
16
16
  uint256 length = calls.length;
17
17
  Call calldata call;
18
- for (uint256 i = 0; i < length;) {
18
+ for (uint256 i = 0; i < length; ) {
19
19
  call = calls[i];
20
20
 
21
21
  (bool success, bytes memory resp) = call.target.call(call.callData);
@@ -31,15 +31,15 @@ contract PendleMulticallV1 {
31
31
  }
32
32
  }
33
33
 
34
- function tryAggregate(bool requireSuccess, uint256 gasLimit, Call[] calldata calls)
35
- public
36
- payable
37
- returns (Result[] memory returnData)
38
- {
34
+ function tryAggregate(
35
+ bool requireSuccess,
36
+ uint256 gasLimit,
37
+ Call[] calldata calls
38
+ ) public payable returns (Result[] memory returnData) {
39
39
  uint256 length = calls.length;
40
40
  returnData = new Result[](length);
41
41
  Call calldata call;
42
- for (uint256 i = 0; i < length;) {
42
+ for (uint256 i = 0; i < length; ) {
43
43
  call = calls[i];
44
44
 
45
45
  (bool success, bytes memory resp) = call.target.call{gas: gasLimit}(calls[i].callData);
@@ -17,7 +17,7 @@ contract PendleMulticallV2 {
17
17
  function aggregate(Call[] calldata calls) public payable virtual {
18
18
  uint256 length = calls.length;
19
19
  Call calldata call;
20
- for (uint256 i = 0; i < length;) {
20
+ for (uint256 i = 0; i < length; ) {
21
21
  call = calls[i];
22
22
 
23
23
  (bool success, bytes memory resp) = call.target.call(call.callData);
@@ -33,15 +33,15 @@ contract PendleMulticallV2 {
33
33
  }
34
34
  }
35
35
 
36
- function tryAggregate(bool requireSuccess, uint256 gasLimit, Call[] calldata calls)
37
- public
38
- payable
39
- returns (Result[] memory returnData)
40
- {
36
+ function tryAggregate(
37
+ bool requireSuccess,
38
+ uint256 gasLimit,
39
+ Call[] calldata calls
40
+ ) public payable returns (Result[] memory returnData) {
41
41
  uint256 length = calls.length;
42
42
  returnData = new Result[](length);
43
43
  Call calldata call;
44
- for (uint256 i = 0; i < length;) {
44
+ for (uint256 i = 0; i < length; ) {
45
45
  call = calls[i];
46
46
 
47
47
  (bool success, bytes memory resp) = call.target.call{gas: gasLimit}(calls[i].callData);
@@ -59,15 +59,14 @@ contract PendleMulticallV2 {
59
59
  }
60
60
  }
61
61
 
62
- function tryAggregateRevert(uint256 gasLimit, Call[] calldata calls)
63
- public
64
- payable
65
- returns (bytes[] memory returnData)
66
- {
62
+ function tryAggregateRevert(
63
+ uint256 gasLimit,
64
+ Call[] calldata calls
65
+ ) public payable returns (bytes[] memory returnData) {
67
66
  uint256 length = calls.length;
68
67
  returnData = new bytes[](length);
69
68
  Call calldata call;
70
- for (uint256 i = 0; i < length;) {
69
+ for (uint256 i = 0; i < length; ) {
71
70
  call = calls[i];
72
71
 
73
72
  (, returnData[i]) = address(this).delegatecall{gas: gasLimit}(
@@ -1,9 +1,9 @@
1
1
  // SPDX-License-Identifier: MIT
2
2
  pragma solidity ^0.8.17;
3
3
 
4
- import "../interfaces/IPOffchainStorage.sol";
5
4
  import "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
6
5
  import "@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol";
6
+ import "../interfaces/IPOffchainStorage.sol";
7
7
 
8
8
  contract PendleOffchainStorage is IPOffchainStorage, UUPSUpgradeable, AccessControlUpgradeable {
9
9
  bytes32 public constant MAINTAINER = keccak256("MAINTAINER");
@@ -1,11 +1,9 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
2
  pragma solidity ^0.8.17;
3
3
 
4
- import "../interfaces/IPPriceFeed.sol";
5
4
  import "../interfaces/IWstETH.sol";
6
- import {
7
- AggregatorV2V3Interface as IChainlinkAggregator
8
- } from "@chainlink/contracts/src/v0.8/interfaces/AggregatorV2V3Interface.sol";
5
+ import "../interfaces/IPPriceFeed.sol";
6
+ import {AggregatorV2V3Interface as IChainlinkAggregator} from "@chainlink/contracts/src/v0.8/interfaces/AggregatorV2V3Interface.sol";
9
7
 
10
8
  contract PendleWstETHPriceFeed is IPPriceFeed {
11
9
  // solhint-disable immutable-vars-naming
@@ -10,18 +10,17 @@ contract SimulateHelper {
10
10
  original = address(this);
11
11
  }
12
12
 
13
- function multicallRevert(uint256 gasLimit, address[] calldata targets, bytes[] calldata callDatas)
14
- public
15
- payable
16
- virtual
17
- returns (bytes[] memory res, uint256[] memory gasUsed)
18
- {
13
+ function multicallRevert(
14
+ uint256 gasLimit,
15
+ address[] calldata targets,
16
+ bytes[] calldata callDatas
17
+ ) public payable virtual returns (bytes[] memory res, uint256[] memory gasUsed) {
19
18
  require(targets.length == callDatas.length, "length mismatch");
20
19
 
21
20
  uint256 length = callDatas.length;
22
21
  res = new bytes[](length);
23
22
  gasUsed = new uint256[](length);
24
- for (uint256 i = 0; i < length;) {
23
+ for (uint256 i = 0; i < length; ) {
25
24
  uint256 gasBefore = gasleft();
26
25
  (, res[i]) = original.delegatecall{gas: gasLimit}(
27
26
  abi.encodeWithSignature("simulate(address,bytes)", targets[i], callDatas[i])