@pendle/core-v2 2.23.2-mantle → 2.23.3-mantle

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 (538) 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/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
  10. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  12. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  13. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  14. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  15. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  16. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  17. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +2 -2
  19. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  20. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  21. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  22. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  25. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  26. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  27. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  28. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  31. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  32. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  33. package/build/artifacts/contracts/LiquidityMining/libraries/WeekMath.sol/WeekMath.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -2
  36. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
  38. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
  40. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  42. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  44. package/build/artifacts/contracts/core/Market/PendleExternalRewardDistributor.sol/PendleExternalRewardDistributor.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/Market/PendleExternalRewardDistributor.sol/PendleExternalRewardDistributor.json +2 -2
  46. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  49. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  51. package/build/artifacts/contracts/core/Market/v2/PendleGaugeV2.sol/PendleGaugeV2.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/Market/v2/PendleMarketFactoryV2.sol/PendleMarketFactoryV2.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/Market/v2/PendleMarketFactoryV2.sol/PendleMarketFactoryV2.json +16 -16
  54. package/build/artifacts/contracts/core/Market/v2/PendleMarketV2.sol/PendleMarketV2.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/Market/v2/PendleMarketV2.sol/PendleMarketV2.json +11 -6
  56. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  60. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
  62. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.dbg.json +1 -1
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ankr/PendleAnkrBNBSY.sol/PendleAnkrBNBSY.json +2 -2
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.dbg.json +1 -1
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/AuraEthxBbAWethSY.sol/AuraEthxBbAWethSY.json +2 -2
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +2 -2
  71. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
  73. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
  74. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
  75. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
  77. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethVethSY.sol/PendleAuraWethVethSY.dbg.json +1 -1
  78. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethVethSY.sol/PendleAuraWethVethSY.json +2 -2
  79. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
  81. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWstethAnkreth.sol/PendleAuraWstethAnkreth.json +2 -2
  83. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.json +2 -2
  85. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.json +191 -2
  87. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.json +2 -2
  89. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
  90. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
  91. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
  92. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.json +2 -2
  93. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
  94. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.json +2 -2
  95. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
  96. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.json +2 -2
  97. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  98. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.json +2 -2
  99. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
  100. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
  101. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  102. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  103. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  104. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  105. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  106. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
  107. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
  108. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
  109. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
  110. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
  111. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +2 -2
  112. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  113. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  114. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  115. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  116. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  117. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  118. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  119. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  120. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +1 -1
  121. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  122. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
  123. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +1 -1
  124. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +2 -2
  125. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
  126. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
  127. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  128. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  129. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
  130. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
  131. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
  132. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
  133. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.dbg.json +1 -1
  134. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.json +2 -2
  135. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  136. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  137. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.dbg.json +1 -1
  138. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.json +2 -2
  139. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.dbg.json +1 -1
  140. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/PendleThenaSY.sol/PendleThenaSY.json +2 -2
  141. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaLpHelper.sol/ThenaLpHelper.dbg.json +1 -1
  142. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaMath.sol/ThenaMath.dbg.json +1 -1
  143. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/IThenaSY.dbg.json +1 -1
  144. package/build/artifacts/contracts/core/StandardizedYield/implementations/Thena/ThenaPreview.sol/ThenaPreview.dbg.json +1 -1
  145. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  146. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  147. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  148. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  149. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  150. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  151. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  152. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  153. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  154. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.json +2 -2
  155. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  156. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
  157. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  158. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
  159. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  160. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  161. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  162. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.json +2 -2
  163. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  164. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  165. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  166. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  167. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  168. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +2 -18
  169. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  170. package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
  171. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
  172. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  173. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  174. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  175. package/build/artifacts/contracts/interfaces/Ankr/IAnkrBNB.sol/IAnkrBNB.dbg.json +1 -1
  176. package/build/artifacts/contracts/interfaces/Ankr/IAnkrLiquidStaking.sol/IAnkrLiquidStaking.dbg.json +1 -1
  177. package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +1 -1
  178. package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +1 -1
  179. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  180. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
  181. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
  182. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
  183. package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +1 -1
  184. package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +1 -1
  185. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
  186. package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +1 -1
  187. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  188. package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.dbg.json +1 -1
  189. package/build/artifacts/contracts/interfaces/Camelot/ICamelotFactory.sol/ICamelotFactory.dbg.json +1 -1
  190. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTFactory.sol/ICamelotNFTFactory.dbg.json +1 -1
  191. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTHandler.sol/ICamelotNFTHandler.dbg.json +1 -1
  192. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
  193. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
  194. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPoolFactory.sol/ICamelotNitroPoolFactory.dbg.json +1 -1
  195. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
  196. package/build/artifacts/contracts/interfaces/Camelot/ICamelotRouter.sol/ICamelotRouter.dbg.json +1 -1
  197. package/build/artifacts/contracts/interfaces/Camelot/ICamelotYieldBooster.sol/ICamelotYieldBooster.dbg.json +1 -1
  198. package/build/artifacts/contracts/interfaces/Camelot/IXGrail.sol/IXGrail.dbg.json +1 -1
  199. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
  200. package/build/artifacts/contracts/interfaces/ConvexCurve/ICrvDepositor.sol/ICrvDepositor.dbg.json +1 -1
  201. package/build/artifacts/contracts/interfaces/ConvexCurve/ICvxCrv.sol/ICvxCrv.dbg.json +1 -1
  202. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
  203. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  204. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
  205. package/build/artifacts/contracts/interfaces/Frax/IFrxEthMinter.sol/IFrxEthMinter.dbg.json +1 -1
  206. package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
  207. package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.dbg.json +1 -1
  208. package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +1 -1
  209. package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.dbg.json +1 -1
  210. package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +1 -1
  211. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
  212. package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
  213. package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
  214. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +1 -1
  215. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +1 -1
  216. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  217. package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
  218. package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
  219. package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +1 -1
  220. package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +1 -1
  221. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  222. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  223. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  224. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  225. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  226. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  227. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +1 -1
  228. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  229. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  230. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  231. package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
  232. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  233. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  234. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  235. package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +1 -1
  236. package/build/artifacts/contracts/interfaces/IPExternalRewardDistributor.sol/IPExternalRewardDistributor.dbg.json +1 -1
  237. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  238. package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +1 -1
  239. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  240. package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
  241. package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
  242. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
  243. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
  244. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  245. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  246. package/build/artifacts/contracts/interfaces/IPMarketFactoryV2.sol/IPMarketFactoryV2.dbg.json +1 -1
  247. package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
  248. package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
  249. package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
  250. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  251. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  252. package/build/artifacts/contracts/interfaces/IPPtOracle.sol/IPPtOracle.dbg.json +1 -1
  253. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  254. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  255. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
  256. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  257. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  258. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  259. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  260. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
  261. package/build/artifacts/contracts/interfaces/IPendlePreviewHelper.sol/IPendlePreviewHelper.dbg.json +1 -1
  262. package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
  263. package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
  264. package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
  265. package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
  266. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
  267. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  268. package/build/artifacts/contracts/interfaces/IStargateLP.sol/IStargateLP.dbg.json +1 -1
  269. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  270. package/build/artifacts/contracts/interfaces/IStargateStaking.sol/IStargateStaking.dbg.json +1 -1
  271. package/build/artifacts/contracts/interfaces/ISwETH.sol/ISwETH.dbg.json +1 -1
  272. package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
  273. package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
  274. package/build/artifacts/contracts/interfaces/Thena/IThenaFactory.sol/IThenaFactory.dbg.json +1 -1
  275. package/build/artifacts/contracts/interfaces/Thena/IThenaGaugeV2.sol/IThenaGaugeV2.dbg.json +1 -1
  276. package/build/artifacts/contracts/interfaces/Thena/IThenaPair.sol/IThenaPair.dbg.json +1 -1
  277. package/build/artifacts/contracts/interfaces/Thena/IThenaRouter.sol/IThenaRouter.dbg.json +1 -1
  278. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
  279. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  280. package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  281. package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  282. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  283. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
  284. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  285. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
  286. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
  287. package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/LegacyNFTHelper.dbg.json +1 -1
  288. package/build/artifacts/contracts/offchain-helpers/LegacyNFTHelper.sol/StarNFTV1.dbg.json +1 -1
  289. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
  290. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +2 -2
  291. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
  292. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
  293. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.dbg.json +1 -1
  294. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.json +2 -2
  295. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  296. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  297. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  298. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  299. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  300. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  301. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  302. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
  303. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  304. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  305. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  306. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  307. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  308. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  309. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  310. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  311. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  312. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
  313. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +2 -2
  314. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
  315. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +2 -2
  316. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +1 -1
  317. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.json +2 -2
  318. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
  319. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +2 -2
  320. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
  321. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  322. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
  323. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  324. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
  325. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  326. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  327. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  328. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  329. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
  330. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  331. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  332. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
  333. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +2 -2
  334. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  335. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  336. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  337. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  338. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  339. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  340. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  341. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +4 -0
  342. package/build/artifacts/contracts/router/swap-aggregator/{oneinch → 1inch}/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.json +1 -1
  343. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +4 -0
  344. package/build/artifacts/contracts/router/swap-aggregator/{oneinch → 1inch}/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.json +1 -1
  345. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
  346. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  347. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
  348. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
  349. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
  350. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
  351. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +1 -1
  352. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
  353. package/contracts/core/Market/PendleExternalRewardDistributor.sol +34 -25
  354. package/contracts/core/Market/v2/PendleGaugeV2.sol +8 -3
  355. package/contracts/core/Market/v2/PendleMarketFactoryV2.sol +11 -4
  356. package/contracts/core/Market/v2/PendleMarketV2.sol +8 -2
  357. package/contracts/core/RewardManager/RewardManager.sol +0 -1
  358. package/contracts/core/RewardManager/RewardManagerAbstract.sol +3 -2
  359. package/contracts/core/libraries/ArrayLib.sol +19 -17
  360. package/contracts/offchain-helpers/AutomateReady.sol +111 -0
  361. package/contracts/offchain-helpers/ChainlinkRelayerAutomation.sol +52 -0
  362. package/contracts/offchain-helpers/ChainlinkRelayerGelato.sol +36 -0
  363. package/contracts/router/swap-aggregator/PendleSwap.sol +6 -1
  364. package/deployments/5000-core.json +11 -12
  365. package/deployments/5000-markets/WSTETH-MANTLE-MARCH2024.json +5 -5
  366. package/package.json +1 -1
  367. package/typechain-types/AuraSwEthBbAWethSYV2.ts +1532 -0
  368. package/typechain-types/BotActionCallback.ts +1993 -0
  369. package/typechain-types/BotActionHelper.ts +950 -0
  370. package/typechain-types/BotDecisionHelper.ts +561 -0
  371. package/typechain-types/BotDecisionHelperBase.ts +484 -0
  372. package/typechain-types/BotDecisionLib.ts +335 -0
  373. package/typechain-types/CamelotV1LpHelper.ts +203 -0
  374. package/typechain-types/CamelotV1Preview.ts +431 -0
  375. package/typechain-types/ComposableStablePreview.ts +287 -3
  376. package/typechain-types/IBotDecisionHelper.ts +452 -0
  377. package/typechain-types/ICamelotSY.ts +100 -0
  378. package/typechain-types/IExecutorHelper1.ts +643 -0
  379. package/typechain-types/IExecutorHelper2.ts +115 -0
  380. package/typechain-types/IExecutorHelperEthereum1.ts +643 -0
  381. package/typechain-types/IHashflow.ts +159 -0
  382. package/typechain-types/ILongYieldDecisionHelper.ts +486 -0
  383. package/typechain-types/ILongYieldTradingBot.ts +878 -0
  384. package/typechain-types/IShortYieldDecisionHelper.ts +452 -0
  385. package/typechain-types/IShortYieldTradingBot.ts +770 -0
  386. package/typechain-types/ITradingBotBase.ts +569 -0
  387. package/typechain-types/LiquiditySeedingHelper.ts +128 -0
  388. package/typechain-types/LongYieldActionHelper.ts +1993 -0
  389. package/typechain-types/LongYieldDecisionHelper.ts +601 -0
  390. package/typechain-types/LongYieldTradingBot.ts +2457 -0
  391. package/typechain-types/{AllErrorsDirectory.ts → MarketExtLib.ts} +36 -12
  392. package/typechain-types/PendleBinanceEth.ts +1229 -0
  393. package/typechain-types/PendleCamelotV1SY.ts +1961 -0
  394. package/typechain-types/PendleMarketFactoryV2.ts +26 -24
  395. package/typechain-types/PendleSwETH.ts +1216 -0
  396. package/typechain-types/PendleSwapArbitrum.ts +126 -0
  397. package/typechain-types/PendleSwapEthereum.ts +126 -0
  398. package/typechain-types/ShortYieldActionHelper.ts +1949 -0
  399. package/typechain-types/ShortYieldDecisionHelper.ts +601 -0
  400. package/typechain-types/ShortYieldTradingBot.ts +2305 -0
  401. package/typechain-types/TradingBotBase.ts +1949 -0
  402. package/typechain-types/TradingBotOffchain.ts +568 -0
  403. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  404. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  405. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  406. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
  407. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  408. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  409. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  410. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  411. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  412. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  413. package/typechain-types/factories/AuraEthxBbAWethSY__factory.ts +1 -1
  414. package/typechain-types/factories/AuraSwEthBbAWethSYV2__factory.ts +1244 -0
  415. package/typechain-types/factories/BotActionCallback__factory.ts +1720 -0
  416. package/typechain-types/factories/BotActionHelper__factory.ts +947 -0
  417. package/typechain-types/factories/BotDecisionHelperBase__factory.ts +808 -0
  418. package/typechain-types/factories/BotDecisionHelper__factory.ts +1192 -0
  419. package/typechain-types/factories/BotDecisionLib__factory.ts +642 -0
  420. package/typechain-types/factories/Broadcaster__factory.ts +1 -1
  421. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  422. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  423. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  424. package/typechain-types/factories/CamelotV1LpHelper__factory.ts +143 -0
  425. package/typechain-types/factories/CamelotV1Preview__factory.ts +309 -0
  426. package/typechain-types/factories/ComposableStablePreview__factory.ts +231 -4
  427. package/typechain-types/factories/Errors__factory.ts +1 -17
  428. package/typechain-types/factories/IBotDecisionHelper__factory.ts +667 -0
  429. package/typechain-types/factories/ICamelotSY__factory.ts +49 -0
  430. package/typechain-types/factories/IExecutorHelper1__factory.ts +403 -0
  431. package/typechain-types/factories/IExecutorHelper2__factory.ts +55 -0
  432. package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +407 -0
  433. package/typechain-types/factories/IHashflow__factory.ts +113 -0
  434. package/typechain-types/factories/ILongYieldDecisionHelper__factory.ts +690 -0
  435. package/typechain-types/factories/ILongYieldTradingBot__factory.ts +996 -0
  436. package/typechain-types/factories/IShortYieldDecisionHelper__factory.ts +671 -0
  437. package/typechain-types/factories/IShortYieldTradingBot__factory.ts +977 -0
  438. package/typechain-types/factories/ITradingBotBase__factory.ts +530 -0
  439. package/typechain-types/factories/LinearPreview__factory.ts +1 -1
  440. package/typechain-types/factories/LiquiditySeedingHelper__factory.ts +124 -0
  441. package/typechain-types/factories/LongYieldActionHelper__factory.ts +1724 -0
  442. package/typechain-types/factories/LongYieldDecisionHelper__factory.ts +1272 -0
  443. package/typechain-types/factories/LongYieldTradingBot__factory.ts +2527 -0
  444. package/typechain-types/factories/MarketExtLib__factory.ts +74 -0
  445. package/typechain-types/factories/MetaStableMath__factory.ts +1 -1
  446. package/typechain-types/factories/MetaStablePreview__factory.ts +1 -1
  447. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  448. package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1 -1
  449. package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +1 -1
  450. package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
  451. package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
  452. package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
  453. package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
  454. package/typechain-types/factories/PendleAuraWethVethSY__factory.ts +1 -1
  455. package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
  456. package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1 -1
  457. package/typechain-types/factories/PendleBinanceEth__factory.ts +1052 -0
  458. package/typechain-types/factories/PendleCamelotV1SY__factory.ts +1595 -0
  459. package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
  460. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  461. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  462. package/typechain-types/factories/PendleExternalRewardDistributor__factory.ts +1 -1
  463. package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +1 -1
  464. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  465. package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
  466. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  467. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  468. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  469. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  470. package/typechain-types/factories/PendleLpGlpOracle__factory.ts +1 -1
  471. package/typechain-types/factories/PendleMarketFactoryV2__factory.ts +15 -15
  472. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  473. package/typechain-types/factories/PendleMarketV2__factory.ts +10 -1
  474. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  475. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  476. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  477. package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
  478. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  479. package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
  480. package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
  481. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  482. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  483. package/typechain-types/factories/PendleRouterHelper__factory.ts +1 -1
  484. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  485. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  486. package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
  487. package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
  488. package/typechain-types/factories/PendleSwETH__factory.ts +1022 -0
  489. package/typechain-types/factories/PendleSwapArbitrum__factory.ts +129 -0
  490. package/typechain-types/factories/PendleSwapEthereum__factory.ts +129 -0
  491. package/typechain-types/factories/PendleSwap__factory.ts +1 -1
  492. package/typechain-types/factories/PendleThenaSY__factory.ts +1 -1
  493. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  494. package/typechain-types/factories/PendleWbEthSY__factory.ts +1 -1
  495. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  496. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  497. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  498. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
  499. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  500. package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
  501. package/typechain-types/factories/SAPE__factory.ts +1 -1
  502. package/typechain-types/factories/ShortYieldActionHelper__factory.ts +1674 -0
  503. package/typechain-types/factories/ShortYieldDecisionHelper__factory.ts +1272 -0
  504. package/typechain-types/factories/ShortYieldTradingBot__factory.ts +2335 -0
  505. package/typechain-types/factories/SwETHSY__factory.ts +1 -1
  506. package/typechain-types/factories/TradingBotBase__factory.ts +1670 -0
  507. package/typechain-types/factories/TradingBotOffchain__factory.ts +1133 -0
  508. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  509. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  510. package/typechain-types/hardhat.d.ts +170 -116
  511. package/typechain-types/index.ts +38 -26
  512. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewProxy.sol/ComposableStablePreviewProxy.dbg.json +0 -4
  513. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewProxy.sol/ComposableStablePreviewProxy.json +0 -219
  514. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV4.sol/ComposableStablePreviewV4.dbg.json +0 -4
  515. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV4.sol/ComposableStablePreviewV4.json +0 -133
  516. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV5.sol/ComposableStablePreviewV5.dbg.json +0 -4
  517. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreviewV5.sol/ComposableStablePreviewV5.json +0 -133
  518. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.dbg.json +0 -4
  519. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.json +0 -154
  520. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.dbg.json +0 -4
  521. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.json +0 -96
  522. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.dbg.json +0 -4
  523. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleMantleStakedEthSY.sol/PendleMantleStakedEthSY.json +0 -976
  524. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.dbg.json +0 -4
  525. package/build/artifacts/contracts/core/StandardizedYield/implementations/MantleStakedEth/PendleOracleForSyProxy.sol/PendleOracleForSyProxy.json +0 -149
  526. package/build/artifacts/contracts/interfaces/Balancer/IPComposableStablePreview.sol/IPComposableStablePreview.dbg.json +0 -4
  527. package/build/artifacts/contracts/interfaces/Balancer/IPComposableStablePreview.sol/IPComposableStablePreview.json +0 -133
  528. package/build/artifacts/contracts/interfaces/Balancer/IVersion.sol/IVersion.dbg.json +0 -4
  529. package/build/artifacts/contracts/interfaces/Balancer/IVersion.sol/IVersion.json +0 -24
  530. package/build/artifacts/contracts/interfaces/IPOracleForSy.sol/IPOracleForSy.dbg.json +0 -4
  531. package/build/artifacts/contracts/interfaces/IPOracleForSy.sol/IPOracleForSy.json +0 -24
  532. package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.dbg.json +0 -4
  533. package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.json +0 -1543
  534. package/build/artifacts/contracts/router/swap-aggregator/oneinch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +0 -4
  535. package/build/artifacts/contracts/router/swap-aggregator/oneinch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +0 -4
  536. package/typechain-types/SDKErrorsDirectory.ts +0 -57
  537. package/typechain-types/factories/AllErrorsDirectory__factory.ts +0 -1596
  538. package/typechain-types/factories/SDKErrorsDirectory__factory.ts +0 -1596
