@pendle/core-v2 1.4.0-mainnet → 1.4.1-testnet

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 (769) 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/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
  7. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.dbg.json +1 -1
  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 +3 -3
  16. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  18. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  19. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  20. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.json +39 -0
  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 +3 -3
  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/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  47. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  49. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
  53. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.json +2 -2
  57. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSY.sol/PendleAuraWethAnkrethSY.dbg.json +4 -0
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSY.sol/PendleAuraWethAnkrethSY.json +1192 -0
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.json +2 -2
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.json +2 -2
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +1 -1
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.json +2 -2
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.json +2 -2
  71. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
  73. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.json +2 -2
  74. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  75. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  77. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  78. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  79. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  81. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  83. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.json +2 -2
  85. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.json +2 -2
  87. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.json +2 -2
  89. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  90. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +4 -0
  91. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.json +50 -0
  92. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +4 -0
  93. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +1163 -0
  94. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +4 -0
  95. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +974 -0
  96. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  97. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  98. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  99. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  100. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  101. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  102. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  103. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  104. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  105. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  106. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  107. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +4 -0
  108. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.json +66 -0
  109. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +4 -0
  110. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.json +476 -0
  111. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +4 -0
  112. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +590 -0
  113. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +4 -0
  114. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +1017 -0
  115. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  116. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.json +2 -2
  117. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  118. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.json +2 -2
  119. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  120. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.json +2 -2
  121. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  122. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.json +2 -2
  123. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  124. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.json +2 -2
  125. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  126. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  127. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.json +2 -2
  128. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  129. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +50 -2
  130. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  131. package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
  132. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
  133. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.json +2 -2
  134. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  135. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  136. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.json +2 -2
  137. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  138. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.json +2 -2
  139. package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +1 -1
  140. package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +1 -1
  141. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  142. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
  143. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
  144. package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +1 -1
  145. package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +1 -1
  146. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
  147. package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +1 -1
  148. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  149. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
  150. package/build/artifacts/contracts/interfaces/ConvexCurve/ICrvDepositor.sol/ICrvDepositor.dbg.json +1 -1
  151. package/build/artifacts/contracts/interfaces/ConvexCurve/ICvxCrv.sol/ICvxCrv.dbg.json +1 -1
  152. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
  153. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  154. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
  155. package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +4 -0
  156. package/build/artifacts/contracts/interfaces/{IAToken.sol/IAToken.json → GMX/IGMXVault.sol/IGMXVault.json} +130 -74
  157. package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.dbg.json +4 -0
  158. package/build/artifacts/contracts/interfaces/{IREDACTEDStaking.sol/IREDACTEDStaking.json → GMX/IGlpManager.sol/IGlpManager.json} +24 -47
  159. package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +4 -0
  160. package/build/artifacts/contracts/interfaces/{IWAvax.sol/IWAvax.json → GMX/IRewardRouterV2.sol/IRewardRouterV2.json} +86 -137
  161. package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.dbg.json +4 -0
  162. package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.json +45 -0
  163. package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +4 -0
  164. package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.json +48 -0
  165. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
  166. package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
  167. package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
  168. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +4 -0
  169. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.json +93 -0
  170. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +4 -0
  171. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.json +87 -0
  172. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  173. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.json +19 -0
  174. package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
  175. package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
  176. package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +1 -1
  177. package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +1 -1
  178. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  179. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.json +338 -16
  180. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +4 -0
  181. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.json +307 -0
  182. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +4 -0
  183. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.json +269 -0
  184. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +4 -0
  185. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +1260 -0
  186. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  187. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.json +105 -224
  188. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +4 -0
  189. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.json +273 -0
  190. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +1 -1
  191. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.json +56 -12
  192. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +4 -0
  193. package/build/artifacts/contracts/interfaces/{IPActionSwapPTYT.sol/IPActionSwapPTYT.json → IPActionStorageStatic.sol/IPActionStorageStatic.json} +70 -76
  194. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  195. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.json +52 -8
  196. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  197. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.json +231 -8
  198. package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +4 -0
  199. package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.json +40 -0
  200. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  201. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +675 -241
  202. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  203. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  204. package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +1 -1
  205. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  206. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  207. package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
  208. package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
  209. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
  210. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +4 -0
  211. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.json +40 -0
  212. package/build/artifacts/contracts/interfaces/IPLiquidityMigrator.sol/IPLiquidityMigrator.dbg.json +4 -0
  213. package/build/artifacts/contracts/interfaces/IPLiquidityMigrator.sol/IPLiquidityMigrator.json +655 -0
  214. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  215. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  216. package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
  217. package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +4 -0
  218. package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.json +55 -0
  219. package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
  220. package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.json +1 -1
  221. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  222. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  223. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +4 -0
  224. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +2322 -0
  225. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
  226. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  227. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.json +39 -0
  228. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  229. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  230. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  231. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +4 -0
  232. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.json +679 -0
  233. package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
  234. package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
  235. package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
  236. package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
  237. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
  238. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  239. package/build/artifacts/contracts/interfaces/IStargateLPStaking.sol/IStargateLPStaking.dbg.json +1 -1
  240. package/build/artifacts/contracts/interfaces/IStargatePool.sol/IStargatePool.dbg.json +1 -1
  241. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  242. package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
  243. package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
  244. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +4 -0
  245. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.json +143 -0
  246. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  247. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.json +2 -2
  248. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +4 -0
  249. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +256 -0
  250. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  251. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
  252. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
  253. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.json +2 -2
  254. package/build/artifacts/contracts/offchain-helpers/PendleMulticall.sol/PendleMulticall.dbg.json +1 -1
  255. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +4 -0
  256. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +30 -0
  257. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +4 -0
  258. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +307 -0
  259. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +4 -0
  260. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +333 -0
  261. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +4 -0
  262. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +1397 -0
  263. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +4 -0
  264. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +310 -0
  265. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +4 -0
  266. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +228 -0
  267. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +4 -0
  268. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +93 -0
  269. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +4 -0
  270. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.json +10 -0
  271. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  272. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +345 -62
  273. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  274. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +107 -260
  275. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  276. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.json +57 -18
  277. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  278. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +54 -65
  279. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  280. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +342 -44
  281. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  282. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +76 -67
  283. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +4 -0
  284. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +773 -0
  285. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +4 -0
  286. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.json +141 -0
  287. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  288. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.json +1 -15
  289. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  290. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  291. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  292. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  293. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  294. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +4 -0
  295. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.json +160 -0
  296. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +4 -0
  297. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.json +10 -0
  298. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +4 -0
  299. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.json +56 -0
  300. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapArbitrum.sol/PendleSwapArbitrum.dbg.json +4 -0
  301. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapArbitrum.sol/PendleSwapArbitrum.json +76 -0
  302. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapEthereum.sol/PendleSwapEthereum.dbg.json +4 -0
  303. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapEthereum.sol/PendleSwapEthereum.json +76 -0
  304. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +4 -0
  305. package/build/artifacts/contracts/router/{kyberswap/interfaces → swap-aggregator/kyberswap/arbitrum}/IAggregationExecutor.sol/IAggregationExecutor.json +1 -1
  306. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper1.sol/IExecutorHelper1.dbg.json +4 -0
  307. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper1.sol/IExecutorHelper1.json +388 -0
  308. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper2.sol/IExecutorHelper2.dbg.json +4 -0
  309. package/build/artifacts/contracts/router/{kyberswap/IAggregatorRouterHelper.sol/IAggregationRouterHelper.json → swap-aggregator/kyberswap/arbitrum/IExecutorHelper2.sol/IExecutorHelper2.json} +13 -8
  310. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IHashflow.sol/IHashflow.dbg.json +4 -0
  311. package/build/artifacts/contracts/router/{kyberswap/interfaces → swap-aggregator/kyberswap/arbitrum}/IHashflow.sol/IHashflow.json +1 -1
  312. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +4 -0
  313. package/build/artifacts/contracts/router/{kyberswap/interfaces → swap-aggregator/kyberswap/arbitrum}/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.json +1 -1
  314. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/KyberHelperArbitrum.sol/KyberHelperArbitrum.dbg.json +4 -0
  315. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/KyberHelperArbitrum.sol/KyberHelperArbitrum.json +10 -0
  316. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/ScaleDataHelperArbitrum.sol/ScaleDataHelperArbitrum.dbg.json +4 -0
  317. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/arbitrum/ScaleDataHelperArbitrum.sol/ScaleDataHelperArbitrum.json +10 -0
  318. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +4 -0
  319. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IAggregationExecutor.sol/IAggregationExecutor.json +65 -0
  320. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.dbg.json +4 -0
  321. package/build/artifacts/contracts/router/{kyberswap/interfaces → swap-aggregator/kyberswap/ethereum}/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.json +30 -1
  322. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IHashflow.sol/IHashflow.dbg.json +4 -0
  323. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IHashflow.sol/IHashflow.json +101 -0
  324. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +4 -0
  325. package/build/artifacts/contracts/router/{kyberswap/interfaces/IMetaAggregationRouter.sol/IMetaAggregationRouter.json → swap-aggregator/kyberswap/ethereum/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.json} +82 -50
  326. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/KyberHelperEthereum.sol/KyberHelperEthereum.dbg.json +4 -0
  327. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/KyberHelperEthereum.sol/KyberHelperEthereum.json +10 -0
  328. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/ScaleDataHelperEthereum.sol/ScaleDataHelperEthereum.dbg.json +4 -0
  329. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ethereum/ScaleDataHelperEthereum.sol/ScaleDataHelperEthereum.json +10 -0
  330. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol +4 -5
  331. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol +3 -6
  332. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol +7 -10
  333. package/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol +8 -10
  334. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +18 -8
  335. package/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +3 -5
  336. package/contracts/LiquidityMining/README.md +49 -46
  337. package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol +9 -14
  338. package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +4 -10
  339. package/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +23 -36
  340. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +18 -24
  341. package/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +3 -4
  342. package/contracts/LiquidityMining/libraries/VeBalanceLib.sol +20 -26
  343. package/contracts/core/BulkSeller/BulkSeller.sol +1 -5
  344. package/contracts/core/BulkSeller/BulkSellerFactory.sol +4 -5
  345. package/contracts/core/BulkSeller/BulkSellerMathCore.sol +20 -25
  346. package/contracts/core/Market/MarketMathCore.sol +23 -69
  347. package/contracts/core/Market/OracleLib.sol +4 -4
  348. package/contracts/core/Market/PendleGauge.sol +7 -20
  349. package/contracts/core/Market/PendleMarket.sol +5 -15
  350. package/contracts/core/Market/PendleMarketFactory.sol +3 -9
  351. package/contracts/core/RewardManager/RewardManager.sol +5 -7
  352. package/contracts/core/RewardManager/RewardManagerAbstract.sol +4 -4
  353. package/contracts/core/StandardizedYield/PYIndex.sol +7 -36
  354. package/contracts/core/StandardizedYield/SYBase.sol +20 -26
  355. package/contracts/core/StandardizedYield/SYBaseWithRewards.sol +7 -19
  356. package/contracts/core/StandardizedYield/SYUtils.sol +4 -5
  357. package/contracts/core/StandardizedYield/StEthHelper.sol +12 -16
  358. package/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol +14 -24
  359. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSY.sol +127 -0
  360. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol +12 -20
  361. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol +12 -20
  362. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol +1 -5
  363. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol +28 -44
  364. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol +28 -47
  365. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol +6 -10
  366. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol +6 -10
  367. package/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol +13 -22
  368. package/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol +20 -27
  369. package/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol +20 -27
  370. package/contracts/core/StandardizedYield/implementations/Convex/README.md +4 -4
  371. package/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol +32 -40
  372. package/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol +10 -12
  373. package/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol +14 -18
  374. package/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol +32 -48
  375. package/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol +141 -0
  376. package/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol +214 -0
  377. package/contracts/core/StandardizedYield/implementations/GLP/README.md +63 -0
  378. package/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol +112 -0
  379. package/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol +13 -23
  380. package/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol +13 -23
  381. package/contracts/core/YieldContracts/PendleYieldToken.sol +28 -44
  382. package/contracts/core/YieldContractsV2/InterestManagerYTV2.sol +114 -0
  383. package/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol +63 -0
  384. package/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol +200 -0
  385. package/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol +471 -0
  386. package/contracts/core/erc20/PendleERC20.sol +14 -44
  387. package/contracts/core/libraries/ArrayLib.sol +20 -9
  388. package/contracts/core/libraries/BaseSplitCodeFactory.sol +5 -7
  389. package/contracts/core/libraries/BoringOwnableUpgradeable.sol +1 -5
  390. package/contracts/core/libraries/Errors.sol +5 -2
  391. package/contracts/core/libraries/StringLib.sol +14 -20
  392. package/contracts/core/libraries/TokenHelper.sol +11 -26
  393. package/contracts/core/libraries/math/LogExpMath.sol +2 -2
  394. package/contracts/core/libraries/math/Math.sol +3 -15
  395. package/contracts/interfaces/Balancer/IComposableStable.sol +4 -14
  396. package/contracts/interfaces/Balancer/IMetaStablePool.sol +4 -13
  397. package/contracts/interfaces/Balancer/IVault.sol +4 -6
  398. package/contracts/interfaces/ConvexCurve/IBooster.sol +4 -16
  399. package/contracts/interfaces/ConvexCurve/ICrvDepositor.sol +1 -5
  400. package/contracts/interfaces/ConvexCurve/IRewards.sol +1 -4
  401. package/contracts/interfaces/Curve/ICrvPool.sol +12 -11
  402. package/contracts/interfaces/Curve/ITriCrvPool.sol +4 -4
  403. package/contracts/interfaces/GMX/IGMXVault.sol +47 -0
  404. package/contracts/interfaces/GMX/IGlpManager.sol +12 -0
  405. package/contracts/interfaces/GMX/IRewardRouterV2.sol +43 -0
  406. package/contracts/interfaces/GMX/IVaultPriceFeed.sol +11 -0
  407. package/contracts/interfaces/IAddressProvider.sol +7 -0
  408. package/contracts/interfaces/IApeStaking.sol +3 -4
  409. package/contracts/interfaces/IDiamondCut.sol +36 -0
  410. package/contracts/interfaces/IDiamondLoupe.sol +40 -0
  411. package/contracts/interfaces/IERC4626.sol +3 -5
  412. package/contracts/interfaces/IPActionAddRemoveLiq.sol +38 -16
  413. package/contracts/interfaces/IPActionInfoStatic.sol +43 -0
  414. package/contracts/interfaces/IPActionMarketAuxStatic.sol +34 -0
  415. package/contracts/interfaces/IPActionMarketCoreStatic.sol +335 -0
  416. package/contracts/interfaces/IPActionMintRedeem.sol +2 -55
  417. package/contracts/interfaces/IPActionMintRedeemStatic.sol +55 -0
  418. package/contracts/interfaces/IPActionMisc.sol +18 -4
  419. package/contracts/interfaces/IPActionStorageStatic.sol +24 -0
  420. package/contracts/interfaces/IPActionSwapPT.sol +1 -1
  421. package/contracts/interfaces/IPActionSwapYT.sol +28 -4
  422. package/contracts/interfaces/IPActionVePendleStatic.sol +9 -0
  423. package/contracts/interfaces/IPAllAction.sol +5 -3
  424. package/contracts/interfaces/IPBulkSellerSYCallback.sol +1 -5
  425. package/contracts/interfaces/IPFeeDistributor.sol +4 -3
  426. package/contracts/interfaces/IPGaugeController.sol +3 -9
  427. package/contracts/interfaces/IPInterestManagerYT.sol +3 -4
  428. package/contracts/interfaces/IPInterestManagerYTV2.sol +11 -0
  429. package/contracts/interfaces/IPLiquidityMigrator.sol +130 -0
  430. package/contracts/interfaces/IPMarket.sol +5 -16
  431. package/contracts/interfaces/IPMarketFactory.sol +3 -8
  432. package/contracts/interfaces/IPMarketSwapCallback.sol +1 -5
  433. package/contracts/interfaces/IPMiniDiamond.sol +12 -0
  434. package/contracts/interfaces/IPMsgReceiverApp.sol +1 -1
  435. package/contracts/interfaces/IPRouterStatic.sol +19 -0
  436. package/contracts/interfaces/IPVotingController.sol +11 -6
  437. package/contracts/interfaces/IPVotingEscrowMainchain.sol +8 -7
  438. package/contracts/interfaces/IPYieldToken.sol +4 -3
  439. package/contracts/interfaces/IPYieldTokenV2.sol +67 -0
  440. package/contracts/interfaces/IRewardManager.sol +4 -4
  441. package/contracts/interfaces/IStETH.sol +4 -3
  442. package/contracts/interfaces/IStandardizedYield.sol +10 -14
  443. package/contracts/interfaces/IStargateRouter.sol +1 -5
  444. package/contracts/offchain-helpers/AddressProvider.sol +16 -0
  445. package/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol +4 -1
  446. package/contracts/offchain-helpers/Broadcaster.sol +48 -0
  447. package/contracts/offchain-helpers/BulkSellerOffchain.sol +7 -11
  448. package/contracts/offchain-helpers/Multicall2.sol +14 -24
  449. package/contracts/offchain-helpers/router-static/PendleRouterStatic.sol +19 -0
  450. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +122 -0
  451. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +165 -0
  452. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +780 -0
  453. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +158 -0
  454. package/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol +76 -0
  455. package/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol +55 -0
  456. package/contracts/offchain-helpers/router-static/base/StorageLayout.sol +21 -0
  457. package/contracts/router/ActionAddRemoveLiq.sol +118 -24
  458. package/contracts/router/ActionMintRedeem.sol +12 -202
  459. package/contracts/router/ActionMisc.sol +45 -19
  460. package/contracts/router/ActionSwapPT.sol +0 -5
  461. package/contracts/router/ActionSwapYT.sol +109 -13
  462. package/contracts/router/PendleRouter.sol +211 -72
  463. package/contracts/router/PendleRouterHelper.sol +315 -0
  464. package/contracts/router/{ActionCallback.sol → base/ActionBaseCallback.sol} +49 -49
  465. package/contracts/router/base/ActionBaseMintRedeem.sol +108 -64
  466. package/contracts/router/base/CallbackHelper.sol +136 -54
  467. package/contracts/router/base/MarketApproxLib.sol +243 -430
  468. package/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol +39 -0
  469. package/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol +68 -0
  470. package/contracts/router/swap-aggregator/IPSwapAggregator.sol +21 -0
  471. package/contracts/router/swap-aggregator/PendleSwapArbitrum.sol +45 -0
  472. package/contracts/router/swap-aggregator/PendleSwapEthereum.sol +44 -0
  473. package/contracts/router/swap-aggregator/kyberswap/arbitrum/IAggregationExecutor.sol +17 -0
  474. package/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper1.sol +195 -0
  475. package/contracts/router/swap-aggregator/kyberswap/arbitrum/IExecutorHelper2.sol +10 -0
  476. package/contracts/router/swap-aggregator/kyberswap/arbitrum/IMetaAggregationRouterV2.sol +41 -0
  477. package/contracts/router/swap-aggregator/kyberswap/arbitrum/KyberHelperArbitrum.sol +200 -0
  478. package/contracts/router/swap-aggregator/kyberswap/arbitrum/ScaleDataHelperArbitrum.sol +135 -0
  479. package/contracts/router/swap-aggregator/kyberswap/ethereum/IAggregationExecutor.sol +17 -0
  480. package/contracts/router/{kyberswap/interfaces → swap-aggregator/kyberswap/ethereum}/IExecutorHelperEthereum1.sol +6 -0
  481. package/contracts/router/swap-aggregator/kyberswap/ethereum/IHashflow.sol +30 -0
  482. package/contracts/router/{kyberswap/interfaces → swap-aggregator/kyberswap/ethereum}/IMetaAggregationRouterV2.sol +3 -4
  483. package/contracts/router/{kyberswap/AggregationRouterHelper.sol → swap-aggregator/kyberswap/ethereum/KyberHelperEthereum.sol} +21 -137
  484. package/contracts/router/{kyberswap/ScaleDataHelperEthereum1.sol → swap-aggregator/kyberswap/ethereum/ScaleDataHelperEthereum.sol} +15 -2
  485. package/deployments/43113-core.json +31 -0
  486. package/deployments/43113-markets/APE-30-MARCH.json +10 -0
  487. package/deployments/43113-markets/USDC-FEB-2ND-2024.json +10 -0
  488. package/deployments/43113-markets/USDC-FEB-2ND.json +10 -0
  489. package/deployments/43113-markets/USDC-FEB-4TH.json +10 -0
  490. package/deployments/43113-markets/USDC-MAR-28TH.json +10 -0
  491. package/deployments/43113-markets/WETH-FEB-2ND.json +11 -0
  492. package/deployments/43113-markets/WETH-FEB-4TH.json +11 -0
  493. package/deployments/43113-offchain-helper.json +4 -0
  494. package/deployments/43113-testenv.json +22 -0
  495. package/deployments/80001-core.json +30 -0
  496. package/deployments/80001-markets/GLP-DEC-8TH.json +10 -0
  497. package/deployments/80001-markets/USDC-DEC-8TH.json +10 -0
  498. package/deployments/80001-markets/USDC-FEB-4TH.json +10 -0
  499. package/deployments/80001-markets/WETH-FEB-4TH.json +11 -0
  500. package/deployments/80001-offchain-helper.json +4 -0
  501. package/deployments/80001-testenv.json +22 -0
  502. package/package.json +10 -10
  503. package/typechain-types/ActionAddRemoveLiq.ts +203 -23
  504. package/typechain-types/ActionBaseCallback.ts +115 -0
  505. package/typechain-types/ActionInfoStatic.ts +310 -0
  506. package/typechain-types/ActionMarketAuxStatic.ts +350 -0
  507. package/typechain-types/ActionMarketCoreStatic.ts +1485 -0
  508. package/typechain-types/ActionMintRedeem.ts +29 -230
  509. package/typechain-types/ActionMintRedeemStatic.ts +461 -0
  510. package/typechain-types/ActionMisc.ts +77 -27
  511. package/typechain-types/ActionStorageStatic.ts +405 -0
  512. package/typechain-types/ActionSwapPT.ts +26 -31
  513. package/typechain-types/ActionSwapYT.ts +202 -21
  514. package/typechain-types/ActionVePendleStatic.ts +113 -0
  515. package/typechain-types/AddressProvider.ts +280 -0
  516. package/typechain-types/Broadcaster.ts +454 -0
  517. package/typechain-types/GLPPreviewHelper.ts +121 -0
  518. package/typechain-types/GMXPreviewHelper.ts +40 -0
  519. package/typechain-types/IAddressProvider.ts +123 -0
  520. package/typechain-types/IChainlinkAggregator.ts +246 -0
  521. package/typechain-types/IDiamondCut.ts +152 -0
  522. package/typechain-types/IDiamondLoupe.ts +190 -0
  523. package/typechain-types/IERC4626.ts +34 -0
  524. package/typechain-types/IExecutorHelper1.ts +643 -0
  525. package/typechain-types/IExecutorHelper2.ts +115 -0
  526. package/typechain-types/IExecutorHelperEthereum1.ts +44 -0
  527. package/typechain-types/IGlpManager.ts +50 -0
  528. package/typechain-types/IPActionAddRemoveLiq.ts +213 -14
  529. package/typechain-types/IPActionInfoStatic.ts +310 -0
  530. package/typechain-types/IPActionMarketAuxStatic.ts +350 -0
  531. package/typechain-types/IPActionMarketCoreStatic.ts +1485 -0
  532. package/typechain-types/IPActionMintRedeem.ts +29 -211
  533. package/typechain-types/IPActionMintRedeemStatic.ts +461 -0
  534. package/typechain-types/IPActionMisc.ts +77 -27
  535. package/typechain-types/IPActionStorageStatic.ts +328 -0
  536. package/typechain-types/IPActionSwapPT.ts +26 -12
  537. package/typechain-types/IPActionSwapYT.ts +168 -12
  538. package/typechain-types/IPActionVePendleStatic.ts +113 -0
  539. package/typechain-types/IPAllAction.ts +445 -227
  540. package/typechain-types/IPInterestManagerYTV2.ts +117 -0
  541. package/typechain-types/IPLiquidityMigrator.ts +565 -0
  542. package/typechain-types/IPMiniDiamond.ts +147 -0
  543. package/typechain-types/IPMsgReceiverApp.ts +5 -5
  544. package/typechain-types/IPRouterStatic.ts +2392 -509
  545. package/typechain-types/IPSwapAggregator.ts +126 -0
  546. package/typechain-types/IPVotingController.ts +96 -0
  547. package/typechain-types/IPYieldTokenV2.ts +9 -23
  548. package/typechain-types/IRewardRouterV2.ts +60 -17
  549. package/typechain-types/IStargateLP.ts +306 -0
  550. package/typechain-types/IStargateStaking.ts +232 -0
  551. package/typechain-types/InputScalingHelper.ts +108 -0
  552. package/typechain-types/InterestManagerYTV2.ts +36 -3
  553. package/typechain-types/PendleAuraWethAnkrethSY.ts +1523 -0
  554. package/typechain-types/PendleGDaiSY.ts +1229 -0
  555. package/typechain-types/PendleGaugeControllerSidechainUpg.ts +4 -4
  556. package/typechain-types/PendleGlpSY.ts +67 -0
  557. package/typechain-types/PendleMsgReceiverAppUpg.ts +5 -5
  558. package/typechain-types/PendlePtOracleBase.ts +139 -0
  559. package/typechain-types/PendleRouter.ts +109 -131
  560. package/typechain-types/PendleRouterHelper.ts +647 -0
  561. package/typechain-types/PendleRouterStatic.ts +57 -0
  562. package/typechain-types/PendleStargateLP.ts +1442 -0
  563. package/typechain-types/PendleSwapAggregator.ts +126 -0
  564. package/typechain-types/PendleSwapArbitrum.ts +126 -0
  565. package/typechain-types/PendleSwapEthereum.ts +126 -0
  566. package/typechain-types/PendleYieldTokenV2.ts +70 -76
  567. package/typechain-types/PtFraxUsdcOracle.ts +176 -0
  568. package/typechain-types/PtStETHOracle.ts +163 -0
  569. package/typechain-types/RouterStatic.ts +92 -0
  570. package/typechain-types/VotingControllerStorageUpg.ts +96 -0
  571. package/typechain-types/VotingEscrowPendleSidechain.ts +4 -5
  572. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +346 -68
  573. package/typechain-types/factories/ActionBaseCallback__factory.ts +156 -0
  574. package/typechain-types/factories/ActionInfoStatic__factory.ts +360 -0
  575. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +390 -0
  576. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1454 -0
  577. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +367 -0
  578. package/typechain-types/factories/ActionMintRedeem__factory.ts +108 -266
  579. package/typechain-types/factories/ActionMisc__factory.ts +56 -17
  580. package/typechain-types/factories/ActionStorageStatic__factory.ts +281 -0
  581. package/typechain-types/factories/ActionSwapPT__factory.ts +55 -71
  582. package/typechain-types/factories/ActionSwapYT__factory.ts +356 -48
  583. package/typechain-types/factories/ActionVePendleStatic__factory.ts +155 -0
  584. package/typechain-types/factories/AddressProvider__factory.ts +196 -0
  585. package/typechain-types/factories/BaseSplitCodeFactoryContract__factory.ts +1 -1
  586. package/typechain-types/factories/BoringOwnableUpgradeableData__factory.ts +1 -1
  587. package/typechain-types/factories/Broadcaster__factory.ts +311 -0
  588. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  589. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  590. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  591. package/typechain-types/factories/Errors__factory.ts +49 -1
  592. package/typechain-types/factories/GLPPreviewHelper__factory.ts +65 -0
  593. package/typechain-types/factories/GMXPreviewHelper__factory.ts +26 -0
  594. package/typechain-types/factories/IAddressProvider__factory.ts +63 -0
  595. package/typechain-types/factories/IChainlinkAggregator__factory.ts +170 -0
  596. package/typechain-types/factories/IDiamondCut__factory.ts +105 -0
  597. package/typechain-types/factories/IDiamondLoupe__factory.ts +99 -0
  598. package/typechain-types/factories/IERC4626__factory.ts +19 -0
  599. package/typechain-types/factories/IExecutorHelper1__factory.ts +403 -0
  600. package/typechain-types/factories/IExecutorHelper2__factory.ts +55 -0
  601. package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +29 -0
  602. package/typechain-types/factories/IGlpManager__factory.ts +26 -0
  603. package/typechain-types/factories/IPActionAddRemoveLiq__factory.ts +338 -16
  604. package/typechain-types/factories/IPActionInfoStatic__factory.ts +322 -0
  605. package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +288 -0
  606. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +1279 -0
  607. package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +292 -0
  608. package/typechain-types/factories/IPActionMintRedeem__factory.ts +105 -224
  609. package/typechain-types/factories/IPActionMisc__factory.ts +55 -11
  610. package/typechain-types/factories/IPActionStorageStatic__factory.ts +203 -0
  611. package/typechain-types/factories/IPActionSwapPT__factory.ts +52 -8
  612. package/typechain-types/factories/IPActionSwapYT__factory.ts +231 -8
  613. package/typechain-types/factories/IPActionVePendleStatic__factory.ts +59 -0
  614. package/typechain-types/factories/IPAllAction__factory.ts +675 -241
  615. package/typechain-types/factories/IPInterestManagerYTV2__factory.ts +59 -0
  616. package/typechain-types/factories/IPLiquidityMigrator__factory.ts +677 -0
  617. package/typechain-types/factories/IPMiniDiamond__factory.ts +67 -0
  618. package/typechain-types/factories/IPMsgReceiverApp__factory.ts +1 -1
  619. package/typechain-types/factories/IPRouterStatic__factory.ts +1942 -494
  620. package/typechain-types/factories/IPSwapAggregator__factory.ts +71 -0
  621. package/typechain-types/factories/IPVotingController__factory.ts +39 -0
  622. package/typechain-types/factories/IPYieldTokenV2__factory.ts +6 -14
  623. package/typechain-types/factories/IRewardRouterV2__factory.ts +43 -7
  624. package/typechain-types/factories/IStargateLP__factory.ts +212 -0
  625. package/typechain-types/factories/IStargateStaking__factory.ts +145 -0
  626. package/typechain-types/factories/InputScalingHelper__factory.ts +88 -0
  627. package/typechain-types/factories/InterestManagerYTV2__factory.ts +18 -0
  628. package/typechain-types/factories/MarketMathStatic__factory.ts +1 -27
  629. package/typechain-types/factories/MetaStableMath__factory.ts +1 -1
  630. package/typechain-types/factories/MetaStablePreview__factory.ts +1 -1
  631. package/typechain-types/factories/Multicall2__factory.ts +1 -1
  632. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  633. package/typechain-types/factories/PendleAura3EthSY__factory.ts +1 -1
  634. package/typechain-types/factories/PendleAuraCbethWstethSY__factory.ts +1 -1
  635. package/typechain-types/factories/PendleAuraWethAnkrethSY__factory.ts +1265 -0
  636. package/typechain-types/factories/PendleAuraWethRethSY__factory.ts +1 -1
  637. package/typechain-types/factories/PendleAuraWethWstethSY__factory.ts +1 -1
  638. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  639. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  640. package/typechain-types/factories/PendleERC20Permit__factory.ts +1 -1
  641. package/typechain-types/factories/PendleERC20__factory.ts +1 -1
  642. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  643. package/typechain-types/factories/PendleGDaiSY__factory.ts +1035 -0
  644. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  645. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +2 -2
  646. package/typechain-types/factories/PendleGlpSY__factory.ts +34 -1
  647. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  648. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  649. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  650. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  651. package/typechain-types/factories/PendleMsgReceiverAppUpg__factory.ts +1 -1
  652. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  653. package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
  654. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  655. package/typechain-types/factories/PendlePtOracleBase__factory.ts +78 -0
  656. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  657. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  658. package/typechain-types/factories/PendleRouterHelper__factory.ts +841 -0
  659. package/typechain-types/factories/PendleRouterStatic__factory.ts +88 -0
  660. package/typechain-types/factories/PendleRouter__factory.ts +75 -74
  661. package/typechain-types/factories/PendleStargateLP__factory.ts +1241 -0
  662. package/typechain-types/factories/PendleSwapAggregator__factory.ts +129 -0
  663. package/typechain-types/factories/PendleSwapArbitrum__factory.ts +129 -0
  664. package/typechain-types/factories/PendleSwapEthereum__factory.ts +129 -0
  665. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  666. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  667. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  668. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  669. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +35 -48
  670. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  671. package/typechain-types/factories/PtFraxUsdcOracle__factory.ts +226 -0
  672. package/typechain-types/factories/PtStETHOracle__factory.ts +201 -0
  673. package/typechain-types/factories/RouterStatic__factory.ts +69 -1
  674. package/typechain-types/factories/SAPE__factory.ts +1 -1
  675. package/typechain-types/factories/VotingControllerStorageUpg__factory.ts +39 -0
  676. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  677. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +2 -2
  678. package/typechain-types/hardhat.d.ts +320 -203
  679. package/typechain-types/index.ts +80 -60
  680. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.dbg.json +0 -4
  681. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.json +0 -1257
  682. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.dbg.json +0 -4
  683. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.json +0 -1244
  684. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +0 -4
  685. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.json +0 -10
  686. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +0 -4
  687. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.json +0 -133
  688. package/build/artifacts/contracts/interfaces/IAToken.sol/IAToken.dbg.json +0 -4
  689. package/build/artifacts/contracts/interfaces/IAavePool.sol/IAavePool.dbg.json +0 -4
  690. package/build/artifacts/contracts/interfaces/IAavePool.sol/IAavePool.json +0 -87
  691. package/build/artifacts/contracts/interfaces/IAaveRewardsController.sol/IAaveRewardsController.dbg.json +0 -4
  692. package/build/artifacts/contracts/interfaces/IAaveRewardsController.sol/IAaveRewardsController.json +0 -59
  693. package/build/artifacts/contracts/interfaces/IBoringOwnableUpgradeable.sol/IBoringOwnableUpgradeable.dbg.json +0 -4
  694. package/build/artifacts/contracts/interfaces/IBoringOwnableUpgradeable.sol/IBoringOwnableUpgradeable.json +0 -34
  695. package/build/artifacts/contracts/interfaces/IEulerEToken.sol/IEulerEToken.dbg.json +0 -4
  696. package/build/artifacts/contracts/interfaces/IEulerEToken.sol/IEulerEToken.json +0 -162
  697. package/build/artifacts/contracts/interfaces/IEulerMarkets.sol/IEulerMarkets.dbg.json +0 -4
  698. package/build/artifacts/contracts/interfaces/IEulerMarkets.sol/IEulerMarkets.json +0 -87
  699. package/build/artifacts/contracts/interfaces/IPActionSwapPTYT.sol/IPActionSwapPTYT.dbg.json +0 -4
  700. package/build/artifacts/contracts/interfaces/IPGovernanceManager.sol/IPGovernanceManager.dbg.json +0 -4
  701. package/build/artifacts/contracts/interfaces/IPGovernanceManager.sol/IPGovernanceManager.json +0 -24
  702. package/build/artifacts/contracts/interfaces/IPPermissionsV2Upg.sol/IPermissionsV2Upg.dbg.json +0 -4
  703. package/build/artifacts/contracts/interfaces/IPPermissionsV2Upg.sol/IPermissionsV2Upg.json +0 -24
  704. package/build/artifacts/contracts/interfaces/IREDACTEDStaking.sol/IREDACTEDStaking.dbg.json +0 -4
  705. package/build/artifacts/contracts/interfaces/ISAvax.sol/ISAvax.dbg.json +0 -4
  706. package/build/artifacts/contracts/interfaces/ISAvax.sol/ISAvax.json +0 -199
  707. package/build/artifacts/contracts/interfaces/ISJoe.sol/ISJoe.dbg.json +0 -4
  708. package/build/artifacts/contracts/interfaces/ISJoe.sol/ISJoe.json +0 -168
  709. package/build/artifacts/contracts/interfaces/IWAvax.sol/IWAvax.dbg.json +0 -4
  710. package/build/artifacts/contracts/interfaces/IWXBTRFLY.sol/IWXBTRFLY.dbg.json +0 -4
  711. package/build/artifacts/contracts/interfaces/IWXBTRFLY.sol/IWXBTRFLY.json +0 -132
  712. package/build/artifacts/contracts/interfaces/IYearnVault.sol/IYearnVault.dbg.json +0 -4
  713. package/build/artifacts/contracts/interfaces/IYearnVault.sol/IYearnVault.json +0 -148
  714. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.dbg.json +0 -4
  715. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.json +0 -285
  716. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +0 -4
  717. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +0 -2741
  718. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.dbg.json +0 -4
  719. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.json +0 -165
  720. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.dbg.json +0 -4
  721. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.json +0 -343
  722. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.dbg.json +0 -4
  723. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.json +0 -224
  724. package/build/artifacts/contracts/router/kyberswap/IAggregatorRouterHelper.sol/IAggregationRouterHelper.dbg.json +0 -4
  725. package/build/artifacts/contracts/router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +0 -4
  726. package/build/artifacts/contracts/router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.json +0 -24
  727. package/build/artifacts/contracts/router/kyberswap/ScaleDataHelperEthereum1.sol/ScaleDataHelperEthereum1.dbg.json +0 -4
  728. package/build/artifacts/contracts/router/kyberswap/ScaleDataHelperEthereum1.sol/ScaleDataHelperEthereum1.json +0 -10
  729. package/build/artifacts/contracts/router/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +0 -4
  730. package/build/artifacts/contracts/router/kyberswap/interfaces/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.dbg.json +0 -4
  731. package/build/artifacts/contracts/router/kyberswap/interfaces/IHashflow.sol/IHashflow.dbg.json +0 -4
  732. package/build/artifacts/contracts/router/kyberswap/interfaces/IMetaAggregationRouter.sol/IMetaAggregationRouter.dbg.json +0 -4
  733. package/build/artifacts/contracts/router/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +0 -4
  734. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol +0 -170
  735. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol +0 -162
  736. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol +0 -289
  737. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol +0 -618
  738. package/contracts/interfaces/IAToken.sol +0 -44
  739. package/contracts/interfaces/IAavePool.sol +0 -41
  740. package/contracts/interfaces/IAaveRewardsController.sol +0 -32
  741. package/contracts/interfaces/IBoringOwnableUpgradeable.sol +0 -10
  742. package/contracts/interfaces/IEulerEToken.sol +0 -60
  743. package/contracts/interfaces/IEulerMarkets.sol +0 -46
  744. package/contracts/interfaces/IPActionSwapPTYT.sol +0 -31
  745. package/contracts/interfaces/IPGovernanceManager.sol +0 -28
  746. package/contracts/interfaces/IPPermissionsV2Upg.sol +0 -28
  747. package/contracts/interfaces/IREDACTEDStaking.sol +0 -35
  748. package/contracts/interfaces/ISAvax.sol +0 -61
  749. package/contracts/interfaces/ISJoe.sol +0 -57
  750. package/contracts/interfaces/IWAvax.sol +0 -34
  751. package/contracts/interfaces/IWXBTRFLY.sol +0 -39
  752. package/contracts/interfaces/IYearnVault.sol +0 -46
  753. package/contracts/offchain-helpers/MarketMathStatic.sol +0 -557
  754. package/contracts/offchain-helpers/RouterStatic.sol +0 -903
  755. package/contracts/router/ActionSwapPTYT.sol +0 -108
  756. package/contracts/router/kyberswap/IAggregatorRouterHelper.sol +0 -10
  757. package/contracts/router/kyberswap/KyberSwapHelper.sol +0 -79
  758. package/contracts/router/kyberswap/interfaces/IAggregationExecutor.sol +0 -17
  759. package/contracts/router/kyberswap/interfaces/IMetaAggregationRouter.sol +0 -33
  760. package/deployments/1-core.json +0 -30
  761. package/deployments/1-markets/APE-JUNE-29.json +0 -8
  762. package/deployments/1-markets/BALANCER-LP-AURA-RETH-WETH-28DEC.json +0 -11
  763. package/deployments/1-markets/BALANCER-LP-AURA-WSTETH-WETH-JUN272024.json +0 -10
  764. package/deployments/1-markets/FRAXUSDC-CURVELP-MARCH30.json +0 -11
  765. package/deployments/1-markets/LOOKS-STAKING-MARCH30.json +0 -10
  766. package/deployments/1-markets/STETH-JUNE29.json +0 -10
  767. package/deployments/1-markets/STETH-MARCH30.json +0 -10
  768. package/deployments/1-offchain-helper.json +0 -4
  769. /package/contracts/router/{kyberswap/interfaces → swap-aggregator/kyberswap/arbitrum}/IHashflow.sol +0 -0
