@pendle/core-v2 5.2.0-beta-5 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (318) 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/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
  7. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +67 -23
  9. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  10. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.json +19 -6
  11. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/SYBaseWithoutPermitUpg.dbg.json +4 -0
  12. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/{SYBaseUpg.json → SYBaseWithoutPermitUpg.json} +1 -1
  13. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSYUpg.sol/PendleAaveV3WithRewardsSYUpg.dbg.json +4 -0
  14. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSYUpg.sol/PendleAaveV3WithRewardsSYUpg.json +1169 -0
  15. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleStkGHOSY.sol/PendleStkGHOSY.dbg.json +4 -0
  16. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleStkGHOSY.sol/PendleStkGHOSY.json +1160 -0
  17. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.dbg.json +1 -1
  18. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkReceiver.sol/PendleChainlinkReceiver.json +2 -2
  19. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.dbg.json +1 -1
  20. package/build/artifacts/contracts/core/StandardizedYield/implementations/ChainlinkRelayer/PendleChainlinkRelayer.sol/PendleChainlinkRelayer.json +2 -2
  21. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  22. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
  23. package/build/artifacts/contracts/core/StandardizedYield/implementations/Mantle/PendleCMETHSY.sol/PendleCMETHSY.dbg.json +4 -0
  24. package/build/artifacts/contracts/core/StandardizedYield/implementations/Mantle/PendleCMETHSY.sol/PendleCMETHSY.json +1049 -0
  25. package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveNonBorrowableSY.sol/PendleSiloWithIncentiveNonBorrowableSY.dbg.json +4 -0
  26. package/build/artifacts/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveNonBorrowableSY.sol/PendleSiloWithIncentiveNonBorrowableSY.json +1222 -0
  27. package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBaseSYUpg.sol/PendleSolvBTCBBNBaseSYUpg.dbg.json +4 -0
  28. package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBaseSYUpg.sol/PendleSolvBTCBBNBaseSYUpg.json +1072 -0
  29. package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBase.sol/PendleSolvHelperBase.dbg.json +4 -0
  30. package/build/artifacts/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBase.sol/PendleSolvHelperBase.json +115 -0
  31. package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendEBTCSYUpg.sol/PendleZerolendEBTCSYUpg.dbg.json +4 -0
  32. package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendEBTCSYUpg.sol/PendleZerolendEBTCSYUpg.json +1337 -0
  33. package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendLBTCSYUpg.sol/PendleZerolendLBTCSYUpg.dbg.json +4 -0
  34. package/build/artifacts/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendLBTCSYUpg.sol/PendleZerolendLBTCSYUpg.json +1226 -0
  35. package/build/artifacts/contracts/interfaces/AaveV3/IAaveStkGHO.sol/IAaveStkGHO.dbg.json +4 -0
  36. package/build/artifacts/contracts/interfaces/AaveV3/IAaveStkGHO.sol/IAaveStkGHO.json +116 -0
  37. package/build/artifacts/contracts/interfaces/Angle/IAngleDistributor.sol/IAngleDistributor.dbg.json +4 -0
  38. package/build/artifacts/contracts/interfaces/Angle/IAngleDistributor.sol/IAngleDistributor.json +39 -0
  39. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  40. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  41. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  42. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +66 -0
  43. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  44. package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
  45. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  46. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
  47. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  48. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  49. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  50. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
  51. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
  52. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
  53. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
  54. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
  55. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
  56. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  57. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +66 -0
  58. package/build/artifacts/contracts/interfaces/Zerolend/IZerolendPool.sol/IZerolendPool.dbg.json +4 -0
  59. package/build/artifacts/contracts/interfaces/Zerolend/IZerolendPool.sol/IZerolendPool.json +37 -0
  60. package/build/artifacts/contracts/interfaces/Zerolend/IZerolendZ0Token.sol/IZerolendZ0Token.dbg.json +4 -0
  61. package/build/artifacts/contracts/interfaces/Zerolend/IZerolendZ0Token.sol/IZerolendZ0Token.json +24 -0
  62. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  63. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
  64. package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.dbg.json +1 -1
  65. package/build/artifacts/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol/SDKErrorsDirectory.json +27 -2
  66. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  67. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  68. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  69. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  70. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  71. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  72. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  73. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +68 -2
  74. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  75. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  76. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  77. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  78. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  79. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  80. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  81. package/build/artifacts/contracts/oracles/PendleBoringOneracle.sol/PendleBoringOneracle.dbg.json +4 -0
  82. package/build/artifacts/contracts/oracles/{internal/PendleBoringOneracle.sol → PendleBoringOneracle.sol}/PendleBoringOneracle.json +3 -3
  83. package/build/artifacts/contracts/oracles/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.dbg.json +4 -0
  84. package/build/artifacts/contracts/oracles/{internal/PendleBoringSolvBTCOneracle.sol → PendleBoringSolvBTCOneracle.sol}/PendleBoringSolvBTCOneracle.json +3 -3
  85. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +4 -0
  86. package/build/artifacts/contracts/oracles/{PtYtLpOracle/PendleLpOracleLib.sol → PendleLpOracleLib.sol}/PendleLpOracleLib.json +3 -3
  87. package/build/artifacts/contracts/oracles/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +4 -0
  88. package/build/artifacts/contracts/oracles/{PtYtLpOracle/PendlePYLpOracle.sol → PendlePYLpOracle.sol}/PendlePYLpOracle.json +3 -3
  89. package/build/artifacts/contracts/oracles/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +4 -0
  90. package/build/artifacts/contracts/oracles/{PtYtLpOracle/PendlePYOracleLib.sol → PendlePYOracleLib.sol}/PendlePYOracleLib.json +3 -3
  91. package/build/artifacts/contracts/oracles/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.dbg.json +4 -0
  92. package/build/artifacts/contracts/oracles/{internal/PendleRedStoneRateOracleAdapter.sol → PendleRedStoneRateOracleAdapter.sol}/PendleRedStoneRateOracleAdapter.json +3 -3
  93. package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PTExpiry.dbg.json +4 -0
  94. package/build/artifacts/contracts/oracles/{internal/PendleSparkLinearDiscountOracle.sol → PendleSparkLinearDiscountOracle.sol}/PTExpiry.json +1 -1
  95. package/build/artifacts/contracts/oracles/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.dbg.json +4 -0
  96. package/build/artifacts/contracts/oracles/{internal/PendleSparkLinearDiscountOracle.sol → PendleSparkLinearDiscountOracle.sol}/PendleSparkLinearDiscountOracle.json +3 -3
  97. package/build/artifacts/contracts/oracles/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.dbg.json +4 -0
  98. package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpGlpOracle.sol/BoringLpGlpOracle.json +3 -3
  99. package/build/artifacts/contracts/oracles/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +4 -0
  100. package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpSeller.sol/BoringLpSeller.json +1 -1
  101. package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +4 -0
  102. package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +3 -3
  103. package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +4 -0
  104. package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +3 -3
  105. package/build/artifacts/contracts/oracles/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +4 -0
  106. package/build/artifacts/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPtSeller.sol/BoringPtSeller.json +1 -1
  107. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  108. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
  109. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  110. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -2
  111. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
  112. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -2
  113. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
  114. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -2
  115. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  116. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
  117. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  118. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -2
  119. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
  120. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
  121. package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
  122. package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
  123. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  124. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
  125. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
  126. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
  127. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
  128. package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  129. package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  130. package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  131. package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  132. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
  133. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
  134. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
  135. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
  136. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
  137. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.json +65 -0
  138. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
  139. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +4 -0
  140. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.json +82 -0
  141. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  142. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +67 -2
  143. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +16 -10
  144. package/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +27 -6
  145. package/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +3 -2
  146. package/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol +7 -1
  147. package/contracts/core/StandardizedYield/implementations/AaveV3/{PendleAaveV3WithRewardsSY.sol → PendleAaveV3WithRewardsSYUpg.sol} +27 -45
  148. package/contracts/core/StandardizedYield/implementations/AaveV3/PendleStkGHOSY.sol +130 -0
  149. package/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol +1 -2
  150. package/contracts/core/StandardizedYield/implementations/Mantle/PendleCMETHSY.sol +82 -0
  151. package/contracts/core/StandardizedYield/implementations/Silo/PendleSiloWithIncentiveNonBorrowableSY.sol +154 -0
  152. package/contracts/core/StandardizedYield/implementations/Solv/PendleSolvBTCBBNBaseSYUpg.sol +103 -0
  153. package/contracts/core/StandardizedYield/implementations/Solv/PendleSolvHelperBase.sol +47 -0
  154. package/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendEBTCSYUpg.sol +101 -0
  155. package/contracts/core/StandardizedYield/implementations/Zerolend/PendleZerolendLBTCSYUpg.sol +32 -0
  156. package/contracts/interfaces/AaveV3/IAaveStkGHO.sol +17 -0
  157. package/contracts/interfaces/Angle/IAngleDistributor.sol +12 -0
  158. package/contracts/interfaces/IPActionMarketCoreStatic.sol +4 -0
  159. package/contracts/interfaces/Zerolend/IZerolendPool.sol +31 -0
  160. package/contracts/interfaces/Zerolend/IZerolendZ0Token.sol +6 -0
  161. package/contracts/offchain-helpers/errors/SDKErrorsDirectory.sol +5 -0
  162. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +1 -1
  163. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +1 -1
  164. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +10 -4
  165. package/contracts/oracles/{internal/PendleBoringOneracle.sol → PendleBoringOneracle.sol} +2 -2
  166. package/contracts/oracles/{internal/PendleBoringSolvBTCOneracle.sol → PendleBoringSolvBTCOneracle.sol} +2 -2
  167. package/contracts/oracles/{PtYtLpOracle/PendlePYLpOracle.sol → PendlePYLpOracle.sol} +2 -2
  168. package/contracts/oracles/{PtYtLpOracle/PendlePYOracleLib.sol → PendlePYOracleLib.sol} +2 -2
  169. package/contracts/oracles/{internal/PendleRedStoneRateOracleAdapter.sol → PendleRedStoneRateOracleAdapter.sol} +3 -3
  170. package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpGlpOracle.sol +3 -3
  171. package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringLpSeller.sol +1 -1
  172. package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkAssetOracle.sol +3 -3
  173. package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPYUsdChainlinkSYOracle.sol +3 -3
  174. package/contracts/oracles/{PtYtLpOracle/samples → samples}/BoringPtSeller.sol +1 -1
  175. package/contracts/router/swap-aggregator/IPSwapAggregator.sol +5 -1
  176. package/contracts/router/swap-aggregator/PendleSwap.sol +52 -0
  177. package/deployments/1-core.json +1 -1
  178. package/deployments/1-markets/AGETH-MAINNET-JUN2025.json +14 -0
  179. package/deployments/1-markets/PUFETH-MAINNET-JUN2025.json +14 -0
  180. package/deployments/1-markets/RSETH-MAINNET-JUN2025.json +14 -0
  181. package/deployments/1-markets/RSWETH-MAINNET-JUN2025.json +14 -0
  182. package/deployments/1-markets/STKGHO-MAINNET-APR2025.json +14 -0
  183. package/deployments/1-markets/SUSDE-MAINNET-MAY2025.json +14 -0
  184. package/deployments/1-markets/UNIETH-MAINNET-JUN2025.json +14 -0
  185. package/deployments/1-markets/USD0++-MAINNET-JAN2025.json +14 -0
  186. package/deployments/1-markets/WEETH-MAINNET-JUN2025.json +14 -0
  187. package/deployments/1-markets/ZEROLEND-EBTC-MAINNET-MAR2025.json +14 -0
  188. package/deployments/10-core.json +1 -1
  189. package/deployments/42161-core.json +1 -1
  190. package/deployments/42161-markets/DOLOMITE-USDC-ARBITRUM-JUN2025.json +14 -0
  191. package/deployments/42161-markets/DOLOMITE-WBTC-ARBITRUM-JUN2025.json +14 -0
  192. package/deployments/42161-markets/RSETH-ARBITRUM-JUN2025.json +14 -0
  193. package/deployments/42161-markets/SPSILO-ARBITRUM-MAR2025.json +14 -0
  194. package/deployments/42161-markets/UNIETH-ARBITRUM-JUN2025.json +14 -0
  195. package/deployments/42161-markets/WEETH-ARBITRUM-JUN2025.json +14 -0
  196. package/deployments/5000-core.json +1 -1
  197. package/deployments/5000-markets/CMETH-MANTLE-FEB2025.json +14 -0
  198. package/deployments/56-core.json +2 -2
  199. package/deployments/56-markets/VENUS-BNB-BSC-JUN2025.json +14 -0
  200. package/deployments/8453-core.json +41 -0
  201. package/deployments/8453-offchain-helper.json +6 -0
  202. package/package.json +1 -1
  203. package/typechain-types/ActionMarketCoreStatic.ts +68 -0
  204. package/typechain-types/ActionSwapLimitV3.ts +1667 -0
  205. package/typechain-types/IPActionMarketCoreStatic.ts +68 -0
  206. package/typechain-types/IPActionSwapLimitV3.ts +1667 -0
  207. package/typechain-types/IPActionSwapLimitV3Events.ts +207 -0
  208. package/typechain-types/IPRouterStatic.ts +34 -0
  209. package/typechain-types/IPSwapAggregator.ts +64 -3
  210. package/typechain-types/IZerolendPool.ts +111 -0
  211. package/typechain-types/IZerolendZ0Token.ts +87 -0
  212. package/typechain-types/PendleAaveV3WithRewardsSYUpg.ts +1498 -0
  213. package/typechain-types/PendleChainlinkOracle.ts +16 -16
  214. package/typechain-types/PendleChainlinkOracleFactory.ts +112 -33
  215. package/typechain-types/PendleChainlinkOracleWithQuote.ts +16 -16
  216. package/typechain-types/PendleSiloWithIncentiveNonBorrowableSY.ts +1543 -0
  217. package/typechain-types/PendleSolvBTCBBNBaseSYUpg.ts +1409 -0
  218. package/typechain-types/PendleSolvHelperBase.ts +220 -0
  219. package/typechain-types/PendleSwap.ts +64 -3
  220. package/typechain-types/PendleVotingControllerUpg.ts +135 -43
  221. package/typechain-types/PendleZerolendEBTCSYUpg.ts +1754 -0
  222. package/typechain-types/PendleZerolendLBTCSYUpg.ts +1598 -0
  223. package/typechain-types/VotingControllerStorageUpg.ts +34 -15
  224. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
  225. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  226. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  227. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +67 -1
  228. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  229. package/typechain-types/factories/ActionMiscV3__factory.ts +1 -1
  230. package/typechain-types/factories/ActionSimple__factory.ts +1 -1
  231. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  232. package/typechain-types/factories/ActionStorageV4__factory.ts +1 -1
  233. package/typechain-types/factories/ActionSwapLimitV3__factory.ts +2691 -0
  234. package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
  235. package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
  236. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  237. package/typechain-types/factories/BoringLpGlpOracle__factory.ts +1 -1
  238. package/typechain-types/factories/BoringPYUsdChainlinkAssetOracle__factory.ts +1 -1
  239. package/typechain-types/factories/BoringPYUsdChainlinkSYOracle__factory.ts +1 -1
  240. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +66 -0
  241. package/typechain-types/factories/IPActionSwapLimitV3Events__factory.ts +226 -0
  242. package/typechain-types/factories/IPActionSwapLimitV3__factory.ts +2653 -0
  243. package/typechain-types/factories/IPRouterStatic__factory.ts +66 -0
  244. package/typechain-types/factories/IPSwapAggregator__factory.ts +65 -0
  245. package/typechain-types/factories/IZerolendPool__factory.ts +49 -0
  246. package/typechain-types/factories/IZerolendZ0Token__factory.ts +39 -0
  247. package/typechain-types/factories/PendleAaveV3WithRewardsSYUpg__factory.ts +1246 -0
  248. package/typechain-types/factories/PendleBoringOneracle__factory.ts +1 -1
  249. package/typechain-types/factories/PendleBoringSolvBTCOneracle__factory.ts +1 -1
  250. package/typechain-types/factories/PendleChainlinkOracleFactory__factory.ts +66 -23
  251. package/typechain-types/factories/PendleChainlinkOracleWithQuote__factory.ts +7 -12
  252. package/typechain-types/factories/PendleChainlinkOracle__factory.ts +7 -7
  253. package/typechain-types/factories/PendleChainlinkReceiver__factory.ts +1 -1
  254. package/typechain-types/factories/PendleChainlinkRelayer__factory.ts +1 -1
  255. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  256. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  257. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  258. package/typechain-types/factories/PendlePYLpOracle__factory.ts +1 -1
  259. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
  260. package/typechain-types/factories/PendleRedStoneRateOracleAdapter__factory.ts +1 -1
  261. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  262. package/typechain-types/factories/PendleRouterV4__factory.ts +1 -1
  263. package/typechain-types/factories/PendleSiloWithIncentiveNonBorrowableSY__factory.ts +1317 -0
  264. package/typechain-types/factories/PendleSolvBTCBBNBaseSYUpg__factory.ts +1129 -0
  265. package/typechain-types/factories/PendleSolvHelperBase__factory.ts +172 -0
  266. package/typechain-types/factories/PendleSparkLinearDiscountOracle__factory.ts +1 -1
  267. package/typechain-types/factories/PendleStkGHOSY__factory.ts +1 -1
  268. package/typechain-types/factories/PendleSwap__factory.ts +66 -1
  269. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +66 -22
  270. package/typechain-types/factories/PendleZerolendEBTCSYUpg__factory.ts +1394 -0
  271. package/typechain-types/factories/PendleZerolendLBTCSYUpg__factory.ts +1283 -0
  272. package/typechain-types/factories/Reflector__factory.ts +1 -1
  273. package/typechain-types/factories/SDKErrorsDirectory__factory.ts +26 -1
  274. package/typechain-types/factories/VotingControllerStorageUpg__factory.ts +19 -6
  275. package/typechain-types/hardhat.d.ts +125 -80
  276. package/typechain-types/index.ts +30 -18
  277. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithoutPermitUpg.sol/SYBaseUpg.dbg.json +0 -4
  278. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSY.sol/PendleAaveV3WithRewardsSY.dbg.json +0 -4
  279. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3WithRewardsSY.sol/PendleAaveV3WithRewardsSY.json +0 -1198
  280. package/build/artifacts/contracts/interfaces/IPChainlinkOracle.sol/IPChainlinkOracle.dbg.json +0 -4
  281. package/build/artifacts/contracts/interfaces/IPChainlinkOracle.sol/IPChainlinkOracle.json +0 -122
  282. package/build/artifacts/contracts/interfaces/IPChainlinkOracleFactory.sol/IPChainlinkOracleFactory.dbg.json +0 -4
  283. package/build/artifacts/contracts/interfaces/IPChainlinkOracleFactory.sol/IPChainlinkOracleFactory.json +0 -91
  284. package/build/artifacts/contracts/interfaces/IPChainlinkOracleWithQuote.sol/IPChainlinkOracleWithQuote.dbg.json +0 -4
  285. package/build/artifacts/contracts/interfaces/IPChainlinkOracleWithQuote.sol/IPChainlinkOracleWithQuote.json +0 -262
  286. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +0 -4
  287. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +0 -10
  288. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +0 -4
  289. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +0 -4
  290. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +0 -4
  291. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.dbg.json +0 -4
  292. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.json +0 -274
  293. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleBase.sol/PendleChainlinkOracleBase.dbg.json +0 -4
  294. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleBase.sol/PendleChainlinkOracleBase.json +0 -253
  295. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.dbg.json +0 -4
  296. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.json +0 -300
  297. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.dbg.json +0 -4
  298. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.json +0 -310
  299. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.dbg.json +0 -4
  300. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +0 -4
  301. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +0 -4
  302. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +0 -4
  303. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +0 -4
  304. package/build/artifacts/contracts/oracles/internal/PendleBoringOneracle.sol/PendleBoringOneracle.dbg.json +0 -4
  305. package/build/artifacts/contracts/oracles/internal/PendleBoringSolvBTCOneracle.sol/PendleBoringSolvBTCOneracle.dbg.json +0 -4
  306. package/build/artifacts/contracts/oracles/internal/PendleRedStoneRateOracleAdapter.sol/PendleRedStoneRateOracleAdapter.dbg.json +0 -4
  307. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PTExpiry.dbg.json +0 -4
  308. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.dbg.json +0 -4
  309. package/contracts/interfaces/IPChainlinkOracle.sol +0 -15
  310. package/contracts/interfaces/IPChainlinkOracleFactory.sol +0 -22
  311. package/contracts/interfaces/IPChainlinkOracleWithQuote.sol +0 -8
  312. package/contracts/offchain-helpers/MarketExchangeRateLib.sol +0 -32
  313. package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol +0 -40
  314. package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleBase.sol +0 -129
  315. package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol +0 -109
  316. package/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol +0 -54
  317. /package/contracts/oracles/{PtYtLpOracle/PendleLpOracleLib.sol → PendleLpOracleLib.sol} +0 -0
  318. /package/contracts/oracles/{internal/PendleSparkLinearDiscountOracle.sol → PendleSparkLinearDiscountOracle.sol} +0 -0
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/55426231cb822bd68c85fd894c8c529d.json"
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
4
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "MarketApproxPtInLib",
4
4
  "sourceName": "contracts/router/math/MarketApproxLib.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d2de33a62a0433751e7fab74313f6fe1c53f3958d792893c45ff75f8ff7ed6e964736f6c63430008170033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d2de33a62a0433751e7fab74313f6fe1c53f3958d792893c45ff75f8ff7ed6e964736f6c63430008170033",
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202ab13cd6c5d471cbb99ec8a6bf036c5cba3113b80d5a30f9336bcde834dc6fe964736f6c63430008170033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202ab13cd6c5d471cbb99ec8a6bf036c5cba3113b80d5a30f9336bcde834dc6fe964736f6c63430008170033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/55426231cb822bd68c85fd894c8c529d.json"
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
4
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "MarketApproxPtOutLib",
4
4
  "sourceName": "contracts/router/math/MarketApproxLib.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e1b98481c9ecd178ed7ac6fdf1c1a456e263ff34c05267454ff02e7b8d96c2bf64736f6c63430008170033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e1b98481c9ecd178ed7ac6fdf1c1a456e263ff34c05267454ff02e7b8d96c2bf64736f6c63430008170033",
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d8bdc477b60cb5e6edc37f6099b3b5c82fd92fbe082c21b14266ef95969ae4d264736f6c63430008170033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d8bdc477b60cb5e6edc37f6099b3b5c82fd92fbe082c21b14266ef95969ae4d264736f6c63430008170033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/55426231cb822bd68c85fd894c8c529d.json"
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
4
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "MarketApproxPtInLibOnchain",
4
4
  "sourceName": "contracts/router/math/MarketApproxLibOnchain.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ba609af17d6a906f12570187994d6ff54e303f2ff7df003bfd0a50395f0efceb64736f6c63430008170033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ba609af17d6a906f12570187994d6ff54e303f2ff7df003bfd0a50395f0efceb64736f6c63430008170033",
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ad1d4ca78ad88d47abeb410fe34c3a8def4fed673ff6b14b4edc63c4811d33cd64736f6c63430008170033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ad1d4ca78ad88d47abeb410fe34c3a8def4fed673ff6b14b4edc63c4811d33cd64736f6c63430008170033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/55426231cb822bd68c85fd894c8c529d.json"
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
4
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "MarketApproxPtOutLibOnchain",
4
4
  "sourceName": "contracts/router/math/MarketApproxLibOnchain.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220a1e2c5f1680419fc14e0dcd1a8697a8da1d2cd0874b903a29aef58e74e29048d64736f6c63430008170033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220a1e2c5f1680419fc14e0dcd1a8697a8da1d2cd0874b903a29aef58e74e29048d64736f6c63430008170033",
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220bc76922aa2d886d4d06f802fe0629bae1ebf0466d55e049e77b0ef126ced3aab64736f6c63430008170033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220bc76922aa2d886d4d06f802fe0629bae1ebf0466d55e049e77b0ef126ced3aab64736f6c63430008170033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/55426231cb822bd68c85fd894c8c529d.json"
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
4
  }
