@pendle/core-v2 0.17.8-testnet → 0.19.0-testnet

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  10. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  12. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +4 -0
  13. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +560 -0
  14. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  15. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  16. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  17. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  19. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  20. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  21. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  22. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  24. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  25. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  26. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  27. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  28. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  29. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -2
  30. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  31. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
  32. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  33. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
  34. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  36. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  38. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  41. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  43. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +4 -0
  48. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +934 -0
  49. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  51. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  53. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  55. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  62. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  64. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  66. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  67. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  68. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  69. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.json +2 -2
  70. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  71. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +86 -5
  72. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
  73. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  74. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  75. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  76. package/build/artifacts/contracts/interfaces/IPActionSwapPTYT.sol/IPActionSwapPTYT.dbg.json +1 -1
  77. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  78. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  79. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  80. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  81. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.json +24 -32
  82. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  83. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  84. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  85. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  86. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
  87. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.dbg.json +1 -1
  88. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.json +42 -2
  89. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
  90. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +73 -100
  91. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  92. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
  93. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.dbg.json +1 -1
  94. package/build/artifacts/contracts/router/ActionCallback.sol/ActionCallback.json +2 -2
  95. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  96. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
  97. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  98. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.json +2 -2
  99. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  100. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  101. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.dbg.json +1 -1
  102. package/build/artifacts/contracts/router/ActionSwapPTYT.sol/ActionSwapPTYT.json +2 -2
  103. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  104. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
  105. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  106. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  107. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  108. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  109. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  110. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  111. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  112. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.dbg.json +1 -1
  113. package/build/artifacts/contracts/router/kyberswap/AggregationRouterHelper.sol/AggregationRouterHelper.json +2 -2
  114. package/build/artifacts/contracts/router/kyberswap/IMultihopRouterEthereum.sol/IMultihopRouterEthereum.dbg.json +4 -0
  115. package/build/artifacts/contracts/router/kyberswap/{IMultihopRouter.sol/IMultihopRouter.json → IMultihopRouterEthereum.sol/IMultihopRouterEthereum.json} +3 -3
  116. package/build/artifacts/contracts/router/kyberswap/KyberSwapHelper.sol/KyberSwapHelper.dbg.json +1 -1
  117. package/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol +214 -0
  118. package/contracts/core/BulkSeller/BulkSeller.sol +1 -1
  119. package/contracts/core/StandardizedYield/implementations/Ape/{PendleApeStakingSY.sol → sAPE.sol} +43 -30
  120. package/contracts/core/libraries/ArrayLib.sol +9 -0
  121. package/contracts/core/libraries/Errors.sol +9 -2
  122. package/contracts/interfaces/IPFeeDistributor.sol +10 -10
  123. package/contracts/offchain-helpers/MarketMathStatic.sol +30 -55
  124. package/contracts/offchain-helpers/RouterStatic.sol +30 -52
  125. package/contracts/router/kyberswap/AggregationRouterHelper.sol +37 -23
  126. package/contracts/router/kyberswap/{IMultihopRouter.sol → IMultihopRouterEthereum.sol} +11 -9
  127. package/deployments/1-markets/APE-JUNE-29.json +8 -0
  128. package/deployments/43113-core.json +9 -3
  129. package/deployments/80001-core.json +28 -0
  130. package/deployments/80001-markets/USDC-FEB-4TH.json +10 -0
  131. package/deployments/80001-markets/WETH-FEB-4TH.json +11 -0
  132. package/deployments/80001-testenv.json +22 -0
  133. package/package.json +1 -1
  134. package/typechain-types/BribeDistributor.ts +363 -0
  135. package/typechain-types/DistributorBase.ts +363 -0
  136. package/typechain-types/FeeDistributor.ts +416 -0
  137. package/typechain-types/IMultihopRouterEthereum.ts +209 -0
  138. package/typechain-types/IPFeeDistributor.ts +43 -78
  139. package/typechain-types/IPFeeDistributorFactory.ts +53 -139
  140. package/typechain-types/MarketMathStatic.ts +49 -0
  141. package/typechain-types/PendleFeeDistributor.ts +373 -118
  142. package/typechain-types/RouterStatic.ts +0 -49
  143. package/typechain-types/SAPE.ts +1191 -0
  144. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  145. package/typechain-types/factories/ActionCallback__factory.ts +1 -1
  146. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  147. package/typechain-types/factories/ActionMisc__factory.ts +1 -1
  148. package/typechain-types/factories/ActionSwapPTYT__factory.ts +1 -1
  149. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  150. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  151. package/typechain-types/factories/AggregationRouterHelper__factory.ts +1 -1
  152. package/typechain-types/factories/BribeDistributor__factory.ts +303 -0
  153. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  154. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  155. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  156. package/typechain-types/factories/DistributorBase__factory.ts +249 -0
  157. package/typechain-types/factories/Errors__factory.ts +85 -4
  158. package/typechain-types/factories/FeeDistributor__factory.ts +339 -0
  159. package/typechain-types/factories/IMultihopRouterEthereum__factory.ts +155 -0
  160. package/typechain-types/factories/IPFeeDistributorFactory__factory.ts +25 -34
  161. package/typechain-types/factories/IPFeeDistributor__factory.ts +24 -32
  162. package/typechain-types/factories/MarketMathStatic__factory.ts +41 -1
  163. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  164. package/typechain-types/factories/PendleApeStakingSY__factory.ts +1 -1
  165. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  166. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  167. package/typechain-types/factories/PendleFeeDistributor__factory.ts +310 -67
  168. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  169. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  170. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  171. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  172. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  173. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  174. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  175. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  176. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  177. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  178. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  179. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  180. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  181. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  182. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  183. package/typechain-types/factories/RouterStatic__factory.ts +18 -41
  184. package/typechain-types/factories/SAPE__factory.ts +1001 -0
  185. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  186. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  187. package/typechain-types/hardhat.d.ts +22 -40
  188. package/typechain-types/index.ts +6 -10
  189. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/EpochResultManager.sol/EpochResultManager.dbg.json +0 -4
  190. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/EpochResultManager.sol/EpochResultManager.json +0 -131
  191. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +0 -4
  192. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +0 -310
  193. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.dbg.json +0 -4
  194. package/build/artifacts/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol/PendleFeeDistributorFactory.json +0 -389
  195. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/PendleApeStakingSY.sol/PendleApeStakingSY.dbg.json +0 -4
  196. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/PendleApeStakingSY.sol/PendleApeStakingSY.json +0 -908
  197. package/build/artifacts/contracts/interfaces/IPFeeDistributorFactory.sol/IPFeeDistributorFactory.dbg.json +0 -4
  198. package/build/artifacts/contracts/interfaces/IPFeeDistributorFactory.sol/IPFeeDistributorFactory.json +0 -76
  199. package/build/artifacts/contracts/router/kyberswap/IMultihopRouter.sol/IMultihopRouter.dbg.json +0 -4
  200. package/contracts/LiquidityMining/FeeDistributor/EpochResultManager.sol +0 -159
  201. package/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributor.sol +0 -99
  202. package/contracts/LiquidityMining/FeeDistributor/PendleFeeDistributorFactory.sol +0 -70
  203. package/contracts/interfaces/IPFeeDistributorFactory.sol +0 -14