@@ -59,11 +59,7 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
59
59
  * All three of these values are immutable: they can only be set once during
60
60
  * construction.
61
61
  */
62
- constructor(
63
- string memory name_,
64
- string memory symbol_,
65
- uint8 decimals_
66
- ) {
62
+ constructor(string memory name_, string memory symbol_, uint8 decimals_) {
67
63
  _name = name_;
68
64
  _symbol = symbol_;
69
65
  decimals = decimals_;
@@ -107,13 +103,10 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
107
103
  * - `to` cannot be the zero address.
108
104
  * - the caller must have a balance of at least `amount`.
109
105
  */
110
- function transfer(address to, uint256 amount)
111
- external
112
- virtual
113
- override
114
- nonReentrant
115
- returns (bool)
116
- {
106
+ function transfer(
107
+ address to,
108
+ uint256 amount
109
+ ) external virtual override nonReentrant returns (bool) {
117
110
  address owner = _msgSender();
118
111
  _transfer(owner, to, amount);
119
112
  return true;
@@ -122,13 +115,10 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
122
115
  /**
123
116
  * @dev See {IERC20-allowance}.
124
117
  */
125
- function allowance(address owner, address spender)
126
- public
127
- view
128
- virtual
129
- override
130
- returns (uint256)
131
- {
118
+ function allowance(
119
+ address owner,
120
+ address spender
121
+ ) public view virtual override returns (uint256) {
132
122
  return _allowances[owner][spender];
133
123
  }
134
124
 
@@ -189,11 +179,7 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
189
179
  * - `to` cannot be the zero address.
190
180
  * - `from` must have a balance of at least `amount`.
191
181
  */
192
- function _transfer(
193
- address from,
194
- address to,
195
- uint256 amount
196
- ) internal virtual {
182
+ function _transfer(address from, address to, uint256 amount) internal virtual {
197
183
  require(from != address(0), "ERC20: transfer from the zero address");
198
184
  require(to != address(0), "ERC20: transfer to the zero address");
199
185
  require(from != to, "ERC20: transfer to self");
@@ -274,11 +260,7 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
274
260
  * - `owner` cannot be the zero address.
275
261
  * - `spender` cannot be the zero address.
276
262
  */
277
- function _approve(
278
- address owner,
279
- address spender,
280
- uint256 amount
281
- ) internal virtual {
263
+ function _approve(address owner, address spender, uint256 amount) internal virtual {
282
264
  require(owner != address(0), "ERC20: approve from the zero address");
283
265
  require(spender != address(0), "ERC20: approve to the zero address");
284
266
 
@@ -294,11 +276,7 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
294
276
  *
295
277
  * Might emit an {Approval} event.
296
278
  */
297
- function _spendAllowance(
298
- address owner,
299
- address spender,
300
- uint256 amount
301
- ) internal virtual {
279
+ function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
302
280
  uint256 currentAllowance = allowance(owner, spender);
303
281
  if (currentAllowance != type(uint256).max) {
304
282
  require(currentAllowance >= amount, "ERC20: insufficient allowance");
@@ -322,11 +300,7 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
322
300
  *
323
301
  * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
324
302
  */
325
- function _beforeTokenTransfer(
326
- address from,
327
- address to,
328
- uint256 amount
329
- ) internal virtual {}
303
+ function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}
330
304
 
331
305
  /**
332
306
  * @dev Hook that is called after any transfer of tokens. This includes
@@ -342,11 +316,7 @@ contract PendleERC20 is Context, IERC20, IERC20Metadata {
342
316
  *
343
317
  * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
344
318
  */
345
- function _afterTokenTransfer(
346
- address from,
347
- address to,
348
- uint256 amount
349
- ) internal virtual {}
319
+ function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
350
320
 
351
321
  function toUint248(uint256 x) internal virtual returns (uint248) {
352
322
  require(x <= type(uint248).max); // signed, lim = bit-1
@@ -25,6 +25,22 @@ library ArrayLib {
25
25
  return type(uint256).max;
26
26
  }
27
27
 
28
+ function append(
29
+ address[] memory inp,
30
+ address element
31
+ ) internal pure returns (address[] memory out) {
32
+ uint256 length = inp.length;
33
+ out = new address[](length + 1);
34
+ for (uint256 i = 0; i < length; ) {
35
+ out[i] = inp[i];
36
+ unchecked {
37
+ i++;
38
+ }
39
+ }
40
+ out[length] = element;
41
+ }
42
+
43
+ // various version of contains
28
44
  function contains(address[] memory array, address element) internal pure returns (bool) {
29
45
  uint256 length = array.length;
30
46
  for (uint256 i = 0; i < length; ) {
@@ -36,19 +52,14 @@ library ArrayLib {
36
52
  return false;
37
53
  }
38
54
 
39
- function append(address[] memory inp, address element)
40
- internal
41
- pure
42
- returns (address[] memory out)
43
- {
44
- uint256 length = inp.length;
45
- out = new address[](length + 1);
55
+ function contains(bytes4[] memory array, bytes4 element) internal pure returns (bool) {
56
+ uint256 length = array.length;
46
57
  for (uint256 i = 0; i < length; ) {
47
- out[i] = inp[i];
58
+ if (array[i] == element) return true;
48
59
  unchecked {
49
60
  i++;
50
61
  }
51
62
  }
52
- out[length] = element;
63
+ return false;
53
64
  }
54
65
  }
@@ -87,7 +87,9 @@ library CodeDeployer {
87
87
  }
88
88
 
89
89
  library BaseSplitCodeFactory {
90
- function setCreationCode(bytes memory creationCode)
90
+ function setCreationCode(
91
+ bytes memory creationCode
92
+ )
91
93
  internal
92
94
  returns (
93
95
  address creationCodeContractA,
@@ -261,11 +263,7 @@ library BaseSplitCodeFactory {
261
263
 
262
264
  // From
263
265
  // https://github.com/Arachnid/solidity-stringutils/blob/b9a6f6615cf18a87a823cbc461ce9e140a61c305/src/strings.sol
264
- function _memcpy(
265
- uint256 dest,
266
- uint256 src,
267
- uint256 len
268
- ) private pure {
266
+ function _memcpy(uint256 dest, uint256 src, uint256 len) private pure {
269
267
  unchecked {
270
268
  // Copy word-length chunks while possible
271
269
  for (; len >= 32; len -= 32) {
@@ -277,7 +275,7 @@ library BaseSplitCodeFactory {
277
275
  }
278
276
 
279
277
  // Copy remaining bytes
280
- uint256 mask = 256**(32 - len) - 1;
278
+ uint256 mask = 256 ** (32 - len) - 1;
281
279
  assembly {
282
280
  let srcpart := and(mload(src), not(mask))
283
281
  let destpart := and(mload(dest), mask)
@@ -20,11 +20,7 @@ abstract contract BoringOwnableUpgradeable is BoringOwnableUpgradeableData, Init
20
20
  /// @param newOwner Address of the new owner.
21
21
  /// @param direct True if `newOwner` should be set immediately. False if `newOwner` needs to use `claimOwnership`.
22
22
  /// @param renounce Allows the `newOwner` to be `address(0)` if `direct` and `renounce` is True. Has no effect otherwise.
23
- function transferOwnership(
24
- address newOwner,
25
- bool direct,
26
- bool renounce
27
- ) public onlyOwner {
23
+ function transferOwnership(address newOwner, bool direct, bool renounce) public onlyOwner {
28
24
  if (direct) {
29
25
  // Checks
30
26
  require(newOwner != address(0) || renounce, "Ownable: zero address");
@@ -1,8 +1,6 @@
1
1
  // SPDX-License-Identifier: GPL-3.0-or-later
2
2
  pragma solidity 0.8.17;
3
3
 
4
- /// Adapted from UniswapV3's Oracle
5
-
6
4
  library Errors {
7
5
  // BulkSeller
8
6
  error BulkInsufficientSyForTrade(uint256 currentAmount, uint256 requiredAmount);
@@ -75,6 +73,7 @@ library Errors {
75
73
  error RouterTimeRangeZero();
76
74
  error RouterCallbackNotPendleMarket(address caller);
77
75
  error RouterInvalidAction(bytes4 selector);
76
+ error RouterInvalidFacet(address facet);
78
77
 
79
78
  error RouterKyberSwapDataZero();
80
79
 
@@ -169,4 +168,8 @@ library Errors {
169
168
  error OnlyYT();
170
169
  error OnlyYCFactory();
171
170
  error OnlyWhitelisted();
171
+
172
+ // Swap Aggregator
173
+ error SAInsufficientTokenIn(address tokenIn, uint256 amountExpected, uint256 amountActual);
174
+ error UnsupportedSelector(uint256 aggregatorType, bytes4 selector);
172
175
  }
@@ -42,11 +42,7 @@ library StringLib {
42
42
  uint256 _ptr;
43
43
  }
44
44
 
45
- function memcpy(
46
- uint256 dest,
47
- uint256 src,
48
- uint256 len
49
- ) private pure {
45
+ function memcpy(uint256 dest, uint256 src, uint256 len) private pure {
50
46
  // Copy word-length chunks while possible
51
47
  for (; len >= 32; len -= 32) {
52
48
  assembly {
@@ -59,7 +55,7 @@ library StringLib {
59
55
  // Copy remaining bytes
60
56
  uint256 mask = type(uint256).max;
61
57
  if (len > 0) {
62
- mask = 256**(32 - len) - 1;
58
+ mask = 256 ** (32 - len) - 1;
63
59
  }
64
60
  assembly {
65
61
  let srcpart := and(mload(src), not(mask))
@@ -222,7 +218,7 @@ library StringLib {
222
218
  // Mask out irrelevant bytes and check again
223
219
  uint256 mask = type(uint256).max; // 0xffff...
224
220
  if (shortest < 32) {
225
- mask = ~(2**(8 * (32 - shortest + idx)) - 1);
221
+ mask = ~(2 ** (8 * (32 - shortest + idx)) - 1);
226
222
  }
227
223
  unchecked {
228
224
  uint256 diff = (a & mask) - (b & mask);
@@ -312,7 +308,7 @@ library StringLib {
312
308
 
313
309
  uint256 word;
314
310
  uint256 length;
315
- uint256 divisor = 2**248;
311
+ uint256 divisor = 2 ** 248;
316
312
 
317
313
  // Load the rune into the MSBs of b
318
314
  assembly {
@@ -488,7 +484,7 @@ library StringLib {
488
484
  if (needlelen <= 32) {
489
485
  bytes32 mask;
490
486
  if (needlelen > 0) {
491
- mask = bytes32(~(2**(8 * (32 - needlelen)) - 1));
487
+ mask = bytes32(~(2 ** (8 * (32 - needlelen)) - 1));
492
488
  }
493
489
 
494
490
  bytes32 needledata;
@@ -544,7 +540,7 @@ library StringLib {
544
540
  if (needlelen <= 32) {
545
541
  bytes32 mask;
546
542
  if (needlelen > 0) {
547
- mask = bytes32(~(2**(8 * (32 - needlelen)) - 1));
543
+ mask = bytes32(~(2 ** (8 * (32 - needlelen)) - 1));
548
544
  }
549
545
 
550
546
  bytes32 needledata;
@@ -652,11 +648,10 @@ library StringLib {
652
648
  * @param needle The text to search for in `self`.
653
649
  * @return The part of `self` up to the first occurrence of `delim`.
654
650
  */
655
- function split(slice memory self, slice memory needle)
656
- internal
657
- pure
658
- returns (slice memory token)
659
- {
651
+ function split(
652
+ slice memory self,
653
+ slice memory needle
654
+ ) internal pure returns (slice memory token) {
660
655
  split(self, needle, token);
661
656
  }
662
657
 
@@ -696,11 +691,10 @@ library StringLib {
696
691
  * @param needle The text to search for in `self`.
697
692
  * @return The part of `self` after the last occurrence of `delim`.
698
693
  */
699
- function rsplit(slice memory self, slice memory needle)
700
- internal
701
- pure
702
- returns (slice memory token)
703
- {
694
+ function rsplit(
695
+ slice memory self,
696
+ slice memory needle
697
+ ) internal pure returns (slice memory token) {
704
698
  rsplit(self, needle, token);
705
699
  }
706
700
 
@@ -2,35 +2,23 @@
2
2
  pragma solidity 0.8.17;
3
3
  import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
4
4
  import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
5
+ import "../../interfaces/IWETH.sol";
5
6
 
6
7
  abstract contract TokenHelper {
7
8
  using SafeERC20 for IERC20;
8
9
  address internal constant NATIVE = address(0);
9
10
  uint256 internal constant LOWER_BOUND_APPROVAL = type(uint96).max / 2; // some tokens use 96 bits for approval
10
11
 
11
- function _transferIn(
12
- address token,
13
- address from,
14
- uint256 amount
15
- ) internal {
12
+ function _transferIn(address token, address from, uint256 amount) internal {
16
13
  if (token == NATIVE) require(msg.value == amount, "eth mismatch");
17
14
  else if (amount != 0) IERC20(token).safeTransferFrom(from, address(this), amount);
18
15
  }
19
16
 
20
- function _transferFrom(
21
- IERC20 token,
22
- address from,
23
- address to,
24
- uint256 amount
25
- ) internal {
17
+ function _transferFrom(IERC20 token, address from, address to, uint256 amount) internal {
26
18
  if (amount != 0) token.safeTransferFrom(from, to, amount);
27
19
  }
28
20
 
29
- function _transferOut(
30
- address token,
31
- address to,
32
- uint256 amount
33
- ) internal {
21
+ function _transferOut(address token, address to, uint256 amount) internal {
34
22
  if (amount == 0) return;
35
23
  if (token == NATIVE) {
36
24
  (bool success, ) = to.call{ value: amount }("");
@@ -40,11 +28,7 @@ abstract contract TokenHelper {
40
28
  }
41
29
  }
42
30
 
43
- function _transferOut(
44
- address[] memory tokens,
45
- address to,
46
- uint256[] memory amounts
47
- ) internal {
31
+ function _transferOut(address[] memory tokens, address to, uint256[] memory amounts) internal {
48
32
  uint256 numTokens = tokens.length;
49
33
  require(numTokens == amounts.length, "length mismatch");
50
34
  for (uint256 i = 0; i < numTokens; ) {
@@ -65,11 +49,7 @@ abstract contract TokenHelper {
65
49
 
66
50
  /// @notice Approves the stipulated contract to spend the given allowance in the given token
67
51
  /// @dev PLS PAY ATTENTION to tokens that requires the approval to be set to 0 before changing it
68
- function _safeApprove(
69
- address token,
70
- address to,
71
- uint256 value
72
- ) internal {
52
+ function _safeApprove(address token, address to, uint256 value) internal {
73
53
  (bool success, bytes memory data) = token.call(
74
54
  abi.encodeWithSelector(IERC20.approve.selector, to, value)
75
55
  );
@@ -83,4 +63,9 @@ abstract contract TokenHelper {
83
63
  _safeApprove(token, to, type(uint256).max);
84
64
  }
85
65
  }
66
+
67
+ function _wrap_unwrap_ETH(address tokenIn, address tokenOut, uint256 netTokenIn) internal {
68
+ if (tokenIn == NATIVE) IWETH(tokenOut).deposit{ value: netTokenIn }();
69
+ else IWETH(tokenIn).withdraw(netTokenIn);
70
+ }
86
71
  }
@@ -53,7 +53,7 @@ library LogExpMath {
53
53
  int256 constant LN_36_LOWER_BOUND = ONE_18 - 1e17;
54
54
  int256 constant LN_36_UPPER_BOUND = ONE_18 + 1e17;
55
55
 
56
- uint256 constant MILD_EXPONENT_BOUND = 2**254 / uint256(ONE_20);
56
+ uint256 constant MILD_EXPONENT_BOUND = 2 ** 254 / uint256(ONE_20);
57
57
 
58
58
  // 18 decimal constants
59
59
  int256 constant x0 = 128000000000000000000; // 2ˆ7
@@ -263,7 +263,7 @@ library LogExpMath {
263
263
  // x^y = exp(y * ln(x)).
264
264
 
265
265
  // The ln function takes a signed value, so we need to make sure x fits in the signed 256 bit range.
266
- require(x < 2**255, "x out of bounds");
266
+ require(x < 2 ** 255, "x out of bounds");
267
267
  int256 x_int256 = int256(x);
268
268
 
269
269
  // We will compute y * ln(x) in a single step. Depending on the value of x, we can either use ln or ln_36. In
@@ -152,27 +152,15 @@ library Math {
152
152
  return uint128(x);
153
153
  }
154
154
 
155
- function isAApproxB(
156
- uint256 a,
157
- uint256 b,
158
- uint256 eps
159
- ) internal pure returns (bool) {
155
+ function isAApproxB(uint256 a, uint256 b, uint256 eps) internal pure returns (bool) {
160
156
  return mulDown(b, ONE - eps) <= a && a <= mulDown(b, ONE + eps);
161
157
  }
162
158
 
163
- function isAGreaterApproxB(
164
- uint256 a,
165
- uint256 b,
166
- uint256 eps
167
- ) internal pure returns (bool) {
159
+ function isAGreaterApproxB(uint256 a, uint256 b, uint256 eps) internal pure returns (bool) {
168
160
  return a >= b && a <= mulDown(b, ONE + eps);
169
161
  }
170
162
 
171
- function isASmallerApproxB(
172
- uint256 a,
173
- uint256 b,
174
- uint256 eps
175
- ) internal pure returns (bool) {
163
+ function isASmallerApproxB(uint256 a, uint256 b, uint256 eps) internal pure returns (bool) {
176
164
  return a <= b && a >= mulDown(b, ONE - eps);
177
165
  }
178
166
  }
@@ -13,25 +13,15 @@ interface IComposableStable is IBasePool {
13
13
  function getAmplificationParameter()
14
14
  external
15
15
  view
16
- returns (
17
- uint256 value,
18
- bool isUpdating,
19
- uint256 precision
20
- );
16
+ returns (uint256 value, bool isUpdating, uint256 precision);
21
17
 
22
18
  function getProtocolFeePercentageCache(uint256 feeType) external view returns (uint256);
23
19
 
24
20
  function isTokenExemptFromYieldProtocolFee(IERC20 token) external view returns (bool);
25
21
 
26
- function getTokenRateCache(IERC20 token)
27
- external
28
- view
29
- returns (
30
- uint256 rate,
31
- uint256 oldRate,
32
- uint256 duration,
33
- uint256 expires
34
- );
22
+ function getTokenRateCache(
23
+ IERC20 token
24
+ ) external view returns (uint256 rate, uint256 oldRate, uint256 duration, uint256 expires);
35
25
 
36
26
  function getRateProviders() external view returns (IRateProvider[] memory);
37
27
 
@@ -12,20 +12,11 @@ interface IMetaStablePool is IBasePool {
12
12
  function getAmplificationParameter()
13
13
  external
14
14
  view
15
- returns (
16
- uint256 value,
17
- bool isUpdating,
18
- uint256 precision
19
- );
15
+ returns (uint256 value, bool isUpdating, uint256 precision);
20
16
 
21
17
  function getSwapFeePercentage() external view returns (uint256);
22
18
 
23
- function getPriceRateCache(IERC20 token)
24
- external
25
- view
26
- returns (
27
- uint256 rate,
28
- uint256 duration,
29
- uint256 expires
30
- );
19
+ function getPriceRateCache(
20
+ IERC20 token
21
+ ) external view returns (uint256 rate, uint256 duration, uint256 expires);
31
22
  }
@@ -61,14 +61,12 @@ interface IVault {
61
61
  uint256 deadline
62
62
  ) external payable returns (uint256);
63
63
 
64
- function getPoolTokens(bytes32 poolId)
64
+ function getPoolTokens(
65
+ bytes32 poolId
66
+ )
65
67
  external
66
68
  view
67
- returns (
68
- IERC20[] memory tokens,
69
- uint256[] memory balances,
70
- uint256 lastChangeBlock
71
- );
69
+ returns (IERC20[] memory tokens, uint256[] memory balances, uint256 lastChangeBlock);
72
70
 
73
71
  function WETH() external view returns (IERC20);
74
72
 
@@ -6,23 +6,11 @@ interface IBooster {
6
6
 
7
7
  function poolLength() external view returns (uint256);
8
8
 
9
- function poolInfo(uint256)
10
- external
11
- view
12
- returns (
13
- address lpToken,
14
- address,
15
- address,
16
- address,
17
- address,
18
- bool
19
- );
9
+ function poolInfo(
10
+ uint256
11
+ ) external view returns (address lpToken, address, address, address, address, bool);
20
12
 
21
- function deposit(
22
- uint256 _pid,
23
- uint256 _amount,
24
- bool _stake
25
- ) external returns (bool);
13
+ function deposit(uint256 _pid, uint256 _amount, bool _stake) external returns (bool);
26
14
 
27
15
  function depositAll(uint256 _pid, bool _stake) external returns (bool);
28
16
 
@@ -6,11 +6,7 @@ interface ICrvDepositor {
6
6
 
7
7
  function minter() external view returns (address);
8
8
 
9
- function deposit(
10
- uint256 _amount,
11
- bool _lock,
12
- address _stakeAddress
13
- ) external;
9
+ function deposit(uint256 _amount, bool _lock, address _stakeAddress) external;
14
10
 
15
11
  //deposit crv for cvxCrv
16
12
  //can locking immediately or defer locking to someone else by paying a fee.
@@ -14,10 +14,7 @@ interface IRewards {
14
14
 
15
15
  function exit(address) external;
16
16
 
17
- function getReward(
18
- address, /*_account*/
19
- bool /*_claimExtras*/
20
- ) external;
17
+ function getReward(address /*_account*/, bool /*_claimExtras*/) external;
21
18
 
22
19
  function getReward() external;
23
20
 
@@ -25,9 +25,10 @@ interface ICrvPool {
25
25
  uint256 min_dy // The amount of i being exchanged.
26
26
  ) external returns (uint256);
27
27
 
28
- function add_liquidity(uint256[2] memory _deposit_amount, uint256 _min_amount)
29
- external
30
- returns (uint256 lpOut);
28
+ function add_liquidity(
29
+ uint256[2] memory _deposit_amount,
30
+ uint256 _min_amount
31
+ ) external returns (uint256 lpOut);
31
32
 
32
33
  function remove_liquidity_one_coin(
33
34
  uint256 _burn_amount,
@@ -35,15 +36,15 @@ interface ICrvPool {
35
36
  uint256 _min_amount
36
37
  ) external returns (uint256 tokenOut);
37
38
 
38
- function calc_token_amount(uint256[2] memory _amounts, bool _is_deposit)
39
- external
40
- view
41
- returns (uint256);
39
+ function calc_token_amount(
40
+ uint256[2] memory _amounts,
41
+ bool _is_deposit
42
+ ) external view returns (uint256);
42
43
 
43
- function calc_withdraw_one_coin(uint256 _burn_amount, int128 i)
44
- external
45
- view
46
- returns (uint256);
44
+ function calc_withdraw_one_coin(
45
+ uint256 _burn_amount,
46
+ int128 i
47
+ ) external view returns (uint256);
47
48
 
48
49
  function balances(uint256 i) external view returns (uint256);
49
50
 
@@ -27,10 +27,10 @@ interface ITriCrvPool {
27
27
  uint256 _min_amount
28
28
  ) external;
29
29
 
30
- function calc_withdraw_one_coin(uint256 _burn_amount, int128 i)
31
- external
32
- view
33
- returns (uint256);
30
+ function calc_withdraw_one_coin(
31
+ uint256 _burn_amount,
32
+ int128 i
33
+ ) external view returns (uint256);
34
34
 
35
35
  function balances(uint256 i) external view returns (uint256);
36
36
 
@@ -0,0 +1,47 @@
1
+ // SPDX-License-Identifier: GPL-3.0-or-later
2
+ pragma solidity 0.8.17;
3
+
4
+ interface IGMXVault {
5
+ function BASIS_POINTS_DIVISOR() external view returns (uint256);
6
+
7
+ function PRICE_PRECISION() external view returns (uint256);
8
+
9
+ function priceFeed() external view returns (address);
10
+
11
+ function usdg() external view returns (address);
12
+
13
+ function hasDynamicFees() external view returns (bool);
14
+
15
+ function totalTokenWeights() external view returns (uint256);
16
+
17
+ function tokenBalances(address) external view returns (uint256);
18
+
19
+ function usdgAmounts(address) external view returns (uint256);
20
+
21
+ function getMinPrice(address _token) external view returns (uint256);
22
+
23
+ function getRedemptionAmount(
24
+ address _token,
25
+ uint256 _usdgAmount
26
+ ) external view returns (uint256);
27
+
28
+ function taxBasisPoints() external view returns (uint256);
29
+
30
+ function mintBurnFeeBasisPoints() external view returns (uint256);
31
+
32
+ function allWhitelistedTokensLength() external view returns (uint256);
33
+
34
+ function allWhitelistedTokens(uint256) external view returns (address);
35
+
36
+ function whitelistedTokens(address) external view returns (bool);
37
+
38
+ function whitelistedTokenCount() external view returns (uint256);
39
+
40
+ function tokenWeights(address _token) external view returns (uint256);
41
+
42
+ function adjustForDecimals(
43
+ uint256 _amount,
44
+ address _tokenDiv,
45
+ address _tokenMul
46
+ ) external view returns (uint256);
47
+ }