@@ -8,6 +8,7 @@ import "../libraries/TokenHelper.sol";
8
8
  import "../libraries/ArrayLib.sol";
9
9
  import "../../interfaces/IPExternalRewardDistributor.sol";
10
10
  import "../../interfaces/IPMarketFactory.sol";
11
+ import "../../interfaces/IPMarket.sol";
11
12
 
12
13
  contract PendleExternalRewardDistributor is
13
14
  IPExternalRewardDistributor,
@@ -22,8 +23,15 @@ contract PendleExternalRewardDistributor is
22
23
  uint128 internal constant WEEK = 7 days;
23
24
  address public immutable marketFactory;
24
25
 
26
+ mapping(address => address[]) internal rewardTokens;
27
+ mapping(address => mapping(address => MarketRewardData)) internal rewardData;
28
+
25
29
  modifier onlyValidMarket(address market) {
26
- require(IPMarketFactory(marketFactory).isValidMarket(market), "invalid market");
30
+ require(
31
+ IPMarketFactory(marketFactory).isValidMarket(market) &&
32
+ block.timestamp < IPMarket(market).expiry(),
33
+ "invalid market"
34
+ );
27
35
  _;
28
36
  }
29
37
 
@@ -31,47 +39,33 @@ contract PendleExternalRewardDistributor is
31
39
  marketFactory = _marketFactory;