@@ -0,0 +1,416 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
17
+ import { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "./common";
24
+
25
+ export interface FeeDistributorInterface extends utils.Interface {
26
+ contractName: "FeeDistributor";
27
+ functions: {
28
+ "claimReward(address)": FunctionFragment;
29
+ "factory()": FunctionFragment;
30
+ "fund(uint256[],uint256[])": FunctionFragment;
31
+ "incentivesForEpoch(uint256)": FunctionFragment;
32
+ "initialize(address,address,uint256,address)": FunctionFragment;
33
+ "lastFinishedEpoch()": FunctionFragment;
34
+ "pool()": FunctionFragment;
35
+ "rewardToken()": FunctionFragment;
36
+ "setLastFinishedEpoch(uint256)": FunctionFragment;
37
+ "startEpoch()": FunctionFragment;
38
+ "userUnclaimedEpoch(address)": FunctionFragment;
39
+ };
40
+
41
+ encodeFunctionData(functionFragment: "claimReward", values: [string]): string;
42
+ encodeFunctionData(functionFragment: "factory", values?: undefined): string;
43
+ encodeFunctionData(
44
+ functionFragment: "fund",
45
+ values: [BigNumberish[], BigNumberish[]]
46
+ ): string;
47
+ encodeFunctionData(
48
+ functionFragment: "incentivesForEpoch",
49
+ values: [BigNumberish]
50
+ ): string;
51
+ encodeFunctionData(
52
+ functionFragment: "initialize",
53
+ values: [string, string, BigNumberish, string]
54
+ ): string;
55
+ encodeFunctionData(
56
+ functionFragment: "lastFinishedEpoch",
57
+ values?: undefined
58
+ ): string;
59
+ encodeFunctionData(functionFragment: "pool", values?: undefined): string;
60
+ encodeFunctionData(
61
+ functionFragment: "rewardToken",
62
+ values?: undefined
63
+ ): string;
64
+ encodeFunctionData(
65
+ functionFragment: "setLastFinishedEpoch",
66
+ values: [BigNumberish]
67
+ ): string;
68
+ encodeFunctionData(
69
+ functionFragment: "startEpoch",
70
+ values?: undefined
71
+ ): string;
72
+ encodeFunctionData(
73
+ functionFragment: "userUnclaimedEpoch",
74
+ values: [string]
75
+ ): string;
76
+
77
+ decodeFunctionResult(
78
+ functionFragment: "claimReward",
79
+ data: BytesLike
80
+ ): Result;
81
+ decodeFunctionResult(functionFragment: "factory", data: BytesLike): Result;
82
+ decodeFunctionResult(functionFragment: "fund", data: BytesLike): Result;
83
+ decodeFunctionResult(
84
+ functionFragment: "incentivesForEpoch",
85
+ data: BytesLike
86
+ ): Result;
87
+ decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
88
+ decodeFunctionResult(
89
+ functionFragment: "lastFinishedEpoch",
90
+ data: BytesLike
91
+ ): Result;
92
+ decodeFunctionResult(functionFragment: "pool", data: BytesLike): Result;
93
+ decodeFunctionResult(
94
+ functionFragment: "rewardToken",
95
+ data: BytesLike
96
+ ): Result;
97
+ decodeFunctionResult(
98
+ functionFragment: "setLastFinishedEpoch",
99
+ data: BytesLike
100
+ ): Result;
101
+ decodeFunctionResult(functionFragment: "startEpoch", data: BytesLike): Result;
102
+ decodeFunctionResult(
103
+ functionFragment: "userUnclaimedEpoch",
104
+ data: BytesLike
105
+ ): Result;
106
+
107
+ events: {
108
+ "ClaimReward(address,address,uint256,uint256)": EventFragment;
109
+ "Fund(uint256,uint256)": EventFragment;
110
+ "Initialized(uint8)": EventFragment;
111
+ };
112
+
113
+ getEvent(nameOrSignatureOrTopic: "ClaimReward"): EventFragment;
114
+ getEvent(nameOrSignatureOrTopic: "Fund"): EventFragment;
115
+ getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment;
116
+ }
117
+
118
+ export type ClaimRewardEvent = TypedEvent<
119
+ [string, string, BigNumber, BigNumber],
120
+ {
121
+ user: string;
122
+ rewardToken: string;
123
+ lastEpochClaimed: BigNumber;
124
+ totalReward: BigNumber;
125
+ }
126
+ >;
127
+
128
+ export type ClaimRewardEventFilter = TypedEventFilter<ClaimRewardEvent>;
129
+
130
+ export type FundEvent = TypedEvent<
131
+ [BigNumber, BigNumber],
132
+ { epoch: BigNumber; incentive: BigNumber }
133
+ >;
134
+
135
+ export type FundEventFilter = TypedEventFilter<FundEvent>;
136
+
137
+ export type InitializedEvent = TypedEvent<[number], { version: number }>;
138
+
139
+ export type InitializedEventFilter = TypedEventFilter<InitializedEvent>;
140
+
141
+ export interface FeeDistributor extends BaseContract {
142
+ contractName: "FeeDistributor";
143
+ connect(signerOrProvider: Signer | Provider | string): this;
144
+ attach(addressOrName: string): this;
145
+ deployed(): Promise<this>;
146
+
147
+ interface: FeeDistributorInterface;
148
+
149
+ queryFilter<TEvent extends TypedEvent>(
150
+ event: TypedEventFilter<TEvent>,
151
+ fromBlockOrBlockhash?: string | number | undefined,
152
+ toBlock?: string | number | undefined
153
+ ): Promise<Array<TEvent>>;
154
+
155
+ listeners<TEvent extends TypedEvent>(
156
+ eventFilter?: TypedEventFilter<TEvent>
157
+ ): Array<TypedListener<TEvent>>;
158
+ listeners(eventName?: string): Array<Listener>;
159
+ removeAllListeners<TEvent extends TypedEvent>(
160
+ eventFilter: TypedEventFilter<TEvent>
161
+ ): this;
162
+ removeAllListeners(eventName?: string): this;
163
+ off: OnEvent<this>;
164
+ on: OnEvent<this>;
165
+ once: OnEvent<this>;
166
+ removeListener: OnEvent<this>;
167
+
168
+ functions: {
169
+ claimReward(
170
+ user: string,
171
+ overrides?: Overrides & { from?: string | Promise<string> }
172
+ ): Promise<ContractTransaction>;
173
+
174
+ factory(overrides?: CallOverrides): Promise<[string]>;
175
+
176
+ fund(
177
+ epochs: BigNumberish[],
178
+ rewardsForEpoch: BigNumberish[],
179
+ overrides?: Overrides & { from?: string | Promise<string> }
180
+ ): Promise<ContractTransaction>;
181
+
182
+ incentivesForEpoch(
183
+ arg0: BigNumberish,
184
+ overrides?: CallOverrides
185
+ ): Promise<[BigNumber]>;
186
+
187
+ initialize(
188
+ _pool: string,
189
+ _rewardToken: string,
190
+ _startEpoch: BigNumberish,
191
+ _factory: string,
192
+ overrides?: Overrides & { from?: string | Promise<string> }
193
+ ): Promise<ContractTransaction>;
194
+
195
+ lastFinishedEpoch(overrides?: CallOverrides): Promise<[BigNumber]>;
196
+
197
+ pool(overrides?: CallOverrides): Promise<[string]>;
198
+
199
+ rewardToken(overrides?: CallOverrides): Promise<[string]>;
200
+
201
+ setLastFinishedEpoch(
202
+ newLastFinishedEpoch: BigNumberish,
203
+ overrides?: Overrides & { from?: string | Promise<string> }
204
+ ): Promise<ContractTransaction>;
205
+
206
+ startEpoch(overrides?: CallOverrides): Promise<[BigNumber]>;
207
+
208
+ userUnclaimedEpoch(
209
+ arg0: string,
210
+ overrides?: CallOverrides
211
+ ): Promise<[BigNumber]>;
212
+ };
213
+
214
+ claimReward(
215
+ user: string,
216
+ overrides?: Overrides & { from?: string | Promise<string> }
217
+ ): Promise<ContractTransaction>;
218
+
219
+ factory(overrides?: CallOverrides): Promise<string>;
220
+
221
+ fund(
222
+ epochs: BigNumberish[],
223
+ rewardsForEpoch: BigNumberish[],
224
+ overrides?: Overrides & { from?: string | Promise<string> }
225
+ ): Promise<ContractTransaction>;
226
+
227
+ incentivesForEpoch(
228
+ arg0: BigNumberish,
229
+ overrides?: CallOverrides
230
+ ): Promise<BigNumber>;
231
+
232
+ initialize(
233
+ _pool: string,
234
+ _rewardToken: string,
235
+ _startEpoch: BigNumberish,
236
+ _factory: string,
237
+ overrides?: Overrides & { from?: string | Promise<string> }
238
+ ): Promise<ContractTransaction>;
239
+
240
+ lastFinishedEpoch(overrides?: CallOverrides): Promise<BigNumber>;
241
+
242
+ pool(overrides?: CallOverrides): Promise<string>;
243
+
244
+ rewardToken(overrides?: CallOverrides): Promise<string>;
245
+
246
+ setLastFinishedEpoch(
247
+ newLastFinishedEpoch: BigNumberish,
248
+ overrides?: Overrides & { from?: string | Promise<string> }
249
+ ): Promise<ContractTransaction>;
250
+
251
+ startEpoch(overrides?: CallOverrides): Promise<BigNumber>;
252
+
253
+ userUnclaimedEpoch(
254
+ arg0: string,
255
+ overrides?: CallOverrides
256
+ ): Promise<BigNumber>;
257
+
258
+ callStatic: {
259
+ claimReward(user: string, overrides?: CallOverrides): Promise<BigNumber>;
260
+
261
+ factory(overrides?: CallOverrides): Promise<string>;
262
+
263
+ fund(
264
+ epochs: BigNumberish[],
265
+ rewardsForEpoch: BigNumberish[],
266
+ overrides?: CallOverrides
267
+ ): Promise<void>;
268
+
269
+ incentivesForEpoch(
270
+ arg0: BigNumberish,
271
+ overrides?: CallOverrides
272
+ ): Promise<BigNumber>;
273
+
274
+ initialize(
275
+ _pool: string,
276
+ _rewardToken: string,
277
+ _startEpoch: BigNumberish,
278
+ _factory: string,
279
+ overrides?: CallOverrides
280
+ ): Promise<void>;
281
+
282
+ lastFinishedEpoch(overrides?: CallOverrides): Promise<BigNumber>;
283
+
284
+ pool(overrides?: CallOverrides): Promise<string>;
285
+
286
+ rewardToken(overrides?: CallOverrides): Promise<string>;
287
+
288
+ setLastFinishedEpoch(
289
+ newLastFinishedEpoch: BigNumberish,
290
+ overrides?: CallOverrides
291
+ ): Promise<void>;
292
+
293
+ startEpoch(overrides?: CallOverrides): Promise<BigNumber>;
294
+
295
+ userUnclaimedEpoch(
296
+ arg0: string,
297
+ overrides?: CallOverrides
298
+ ): Promise<BigNumber>;
299
+ };
300
+
301
+ filters: {
302
+ "ClaimReward(address,address,uint256,uint256)"(
303
+ user?: string | null,
304
+ rewardToken?: string | null,
305
+ lastEpochClaimed?: null,
306
+ totalReward?: null
307
+ ): ClaimRewardEventFilter;
308
+ ClaimReward(
309
+ user?: string | null,
310
+ rewardToken?: string | null,
311
+ lastEpochClaimed?: null,
312
+ totalReward?: null
313
+ ): ClaimRewardEventFilter;
314
+
315
+ "Fund(uint256,uint256)"(
316
+ epoch?: BigNumberish | null,
317
+ incentive?: null
318
+ ): FundEventFilter;
319
+ Fund(epoch?: BigNumberish | null, incentive?: null): FundEventFilter;
320
+
321
+ "Initialized(uint8)"(version?: null): InitializedEventFilter;
322
+ Initialized(version?: null): InitializedEventFilter;
323
+ };
324
+
325
+ estimateGas: {
326
+ claimReward(
327
+ user: string,
328
+ overrides?: Overrides & { from?: string | Promise<string> }
329
+ ): Promise<BigNumber>;
330
+
331
+ factory(overrides?: CallOverrides): Promise<BigNumber>;
332
+
333
+ fund(
334
+ epochs: BigNumberish[],
335
+ rewardsForEpoch: BigNumberish[],
336
+ overrides?: Overrides & { from?: string | Promise<string> }
337
+ ): Promise<BigNumber>;
338
+
339
+ incentivesForEpoch(
340
+ arg0: BigNumberish,
341
+ overrides?: CallOverrides
342
+ ): Promise<BigNumber>;
343
+
344
+ initialize(
345
+ _pool: string,
346
+ _rewardToken: string,
347
+ _startEpoch: BigNumberish,
348
+ _factory: string,
349
+ overrides?: Overrides & { from?: string | Promise<string> }
350
+ ): Promise<BigNumber>;
351
+
352
+ lastFinishedEpoch(overrides?: CallOverrides): Promise<BigNumber>;
353
+
354
+ pool(overrides?: CallOverrides): Promise<BigNumber>;
355
+
356
+ rewardToken(overrides?: CallOverrides): Promise<BigNumber>;
357
+
358
+ setLastFinishedEpoch(
359
+ newLastFinishedEpoch: BigNumberish,
360
+ overrides?: Overrides & { from?: string | Promise<string> }
361
+ ): Promise<BigNumber>;
362
+
363
+ startEpoch(overrides?: CallOverrides): Promise<BigNumber>;
364
+
365
+ userUnclaimedEpoch(
366
+ arg0: string,
367
+ overrides?: CallOverrides
368
+ ): Promise<BigNumber>;
369
+ };
370
+
371
+ populateTransaction: {
372
+ claimReward(
373
+ user: string,
374
+ overrides?: Overrides & { from?: string | Promise<string> }
375
+ ): Promise<PopulatedTransaction>;
376
+
377
+ factory(overrides?: CallOverrides): Promise<PopulatedTransaction>;
378
+
379
+ fund(
380
+ epochs: BigNumberish[],
381
+ rewardsForEpoch: BigNumberish[],
382
+ overrides?: Overrides & { from?: string | Promise<string> }
383
+ ): Promise<PopulatedTransaction>;
384
+
385
+ incentivesForEpoch(
386
+ arg0: BigNumberish,
387
+ overrides?: CallOverrides
388
+ ): Promise<PopulatedTransaction>;
389
+
390
+ initialize(
391
+ _pool: string,
392
+ _rewardToken: string,
393
+ _startEpoch: BigNumberish,
394
+ _factory: string,
395
+ overrides?: Overrides & { from?: string | Promise<string> }
396
+ ): Promise<PopulatedTransaction>;
397
+
398
+ lastFinishedEpoch(overrides?: CallOverrides): Promise<PopulatedTransaction>;
399
+
400
+ pool(overrides?: CallOverrides): Promise<PopulatedTransaction>;
401
+
402
+ rewardToken(overrides?: CallOverrides): Promise<PopulatedTransaction>;
403
+
404
+ setLastFinishedEpoch(
405
+ newLastFinishedEpoch: BigNumberish,
406
+ overrides?: Overrides & { from?: string | Promise<string> }
407
+ ): Promise<PopulatedTransaction>;
408
+
409
+ startEpoch(overrides?: CallOverrides): Promise<PopulatedTransaction>;
410
+
411
+ userUnclaimedEpoch(
412
+ arg0: string,
413
+ overrides?: CallOverrides
414
+ ): Promise<PopulatedTransaction>;
415
+ };
416
+ }
@@ -0,0 +1,209 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ PayableOverrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
17
+ import { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "./common";
24
+
25
+ export declare namespace IMultihopRouterEthereum {
26
+ export type SwapStruct = { data: BytesLike; dexOption: BigNumberish };
27
+
28
+ export type SwapStructOutput = [string, number] & {
29
+ data: string;
30
+ dexOption: number;
31
+ };
32
+ }
33
+
34
+ export interface IMultihopRouterEthereumInterface extends utils.Interface {
35
+ contractName: "IMultihopRouterEthereum";
36
+ functions: {
37
+ "WETH()": FunctionFragment;
38
+ "factory()": FunctionFragment;
39
+ "formula()": FunctionFragment;
40
+ "multihopBatchSwapExactIn(tuple[][],address,address,uint256,address,uint256,bytes)": FunctionFragment;
41
+ };
42
+
43
+ encodeFunctionData(functionFragment: "WETH", values?: undefined): string;
44
+ encodeFunctionData(functionFragment: "factory", values?: undefined): string;
45
+ encodeFunctionData(functionFragment: "formula", values?: undefined): string;
46
+ encodeFunctionData(
47
+ functionFragment: "multihopBatchSwapExactIn",
48
+ values: [
49
+ IMultihopRouterEthereum.SwapStruct[],
50
+ string,
51
+ string,
52
+ BigNumberish,
53
+ string,
54
+ BigNumberish,
55
+ BytesLike
56
+ ]
57
+ ): string;
58
+
59
+ decodeFunctionResult(functionFragment: "WETH", data: BytesLike): Result;
60
+ decodeFunctionResult(functionFragment: "factory", data: BytesLike): Result;
61
+ decodeFunctionResult(functionFragment: "formula", data: BytesLike): Result;
62
+ decodeFunctionResult(
63
+ functionFragment: "multihopBatchSwapExactIn",
64
+ data: BytesLike
65
+ ): Result;
66
+
67
+ events: {
68
+ "Exchange(address,uint256,address)": EventFragment;
69
+ };
70
+
71
+ getEvent(nameOrSignatureOrTopic: "Exchange"): EventFragment;
72
+ }
73
+
74
+ export type ExchangeEvent = TypedEvent<
75
+ [string, BigNumber, string],
76
+ { pair: string; amountOut: BigNumber; output: string }
77
+ >;
78
+
79
+ export type ExchangeEventFilter = TypedEventFilter<ExchangeEvent>;
80
+
81
+ export interface IMultihopRouterEthereum extends BaseContract {
82
+ contractName: "IMultihopRouterEthereum";
83
+ connect(signerOrProvider: Signer | Provider | string): this;
84
+ attach(addressOrName: string): this;
85
+ deployed(): Promise<this>;
86
+
87
+ interface: IMultihopRouterEthereumInterface;
88
+
89
+ queryFilter<TEvent extends TypedEvent>(
90
+ event: TypedEventFilter<TEvent>,
91
+ fromBlockOrBlockhash?: string | number | undefined,
92
+ toBlock?: string | number | undefined
93
+ ): Promise<Array<TEvent>>;
94
+
95
+ listeners<TEvent extends TypedEvent>(
96
+ eventFilter?: TypedEventFilter<TEvent>
97
+ ): Array<TypedListener<TEvent>>;
98
+ listeners(eventName?: string): Array<Listener>;
99
+ removeAllListeners<TEvent extends TypedEvent>(
100
+ eventFilter: TypedEventFilter<TEvent>
101
+ ): this;
102
+ removeAllListeners(eventName?: string): this;
103
+ off: OnEvent<this>;
104
+ on: OnEvent<this>;
105
+ once: OnEvent<this>;
106
+ removeListener: OnEvent<this>;
107
+
108
+ functions: {
109
+ WETH(overrides?: CallOverrides): Promise<[string]>;
110
+
111
+ factory(overrides?: CallOverrides): Promise<[string]>;
112
+
113
+ formula(overrides?: CallOverrides): Promise<[string]>;
114
+
115
+ multihopBatchSwapExactIn(
116
+ swapSequences: IMultihopRouterEthereum.SwapStruct[],
117
+ tokenIn: string,
118
+ tokenOut: string,
119
+ minTotalAmountOut: BigNumberish,
120
+ to: string,
121
+ deadline: BigNumberish,
122
+ destTokenFeeData: BytesLike,
123
+ overrides?: PayableOverrides & { from?: string | Promise<string> }
124
+ ): Promise<ContractTransaction>;
125
+ };
126
+
127
+ WETH(overrides?: CallOverrides): Promise<string>;
128
+
129
+ factory(overrides?: CallOverrides): Promise<string>;
130
+
131
+ formula(overrides?: CallOverrides): Promise<string>;
132
+
133
+ multihopBatchSwapExactIn(
134
+ swapSequences: IMultihopRouterEthereum.SwapStruct[],
135
+ tokenIn: string,
136
+ tokenOut: string,
137
+ minTotalAmountOut: BigNumberish,
138
+ to: string,
139
+ deadline: BigNumberish,
140
+ destTokenFeeData: BytesLike,
141
+ overrides?: PayableOverrides & { from?: string | Promise<string> }
142
+ ): Promise<ContractTransaction>;
143
+
144
+ callStatic: {
145
+ WETH(overrides?: CallOverrides): Promise<string>;
146
+
147
+ factory(overrides?: CallOverrides): Promise<string>;
148
+
149
+ formula(overrides?: CallOverrides): Promise<string>;
150
+
151
+ multihopBatchSwapExactIn(
152
+ swapSequences: IMultihopRouterEthereum.SwapStruct[],
153
+ tokenIn: string,
154
+ tokenOut: string,
155
+ minTotalAmountOut: BigNumberish,
156
+ to: string,
157
+ deadline: BigNumberish,
158
+ destTokenFeeData: BytesLike,
159
+ overrides?: CallOverrides
160
+ ): Promise<BigNumber>;
161
+ };
162
+
163
+ filters: {
164
+ "Exchange(address,uint256,address)"(
165
+ pair?: null,
166
+ amountOut?: null,
167
+ output?: null
168
+ ): ExchangeEventFilter;
169
+ Exchange(pair?: null, amountOut?: null, output?: null): ExchangeEventFilter;
170
+ };
171
+
172
+ estimateGas: {
173
+ WETH(overrides?: CallOverrides): Promise<BigNumber>;
174
+
175
+ factory(overrides?: CallOverrides): Promise<BigNumber>;
176
+
177
+ formula(overrides?: CallOverrides): Promise<BigNumber>;
178
+
179
+ multihopBatchSwapExactIn(
180
+ swapSequences: IMultihopRouterEthereum.SwapStruct[],
181
+ tokenIn: string,
182
+ tokenOut: string,
183
+ minTotalAmountOut: BigNumberish,
184
+ to: string,
185
+ deadline: BigNumberish,
186
+ destTokenFeeData: BytesLike,
187
+ overrides?: PayableOverrides & { from?: string | Promise<string> }
188
+ ): Promise<BigNumber>;
189
+ };
190
+
191
+ populateTransaction: {
192
+ WETH(overrides?: CallOverrides): Promise<PopulatedTransaction>;
193
+
194
+ factory(overrides?: CallOverrides): Promise<PopulatedTransaction>;
195
+
196
+ formula(overrides?: CallOverrides): Promise<PopulatedTransaction>;
197
+
198
+ multihopBatchSwapExactIn(
199
+ swapSequences: IMultihopRouterEthereum.SwapStruct[],
200
+ tokenIn: string,
201
+ tokenOut: string,
202
+ minTotalAmountOut: BigNumberish,
203
+ to: string,
204
+ deadline: BigNumberish,
205
+ destTokenFeeData: BytesLike,
206
+ overrides?: PayableOverrides & { from?: string | Promise<string> }
207
+ ): Promise<PopulatedTransaction>;
208
+ };
209
+ }