@@ -3,6 +3,31 @@
3
3
  "contractName": "IPSwapAggregator",
4
4
  "sourceName": "contracts/router/swap-aggregator/IPSwapAggregator.sol",
5
5
  "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "enum SwapType",
12
+ "name": "swapType",
13
+ "type": "uint8"
14
+ },
15
+ {
16
+ "indexed": true,
17
+ "internalType": "address",
18
+ "name": "tokenIn",
19
+ "type": "address"
20
+ },
21
+ {
22
+ "indexed": false,
23
+ "internalType": "uint256",
24
+ "name": "amountIn",
25
+ "type": "uint256"
26
+ }
27
+ ],
28
+ "name": "SwapSingle",
29
+ "type": "event"
30
+ },
6
31
  {
7
32
  "inputs": [
8
33
  {
@@ -47,6 +72,46 @@
47
72
  "outputs": [],
48
73
  "stateMutability": "payable",
49
74
  "type": "function"
75
+ },
76
+ {
77
+ "inputs": [
78
+ {
79
+ "internalType": "address[]",
80
+ "name": "tokensIn",
81
+ "type": "address[]"
82
+ },
83
+ {
84
+ "components": [
85
+ {
86
+ "internalType": "enum SwapType",
87
+ "name": "swapType",
88
+ "type": "uint8"
89
+ },
90
+ {
91
+ "internalType": "address",
92
+ "name": "extRouter",
93
+ "type": "address"
94
+ },
95
+ {
96
+ "internalType": "bytes",
97
+ "name": "extCalldata",
98
+ "type": "bytes"
99
+ },
100
+ {
101
+ "internalType": "bool",
102
+ "name": "needScale",
103
+ "type": "bool"
104
+ }
105
+ ],
106
+ "internalType": "struct SwapData",
107
+ "name": "swapData",
108
+ "type": "tuple"
109
+ }
110
+ ],
111
+ "name": "swapMultiOdos",
112
+ "outputs": [],
113
+ "stateMutability": "payable",
114
+ "type": "function"
50
115
  }
51
116
  ],
52
117
  "bytecode": "0x",
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/55426231cb822bd68c85fd894c8c529d.json"
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
4
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
+ }
@@ -0,0 +1,82 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IOdosRouterV2",
4
+ "sourceName": "contracts/router/swap-aggregator/PendleSwap.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "components": [
10
+ {
11
+ "internalType": "address",
12
+ "name": "inputToken",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "internalType": "uint256",
17
+ "name": "inputAmount",
18
+ "type": "uint256"
19
+ },
20
+ {
21
+ "internalType": "address",
22
+ "name": "inputReceiver",
23
+ "type": "address"
24
+ },
25
+ {
26
+ "internalType": "address",
27
+ "name": "outputToken",
28
+ "type": "address"
29
+ },
30
+ {
31
+ "internalType": "uint256",
32
+ "name": "outputQuote",
33
+ "type": "uint256"
34
+ },
35
+ {
36
+ "internalType": "uint256",
37
+ "name": "outputMin",
38
+ "type": "uint256"
39
+ },
40
+ {
41
+ "internalType": "address",
42
+ "name": "outputReceiver",
43
+ "type": "address"
44
+ }
45
+ ],
46
+ "internalType": "struct IOdosRouterV2.swapTokenInfo",
47
+ "name": "tokenInfo",
48
+ "type": "tuple"
49
+ },
50
+ {
51
+ "internalType": "bytes",
52
+ "name": "pathDefinition",
53
+ "type": "bytes"
54
+ },
55
+ {
56
+ "internalType": "address",
57
+ "name": "executor",
58
+ "type": "address"
59
+ },
60
+ {
61
+ "internalType": "uint32",
62
+ "name": "referralCode",
63
+ "type": "uint32"
64
+ }
65
+ ],
66
+ "name": "swap",
67
+ "outputs": [
68
+ {
69
+ "internalType": "uint256",
70
+ "name": "amountOut",
71
+ "type": "uint256"
72
+ }
73
+ ],
74
+ "stateMutability": "payable",
75
+ "type": "function"
76
+ }
77
+ ],
78
+ "bytecode": "0x",
79
+ "deployedBytecode": "0x",
80
+ "linkReferences": {},
81
+ "deployedLinkReferences": {}
82
+ }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/55426231cb822bd68c85fd894c8c529d.json"
3
+ "buildInfo": "../../../../build-info/4d270949015466c8da4d7817a7662941.json"
4
4
  }
