@pendle/core-v2 0.8.1-beta → 0.9.0-gamma-2

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 (308) hide show
  1. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/AaveV3/PendleAaveV3SCY.sol/PendleAaveV3SCY.dbg.json +1 -1
  2. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/AaveV3/PendleAaveV3SCY.sol/PendleAaveV3SCY.json +2 -2
  3. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/AaveV3/WadRayMath.sol/WadRayMath.dbg.json +1 -1
  4. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiSAvaxSCY.sol/PendleQiSAvaxSCY.dbg.json +4 -0
  5. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiSAvaxSCY.sol/PendleQiSAvaxSCY.json +833 -0
  6. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  7. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol/PendleQiTokenSCY.dbg.json +1 -1
  8. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol/PendleQiTokenSCY.json +2 -2
  9. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol/PendleSAvaxSCY.dbg.json +4 -0
  10. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol/PendleSAvaxSCY.json +723 -0
  11. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol/PendleEulerSCY.dbg.json +4 -0
  12. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol/PendleEulerSCY.json +723 -0
  13. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleERC4626SCY.sol/PendleERC4626SCY.dbg.json +1 -1
  14. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleERC4626SCY.sol/PendleERC4626SCY.json +2 -2
  15. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleStargateSCY.sol/PendleStargateSCY.dbg.json +1 -1
  16. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleStargateSCY.sol/PendleStargateSCY.json +2 -2
  17. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleWstEthSCY.sol/PendleWstEthSCY.dbg.json +1 -1
  18. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleWstEthSCY.sol/PendleWstEthSCY.json +20 -2
  19. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleYearnVaultScy.sol/PendleYearnVaultSCY.dbg.json +1 -1
  20. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/PendleYearnVaultScy.sol/PendleYearnVaultSCY.json +2 -2
  21. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol/PendleSJoeSCY.dbg.json +4 -0
  22. package/build/artifacts/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol/PendleSJoeSCY.json +784 -0
  23. package/build/artifacts/contracts/SuperComposableYield/base-implementations/SCYBase.sol/SCYBase.dbg.json +1 -1
  24. package/build/artifacts/contracts/SuperComposableYield/base-implementations/SCYBaseWithRewards.sol/SCYBaseWithRewards.dbg.json +1 -1
  25. package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerReceiverUpg.sol/CelerReceiverUpg.dbg.json +1 -1
  26. package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerSenderUpg.sol/CelerSenderUpg.dbg.json +1 -1
  27. package/build/artifacts/contracts/core/LiquidityMining/CelerAbstracts/CelerSenderUpg.sol/CelerSenderUpg.json +2 -2
  28. package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  29. package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  30. package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  31. package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  32. package/build/artifacts/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  33. package/build/artifacts/contracts/core/LiquidityMining/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +47 -28
  36. package/build/artifacts/contracts/core/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +66 -4
  39. package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +26 -2
  41. package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.json +24 -0
  43. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  45. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  47. package/build/artifacts/contracts/core/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/PendleRouter.sol/PendleRouter.json +2 -2
  50. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -77
  53. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  55. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +21 -96
  57. package/build/artifacts/contracts/core/actions/ActionCallback.sol/ActionCallback.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/actions/ActionCallback.sol/ActionCallback.json +2 -2
  59. package/build/artifacts/contracts/core/actions/ActionCore.sol/ActionCore.dbg.json +1 -1
  60. package/build/artifacts/contracts/core/actions/ActionCore.sol/ActionCore.json +272 -136
  61. package/build/artifacts/contracts/core/actions/ActionYT.sol/ActionYT.dbg.json +1 -1
  62. package/build/artifacts/contracts/core/actions/ActionYT.sol/ActionYT.json +75 -41
  63. package/build/artifacts/contracts/core/actions/base/ActionSCYAndPTBase.sol/ActionSCYAndPTBase.dbg.json +1 -1
  64. package/build/artifacts/contracts/core/actions/base/ActionSCYAndPTBase.sol/ActionSCYAndPTBase.json +1 -1
  65. package/build/artifacts/contracts/core/actions/base/ActionSCYAndPYBase.sol/ActionSCYAndPYBase.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/actions/base/ActionSCYAndPYBase.sol/ActionSCYAndPYBase.json +1 -1
  67. package/build/artifacts/contracts/core/actions/base/ActionSCYAndYTBase.sol/ActionSCYAndYTBase.dbg.json +1 -1
  68. package/build/artifacts/contracts/core/actions/base/ActionSCYAndYTBase.sol/ActionSCYAndYTBase.json +1 -1
  69. package/build/artifacts/contracts/core/actions/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  70. package/build/artifacts/contracts/interfaces/IAToken.sol/IAToken.dbg.json +1 -1
  71. package/build/artifacts/contracts/interfaces/IAavePool.sol/IAavePool.dbg.json +1 -1
  72. package/build/artifacts/contracts/interfaces/IAaveRewardsController.sol/IAaveRewardsController.dbg.json +1 -1
  73. package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
  74. package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
  75. package/build/artifacts/contracts/interfaces/ICelerMessageBus.sol/ICelerMessageBus.dbg.json +1 -1
  76. package/build/artifacts/contracts/interfaces/ICelerMessageReceiverApp.sol/ICelerMessageReceiverApp.dbg.json +1 -1
  77. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  78. package/build/artifacts/contracts/interfaces/IEulerEToken.sol/IEulerEToken.dbg.json +4 -0
  79. package/build/artifacts/contracts/interfaces/IEulerEToken.sol/IEulerEToken.json +162 -0
  80. package/build/artifacts/contracts/interfaces/IEulerMarkets.sol/IEulerMarkets.dbg.json +4 -0
  81. package/build/artifacts/contracts/interfaces/IEulerMarkets.sol/IEulerMarkets.json +87 -0
  82. package/build/artifacts/contracts/interfaces/IPActionCore.sol/IPActionCore.dbg.json +1 -1
  83. package/build/artifacts/contracts/interfaces/IPActionCore.sol/IPActionCore.json +268 -132
  84. package/build/artifacts/contracts/interfaces/IPActionYT.sol/IPActionYT.dbg.json +1 -1
  85. package/build/artifacts/contracts/interfaces/IPActionYT.sol/IPActionYT.json +71 -37
  86. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  87. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.json +339 -169
  88. package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
  89. package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
  90. package/build/artifacts/contracts/interfaces/IPGovernanceManager.sol/IPGovernanceManager.dbg.json +1 -1
  91. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
  92. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.json +1 -1
  93. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  94. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  95. package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
  96. package/build/artifacts/contracts/interfaces/IPPermissionsV2Upg.sol/IPermissionsV2Upg.dbg.json +1 -1
  97. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  98. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  99. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +23 -23
  100. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
  101. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.json +24 -0
  102. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  103. package/build/artifacts/contracts/interfaces/IPVotingEscrow.sol/IPVotingEscrow.dbg.json +1 -1
  104. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  105. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  106. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.json +27 -27
  107. package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
  108. package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
  109. package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
  110. package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
  111. package/build/artifacts/contracts/interfaces/ISAvax.sol/ISAvax.dbg.json +4 -0
  112. package/build/artifacts/contracts/interfaces/ISAvax.sol/ISAvax.json +199 -0
  113. package/build/artifacts/contracts/interfaces/ISJoe.sol/ISJoe.dbg.json +4 -0
  114. package/build/artifacts/contracts/interfaces/ISJoe.sol/ISJoe.json +168 -0
  115. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +4 -0
  116. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.json +92 -0
  117. package/build/artifacts/contracts/interfaces/IStargateLPStaking.sol/IStargateLPStaking.dbg.json +1 -1
  118. package/build/artifacts/contracts/interfaces/IStargatePool.sol/IStargatePool.dbg.json +1 -1
  119. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  120. package/build/artifacts/contracts/interfaces/ISuperComposableYield.sol/ISuperComposableYield.dbg.json +1 -1
  121. package/build/artifacts/contracts/interfaces/IWAvax.sol/IWAvax.dbg.json +4 -0
  122. package/build/artifacts/contracts/interfaces/IWAvax.sol/IWAvax.json +252 -0
  123. package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
  124. package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
  125. package/build/artifacts/contracts/interfaces/IYearnVault.sol/IYearnVault.dbg.json +1 -1
  126. package/build/artifacts/contracts/libraries/RewardManager.sol/RewardManager.dbg.json +1 -1
  127. package/build/artifacts/contracts/libraries/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  128. package/build/artifacts/contracts/libraries/SCY/SCYUtils.sol/SCYUtils.dbg.json +1 -1
  129. package/build/artifacts/contracts/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  130. package/build/artifacts/contracts/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  131. package/build/artifacts/contracts/libraries/helpers/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  132. package/build/artifacts/contracts/libraries/helpers/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  133. package/build/artifacts/contracts/libraries/helpers/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
  134. package/build/artifacts/contracts/libraries/helpers/PYIndex.sol/PYIndexLib.dbg.json +4 -0
  135. package/build/artifacts/contracts/libraries/{SCY/SCYIndex.sol/SCYIndexLib.json → helpers/PYIndex.sol/PYIndexLib.json} +4 -4
  136. package/build/artifacts/contracts/libraries/helpers/SSTORE2Deployer.sol/SSTORE2Deployer.dbg.json +1 -1
  137. package/build/artifacts/contracts/libraries/helpers/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  138. package/build/artifacts/contracts/libraries/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +4 -0
  139. package/build/artifacts/contracts/libraries/{traderjoe/PendleJoeSwapHelperUpg.sol/PendleJoeSwapHelperUpg.json → kyberswap/KyberSwapHelper.sol/KyberSwapHelper.json} +3 -3
  140. package/build/artifacts/contracts/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  141. package/build/artifacts/contracts/libraries/math/MarketApproxLib.sol/MarketApproxLib.dbg.json +1 -1
  142. package/build/artifacts/contracts/libraries/math/MarketApproxLib.sol/MarketApproxLib.json +2 -2
  143. package/build/artifacts/contracts/libraries/math/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  144. package/build/artifacts/contracts/libraries/math/MarketMathCore.sol/MarketMathCore.json +2 -2
  145. package/build/artifacts/contracts/libraries/math/Math.sol/Math.dbg.json +1 -1
  146. package/build/artifacts/contracts/libraries/math/WeekMath.sol/WeekMath.dbg.json +1 -1
  147. package/build/artifacts/contracts/libraries/solmate/SSTORE2.sol/SSTORE2.dbg.json +1 -1
  148. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
  149. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +39 -39
  150. package/build/artifacts/contracts/periphery/PermissionsV2Upg.sol/PermissionsV2Upg.dbg.json +1 -1
  151. package/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiSAvaxSCY.sol +242 -0
  152. package/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleQiTokenSCY.sol +1 -1
  153. package/contracts/SuperComposableYield/SCY-implementations/BenQi/PendleSAvaxSCY.sol +146 -0
  154. package/contracts/SuperComposableYield/SCY-implementations/Euler/PendleEulerSCY.sol +170 -0
  155. package/contracts/SuperComposableYield/SCY-implementations/PendleWstEthSCY.sol +33 -6
  156. package/contracts/SuperComposableYield/SCY-implementations/TraderJoe/PendleSJoeSCY.sol +182 -0
  157. package/contracts/core/LiquidityMining/CelerAbstracts/CelerSenderUpg.sol +19 -10
  158. package/contracts/core/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol +3 -1
  159. package/contracts/core/LiquidityMining/PendleGauge.sol +3 -2
  160. package/contracts/core/LiquidityMining/VotingController/PendleVotingControllerUpg.sol +26 -8
  161. package/contracts/core/LiquidityMining/VotingController/VotingControllerStorageUpg.sol +0 -4
  162. package/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol +30 -13
  163. package/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol +2 -4
  164. package/contracts/core/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol +5 -1
  165. package/contracts/core/Market/PendleMarket.sol +4 -5
  166. package/contracts/core/Market/PendleMarketFactory.sol +1 -1
  167. package/contracts/core/PendleRouter.sol +10 -10
  168. package/contracts/core/YieldContracts/InterestManagerYT.sol +0 -2
  169. package/contracts/core/YieldContracts/PendlePrincipalToken.sol +3 -3
  170. package/contracts/core/YieldContracts/PendleYieldContractFactory.sol +2 -2
  171. package/contracts/core/YieldContracts/PendleYieldToken.sol +24 -25
  172. package/contracts/core/actions/ActionCallback.sol +7 -7
  173. package/contracts/core/actions/ActionCore.sol +54 -81
  174. package/contracts/core/actions/ActionYT.sol +17 -37
  175. package/contracts/core/actions/base/ActionSCYAndPTBase.sol +21 -37
  176. package/contracts/core/actions/base/ActionSCYAndPYBase.sol +39 -51
  177. package/contracts/core/actions/base/ActionSCYAndYTBase.sol +14 -31
  178. package/contracts/interfaces/IEulerEToken.sol +60 -0
  179. package/contracts/interfaces/IEulerMarkets.sol +46 -0
  180. package/contracts/interfaces/IPActionCore.sol +43 -50
  181. package/contracts/interfaces/IPActionYT.sol +11 -12
  182. package/contracts/interfaces/IPInterestManagerYT.sol +1 -1
  183. package/contracts/interfaces/IPMarket.sol +1 -0
  184. package/contracts/interfaces/IPRouterStatic.sol +2 -7
  185. package/contracts/interfaces/IPVeToken.sol +2 -0
  186. package/contracts/interfaces/IPYieldToken.sol +2 -2
  187. package/contracts/interfaces/ISAvax.sol +61 -0
  188. package/contracts/interfaces/ISJoe.sol +60 -0
  189. package/contracts/interfaces/IStETH.sol +14 -0
  190. package/contracts/interfaces/IWAvax.sol +34 -0
  191. package/contracts/libraries/helpers/PYIndex.sol +69 -0
  192. package/contracts/libraries/helpers/TokenHelper.sol +8 -3
  193. package/contracts/libraries/kyberswap/KyberSwapHelper.sol +61 -0
  194. package/contracts/libraries/math/MarketApproxLib.sol +5 -5
  195. package/contracts/libraries/math/MarketMathCore.sol +10 -10
  196. package/contracts/offchain-helpers/RouterStatic.sol +21 -39
  197. package/deployments/43113-benqi.json +2 -2
  198. package/deployments/43113-core.json +7 -7
  199. package/deployments/43113-markets/benqi-market-599408.json +7 -0
  200. package/deployments/43113-markets/benqi-market-93bbf0.json +7 -0
  201. package/deployments/80001-benqi.json +2 -2
  202. package/deployments/80001-core.json +6 -6
  203. package/deployments/80001-markets/benqi-market-007811.json +7 -0
  204. package/deployments/80001-markets/benqi-market-3fe528.json +7 -0
  205. package/package.json +1 -1
  206. package/typechain-types/ActionCore.ts +330 -356
  207. package/typechain-types/ActionSCYAndPTBase.ts +11 -8
  208. package/typechain-types/ActionSCYAndPYBase.ts +11 -8
  209. package/typechain-types/ActionSCYAndYTBase.ts +11 -8
  210. package/typechain-types/ActionYT.ts +119 -106
  211. package/typechain-types/CelerSenderUpg.ts +16 -16
  212. package/typechain-types/IERC20Upgradeable.ts +300 -0
  213. package/typechain-types/IEulerEToken.ts +320 -0
  214. package/typechain-types/IEulerMarkets.ts +204 -0
  215. package/typechain-types/IPActionCore.ts +320 -349
  216. package/typechain-types/IPActionYT.ts +110 -100
  217. package/typechain-types/IPAllAction.ts +400 -447
  218. package/typechain-types/IPInterestManagerYT.ts +3 -3
  219. package/typechain-types/IPRouterStatic.ts +60 -118
  220. package/typechain-types/IPVeToken.ts +34 -0
  221. package/typechain-types/IPYieldToken.ts +47 -47
  222. package/typechain-types/ISAvax.ts +430 -0
  223. package/typechain-types/ISJoe.ts +340 -0
  224. package/typechain-types/IStETH.ts +201 -0
  225. package/typechain-types/IWAvax.ts +380 -0
  226. package/typechain-types/KyberSwapHelper.ts +87 -0
  227. package/typechain-types/PendleEulerSCY.ts +965 -0
  228. package/typechain-types/PendlePrincipalToken.ts +0 -104
  229. package/typechain-types/PendleQiSAvaxSCY.ts +1098 -0
  230. package/typechain-types/PendleSAvaxSCY.ts +962 -0
  231. package/typechain-types/PendleSJoeSCY.ts +1053 -0
  232. package/typechain-types/PendleVotingControllerUpg.ts +89 -55
  233. package/typechain-types/PendleWstEthSCY.ts +13 -0
  234. package/typechain-types/PendleYieldToken.ts +44 -148
  235. package/typechain-types/RouterStatic.ts +133 -299
  236. package/typechain-types/VotingEscrowPendleMainchain.ts +118 -16
  237. package/typechain-types/VotingEscrowPendleSidechain.ts +34 -0
  238. package/typechain-types/VotingEscrowTokenBase.ts +34 -0
  239. package/typechain-types/factories/ActionCallback__factory.ts +1 -1
  240. package/typechain-types/factories/ActionCore__factory.ts +275 -139
  241. package/typechain-types/factories/ActionSCYAndPTBase__factory.ts +1 -1
  242. package/typechain-types/factories/ActionSCYAndPYBase__factory.ts +1 -1
  243. package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +1 -1
  244. package/typechain-types/factories/ActionYT__factory.ts +78 -44
  245. package/typechain-types/factories/CelerSenderUpg__factory.ts +2 -2
  246. package/typechain-types/factories/IERC20Upgradeable__factory.ts +209 -0
  247. package/typechain-types/factories/IEulerEToken__factory.ts +174 -0
  248. package/typechain-types/factories/IEulerMarkets__factory.ts +99 -0
  249. package/typechain-types/factories/IPActionCore__factory.ts +268 -132
  250. package/typechain-types/factories/IPActionYT__factory.ts +71 -37
  251. package/typechain-types/factories/IPAllAction__factory.ts +339 -169
  252. package/typechain-types/factories/IPInterestManagerYT__factory.ts +1 -1
  253. package/typechain-types/factories/IPRouterStatic__factory.ts +23 -23
  254. package/typechain-types/factories/IPVeToken__factory.ts +24 -0
  255. package/typechain-types/factories/IPYieldToken__factory.ts +27 -27
  256. package/typechain-types/factories/ISAvax__factory.ts +208 -0
  257. package/typechain-types/factories/ISJoe__factory.ts +177 -0
  258. package/typechain-types/factories/IStETH__factory.ts +101 -0
  259. package/typechain-types/factories/IWAvax__factory.ts +261 -0
  260. package/typechain-types/factories/KyberSwapHelper__factory.ts +39 -0
  261. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +1 -1
  262. package/typechain-types/factories/PendleERC4626SCY__factory.ts +1 -1
  263. package/typechain-types/factories/PendleEulerSCY__factory.ts +796 -0
  264. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  265. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  266. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  267. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  268. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -76
  269. package/typechain-types/factories/PendleQiSAvaxSCY__factory.ts +917 -0
  270. package/typechain-types/factories/PendleQiTokenSCY__factory.ts +1 -1
  271. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  272. package/typechain-types/factories/PendleSAvaxSCY__factory.ts +796 -0
  273. package/typechain-types/factories/PendleSJoeSCY__factory.ts +845 -0
  274. package/typechain-types/factories/PendleStargateSCY__factory.ts +1 -1
  275. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +45 -26
  276. package/typechain-types/factories/PendleWstEthSCY__factory.ts +29 -2
  277. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +1 -1
  278. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  279. package/typechain-types/factories/PendleYieldToken__factory.ts +19 -94
  280. package/typechain-types/factories/RouterStatic__factory.ts +38 -38
  281. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +65 -3
  282. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +25 -1
  283. package/typechain-types/factories/VotingEscrowTokenBase__factory.ts +24 -0
  284. package/typechain-types/hardhat.d.ts +107 -17
  285. package/typechain-types/index.ts +24 -4
  286. package/build/artifacts/contracts/core/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +0 -4
  287. package/build/artifacts/contracts/core/PendleERC20Permit.sol/PendleERC20Permit.json +0 -329
  288. package/build/artifacts/contracts/interfaces/IJoePair.sol/IJoePair.dbg.json +0 -4
  289. package/build/artifacts/contracts/interfaces/IJoePair.sol/IJoePair.json +0 -662
  290. package/build/artifacts/contracts/interfaces/IJoeRouter01.sol/IJoeRouter01.dbg.json +0 -4
  291. package/build/artifacts/contracts/interfaces/IJoeRouter01.sol/IJoeRouter01.json +0 -760
  292. package/build/artifacts/contracts/interfaces/IJoeRouter02.sol/IJoeRouter02.dbg.json +0 -4
  293. package/build/artifacts/contracts/interfaces/IJoeRouter02.sol/IJoeRouter02.json +0 -962
  294. package/build/artifacts/contracts/libraries/SCY/SCYIndex.sol/SCYIndexLib.dbg.json +0 -4
  295. package/build/artifacts/contracts/libraries/traderjoe/JoeLibrary.sol/JoeLibrary.dbg.json +0 -4
  296. package/build/artifacts/contracts/libraries/traderjoe/JoeLibrary.sol/JoeLibrary.json +0 -10
  297. package/build/artifacts/contracts/libraries/traderjoe/PendleJoeSwapHelperUpg.sol/PendleJoeSwapHelperUpg.dbg.json +0 -4
  298. package/contracts/core/PendleERC20Permit.sol +0 -84
  299. package/contracts/interfaces/IJoePair.sol +0 -98
  300. package/contracts/interfaces/IJoeRouter01.sol +0 -162
  301. package/contracts/interfaces/IJoeRouter02.sol +0 -52
  302. package/contracts/libraries/SCY/SCYIndex.sol +0 -72
  303. package/contracts/libraries/traderjoe/JoeLibrary.sol +0 -122
  304. package/contracts/libraries/traderjoe/PendleJoeSwapHelperUpg.sol +0 -80
  305. package/deployments/43113-markets/benqi-market-4Ccb97.json +0 -7
  306. package/deployments/43113-markets/benqi-market-534471.json +0 -7
  307. package/deployments/80001-markets/benqi-market-109acB.json +0 -7
  308. package/deployments/80001-markets/benqi-market-4e470E.json +0 -7