32
40
  }
33
41
 
34
- mapping(address => address[]) internal rewardTokens;
35
- mapping(address => mapping(address => MarketRewardData)) internal rewardData;
36
-
37
42
  function initialize() external initializer {
38
43
  __BoringOwnable_init();
39
44
  }
40
45
 
41
- function getRewardTokens(address market)
42
- external
43
- view
44
- onlyValidMarket(market)
45
- returns (address[] memory)
46
- {
46
+ function getRewardTokens(
47
+ address market
48
+ ) external view onlyValidMarket(market) returns (address[] memory) {
47
49
  return rewardTokens[market];
48
50
  }
49
51
 
50
- function _getUpdatedMarketReward(address token, address market)
51
- internal
52
- view
53
- returns (MarketRewardData memory)
54
- {
55
- MarketRewardData memory rwd = rewardData[market][token];
56
- uint128 newLastUpdated = uint128(Math.min(uint128(block.timestamp), rwd.incentiveEndsAt));
57
- rwd.accumulatedReward += rwd.rewardPerSec * (newLastUpdated - rwd.lastUpdated);
58
- rwd.lastUpdated = newLastUpdated;
59
- return rwd;
60
- }
61
-
62
52
  function redeemRewards() external onlyValidMarket(msg.sender) {
63
53
  address market = msg.sender;
64
54
  address[] memory tokens = rewardTokens[market];
65
55
  for (uint256 i = 0; i < tokens.length; ++i) {
66
56
  address token = tokens[i];
67
57
 
68
- rewardData[market][token] = _getUpdatedMarketReward(market, token);
69
- uint256 amountToDistribute = rewardData[market][token].accumulatedReward;
58
+ MarketRewardData memory rwd = _getUpdatedMarketReward(market, token);
59
+ uint256 amountToDistribute = rwd.accumulatedReward;
70
60
 
71
61
  if (amountToDistribute > 0) {
72
- rewardData[market][token].accumulatedReward = 0;
62
+ rwd.accumulatedReward = 0;
63
+ // prevent re-entrancy
64
+ rewardData[market][token] = rwd;
73
65
  _transferOut(token, market, amountToDistribute);
74
66
  emit DistributeReward(market, token, amountToDistribute);
67
+ } else {
68
+ rewardData[market][token] = rwd;
75
69
  }
76
70
  }
77
71
  }
@@ -106,6 +100,10 @@ contract PendleExternalRewardDistributor is
106
100
  uint128 rewardAmount,
107
101
  uint128 duration
108
102
  ) internal onlyValidMarket(market) {
103
+ if (!rewardTokens[market].contains(token)) {
104
+ rewardTokens[market].push(token);
105
+ }
106
+
109
107
  MarketRewardData memory rwd = _getUpdatedMarketReward(market, token);
110
108
  require(block.timestamp + duration > rwd.incentiveEndsAt, "Invalid incentive duration");
111
109
 
@@ -122,5 +120,16 @@ contract PendleExternalRewardDistributor is
122
120
  emit AddRewardToMarket(market, token, rewardData[market][token]);
123
121
  }