@@ -3,6 +3,31 @@
3
3
  "contractName": "PendleSwap",
4
4
  "sourceName": "contracts/router/swap-aggregator/PendleSwap.sol",
5
5
  "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "enum SwapType",
12
+ "name": "swapType",
13
+ "type": "uint8"
14
+ },
15
+ {
16
+ "indexed": true,
17
+ "internalType": "address",
18
+ "name": "tokenIn",
19
+ "type": "address"
20
+ },
21
+ {
22
+ "indexed": false,
23
+ "internalType": "uint256",
24
+ "name": "amountIn",
25
+ "type": "uint256"
26
+ }
27
+ ],
28
+ "name": "SwapSingle",
29
+ "type": "event"
30
+ },
6
31
  {
7
32
  "inputs": [],
8
33
  "name": "KYBER_SCALING_HELPER",
@@ -61,13 +86,53 @@
61
86
  "stateMutability": "payable",
62
87
  "type": "function"
63
88
  },
89
+ {
90
+ "inputs": [
91
+ {
92
+ "internalType": "address[]",
93
+ "name": "tokensIn",
94
+ "type": "address[]"
95
+ },
96
+ {
97
+ "components": [
98
+ {
99
+ "internalType": "enum SwapType",
100
+ "name": "swapType",
101
+ "type": "uint8"
102
+ },
103
+ {
104
+ "internalType": "address",
105
+ "name": "extRouter",
106
+ "type": "address"
107
+ },
108
+ {
109
+ "internalType": "bytes",
110
+ "name": "extCalldata",
111
+ "type": "bytes"
112
+ },
113
+ {
114
+ "internalType": "bool",
115
+ "name": "needScale",
116
+ "type": "bool"
117
+ }
118
+ ],
119
+ "internalType": "struct SwapData",
120
+ "name": "data",
121
+ "type": "tuple"
122
+ }
123
+ ],
124
+ "name": "swapMultiOdos",
125
+ "outputs": [],
126
+ "stateMutability": "payable",
127
+ "type": "function"
128
+ },
64
129
  {
65
130
  "stateMutability": "payable",
66
131
  "type": "receive"
67
132
  }