@@ -0,0 +1,845 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type { PendleSJoeSCY, PendleSJoeSCYInterface } from "../PendleSJoeSCY";
7
+
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "string",
13
+ name: "_name",
14
+ type: "string",
15
+ },
16
+ {
17
+ internalType: "string",
18
+ name: "_symbol",
19
+ type: "string",
20
+ },
21
+ {
22
+ internalType: "address",
23
+ name: "_sJOE",
24
+ type: "address",
25
+ },
26
+ ],
27
+ stateMutability: "nonpayable",
28
+ type: "constructor",
29
+ },
30
+ {
31
+ anonymous: false,
32
+ inputs: [
33
+ {
34
+ indexed: true,
35
+ internalType: "address",
36
+ name: "owner",
37
+ type: "address",
38
+ },
39
+ {
40
+ indexed: true,
41
+ internalType: "address",
42
+ name: "spender",
43
+ type: "address",
44
+ },
45
+ {
46
+ indexed: false,
47
+ internalType: "uint256",
48
+ name: "value",
49
+ type: "uint256",
50
+ },
51
+ ],
52
+ name: "Approval",
53
+ type: "event",
54
+ },
55
+ {
56
+ anonymous: false,
57
+ inputs: [
58
+ {
59
+ indexed: true,
60
+ internalType: "address",
61
+ name: "user",
62
+ type: "address",
63
+ },
64
+ {
65
+ indexed: false,
66
+ internalType: "address[]",
67
+ name: "rewardTokens",
68
+ type: "address[]",
69
+ },
70
+ {
71
+ indexed: false,
72
+ internalType: "uint256[]",
73
+ name: "rewardAmounts",
74
+ type: "uint256[]",
75
+ },
76
+ ],
77
+ name: "ClaimRewards",
78
+ type: "event",
79
+ },
80
+ {
81
+ anonymous: false,
82
+ inputs: [
83
+ {
84
+ indexed: true,
85
+ internalType: "address",
86
+ name: "caller",
87
+ type: "address",
88
+ },
89
+ {
90
+ indexed: true,
91
+ internalType: "address",
92
+ name: "receiver",
93
+ type: "address",
94
+ },
95
+ {
96
+ indexed: true,
97
+ internalType: "address",
98
+ name: "tokenIn",
99
+ type: "address",
100
+ },
101
+ {
102
+ indexed: false,
103
+ internalType: "uint256",
104
+ name: "amountDeposited",
105
+ type: "uint256",
106
+ },
107
+ {
108
+ indexed: false,
109
+ internalType: "uint256",
110
+ name: "amountScyOut",
111
+ type: "uint256",
112
+ },
113
+ ],
114
+ name: "Deposit",
115
+ type: "event",
116
+ },
117
+ {
118
+ anonymous: false,
119
+ inputs: [
120
+ {
121
+ indexed: true,
122
+ internalType: "address",
123
+ name: "caller",
124
+ type: "address",
125
+ },
126
+ {
127
+ indexed: true,
128
+ internalType: "address",
129
+ name: "receiver",
130
+ type: "address",
131
+ },
132
+ {
133
+ indexed: true,
134
+ internalType: "address",
135
+ name: "tokenOut",
136
+ type: "address",
137
+ },
138
+ {
139
+ indexed: false,
140
+ internalType: "uint256",
141
+ name: "amountScyToRedeem",
142
+ type: "uint256",
143
+ },
144
+ {
145
+ indexed: false,
146
+ internalType: "uint256",
147
+ name: "amountTokenOut",
148
+ type: "uint256",
149
+ },
150
+ ],
151
+ name: "Redeem",
152
+ type: "event",
153
+ },
154
+ {
155
+ anonymous: false,
156
+ inputs: [
157
+ {
158
+ indexed: true,
159
+ internalType: "address",
160
+ name: "from",
161
+ type: "address",
162
+ },
163
+ {
164
+ indexed: true,
165
+ internalType: "address",
166
+ name: "to",
167
+ type: "address",
168
+ },
169
+ {
170
+ indexed: false,
171
+ internalType: "uint256",
172
+ name: "value",
173
+ type: "uint256",
174
+ },
175
+ ],
176
+ name: "Transfer",
177
+ type: "event",
178
+ },
179
+ {
180
+ inputs: [],
181
+ name: "JOE",
182
+ outputs: [
183
+ {
184
+ internalType: "address",
185
+ name: "",
186
+ type: "address",
187
+ },
188
+ ],
189
+ stateMutability: "view",
190
+ type: "function",
191
+ },
192
+ {
193
+ inputs: [],
194
+ name: "SJOE",
195
+ outputs: [
196
+ {
197
+ internalType: "address",
198
+ name: "",
199
+ type: "address",
200
+ },
201
+ ],
202
+ stateMutability: "view",
203
+ type: "function",
204
+ },
205
+ {
206
+ inputs: [
207
+ {
208
+ internalType: "address",
209
+ name: "user",
210
+ type: "address",
211
+ },
212
+ ],
213
+ name: "accruedRewards",
214
+ outputs: [
215
+ {
216
+ internalType: "uint256[]",
217
+ name: "rewardAmounts",
218
+ type: "uint256[]",
219
+ },
220
+ ],
221
+ stateMutability: "view",
222
+ type: "function",
223
+ },
224
+ {
225
+ inputs: [
226
+ {
227
+ internalType: "address",
228
+ name: "owner",
229
+ type: "address",
230
+ },
231
+ {
232
+ internalType: "address",
233
+ name: "spender",
234
+ type: "address",
235
+ },
236
+ ],
237
+ name: "allowance",
238
+ outputs: [
239
+ {
240
+ internalType: "uint256",
241
+ name: "",
242
+ type: "uint256",
243
+ },
244
+ ],
245
+ stateMutability: "view",
246
+ type: "function",
247
+ },
248
+ {
249
+ inputs: [
250
+ {
251
+ internalType: "address",
252
+ name: "spender",
253
+ type: "address",
254
+ },
255
+ {
256
+ internalType: "uint256",
257
+ name: "amount",
258
+ type: "uint256",
259
+ },
260
+ ],
261
+ name: "approve",
262
+ outputs: [
263
+ {
264
+ internalType: "bool",
265
+ name: "",
266
+ type: "bool",
267
+ },
268
+ ],
269
+ stateMutability: "nonpayable",
270
+ type: "function",
271
+ },
272
+ {
273
+ inputs: [],
274
+ name: "assetInfo",
275
+ outputs: [
276
+ {
277
+ internalType: "enum ISuperComposableYield.AssetType",
278
+ name: "assetType",
279
+ type: "uint8",
280
+ },
281
+ {
282
+ internalType: "address",
283
+ name: "assetAddress",
284
+ type: "address",
285
+ },
286
+ {
287
+ internalType: "uint8",
288
+ name: "assetDecimals",
289
+ type: "uint8",
290
+ },
291
+ ],
292
+ stateMutability: "view",
293
+ type: "function",
294
+ },
295
+ {
296
+ inputs: [
297
+ {
298
+ internalType: "address",
299
+ name: "account",
300
+ type: "address",
301
+ },
302
+ ],
303
+ name: "balanceOf",
304
+ outputs: [
305
+ {
306
+ internalType: "uint256",
307
+ name: "",
308
+ type: "uint256",
309
+ },
310
+ ],
311
+ stateMutability: "view",
312
+ type: "function",
313
+ },
314
+ {
315
+ inputs: [
316
+ {
317
+ internalType: "address",
318
+ name: "user",
319
+ type: "address",
320
+ },
321
+ ],
322
+ name: "claimRewards",
323
+ outputs: [
324
+ {
325
+ internalType: "uint256[]",
326
+ name: "rewardAmounts",
327
+ type: "uint256[]",
328
+ },
329
+ ],
330
+ stateMutability: "nonpayable",
331
+ type: "function",
332
+ },
333
+ {
334
+ inputs: [],
335
+ name: "decimals",
336
+ outputs: [
337
+ {
338
+ internalType: "uint8",
339
+ name: "",
340
+ type: "uint8",
341
+ },
342
+ ],
343
+ stateMutability: "view",
344
+ type: "function",
345
+ },
346
+ {
347
+ inputs: [
348
+ {
349
+ internalType: "address",
350
+ name: "receiver",
351
+ type: "address",
352
+ },
353
+ {
354
+ internalType: "address",
355
+ name: "tokenIn",
356
+ type: "address",
357
+ },
358
+ {
359
+ internalType: "uint256",
360
+ name: "amountTokenToDeposit",
361
+ type: "uint256",
362
+ },
363
+ {
364
+ internalType: "uint256",
365
+ name: "minSharesOut",
366
+ type: "uint256",
367
+ },
368
+ ],
369
+ name: "deposit",
370
+ outputs: [
371
+ {
372
+ internalType: "uint256",
373
+ name: "amountSharesOut",
374
+ type: "uint256",
375
+ },
376
+ ],
377
+ stateMutability: "payable",
378
+ type: "function",
379
+ },
380
+ {
381
+ inputs: [],
382
+ name: "exchangeRate",
383
+ outputs: [
384
+ {
385
+ internalType: "uint256",
386
+ name: "",
387
+ type: "uint256",
388
+ },
389
+ ],
390
+ stateMutability: "pure",
391
+ type: "function",
392
+ },
393
+ {
394
+ inputs: [],
395
+ name: "getRewardTokens",
396
+ outputs: [
397
+ {
398
+ internalType: "address[]",
399
+ name: "rewardTokens",
400
+ type: "address[]",
401
+ },
402
+ ],
403
+ stateMutability: "view",
404
+ type: "function",
405
+ },
406
+ {
407
+ inputs: [],
408
+ name: "getTokensIn",
409
+ outputs: [
410
+ {
411
+ internalType: "address[]",
412
+ name: "res",
413
+ type: "address[]",
414
+ },
415
+ ],
416
+ stateMutability: "view",
417
+ type: "function",
418
+ },
419
+ {
420
+ inputs: [],
421
+ name: "getTokensOut",
422
+ outputs: [
423
+ {
424
+ internalType: "address[]",
425
+ name: "res",
426
+ type: "address[]",
427
+ },
428
+ ],
429
+ stateMutability: "view",
430
+ type: "function",
431
+ },
432
+ {
433
+ inputs: [
434
+ {
435
+ internalType: "address",
436
+ name: "token",
437
+ type: "address",
438
+ },
439
+ ],
440
+ name: "isValidTokenIn",
441
+ outputs: [
442
+ {
443
+ internalType: "bool",
444
+ name: "",
445
+ type: "bool",
446
+ },
447
+ ],
448
+ stateMutability: "view",
449
+ type: "function",
450
+ },
451
+ {
452
+ inputs: [
453
+ {
454
+ internalType: "address",
455
+ name: "token",
456
+ type: "address",
457
+ },
458
+ ],
459
+ name: "isValidTokenOut",
460
+ outputs: [
461
+ {
462
+ internalType: "bool",
463
+ name: "",
464
+ type: "bool",
465
+ },
466
+ ],
467
+ stateMutability: "view",
468
+ type: "function",
469
+ },
470
+ {
471
+ inputs: [],
472
+ name: "lastRewardBlock",
473
+ outputs: [
474
+ {
475
+ internalType: "uint256",
476
+ name: "",
477
+ type: "uint256",
478
+ },
479
+ ],
480
+ stateMutability: "view",
481
+ type: "function",
482
+ },
483
+ {
484
+ inputs: [],
485
+ name: "name",
486
+ outputs: [
487
+ {
488
+ internalType: "string",
489
+ name: "",
490
+ type: "string",
491
+ },
492
+ ],
493
+ stateMutability: "view",
494
+ type: "function",
495
+ },
496
+ {
497
+ inputs: [
498
+ {
499
+ internalType: "address",
500
+ name: "tokenIn",
501
+ type: "address",
502
+ },
503
+ {
504
+ internalType: "uint256",
505
+ name: "amountTokenToDeposit",
506
+ type: "uint256",
507
+ },
508
+ ],
509
+ name: "previewDeposit",
510
+ outputs: [
511
+ {
512
+ internalType: "uint256",
513
+ name: "amountSharesOut",
514
+ type: "uint256",
515
+ },
516
+ ],
517
+ stateMutability: "view",
518
+ type: "function",
519
+ },
520
+ {
521
+ inputs: [
522
+ {
523
+ internalType: "address",
524
+ name: "tokenOut",
525
+ type: "address",
526
+ },
527
+ {
528
+ internalType: "uint256",
529
+ name: "amountSharesToRedeem",
530
+ type: "uint256",
531
+ },
532
+ ],
533
+ name: "previewRedeem",
534
+ outputs: [
535
+ {
536
+ internalType: "uint256",
537
+ name: "amountTokenOut",
538
+ type: "uint256",
539
+ },
540
+ ],
541
+ stateMutability: "view",
542
+ type: "function",
543
+ },
544
+ {
545
+ inputs: [
546
+ {
547
+ internalType: "address",
548
+ name: "receiver",
549
+ type: "address",
550
+ },
551
+ {
552
+ internalType: "uint256",
553
+ name: "amountSharesToRedeem",
554
+ type: "uint256",
555
+ },
556
+ {
557
+ internalType: "address",
558
+ name: "tokenOut",
559
+ type: "address",
560
+ },
561
+ {
562
+ internalType: "uint256",
563
+ name: "minTokenOut",
564
+ type: "uint256",
565
+ },
566
+ ],
567
+ name: "redeem",
568
+ outputs: [
569
+ {
570
+ internalType: "uint256",
571
+ name: "amountTokenOut",
572
+ type: "uint256",
573
+ },
574
+ ],
575
+ stateMutability: "nonpayable",
576
+ type: "function",
577
+ },
578
+ {
579
+ inputs: [
580
+ {
581
+ internalType: "address",
582
+ name: "receiver",
583
+ type: "address",
584
+ },
585
+ {
586
+ internalType: "address",
587
+ name: "tokenOut",
588
+ type: "address",
589
+ },
590
+ {
591
+ internalType: "uint256",
592
+ name: "minTokenOut",
593
+ type: "uint256",
594
+ },
595
+ ],
596
+ name: "redeemAfterTransfer",
597
+ outputs: [
598
+ {
599
+ internalType: "uint256",
600
+ name: "amountTokenOut",
601
+ type: "uint256",
602
+ },
603
+ ],
604
+ stateMutability: "nonpayable",
605
+ type: "function",
606
+ },
607
+ {
608
+ inputs: [],
609
+ name: "rewardIndexesCurrent",
610
+ outputs: [
611
+ {
612
+ internalType: "uint256[]",
613
+ name: "indexes",
614
+ type: "uint256[]",
615
+ },
616
+ ],
617
+ stateMutability: "nonpayable",
618
+ type: "function",
619
+ },
620
+ {
621
+ inputs: [],
622
+ name: "rewardIndexesStored",
623
+ outputs: [
624
+ {
625
+ internalType: "uint256[]",
626
+ name: "indexes",
627
+ type: "uint256[]",
628
+ },
629
+ ],
630
+ stateMutability: "view",
631
+ type: "function",
632
+ },
633
+ {
634
+ inputs: [
635
+ {
636
+ internalType: "address",
637
+ name: "",
638
+ type: "address",
639
+ },
640
+ ],
641
+ name: "rewardState",
642
+ outputs: [
643
+ {
644
+ internalType: "uint128",
645
+ name: "index",
646
+ type: "uint128",
647
+ },
648
+ {
649
+ internalType: "uint128",
650
+ name: "lastBalance",
651
+ type: "uint128",
652
+ },
653
+ ],
654
+ stateMutability: "view",
655
+ type: "function",
656
+ },
657
+ {
658
+ inputs: [],
659
+ name: "symbol",
660
+ outputs: [
661
+ {
662
+ internalType: "string",
663
+ name: "",
664
+ type: "string",
665
+ },
666
+ ],
667
+ stateMutability: "view",
668
+ type: "function",
669
+ },
670
+ {
671
+ inputs: [],
672
+ name: "totalSupply",
673
+ outputs: [
674
+ {
675
+ internalType: "uint256",
676
+ name: "",
677
+ type: "uint256",
678
+ },
679
+ ],
680
+ stateMutability: "view",
681
+ type: "function",
682
+ },
683
+ {
684
+ inputs: [
685
+ {
686
+ internalType: "address",
687
+ name: "to",
688
+ type: "address",
689
+ },
690
+ {
691
+ internalType: "uint256",
692
+ name: "amount",
693
+ type: "uint256",
694
+ },
695
+ ],
696
+ name: "transfer",
697
+ outputs: [
698
+ {
699
+ internalType: "bool",
700
+ name: "",
701
+ type: "bool",
702
+ },
703
+ ],
704
+ stateMutability: "nonpayable",
705
+ type: "function",
706
+ },
707
+ {
708
+ inputs: [
709
+ {
710
+ internalType: "address",
711
+ name: "from",
712
+ type: "address",
713
+ },
714
+ {
715
+ internalType: "address",
716
+ name: "to",
717
+ type: "address",
718
+ },
719
+ {
720
+ internalType: "uint256",
721
+ name: "amount",
722
+ type: "uint256",
723
+ },
724
+ ],
725
+ name: "transferFrom",
726
+ outputs: [
727
+ {
728
+ internalType: "bool",
729
+ name: "",
730
+ type: "bool",
731
+ },
732
+ ],
733
+ stateMutability: "nonpayable",
734
+ type: "function",
735
+ },
736
+ {
737
+ inputs: [
738
+ {
739
+ internalType: "address",
740
+ name: "",
741
+ type: "address",
742
+ },
743
+ {
744
+ internalType: "address",
745
+ name: "",
746
+ type: "address",
747
+ },
748
+ ],
749
+ name: "userReward",
750
+ outputs: [
751
+ {
752
+ internalType: "uint128",
753
+ name: "index",
754
+ type: "uint128",
755
+ },
756
+ {
757
+ internalType: "uint128",
758
+ name: "accrued",
759
+ type: "uint128",
760
+ },
761
+ ],
762
+ stateMutability: "view",
763
+ type: "function",
764
+ },
765
+ {
766
+ inputs: [],
767
+ name: "yieldToken",
768
+ outputs: [
769
+ {
770
+ internalType: "address",
771
+ name: "",
772
+ type: "address",
773
+ },
774
+ ],
775
+ stateMutability: "view",
776
+ type: "function",
777
+ },
778
+ {
779
+ stateMutability: "payable",
780
+ type: "receive",
781
+ },
782
+ ];
783
+
784
+ const _bytecode =
785
+ "0x6101006040523480156200001257600080fd5b50604051620035ff380380620035ff8339810160408190526200003591620003d6565b8282826001600160a01b031663b985a3a06040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000076573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009c919062000452565b8282828282826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000106919062000477565b60036200011484826200052b565b5060046200012383826200052b565b5060ff166080525050600280546001600160f81b0316600160f81b1790556001600160a01b0390811660a052861694506200019993505050505760405162461bcd60e51b815260206004820152600c60248201526b7a65726f206164647265737360a01b60448201526064015b60405180910390fd5b6001600160a01b0380821660c081905260a05190911660e0819052620001c291600019620001cb565b50505062000639565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691620002299190620005f7565b6000604051808303816000865af19150503d806000811462000268576040519150601f19603f3d011682016040523d82523d6000602084013e6200026d565b606091505b50915091508180156200029b5750805115806200029b5750808060200190518101906200029b919062000615565b620002d85760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640162000190565b5050505050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101562000312578181015183820152602001620002f8565b8381111562000322576000848401525b50505050565b600082601f8301126200033a57600080fd5b81516001600160401b0380821115620003575762000357620002df565b604051601f8301601f19908116603f01168101908282118183101715620003825762000382620002df565b816040528381528660208588010111156200039c57600080fd5b620003af846020830160208901620002f5565b9695505050505050565b80516001600160a01b0381168114620003d157600080fd5b919050565b600080600060608486031215620003ec57600080fd5b83516001600160401b03808211156200040457600080fd5b620004128783880162000328565b945060208601519150808211156200042957600080fd5b50620004388682870162000328565b9250506200044960408501620003b9565b90509250925092565b6000602082840312156200046557600080fd5b6200047082620003b9565b9392505050565b6000602082840312156200048a57600080fd5b815160ff811681146200047057600080fd5b600181811c90821680620004b157607f821691505b602082108103620004d257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200052657600081815260208120601f850160051c81016020861015620005015750805b601f850160051c820191505b8181101562000522578281556001016200050d565b5050505b505050565b81516001600160401b03811115620005475762000547620002df565b6200055f816200055884546200049c565b84620004d8565b602080601f8311600181146200059757600084156200057e5750858301515b600019600386901b1c1916600185901b17855562000522565b600085815260208120601f198616915b82811015620005c857888601518255948401946001909101908401620005a7565b5085821015620005e75787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082516200060b818460208701620002f5565b9190910192915050565b6000602082840312156200062857600080fd5b815180151581146200047057600080fd5b60805160a05160c05160e051612f3f620006c0600039600081816105bb0152818161069301528181610a7d01528181610b4b0152610b6c0152600081816103ed0152818161105a01528181611242015281816112db0152818161134201528181611a48015281816120f201526122d7015260006103770152600061028a0152612f3f6000f3fe60806040526004361061016c5760003560e01c806306fdde0314610178578063071bc3c9146101a3578063095ea7b3146101c5578063128fced1146101f557806318160ddd1461022257806320e8c56514610245578063213cae63146101a357806323b872dd14610258578063313ce567146102785780633ba0b9a9146102be5780635cbadbe4146102d957806370a082311461034557806376d5de8514610365578063784367d6146103a657806395d89b41146103c657806396de2fa2146103db578063a2bbcf131461040f578063a40bee501461042f578063a9059cbb14610453578063a9f8d18114610473578063b8f82b2614610489578063c4f59f9b146104a9578063cbe52ae3146104be578063da88ecb4146104de578063dd62ed3e146104f3578063ea64a82014610513578063ef5cfb8c14610554578063f3f094a114610574578063f8b2f99114610594578063fa5a4f06146103a6578063ffebad30146105a957600080fd5b3661017357005b600080fd5b34801561018457600080fd5b5061018d6105dd565b60405161019a9190612941565b60405180910390f35b3480156101af57600080fd5b506101b861066f565b60405161019a91906129b8565b3480156101d157600080fd5b506101e56101e03660046129e0565b6106e8565b604051901515815260200161019a565b34801561020157600080fd5b50610215610210366004612a0c565b610700565b60405161019a9190612a59565b34801561022e57600080fd5b50610237610802565b60405190815260200161019a565b610237610253366004612a6c565b610811565b34801561026457600080fd5b506101e5610273366004612ab2565b6109e2565b34801561028457600080fd5b506102ac7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff909116815260200161019a565b3480156102ca57600080fd5b50670de0b6b3a7640000610237565b3480156102e557600080fd5b506103256102f4366004612af3565b60056020908152600092835260408084209091529082529020546001600160801b0380821691600160801b90041682565b604080516001600160801b0393841681529290911660208301520161019a565b34801561035157600080fd5b50610237610360366004612a0c565b610a60565b34801561037157600080fd5b506103997f000000000000000000000000000000000000000000000000000000000000000081565b60405161019a9190612b2c565b3480156103b257600080fd5b506101e56103c1366004612a0c565b610a7b565b3480156103d257600080fd5b5061018d610aad565b3480156103e757600080fd5b506103997f000000000000000000000000000000000000000000000000000000000000000081565b34801561041b57600080fd5b5061023761042a366004612ab2565b610abc565b34801561043b57600080fd5b50610444610b43565b60405161019a93929190612b40565b34801561045f57600080fd5b506101e561046e3660046129e0565b610bf7565b34801561047f57600080fd5b5061023760065481565b34801561049557600080fd5b506102376104a43660046129e0565b610c69565b3480156104b557600080fd5b506101b8610ca1565b3480156104ca57600080fd5b506102376104d93660046129e0565b610cb0565b3480156104ea57600080fd5b50610215610d05565b3480156104ff57600080fd5b5061023761050e366004612af3565b610dd6565b34801561051f57600080fd5b5061032561052e366004612a0c565b6007602052600090815260409020546001600160801b0380821691600160801b90041682565b34801561056057600080fd5b5061021561056f366004612a0c565b610e01565b34801561058057600080fd5b5061023761058f366004612b82565b610ec0565b3480156105a057600080fd5b50610215610f1c565b3480156105b557600080fd5b506103997f000000000000000000000000000000000000000000000000000000000000000081565b6060600380546105ec90612bca565b80601f016020809104026020016040519081016040528092919081815260200182805461061890612bca565b80156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b5050505050905090565b604080516001808252818301909252606091602080830190803683370190505090507f0000000000000000000000000000000000000000000000000000000000000000816000815181106106c5576106c5612c1a565b60200260200101906001600160a01b031690816001600160a01b03168152505090565b6000336106f6818585610f30565b5060019392505050565b6060600061070c611054565b905080516001600160401b0381111561072757610727612c04565b604051908082528060200260200182016040528015610750578160200160208202803683370190505b50915060005b81518110156107fb576001600160a01b0384166000908152600560205260408120835190919084908490811061078e5761078e612c1a565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060000160109054906101000a90046001600160801b03166001600160801b03168382815181106107e8576107e8612c1a565b6020908102919091010152600101610756565b5050919050565b6002546001600160f81b031690565b600254600090600119600160f81b90910460ff160161084b5760405162461bcd60e51b815260040161084290612c30565b60405180910390fd5b600280546001600160f81b0316600160f91b17905561086984610a7b565b6108855760405162461bcd60e51b815260040161084290612c67565b826000036108e35760405162461bcd60e51b815260206004820152602560248201527f5343593a20616d6f756e74546f6b656e546f4465706f7369742063616e6e6f74604482015264020626520360dc1b6064820152608401610842565b6001600160a01b038416610939578234146109345760405162461bcd60e51b81526020600482015260116024820152700a686b27440cae8d040dad2e6dac2e8c6d607b1b6044820152606401610842565b610944565b6109448433856111d1565b61094e848461123d565b9050818110156109705760405162461bcd60e51b815260040161084290612c95565b61097a85826113d4565b60408051848152602081018390526001600160a01b03808716929088169133917f5fe47ed6d4225326d3303476197d782ded5a4e9c14f479dc9ec4992af4e85d59910160405180910390a4600280546001600160f81b0316600160f81b179055949350505050565b600254600090600119600160f81b90910460ff1601610a135760405162461bcd60e51b815260040161084290612c30565b600280546001600160f81b0316600160f91b17905533610a348582856114ea565b610a3f858585611564565b6001915050600280546001600160f81b0316600160f81b1790559392505050565b6001600160a01b031660009081526020819052604090205490565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0390811691161490565b6060600480546105ec90612bca565b600254600090600119600160f81b90910460ff1601610aed5760405162461bcd60e51b815260040161084290612c30565b600280546001600160f81b0316600160f91b1790556000610b0d30610a60565b9050610b193082611786565b610b258582868661190c565b600280546001600160f81b0316600160f81b17905595945050505050565b6000806000807f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bec9190612cc4565b925092509250909192565b600254600090600119600160f81b90910460ff1601610c285760405162461bcd60e51b815260040161084290612c30565b600280546001600160f81b0316600160f91b17905533610c49818585611564565b6001915050600280546001600160f81b0316600160f81b17905592915050565b6000610c7483610a7b565b610c905760405162461bcd60e51b815260040161084290612c67565b610c9a8383611a43565b9392505050565b6060610cab611054565b905090565b6000610cbb83610a7b565b610cff5760405162461bcd60e51b815260206004820152601560248201527414d0d64e88125b9d985b1a59081d1bdad95b93dd5d605a1b6044820152606401610842565b81610c9a565b60606000610d11611054565b905080516001600160401b03811115610d2c57610d2c612c04565b604051908082528060200260200182016040528015610d55578160200160208202803683370190505b50915060005b8151811015610dd15760076000838381518110610d7a57610d7a612c1a565b6020908102919091018101516001600160a01b031682528101919091526040016000205483516001600160801b0390911690849083908110610dbe57610dbe612c1a565b6020908102919091010152600101610d5b565b505090565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600254606090600119600160f81b90910460ff1601610e325760405162461bcd60e51b815260040161084290612c30565b600280546001600160f81b0316600160f91b179055610e5082611af9565b610e5a8283611b07565b9050816001600160a01b03167f2193aa20a3717f5f4ac79482f4f553e5f0afe8f4e6ec3e3d1aa2e138adc4763f610e8f611054565b83604051610e9e929190612ce7565b60405180910390a2600280546001600160f81b0316600160f81b179055919050565b600254600090600119600160f81b90910460ff1601610ef15760405162461bcd60e51b815260040161084290612c30565b600280546001600160f81b0316600160f91b179055610f103385611786565b610b258585858561190c565b6060610f26611daf565b5050610cab610d05565b6001600160a01b038316610f925760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610842565b6001600160a01b038216610ff35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610842565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b606060007f000000000000000000000000000000000000000000000000000000000000000090506000816001600160a01b031663bf199e626040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110df9190612d15565b9050806001600160401b038111156110f9576110f9612c04565b604051908082528060200260200182016040528015611122578160200160208202803683370190505b50925060005b818110156111cb57604051637bb7bed160e01b8152600481018290526001600160a01b03841690637bb7bed190602401602060405180830381865afa158015611175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111999190612d2e565b8482815181106111ab576111ab612c1a565b6001600160a01b0390921660209283029190910190910152600101611128565b50505090565b6001600160a01b0383166112225780341461121d5760405162461bcd60e51b815260206004820152600c60248201526b0cae8d040dad2e6dac2e8c6d60a31b6044820152606401610842565b505050565b801561121d5761121d6001600160a01b03841683308461204a565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a090a2b46040518163ffffffff1660e01b8152600401602060405180830381865afa15801561129e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c29190612d15565b60405163b6b55f2560e01b8152600481018590529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063b6b55f2590602401600060405180830381600087803b15801561132757600080fd5b505af115801561133b573d6000803e3d6000fd5b50505050807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a090a2b46040518163ffffffff1660e01b8152600401602060405180830381865afa15801561139e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113c29190612d15565b6113cc9190612d61565b949350505050565b6001600160a01b03821661142a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610842565b611436600083836120b5565b61143f816120bf565b6002805460009061145a9084906001600160f81b0316612d78565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555080600080846001600160a01b03166001600160a01b0316815260200190815260200160002060008282546114b29190612da3565b90915550506040518181526001600160a01b03831690600090600080516020612eea8339815191529060200160405180910390a35050565b60006114f68484610dd6565b9050600019811461155e57818110156115515760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610842565b61155e8484848403610f30565b50505050565b6001600160a01b0383166115c85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610842565b6001600160a01b03821661162a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610842565b816001600160a01b0316836001600160a01b0316036116855760405162461bcd60e51b815260206004820152601760248201527622a92199181d103a3930b739b332b9103a379039b2b63360491b6044820152606401610842565b6116908383836120b5565b6001600160a01b038316600090815260208190526040902054818110156117085760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610842565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061173f908490612da3565b92505081905550826001600160a01b0316846001600160a01b0316600080516020612eea8339815191528460405161177991815260200190565b60405180910390a361155e565b6001600160a01b0382166117e65760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610842565b6117f2826000836120b5565b6001600160a01b038216600090815260208190526040902054818110156118665760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610842565b6001600160a01b0383166000908152602081905260409020828203905561188c826120bf565b600280546000906118a79084906001600160f81b0316612dbb565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555060006001600160a01b0316836001600160a01b0316600080516020612eea833981519152846040516118ff91815260200190565b60405180910390a3505050565b600061191783610a7b565b61195b5760405162461bcd60e51b815260206004820152601560248201527414d0d64e881a5b9d985b1a59081d1bdad95b93dd5d605a1b6044820152606401610842565b836000036119b95760405162461bcd60e51b815260206004820152602560248201527f5343593a20616d6f756e74536861726573546f52656465656d2063616e6e6f74604482015264020626520360dc1b6064820152608401610842565b6119c383856120d9565b9050818110156119e55760405162461bcd60e51b815260040161084290612c95565b6119f083868361215d565b60408051858152602081018390526001600160a01b03808616929088169133917faee47cdf925cf525fdae94f9777ee5a06cac37e1c41220d0a8a89ed154f62d1c910160405180910390a4949350505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663cc1252ae6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611aa4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ac89190612d15565b905082611add670de0b6b3a764000083612df9565b611aef90670de0b6b3a7640000612d61565b6113cc9190612e1b565b611b04816000612221565b50565b60606000611b13611054565b905080516001600160401b03811115611b2e57611b2e612c04565b604051908082528060200260200182016040528015611b57578160200160208202803683370190505b50915060005b8151811015611da75760056000838381518110611b7c57611b7c612c1a565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060000160109054906101000a90046001600160801b03166001600160801b0316838281518110611bf957611bf9612c1a565b602002602001018181525050828181518110611c1757611c17612c1a565b6020026020010151600014611d9557600060056000848481518110611c3e57611c3e612c1a565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000876001600160a01b03166001600160a01b0316815260200190815260200160002060000160106101000a8154816001600160801b0302191690836001600160801b03160217905550611cd2838281518110611cc557611cc5612c1a565b60200260200101516122a1565b60076000848481518110611ce857611ce8612c1a565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060000160108282829054906101000a90046001600160801b0316611d349190612e3a565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550611d95828281518110611d6d57611d6d612c1a565b602002602001015185858481518110611d8857611d88612c1a565b602002602001015161215d565b80611d9f81612e5a565b915050611b5d565b505092915050565b606080611dba611054565b915081516001600160401b03811115611dd557611dd5612c04565b604051908082528060200260200182016040528015611dfe578160200160208202803683370190505b5090508151600003611e0e579091565b4360065414611fc257436006556000611e256122b7565b9050611e2f6122c1565b60005b8351811015611fbf576000848281518110611e4f57611e4f612c1a565b6020908102919091018101516001600160a01b0381166000908152600790925260408220548751919350600160801b90046001600160801b031690611ead90889086908110611ea057611ea0612c1a565b6020026020010151612337565b611eb79190612d61565b6001600160a01b0383166000908152600760205260408120549192506001600160801b0390911690819003611eea575060015b8415611f0757611efa82866123c2565b611f049082612da3565b90505b611f10816122a1565b6001600160a01b038416600090815260076020526040902080546001600160801b0319166001600160801b0392909216919091179055611f4f826122a1565b6001600160a01b03841660009081526007602052604090208054601090611f87908490600160801b90046001600160801b0316612e73565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555050505080611fb890612e5a565b9050611e32565b50505b60005b82518110156120455760076000848381518110611fe457611fe4612c1a565b6020908102919091018101516001600160a01b031682528101919091526040016000205482516001600160801b039091169083908390811061202857612028612c1a565b60209081029190910101528061203d81612e5a565b915050611fc5565b509091565b6040516001600160a01b038085166024830152831660448201526064810182905261155e9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526123f1565b61121d8383612221565b60006001600160f81b038211156120d557600080fd5b5090565b604051632e1a7d4d60e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d90602401600060405180830381600087803b15801561213e57600080fd5b505af1158015612152573d6000803e3d6000fd5b509395945050505050565b8060000361216a57505050565b6001600160a01b03831661220d576000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146121c5576040519150601f19603f3d011682016040523d82523d6000602084013e6121ca565b606091505b505090508061155e5760405162461bcd60e51b815260206004820152600f60248201526e195d1a081cd95b990819985a5b1959608a1b6044820152606401610842565b61121d6001600160a01b03841683836124c3565b60008061222c611daf565b91509150815160000361223f5750505050565b6001600160a01b0384161580159061226057506001600160a01b0384163014155b15612270576122708483836124f3565b6001600160a01b0383161580159061229157506001600160a01b0383163014155b1561155e5761155e8383836124f3565b60006001600160801b038211156120d557600080fd5b6000610cab610802565b604051632e1a7d4d60e01b8152600060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d90602401600060405180830381600087803b15801561232357600080fd5b505af115801561155e573d6000803e3d6000fd5b60006001600160a01b038216156123ba576040516370a0823160e01b81526001600160a01b038316906370a0823190612374903090600401612b2c565b602060405180830381865afa158015612391573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123b59190612d15565b6123bc565b475b92915050565b6000806123d7670de0b6b3a764000085612e1b565b90508281816123e8576123e8612de3565b04949350505050565b6000612446826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166127739092919063ffffffff16565b80519091501561121d57808060200190518101906124649190612e95565b61121d5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610842565b6040516001600160a01b03831660248201526044810182905261121d90849063a9059cbb60e01b9060640161207e565b6001600160a01b0383161580159061251457506001600160a01b0383163014155b61252057612520612eb7565b600061252b84612782565b905060005b835181101561276c57600084828151811061254d5761254d612c1a565b60200260200101519050600084838151811061256b5761256b612c1a565b6020908102919091018101516001600160a01b038085166000908152600584526040808220928c168252919093528220549092506001600160801b031690819003612607576125b9826122a1565b6001600160a01b039384166000908152600560209081526040808320968c1683529590529390932080546001600160801b0319166001600160801b03909416939093179092555061275c9050565b8181036126165750505061275c565b60006126228284612d61565b90506000612630878361278d565b6001600160a01b038681166000908152600560209081526040808320938f1683529290529081205491925090612677908390600160801b90046001600160801b0316612da3565b9050604051806040016040528061268d876122a1565b6001600160801b031681526020016126a4836122a1565b6001600160801b031681525060056000886001600160a01b03166001600160a01b0316815260200190815260200160002060008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b031602179055509050505050505050505b61276581612e5a565b9050612530565b5050505050565b60606113cc84846000856127ab565b60006123bc82610a60565b60008061279a8385612e1b565b9050670de0b6b3a7640000816123e8565b60608247101561280c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610842565b6001600160a01b0385163b6128635760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610842565b600080866001600160a01b0316858760405161287f9190612ecd565b60006040518083038185875af1925050503d80600081146128bc576040519150601f19603f3d011682016040523d82523d6000602084013e6128c1565b606091505b50915091506128d18282866128dc565b979650505050505050565b606083156128eb575081610c9a565b8251156128fb5782518084602001fd5b8160405162461bcd60e51b81526004016108429190612941565b60005b83811015612930578181015183820152602001612918565b8381111561155e5750506000910152565b6020815260008251806020840152612960816040850160208701612915565b601f01601f19169190910160400192915050565b600081518084526020808501945080840160005b838110156129ad5781516001600160a01b031687529582019590820190600101612988565b509495945050505050565b602081526000610c9a6020830184612974565b6001600160a01b0381168114611b0457600080fd5b600080604083850312156129f357600080fd5b82356129fe816129cb565b946020939093013593505050565b600060208284031215612a1e57600080fd5b8135610c9a816129cb565b600081518084526020808501945080840160005b838110156129ad57815187529582019590820190600101612a3d565b602081526000610c9a6020830184612a29565b60008060008060808587031215612a8257600080fd5b8435612a8d816129cb565b93506020850135612a9d816129cb565b93969395505050506040820135916060013590565b600080600060608486031215612ac757600080fd5b8335612ad2816129cb565b92506020840135612ae2816129cb565b929592945050506040919091013590565b60008060408385031215612b0657600080fd5b8235612b11816129cb565b91506020830135612b21816129cb565b809150509250929050565b6001600160a01b0391909116815260200190565b6060810160028510612b6257634e487b7160e01b600052602160045260246000fd5b9381526001600160a01b0392909216602083015260ff1660409091015290565b60008060008060808587031215612b9857600080fd5b8435612ba3816129cb565b9350602085013592506040850135612bba816129cb565b9396929550929360600135925050565b600181811c90821680612bde57607f821691505b602082108103612bfe57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b60208082526014908201527329a1ac9d1024b73b30b634b2103a37b5b2b724b760611b604082015260600190565b60208082526015908201527414d0d64e881a5b9cdd59999a58da595b9d081bdd5d605a1b604082015260600190565b600060208284031215612cd657600080fd5b815160ff81168114610c9a57600080fd5b604081526000612cfa6040830185612974565b8281036020840152612d0c8185612a29565b95945050505050565b600060208284031215612d2757600080fd5b5051919050565b600060208284031215612d4057600080fd5b8151610c9a816129cb565b634e487b7160e01b600052601160045260246000fd5b600082821015612d7357612d73612d4b565b500390565b60006001600160f81b03828116848216808303821115612d9a57612d9a612d4b565b01949350505050565b60008219821115612db657612db6612d4b565b500190565b60006001600160f81b0383811690831681811015612ddb57612ddb612d4b565b039392505050565b634e487b7160e01b600052601260045260246000fd5b600082612e1657634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615612e3557612e35612d4b565b500290565b60006001600160801b0383811690831681811015612ddb57612ddb612d4b565b600060018201612e6c57612e6c612d4b565b5060010190565b60006001600160801b03828116848216808303821115612d9a57612d9a612d4b565b600060208284031215612ea757600080fd5b81518015158114610c9a57600080fd5b634e487b7160e01b600052600160045260246000fd5b60008251612edf818460208701612915565b919091019291505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122039d44cea7444c533d757fddc4a7f74998841e4709ffa901220b1e0c3c020d1ca64736f6c634300080f0033";
786
+
787
+ type PendleSJoeSCYConstructorParams =
788
+ | [signer?: Signer]
789
+ | ConstructorParameters<typeof ContractFactory>;
790
+
791
+ const isSuperArgs = (
792
+ xs: PendleSJoeSCYConstructorParams
793
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
794
+
795
+ export class PendleSJoeSCY__factory extends ContractFactory {
796
+ constructor(...args: PendleSJoeSCYConstructorParams) {
797
+ if (isSuperArgs(args)) {
798
+ super(...args);
799
+ } else {
800
+ super(_abi, _bytecode, args[0]);
801
+ }
802
+ this.contractName = "PendleSJoeSCY";
803
+ }
804
+
805
+ deploy(
806
+ _name: string,
807
+ _symbol: string,
808
+ _sJOE: string,
809
+ overrides?: Overrides & { from?: string | Promise<string> }
810
+ ): Promise<PendleSJoeSCY> {
811
+ return super.deploy(
812
+ _name,
813
+ _symbol,
814
+ _sJOE,
815
+ overrides || {}
816
+ ) as Promise<PendleSJoeSCY>;
817
+ }
818
+ getDeployTransaction(
819
+ _name: string,
820
+ _symbol: string,
821
+ _sJOE: string,
822
+ overrides?: Overrides & { from?: string | Promise<string> }
823
+ ): TransactionRequest {
824
+ return super.getDeployTransaction(_name, _symbol, _sJOE, overrides || {});
825
+ }
826
+ attach(address: string): PendleSJoeSCY {
827
+ return super.attach(address) as PendleSJoeSCY;
828
+ }
829
+ connect(signer: Signer): PendleSJoeSCY__factory {
830
+ return super.connect(signer) as PendleSJoeSCY__factory;
831
+ }
832
+ static readonly contractName: "PendleSJoeSCY";
833
+ public readonly contractName: "PendleSJoeSCY";
834
+ static readonly bytecode = _bytecode;
835
+ static readonly abi = _abi;
836
+ static createInterface(): PendleSJoeSCYInterface {
837
+ return new utils.Interface(_abi) as PendleSJoeSCYInterface;
838
+ }
839
+ static connect(
840
+ address: string,
841
+ signerOrProvider: Signer | Provider
842
+ ): PendleSJoeSCY {
843
+ return new Contract(address, _abi, signerOrProvider) as PendleSJoeSCY;
844
+ }
845
+ }