124
122
 
123
+ function _getUpdatedMarketReward(
124
+ address market,
125
+ address token
126
+ ) internal view returns (MarketRewardData memory) {
127
+ MarketRewardData memory rwd = rewardData[market][token];
128
+ uint128 newLastUpdated = uint128(Math.min(uint128(block.timestamp), rwd.incentiveEndsAt));
129
+ rwd.accumulatedReward += rwd.rewardPerSec * (newLastUpdated - rwd.lastUpdated);
130
+ rwd.lastUpdated = newLastUpdated;
131
+ return rwd;
132
+ }
133
+
125
134
  function _authorizeUpgrade(address) internal virtual override onlyOwner {}
126
135
  }
@@ -31,12 +31,17 @@ abstract contract PendleGaugeV2 is RewardManager, IPGauge {
31
31
  uint256 public totalActiveSupply;
32
32
  mapping(address => uint256) public activeBalance;
33
33
 
34
- constructor(address _SY, address _vePendle, address _gaugeController, address _factory) {
34
+ constructor(
35
+ address _SY,
36
+ address _vePendle,
37
+ address _gaugeController,
38
+ address _externalRewardDistributor
39
+ ) {
35
40
  SY = _SY;
36
41
  vePENDLE = IPVeToken(_vePendle);
37
42
  gaugeController = _gaugeController;
38
43
  PENDLE = IPGaugeController(gaugeController).pendle();
39
- externalRewardDistributor = IPMarketFactoryV2(_factory).rewardDistributor();
44
+ externalRewardDistributor = _externalRewardDistributor;
40
45
  }
41
46
 
42
47
  /**
@@ -122,7 +127,7 @@ abstract contract PendleGaugeV2 is RewardManager, IPGauge {
122
127
  address[] memory externalRewards = IPExternalRewardDistributor(externalRewardDistributor)
123
128
  .getRewardTokens(address(this));
124
129
 
125
- rewardTokens = SYRewards.concat(externalRewards);
130
+ rewardTokens = SYRewards.merge(externalRewards);
126
131
  if (rewardTokens.contains(PENDLE)) return rewardTokens;
127
132
  return rewardTokens.append(PENDLE);
128
133
  }
@@ -24,7 +24,7 @@ contract PendleMarketFactoryV2 is BoringOwnableUpgradeable, IPMarketFactory {
24
24
  int256 public constant minInitialAnchor = Math.IONE;
25
25
 
26
26
  address public treasury;
27
- address public rewardDistributor;
27
+ address public externalRewardDistributor;
28
28
  FeeConfig public defaultFee;
29
29
  /// 1 SLOT
30
30
 
@@ -59,7 +59,7 @@ contract PendleMarketFactoryV2 is BoringOwnableUpgradeable, IPMarketFactory {
59
59
  uint8 _defaultReserveFeePercent,
60
60
  address newVePendle,
61
61
  address newGaugeController,
62
- address newRewardDistributor
62
+ address newExternalRewardDistributor
63
63
  ) external initializer {
64
64
  __BoringOwnable_init();
65
65
  setTreasury(_treasury);
@@ -67,7 +67,7 @@ contract PendleMarketFactoryV2 is BoringOwnableUpgradeable, IPMarketFactory {
67
67
 
68
68
  vePendle = newVePendle;
69
69
  gaugeController = newGaugeController;
70
- rewardDistributor = newRewardDistributor;
70
+ externalRewardDistributor = newExternalRewardDistributor;
71
71
  }
72
72
 
73
73
  /**
@@ -92,7 +92,14 @@ contract PendleMarketFactoryV2 is BoringOwnableUpgradeable, IPMarketFactory {
92
92
  market = BaseSplitCodeFactory._create2(
93
93
  0,
94
94
  bytes32(block.chainid),
95
- abi.encode(PT, scalarRoot, initialAnchor, vePendle, gaugeController),
95
+ abi.encode(
96
+ PT,
97
+ scalarRoot,
98
+ initialAnchor,
99
+ vePendle,
100
+ gaugeController,
101
+ externalRewardDistributor
102
+ ),
96
103
  marketCreationCodeContractA,
97
104
  marketCreationCodeSizeA,
98
105
  marketCreationCodeContractB,
@@ -60,10 +60,16 @@ contract PendleMarketV2 is PendleERC20Permit, PendleGaugeV2, IPMarket {
60
60
  int256 _scalarRoot,
61
61
  int256 _initialAnchor,
62
62
  address _vePendle,
63
- address _gaugeController
63
+ address _gaugeController,
64
+ address _externalRewardDistributor
64
65
  )
65
66
  PendleERC20Permit(NAME, SYMBOL, 18)
66
- PendleGaugeV2(IPPrincipalToken(_PT).SY(), _vePendle, _gaugeController, msg.sender)
67
+ PendleGaugeV2(
68
+ IPPrincipalToken(_PT).SY(),
69
+ _vePendle,
70
+ _gaugeController,
71
+ _externalRewardDistributor
72
+ )
67
73
  {
68
74
  PT = IPPrincipalToken(_PT);
69
75
  SY = IStandardizedYield(PT.SY());
@@ -13,7 +13,6 @@ abstract contract RewardManager is RewardManagerAbstract {
13
13
 
14
14
  mapping(address => RewardState) public rewardState;
15
15
 
16
- uint256 internal constant INITIAL_REWARD_INDEX = 1;
17
16
 
18
17
  function _updateRewardIndex()
19
18
  internal
@@ -13,6 +13,8 @@ import "./RewardManagerAbstract.sol";
13
13
  abstract contract RewardManagerAbstract is IRewardManager, TokenHelper {
14
14
  using Math for uint256;
15
15
 
16
+ uint256 internal constant INITIAL_REWARD_INDEX = 1;
17
+
16
18
  struct RewardState {
17
19
  uint128 index;
18
20
  uint128 lastBalance;
@@ -56,8 +58,7 @@ abstract contract RewardManagerAbstract is IRewardManager, TokenHelper {
56
58
  uint256 userIndex = userReward[token][user].index;
57
59
 
58
60
  if (userIndex == 0) {
59
- userReward[token][user].index = index.Uint128();
60
- continue;
61
+ userIndex = INITIAL_REWARD_INDEX.Uint128();
61
62
  }
62
63
 
63
64
  if (userIndex == index) continue;
@@ -40,32 +40,34 @@ library ArrayLib {
40
40
  out[length] = element;
41
41
  }
42
42
  /**
43
- * @dev This function assumes a and b each contains unidentical elements
43
+ * @dev This function assumes a and b each contains unidentical elements
44
44
  * @param a array of addresses a
45
45
  * @param b array of addresses b
46
46
  * @return out Concatenation of a and b containing unidentical elements
47
47
  */
48
- function concat(
48
+ function merge(
49
49
  address[] memory a,
50
50
  address[] memory b
51
51
  ) internal pure returns (address[] memory out) {
52
- uint256 countUnidenticalB = 0;
53
- bool[] memory isUnidentical = new bool[](b.length);
54
- for(uint256 i = 0; i < b.length; ++i) {
55
- if (!contains(a, b[i])) {
56
- countUnidenticalB++;
57
- isUnidentical[i] = true;
52
+ unchecked {
53
+ uint256 countUnidenticalB = 0;
54
+ bool[] memory isUnidentical = new bool[](b.length);
55
+ for(uint256 i = 0; i < b.length; ++i) {
56
+ if (!contains(a, b[i])) {
57
+ countUnidenticalB++;
58
+ isUnidentical[i] = true;
59
+ }
58
60
  }
59
- }
60
61
 
61
- out = new address[](a.length + countUnidenticalB);
62
- for(uint256 i = 0; i < a.length; ++i) {
63
- out[i] = a[i];
64
- }
65
- uint256 id = a.length;
66
- for(uint256 i = 0; i < b.length; ++i) {
67
- if (isUnidentical[i]) {
68
- out[id++] = b[i];
62
+ out = new address[](a.length + countUnidenticalB);
63
+ for(uint256 i = 0; i < a.length; ++i) {
64
+ out[i] = a[i];
65
+ }
66
+ uint256 id = a.length;
67
+ for(uint256 i = 0; i < b.length; ++i) {
68
+ if (isUnidentical[i]) {
69
+ out[id++] = b[i];
70
+ }
69
71
  }
70
72
  }
71
73
  }
@@ -0,0 +1,111 @@
1
+ // SPDX-License-Identifier: UNLICENSED
2
+ pragma solidity ^0.8.14;
3
+
4
+ import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
5
+
6
+ enum Module {
7
+ RESOLVER,
8
+ TIME,
9
+ PROXY,
10
+ SINGLE_EXEC
11
+ }
12
+
13
+ struct ModuleData {
14
+ Module[] modules;
15
+ bytes[] args;
16
+ }
17
+
18
+ interface IAutomate {
19
+ function createTask(
20
+ address execAddress,
21
+ bytes calldata execDataOrSelector,
22
+ ModuleData calldata moduleData,
23
+ address feeToken
24
+ ) external returns (bytes32 taskId);
25
+
26
+ function cancelTask(bytes32 taskId) external;
27
+
28
+ function getFeeDetails() external view returns (uint256, address);
29
+
30
+ function gelato() external view returns (address payable);
31
+
32
+ function taskTreasury() external view returns (ITaskTreasuryUpgradable);
33
+ }
34
+
35
+ interface ITaskTreasuryUpgradable {
36
+ function depositFunds(
37
+ address receiver,
38
+ address token,
39
+ uint256 amount
40
+ ) external payable;
41
+
42
+ function withdrawFunds(
43
+ address payable receiver,
44
+ address token,
45
+ uint256 amount
46
+ ) external;
47
+ }
48
+
49
+ interface IOpsProxyFactory {
50
+ function getProxyOf(address account) external view returns (address, bool);
51
+ }
52
+
53
+ /**
54
+ * @dev Inherit this contract to allow your smart contract to
55
+ * - Make synchronous fee payments.
56
+ * - Have call restrictions for functions to be automated.
57
+ */
58
+ // solhint-disable private-vars-leading-underscore
59
+ abstract contract AutomateReady {
60
+ IAutomate public immutable automate;
61
+ address public immutable dedicatedMsgSender;
62
+ address private immutable _gelato;
63
+ address internal constant ETH = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE;
64
+ address private constant OPS_PROXY_FACTORY =
65
+ 0xC815dB16D4be6ddf2685C201937905aBf338F5D7;
66
+
67
+ /**
68
+ * @dev
69
+ * Only tasks created by _taskCreator defined in constructor can call
70
+ * the functions with this modifier.
71
+ */
72
+ modifier onlyDedicatedMsgSender() {
73
+ require(msg.sender == dedicatedMsgSender, "Only dedicated msg.sender");
74
+ _;
75
+ }
76
+
77
+ /**
78
+ * @dev
79
+ * _taskCreator is the address which will create tasks for this contract.
80
+ */
81
+ constructor(address _automate, address _taskCreator) {
82
+ automate = IAutomate(_automate);
83
+ _gelato = IAutomate(_automate).gelato();
84
+ (dedicatedMsgSender,) = IOpsProxyFactory(OPS_PROXY_FACTORY).getProxyOf(
85
+ _taskCreator
86
+ );
87
+ }
88
+
89
+ /**
90
+ * @dev
91
+ * Transfers fee to gelato for synchronous fee payments.
92
+ *
93
+ * _fee & _feeToken should be queried from IAutomate.getFeeDetails()
94
+ */
95
+ function _transfer(uint256 _fee, address _feeToken) internal {
96
+ if (_feeToken == ETH) {
97
+ (bool success,) = _gelato.call{value: _fee}("");
98
+ require(success, "_transfer: ETH transfer failed");
99
+ } else {
100
+ SafeERC20.safeTransfer(IERC20(_feeToken), _gelato, _fee);
101
+ }
102
+ }
103
+
104
+ function _getFeeDetails()
105
+ internal
106
+ view
107
+ returns (uint256 fee, address feeToken)
108
+ {
109
+ (fee, feeToken) = automate.getFeeDetails();
110
+ }
111
+ }
@@ -0,0 +1,52 @@
1
+ // SPDX-License-Identifier: MIT
2
+ pragma solidity 0.8.17;
3
+
4
+ import "../core/libraries/BoringOwnableUpgradeable.sol";
5
+ import "../core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol";
6
+ import "@chainlink/contracts/src/v0.8/AutomationCompatible.sol";
7
+
8
+ contract ChainlinkRelayerAutomation is AutomationCompatible, BoringOwnableUpgradeable {
9
+ PendleChainlinkRelayer internal immutable relayer;
10
+ bytes32 internal constant ZERO_BYTES = bytes32(0);
11
+
12
+ int256 public answerLastSent;
13
+
14
+ constructor(PendleChainlinkRelayer _relayer) initializer {
15
+ __BoringOwnable_init();
16
+ relayer = _relayer;
17
+ }
18
+
19
+ receive() external payable {}
20
+
21
+ function withdraw() external onlyOwner {
22
+ payable(owner).transfer(address(this).balance);
23
+ }
24
+
25
+ function checkUpkeep(
26
+ bytes calldata /*checkData*/
27
+ )
28
+ public
29
+ view
30
+ returns (
31
+ bool upkeepNeeded,
32
+ bytes memory /*performData*/
33
+ )
34
+ {
35
+ (upkeepNeeded, ) = _checkUpkeep();
36
+ }
37
+
38
+ function performUpkeep(
39
+ bytes calldata /*performData*/
40
+ ) public {
41
+ (bool upkeepNeeded, int256 latestAnswer) = _checkUpkeep();
42
+ require(upkeepNeeded, "no upkeep needed");
43
+
44
+ relayer.run{ value: address(this).balance }();
45
+ answerLastSent = latestAnswer;
46
+ }
47
+
48
+ function _checkUpkeep() internal view returns (bool upkeepNeeded, int256 latestAnswer) {
49
+ latestAnswer = IChainlinkAggregator(relayer.chainlinkFeed()).latestAnswer();
50
+ return (latestAnswer != answerLastSent, latestAnswer);
51
+ }
52
+ }
@@ -0,0 +1,36 @@
1
+ // SPDX-License-Identifier: MIT
2
+ pragma solidity 0.8.17;
3
+
4
+ import "./AutomateReady.sol";
5
+ import "../core/libraries/BoringOwnableUpgradeable.sol";
6
+ import "../core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol";
7
+
8
+ contract ChainlinkRelayerGelato is AutomateReady, BoringOwnableUpgradeable {
9
+ PendleChainlinkRelayer public immutable relayer;
10
+
11
+ int256 public lastSentAnswer;
12
+
13
+ constructor(address _automate, address _taskCreator, PendleChainlinkRelayer _relayer) initializer
14
+ AutomateReady(_automate, _taskCreator) {
15
+ __BoringOwnable_init();
16
+ relayer = _relayer;
17
+ }
18
+
19
+ receive() external payable {}
20
+
21
+ function withdraw() external onlyOwner {
22
+ payable(owner).transfer(address(this).balance);
23
+ }
24
+
25
+ function run() external {
26
+ int256 latestAnswer = IChainlinkAggregator(relayer.chainlinkFeed()).latestAnswer();
27
+ require(lastSentAnswer != latestAnswer, "answer not new");
28
+
29
+ (uint256 fee, address feeToken) = _getFeeDetails();
30
+ _transfer(fee, feeToken);
31
+
32
+ relayer.run{value: address(this).balance}();
33
+ lastSentAnswer = latestAnswer;
34
+ }
35
+ }
36
+
@@ -6,7 +6,12 @@ import "./IPSwapAggregator.sol";
6
6
  import "./kyberswap/KyberInputScalingHelper.sol";
7
7
  import "./oneinch/OneInchAggregationRouterHelper.sol";
8
8
 
9
- contract PendleSwap is IPSwapAggregator, TokenHelper, KyberInputScalingHelper, OneInchAggregationRouterHelper {
9
+ contract PendleSwap is
10
+ IPSwapAggregator,
11
+ TokenHelper,
12
+ KyberInputScalingHelper,
13
+ OneInchAggregationRouterHelper
14
+ {
10
15
  using Address for address;
11
16
 
12
17
  function swap(
@@ -14,17 +14,16 @@
14
14
  "safeWaitTime": 15000,
15
15
  "sySwapper": ""
16
16
  },
17
- "baseCodeSplitter": "0x872c9d71a5B64A9611b08F0956A3cc3deB77A317",
17
+ "baseCodeSplitter": "0x58732F1C1243A0D5876a601FB8D1Ee508B21580D",
18
18
  "PENDLE": "0xd27B18915e7acc8FD6Ac75DB6766a80f8D2f5729",
19
- "yieldContractFactory": "0x1e9FF49352E7155D0AF658fd88a1B3d44ed60B20",
20
- "marketFactory": "0x5E9a7E1A15ab0eAaBD2D78fa36A87158752A1346",
21
- "router": "0xFc7A495389cD3454f5cC0Ecaa55D30E343A1Fc16",
22
- "routerStatic": "0x3B5ae552310638a69863f6E348B41912deFA0e3f",
23
- "pendleSwap": "0x9d9874e867b877dD0a3F1EafB8bb1Bc54eeCc682",
24
- "routerHelper": "0x09D65812dCD0f276e052583d41885cA5C7Dd0086",
25
- "ptOracle": "0x9D6d509C0354ACA187aAC6beA7d063D3Ef68e2A0",
26
- "externalRewardDistributor": "0xB4205a645c7e920BD8504181B1D7f2c5C955C3e7",
27
- "receiverEndpoint": "0x96F77F24b3d17166FcaF3a9E3B8330fF38B966F9",
28
- "vePendle": "0xaA7495dcbe99A8dbd0cfA8b27b95f77565a077c8",
29
- "gaugeController": "0x921b10Eb4F4a2afDD1fCD0514022D18faf32fDbF"
19
+ "yieldContractFactory": "0x4A2B38b9cBd83c86F261a4d64c243795D4d44aBC",
20
+ "marketFactory": "0x523eCB8501C14507bCa56d4752dA1991c6176758",
21
+ "router": "0x876Ff15FcDfFe000bf92B6dFAEB429A8e7BdD4a0",
22
+ "routerStatic": "0xb4853cc09De22A70977a2B1569a6792B5ba7d1d5",
23
+ "pendleSwap": "0xcb645C93820B92E5F21781C5c3c18C29BCb6126B",
24
+ "ptOracle": "0x52420A287d9b29394f7dA44b1E4C0D4f7753a803",
25
+ "externalRewardDistributor": "0x8e21083cD387808BA8EE08e555622F997338eb1D",
26
+ "receiverEndpoint": "0xA8CD765E7F6D164F873794C53021693B14925C91",
27
+ "vePendle": "0xf3038Be5aA8cB10fE3F3B42809283F05A9776598",
28
+ "gaugeController": "0x59f0C4a186744b573f15fbbC3737014F7F3Da835"
30
29
  }
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "SY wstETH",
3
3
  "SY": "0xeC030Ca1A8bc0084271d5CC3E0bd3184B1DDFC27",
4
- "YT": "0x6B212804b510c1140d8a968888F0B3b8b2FB71E0",
5
- "PT": "0xbFDc43Fd918586673f308D898f10e9B87dc8dB5B",
6
- "market": "0x3ae145cc22cd07a8de7eae7d83fb5b6b2363673a",
4
+ "YT": "0x170Ede592224b6Da02B0e85D4019416008596B96",
5
+ "PT": "0x7bA5Ee452EC9a9872B97E5ab978cd1358c752d12",
6
+ "market": "0x900A84AA9B31b9898533Df12cF5F8B2447118ba6",
7
7
  "expiry": 1711584000,
8
- "scalarRoot": "197848855033000000000",
9
- "initAnchor": "1025391787000000000"
8
+ "scalarRoot": "197935131557000000000",
9
+ "initAnchor": "1024944235000000000"
10
10
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@pendle/core-v2",
3
3
  "description": "Core smart contracts of Pendle Protocol.",
4
4
  "license": "BUSL-1.1",
5
- "version": "2.23.2-mantle",
5
+ "version": "2.23.3-mantle",
6
6
  "homepage": "https://pendle.finance",
7
7
  "keywords": [
8
8
  "pendle",