68
133
  ],
69
- "bytecode": "0x60a0604052732f577a41bec1be1152aeea12e73b7391d15f655d60805234801561002857600080fd5b506080516109b261004a600039600081816060015261026f01526109b26000f3fe60806040526004361061002d5760003560e01c80632bdb823c146100395780638930af571461004e57600080fd5b3661003457005b600080fd5b61004c61004736600461061e565b61009e565b005b34801561005a57600080fd5b506100827f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b6100b7836100b2604084016020850161067b565b610176565b6101706100ca60808301606084016106ae565b610115576100db60408301836106cb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061013892505050565b6101386101256020840184610718565b61013260408501856106cb565b8661023a565b6001600160a01b0385161561014e576000610150565b835b610160604085016020860161067b565b6001600160a01b03169190610359565b50505050565b6001600160a01b038216610188575050565b61019a60026001600160601b03610739565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610217919061076d565b1015610236576102298282600061037f565b610236828260001961037f565b5050565b6060600185600381111561025057610250610786565b036103495760405163726d379760e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e4da6f2e906102a89088908890889060040161079c565b600060405180830381865afa1580156102c5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102ed919081019061080f565b92509050806103435760405162461bcd60e51b815260206004820181905260248201527f50656e646c65537761703a204b79626572207363616c696e67206661696c656460448201526064015b60405180910390fd5b50610351565b6103516108d1565b949350505050565b606061035184848460405180606001604052806029815260200161095460299139610489565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b17905291516000928392908716916103db91906108e7565b6000604051808303816000865af19150503d8060008114610418576040519150601f19603f3d011682016040523d82523d6000602084013e61041d565b606091505b50915091508180156104475750805115806104475750808060200190518101906104479190610903565b6104825760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640161033a565b5050505050565b6060824710156104ea5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161033a565b600080866001600160a01b0316858760405161050691906108e7565b60006040518083038185875af1925050503d8060008114610543576040519150601f19603f3d011682016040523d82523d6000602084013e610548565b606091505b509150915061055987838387610564565b979650505050505050565b606083156105d35782516000036105cc576001600160a01b0385163b6105cc5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161033a565b5081610351565b61035183838151156105e85781518083602001fd5b8060405162461bcd60e51b815260040161033a9190610920565b80356001600160a01b038116811461061957600080fd5b919050565b60008060006060848603121561063357600080fd5b61063c84610602565b92506020840135915060408401356001600160401b0381111561065e57600080fd5b84016080818703121561067057600080fd5b809150509250925092565b60006020828403121561068d57600080fd5b61069682610602565b9392505050565b80151581146106ab57600080fd5b50565b6000602082840312156106c057600080fd5b81356106968161069d565b6000808335601e198436030181126106e257600080fd5b8301803591506001600160401b038211156106fc57600080fd5b60200191503681900382131561071157600080fd5b9250929050565b60006020828403121561072a57600080fd5b81356004811061069657600080fd5b60006001600160601b038381168061076157634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b60006020828403121561077f57600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b604081528260408201528284606083013760006060848301015260006060601f19601f8601168301019050826020830152949350505050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156108065781810151838201526020016107ee565b50506000910152565b6000806040838503121561082257600080fd5b825161082d8161069d565b60208401519092506001600160401b038082111561084a57600080fd5b818501915085601f83011261085e57600080fd5b815181811115610870576108706107d5565b604051601f8201601f19908116603f01168101908382118183101715610898576108986107d5565b816040528281528860208487010111156108b157600080fd5b6108c28360208301602088016107eb565b80955050505050509250929050565b634e487b7160e01b600052600160045260246000fd5b600082516108f98184602087016107eb565b9190910192915050565b60006020828403121561091557600080fd5b81516106968161069d565b602081526000825180602084015261093f8160408501602087016107eb565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a26469706673582212206591470c2f8d6c170503826a8e695308f346c84d36432f84e1b82ac848722c1364736f6c63430008170033",
70
- "deployedBytecode": "0x60806040526004361061002d5760003560e01c80632bdb823c146100395780638930af571461004e57600080fd5b3661003457005b600080fd5b61004c61004736600461061e565b61009e565b005b34801561005a57600080fd5b506100827f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b6100b7836100b2604084016020850161067b565b610176565b6101706100ca60808301606084016106ae565b610115576100db60408301836106cb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061013892505050565b6101386101256020840184610718565b61013260408501856106cb565b8661023a565b6001600160a01b0385161561014e576000610150565b835b610160604085016020860161067b565b6001600160a01b03169190610359565b50505050565b6001600160a01b038216610188575050565b61019a60026001600160601b03610739565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610217919061076d565b1015610236576102298282600061037f565b610236828260001961037f565b5050565b6060600185600381111561025057610250610786565b036103495760405163726d379760e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e4da6f2e906102a89088908890889060040161079c565b600060405180830381865afa1580156102c5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102ed919081019061080f565b92509050806103435760405162461bcd60e51b815260206004820181905260248201527f50656e646c65537761703a204b79626572207363616c696e67206661696c656460448201526064015b60405180910390fd5b50610351565b6103516108d1565b949350505050565b606061035184848460405180606001604052806029815260200161095460299139610489565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b17905291516000928392908716916103db91906108e7565b6000604051808303816000865af19150503d8060008114610418576040519150601f19603f3d011682016040523d82523d6000602084013e61041d565b606091505b50915091508180156104475750805115806104475750808060200190518101906104479190610903565b6104825760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640161033a565b5050505050565b6060824710156104ea5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161033a565b600080866001600160a01b0316858760405161050691906108e7565b60006040518083038185875af1925050503d8060008114610543576040519150601f19603f3d011682016040523d82523d6000602084013e610548565b606091505b509150915061055987838387610564565b979650505050505050565b606083156105d35782516000036105cc576001600160a01b0385163b6105cc5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161033a565b5081610351565b61035183838151156105e85781518083602001fd5b8060405162461bcd60e51b815260040161033a9190610920565b80356001600160a01b038116811461061957600080fd5b919050565b60008060006060848603121561063357600080fd5b61063c84610602565b92506020840135915060408401356001600160401b0381111561065e57600080fd5b84016080818703121561067057600080fd5b809150509250925092565b60006020828403121561068d57600080fd5b61069682610602565b9392505050565b80151581146106ab57600080fd5b50565b6000602082840312156106c057600080fd5b81356106968161069d565b6000808335601e198436030181126106e257600080fd5b8301803591506001600160401b038211156106fc57600080fd5b60200191503681900382131561071157600080fd5b9250929050565b60006020828403121561072a57600080fd5b81356004811061069657600080fd5b60006001600160601b038381168061076157634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b60006020828403121561077f57600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b604081528260408201528284606083013760006060848301015260006060601f19601f8601168301019050826020830152949350505050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156108065781810151838201526020016107ee565b50506000910152565b6000806040838503121561082257600080fd5b825161082d8161069d565b60208401519092506001600160401b038082111561084a57600080fd5b818501915085601f83011261085e57600080fd5b815181811115610870576108706107d5565b604051601f8201601f19908116603f01168101908382118183101715610898576108986107d5565b816040528281528860208487010111156108b157600080fd5b6108c28360208301602088016107eb565b80955050505050509250929050565b634e487b7160e01b600052600160045260246000fd5b600082516108f98184602087016107eb565b9190910192915050565b60006020828403121561091557600080fd5b81516106968161069d565b602081526000825180602084015261093f8160408501602087016107eb565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a26469706673582212206591470c2f8d6c170503826a8e695308f346c84d36432f84e1b82ac848722c1364736f6c63430008170033",
134
+ "bytecode": "0x60a0604052732f577a41bec1be1152aeea12e73b7391d15f655d60805234801561002857600080fd5b50608051610fb161004a60003960008181607e01526103930152610fb16000f3fe6080604052600436106100385760003560e01c80632bdb823c14610044578063359be188146100595780638930af571461006c57600080fd5b3661003f57005b600080fd5b610057610052366004610895565b6100bc565b005b6100576100673660046108ed565b6101ef565b34801561007857600080fd5b506100a07f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b6100d5836100d06040840160208501610979565b61029a565b61018e6100e860808301606084016109ab565b610133576100f960408301836109c8565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061015692505050565b6101566101436020840184610a15565b61015060408501856109c8565b8661035e565b6001600160a01b0385161561016c57600061016e565b835b61017e6040850160208601610979565b6001600160a01b031691906104a8565b506001600160a01b0383166101a66020830183610a15565b60038111156101b7576101b7610a36565b6040518481527f1d8c50a59805451ff93bb2e438559a86b75386bcac2a591d3181d79e7e8346fd9060200160405180910390a3505050565b60005b8281101561023c5761023484848381811061020f5761020f610a4c565b90506020020160208101906102249190610979565b6100d06040850160208601610979565b6001016101f2565b5061029461024d60408301836109c8565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525034925061017e9150506040850160208601610979565b50505050565b6001600160a01b0382166102ac575050565b6102be60026001600160601b03610a78565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015610317573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033b9190610a9e565b101561035a5761034d828260006104ce565b61035a82826000196104ce565b5050565b6060600185600381111561037457610374610a36565b0361046d5760405163726d379760e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e4da6f2e906103cc90889088908890600401610ab7565b600060405180830381865afa1580156103e9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104119190810190610ba9565b92509050806104675760405162461bcd60e51b815260206004820181905260248201527f50656e646c65537761703a204b79626572207363616c696e67206661696c656460448201526064015b60405180910390fd5b506104a0565b600285600381111561048157610481610a36565b03610498576104918484846105d8565b90506104a0565b6104a0610c3a565b949350505050565b60606104a0848484604051806060016040528060298152602001610f53602991396106ec565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b179052915160009283929087169161052a9190610c50565b6000604051808303816000865af19150503d8060008114610567576040519150601f19603f3d011682016040523d82523d6000602084013e61056c565b606091505b50915091508180156105965750805115806105965750808060200190518101906105969190610c6c565b6105d15760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640161045e565b5050505050565b606060006105e96004828688610c89565b6105f291610cb3565b9050366000610604866004818a610c89565b90925090506001600160e01b03198316630ed8d73960e21b1461062957610629610c3a565b600080808061063a85870187610d58565b935093509350935083602001518985608001516106579190610e3e565b6106619190610e69565b6080850152602084015160a085015161067b908b90610e3e565b6106859190610e69565b60a08501526020840189905260405187906106aa908690869086908690602401610ea9565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529750505050505050509392505050565b60608247101561074d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161045e565b600080866001600160a01b031685876040516107699190610c50565b60006040518083038185875af1925050503d80600081146107a6576040519150601f19603f3d011682016040523d82523d6000602084013e6107ab565b606091505b50915091506107bc878383876107c7565b979650505050505050565b6060831561083657825160000361082f576001600160a01b0385163b61082f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161045e565b50816104a0565b6104a0838381511561084b5781518083602001fd5b8060405162461bcd60e51b815260040161045e9190610f3f565b6001600160a01b038116811461087a57600080fd5b50565b60006080828403121561088f57600080fd5b50919050565b6000806000606084860312156108aa57600080fd5b83356108b581610865565b92506020840135915060408401356001600160401b038111156108d757600080fd5b6108e38682870161087d565b9150509250925092565b60008060006040848603121561090257600080fd5b83356001600160401b038082111561091957600080fd5b818601915086601f83011261092d57600080fd5b81358181111561093c57600080fd5b8760208260051b850101111561095157600080fd5b60209283019550935090850135908082111561096c57600080fd5b506108e38682870161087d565b60006020828403121561098b57600080fd5b813561099681610865565b9392505050565b801515811461087a57600080fd5b6000602082840312156109bd57600080fd5b81356109968161099d565b6000808335601e198436030181126109df57600080fd5b8301803591506001600160401b038211156109f957600080fd5b602001915036819003821315610a0e57600080fd5b9250929050565b600060208284031215610a2757600080fd5b81356004811061099657600080fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601260045260246000fd5b60006001600160601b0383811680610a9257610a92610a62565b92169190910492915050565b600060208284031215610ab057600080fd5b5051919050565b604081528260408201528284606083013760006060848301015260006060601f19601f8601168301019050826020830152949350505050565b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b0381118282101715610b2857610b28610af0565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610b5657610b56610af0565b604052919050565b60006001600160401b03821115610b7757610b77610af0565b50601f01601f191660200190565b60005b83811015610ba0578181015183820152602001610b88565b50506000910152565b60008060408385031215610bbc57600080fd5b8251610bc78161099d565b60208401519092506001600160401b03811115610be357600080fd5b8301601f81018513610bf457600080fd5b8051610c07610c0282610b5e565b610b2e565b818152866020838501011115610c1c57600080fd5b610c2d826020830160208601610b85565b8093505050509250929050565b634e487b7160e01b600052600160045260246000fd5b60008251610c62818460208701610b85565b9190910192915050565b600060208284031215610c7e57600080fd5b81516109968161099d565b60008085851115610c9957600080fd5b83861115610ca657600080fd5b5050820193919092039150565b6001600160e01b03198135818116916004851015610cdb5780818660040360031b1b83161692505b505092915050565b600082601f830112610cf457600080fd5b8135610d02610c0282610b5e565b818152846020838601011115610d1757600080fd5b816020850160208301376000918101602001919091529392505050565b8035610d3f81610865565b919050565b803563ffffffff81168114610d3f57600080fd5b600080600080848603610140811215610d7057600080fd5b60e0811215610d7e57600080fd5b50610d87610b06565b8535610d9281610865565b8152602086810135908201526040860135610dac81610865565b60408201526060860135610dbf81610865565b806060830152506080860135608082015260a086013560a082015260c0860135610de881610865565b60c0820152935060e08501356001600160401b03811115610e0857600080fd5b610e1487828801610ce3565b935050610e246101008601610d34565b9150610e336101208601610d44565b905092959194509250565b8082028115828204841417610e6357634e487b7160e01b600052601160045260246000fd5b92915050565b600082610e7857610e78610a62565b500490565b60008151808452610e95816020860160208601610b85565b601f01601f19169290920160200192915050565b600061014060018060a01b03808851168452602088015160208501528060408901511660408501528060608901511660608501526080880151608085015260a088015160a08501528060c08901511660c0850152508060e0840152610f1081840187610e7d565b915050610f296101008301856001600160a01b03169052565b63ffffffff831661012083015295945050505050565b6020815260006109966020830184610e7d56fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a26469706673582212207ea7d978ef77eabde62e0787440422714b9d9240b71c07ea2eecca40bf77f03b64736f6c63430008170033",
135
+ "deployedBytecode": "0x6080604052600436106100385760003560e01c80632bdb823c14610044578063359be188146100595780638930af571461006c57600080fd5b3661003f57005b600080fd5b610057610052366004610895565b6100bc565b005b6100576100673660046108ed565b6101ef565b34801561007857600080fd5b506100a07f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b6100d5836100d06040840160208501610979565b61029a565b61018e6100e860808301606084016109ab565b610133576100f960408301836109c8565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061015692505050565b6101566101436020840184610a15565b61015060408501856109c8565b8661035e565b6001600160a01b0385161561016c57600061016e565b835b61017e6040850160208601610979565b6001600160a01b031691906104a8565b506001600160a01b0383166101a66020830183610a15565b60038111156101b7576101b7610a36565b6040518481527f1d8c50a59805451ff93bb2e438559a86b75386bcac2a591d3181d79e7e8346fd9060200160405180910390a3505050565b60005b8281101561023c5761023484848381811061020f5761020f610a4c565b90506020020160208101906102249190610979565b6100d06040850160208601610979565b6001016101f2565b5061029461024d60408301836109c8565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525034925061017e9150506040850160208601610979565b50505050565b6001600160a01b0382166102ac575050565b6102be60026001600160601b03610a78565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015610317573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033b9190610a9e565b101561035a5761034d828260006104ce565b61035a82826000196104ce565b5050565b6060600185600381111561037457610374610a36565b0361046d5760405163726d379760e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e4da6f2e906103cc90889088908890600401610ab7565b600060405180830381865afa1580156103e9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104119190810190610ba9565b92509050806104675760405162461bcd60e51b815260206004820181905260248201527f50656e646c65537761703a204b79626572207363616c696e67206661696c656460448201526064015b60405180910390fd5b506104a0565b600285600381111561048157610481610a36565b03610498576104918484846105d8565b90506104a0565b6104a0610c3a565b949350505050565b60606104a0848484604051806060016040528060298152602001610f53602991396106ec565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b179052915160009283929087169161052a9190610c50565b6000604051808303816000865af19150503d8060008114610567576040519150601f19603f3d011682016040523d82523d6000602084013e61056c565b606091505b50915091508180156105965750805115806105965750808060200190518101906105969190610c6c565b6105d15760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640161045e565b5050505050565b606060006105e96004828688610c89565b6105f291610cb3565b9050366000610604866004818a610c89565b90925090506001600160e01b03198316630ed8d73960e21b1461062957610629610c3a565b600080808061063a85870187610d58565b935093509350935083602001518985608001516106579190610e3e565b6106619190610e69565b6080850152602084015160a085015161067b908b90610e3e565b6106859190610e69565b60a08501526020840189905260405187906106aa908690869086908690602401610ea9565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529750505050505050509392505050565b60608247101561074d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161045e565b600080866001600160a01b031685876040516107699190610c50565b60006040518083038185875af1925050503d80600081146107a6576040519150601f19603f3d011682016040523d82523d6000602084013e6107ab565b606091505b50915091506107bc878383876107c7565b979650505050505050565b6060831561083657825160000361082f576001600160a01b0385163b61082f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161045e565b50816104a0565b6104a0838381511561084b5781518083602001fd5b8060405162461bcd60e51b815260040161045e9190610f3f565b6001600160a01b038116811461087a57600080fd5b50565b60006080828403121561088f57600080fd5b50919050565b6000806000606084860312156108aa57600080fd5b83356108b581610865565b92506020840135915060408401356001600160401b038111156108d757600080fd5b6108e38682870161087d565b9150509250925092565b60008060006040848603121561090257600080fd5b83356001600160401b038082111561091957600080fd5b818601915086601f83011261092d57600080fd5b81358181111561093c57600080fd5b8760208260051b850101111561095157600080fd5b60209283019550935090850135908082111561096c57600080fd5b506108e38682870161087d565b60006020828403121561098b57600080fd5b813561099681610865565b9392505050565b801515811461087a57600080fd5b6000602082840312156109bd57600080fd5b81356109968161099d565b6000808335601e198436030181126109df57600080fd5b8301803591506001600160401b038211156109f957600080fd5b602001915036819003821315610a0e57600080fd5b9250929050565b600060208284031215610a2757600080fd5b81356004811061099657600080fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601260045260246000fd5b60006001600160601b0383811680610a9257610a92610a62565b92169190910492915050565b600060208284031215610ab057600080fd5b5051919050565b604081528260408201528284606083013760006060848301015260006060601f19601f8601168301019050826020830152949350505050565b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b0381118282101715610b2857610b28610af0565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610b5657610b56610af0565b604052919050565b60006001600160401b03821115610b7757610b77610af0565b50601f01601f191660200190565b60005b83811015610ba0578181015183820152602001610b88565b50506000910152565b60008060408385031215610bbc57600080fd5b8251610bc78161099d565b60208401519092506001600160401b03811115610be357600080fd5b8301601f81018513610bf457600080fd5b8051610c07610c0282610b5e565b610b2e565b818152866020838501011115610c1c57600080fd5b610c2d826020830160208601610b85565b8093505050509250929050565b634e487b7160e01b600052600160045260246000fd5b60008251610c62818460208701610b85565b9190910192915050565b600060208284031215610c7e57600080fd5b81516109968161099d565b60008085851115610c9957600080fd5b83861115610ca657600080fd5b5050820193919092039150565b6001600160e01b03198135818116916004851015610cdb5780818660040360031b1b83161692505b505092915050565b600082601f830112610cf457600080fd5b8135610d02610c0282610b5e565b818152846020838601011115610d1757600080fd5b816020850160208301376000918101602001919091529392505050565b8035610d3f81610865565b919050565b803563ffffffff81168114610d3f57600080fd5b600080600080848603610140811215610d7057600080fd5b60e0811215610d7e57600080fd5b50610d87610b06565b8535610d9281610865565b8152602086810135908201526040860135610dac81610865565b60408201526060860135610dbf81610865565b806060830152506080860135608082015260a086013560a082015260c0860135610de881610865565b60c0820152935060e08501356001600160401b03811115610e0857600080fd5b610e1487828801610ce3565b935050610e246101008601610d34565b9150610e336101208601610d44565b905092959194509250565b8082028115828204841417610e6357634e487b7160e01b600052601160045260246000fd5b92915050565b600082610e7857610e78610a62565b500490565b60008151808452610e95816020860160208601610b85565b601f01601f19169290920160200192915050565b600061014060018060a01b03808851168452602088015160208501528060408901511660408501528060608901511660608501526080880151608085015260a088015160a08501528060c08901511660c0850152508060e0840152610f1081840187610e7d565b915050610f296101008301856001600160a01b03169052565b63ffffffff831661012083015295945050505050565b6020815260006109966020830184610e7d56fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a26469706673582212207ea7d978ef77eabde62e0787440422714b9d9240b71c07ea2eecca40bf77f03b64736f6c63430008170033",
71
136
  "linkReferences": {},
72
137
  "deployedLinkReferences": {}
73
138
  }
@@ -5,40 +5,46 @@ library LayerZeroHelper {
5
5
  uint256 constant EVM_ADDRESS_SIZE = 20;
6
6
 
7
7
  function _getLayerZeroChainIds(uint256 chainId) internal pure returns (uint16) {
8
- if (chainId == 43113) return 10106;
9
8
  // fuji testnet
10
- else if (chainId == 80001) return 10109;
9
+ if (chainId == 43113) return 10106;
11
10
  // mumbai testnet
12
- else if (chainId == 43114) return 106;
11
+ else if (chainId == 80001) return 10109;
13
12
  // avax mainnet
14
- else if (chainId == 42161) return 110;
13
+ else if (chainId == 43114) return 106;
15
14
  // arbitrum one
16
- else if (chainId == 56) return 102;
15
+ else if (chainId == 42161) return 110;
17
16
  // binance smart chain
17
+ else if (chainId == 56) return 102;
18
+ // mainnet
18
19
  else if (chainId == 1) return 101;
19
20
  // mantle
20
21
  else if (chainId == 5000) return 181;
21
22
  // optimism
22
23
  else if (chainId == 10) return 111;
24
+ // base
25
+ else if (chainId == 8453) return 184;
23
26
  assert(false);
24
27
  }
25
28
 
26
29
  function _getOriginalChainIds(uint16 chainId) internal pure returns (uint256) {
27
- if (chainId == 10106) return 43113;
28
30
  // fuji testnet
29
- else if (chainId == 10109) return 80001;
31
+ if (chainId == 10106) return 43113;
30
32
  // mumbai testnet
31
- else if (chainId == 106) return 43114;
33
+ else if (chainId == 10109) return 80001;
32
34
  // avax mainnet
33
- else if (chainId == 110) return 42161;
35
+ else if (chainId == 106) return 43114;
34
36
  // arbitrum one
35
- else if (chainId == 102) return 56;
37
+ else if (chainId == 110) return 42161;
36
38
  // binance smart chain
39
+ else if (chainId == 102) return 56;
40
+ // mainnet
37
41
  else if (chainId == 101) return 1;
38
42
  // mantle
39
43
  else if (chainId == 181) return 5000;
40
44
  // optimism
41
45
  else if (chainId == 111) return 10;
46
+ // base
47
+ else if (chainId == 184) return 8453;
42
48
  assert(false);
43
49
  }
44
50
 
@@ -150,8 +150,13 @@ contract PendleVotingControllerUpg is PendleMsgSenderAppUpg, VotingControllerSto
150
150
  GOVERNANCE-ONLY FUNCTIONS
151
151
  //////////////////////////////////////////////////////////////*/
152
152
 
153
- modifier onlyHelperAndOwner() {
154
- require(msg.sender == ownerHelper || msg.sender == owner, "not allowed");
153
+ modifier onlyAddPoolHelperAndOwner() {
154
+ require(msg.sender == addPoolHelper || msg.sender == owner, "add pool not allowed");
155
+ _;
156
+ }
157
+
158
+ modifier onlyRemovePoolHelperAndOwner() {
159
+ require(msg.sender == removePoolHelper || msg.sender == owner, "remove pool not allowed");
155
160
  _;
156
161
  }
157
162
 
@@ -162,7 +167,7 @@ contract PendleVotingControllerUpg is PendleMsgSenderAppUpg, VotingControllerSto
162
167
  * - `pool` must not have been added before (even if has been removed).
163
168
  * - `chainId` must be valid.
164
169
  */
165
- function addPool(uint64 chainId, address pool) external onlyHelperAndOwner {
170
+ function addPool(uint64 chainId, address pool) external onlyAddPoolHelperAndOwner {
166
171
  if (_isPoolActive(pool)) revert Errors.VCPoolAlreadyActive(pool);
167
172
  if (allRemovedPools.contains(pool)) revert Errors.VCPoolAlreadyAddAndRemoved(pool);
168
173
 
@@ -170,13 +175,25 @@ contract PendleVotingControllerUpg is PendleMsgSenderAppUpg, VotingControllerSto
170
175
  emit AddPool(chainId, pool);
171
176
  }
172
177
 
178
+ function addMultiPools(uint64[] memory chainIds, address[] memory pools) external onlyAddPoolHelperAndOwner {
179
+ if (chainIds.length != pools.length) revert Errors.ArrayLengthMismatch();
180
+ for (uint256 i = 0; i < chainIds.length; ++i) {
181
+ (uint64 chainId, address pool) = (chainIds[i], pools[i]);
182
+ if (_isPoolActive(pool)) revert Errors.VCPoolAlreadyActive(pool);
183
+ if (allRemovedPools.contains(pool)) revert Errors.VCPoolAlreadyAddAndRemoved(pool);
184
+
185
+ _addPool(chainId, pool);
186
+ emit AddPool(chainId, pool);
187
+ }
188
+ }
189
+
173
190
  /**
174
191
  * @notice remove a pool from voting. Can only be done by governance
175
192
  * @custom:gov NOTE TO GOV:
176
193
  * - Previous week's results should have been broadcasted prior to calling this function.
177
194
  * - `pool` must be currently active.
178
195
  */
179
- function removePool(address pool) external onlyOwner {
196
+ function removePool(address pool) external onlyRemovePoolHelperAndOwner {
180
197
  if (!_isPoolActive(pool)) revert Errors.VCInactivePool(pool);
181
198
 
182
199
  uint64 chainId = poolData[pool].chainId;
@@ -263,8 +280,12 @@ contract PendleVotingControllerUpg is PendleMsgSenderAppUpg, VotingControllerSto
263
280
  }
264
281
  }
265
282
 
266
- function setOwnerHelper(address _helper) public onlyOwner {
267
- ownerHelper = _helper;
283
+ function setAddPoolHelper(address _helper) public onlyOwner {
284
+ addPoolHelper = _helper;
285
+ }
286
+
287
+ function setRemovePoolHelper(address _helper) public onlyOwner {
288
+ removePoolHelper = _helper;
268
289
  }
269
290
 
270
291
  //solhint-disable-next-line
@@ -73,9 +73,10 @@ abstract contract VotingControllerStorageUpg is IPVotingController {
73
73
  // [user][pool] => checkpoint
74
74
  mapping(address => mapping(address => Checkpoints.History)) internal __dep_userPoolHistory;
75
75
 
76
- address public ownerHelper;
76
+ address public addPoolHelper;
77
+ address public removePoolHelper;
77
78
 
78
- uint256[99] private __gap;
79
+ uint256[98] private __gap;
79
80
 
80
81
  constructor(address _vePendle) {
81
82
  vePendle = IPVeToken(_vePendle);
@@ -12,7 +12,13 @@ import "../libraries/Errors.sol";
12
12
  import "../libraries/BoringOwnableUpgradeable.sol";
13
13
  import "@openzeppelin/contracts/security/Pausable.sol";
14
14
 
15
- abstract contract SYBaseUpg is IStandardizedYield, PendleERC20Upg, TokenHelper, BoringOwnableUpgradeable, Pausable {
15
+ abstract contract SYBaseWithoutPermitUpg is
16
+ IStandardizedYield,
17
+ PendleERC20Upg,
18
+ TokenHelper,
19
+ BoringOwnableUpgradeable,
20
+ Pausable
21
+ {
16
22
  using PMath for uint256;
17
23
 
18
24
  address public immutable yieldToken;