@pendle/core-v2 2.20.0 → 2.21.0-tradingbot

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 (665) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiverAppUpg.sol/PendleMsgReceiverAppUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSenderAppUpg.sol/PendleMsgSenderAppUpg.dbg.json +1 -1
  7. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/ExcessivelySafeCall.sol/ExcessivelySafeCall.dbg.json +1 -1
  8. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  9. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
  10. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  11. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  12. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.json +2 -2
  13. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  14. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.json +2 -2
  15. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  16. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  17. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributorV2.sol/PendleFeeDistributorV2.json +2 -2
  19. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  20. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  21. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  22. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.json +2 -2
  24. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  25. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.json +2 -2
  26. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  27. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  28. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.json +2 -2
  29. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  30. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.json +2 -2
  31. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  32. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.json +2 -2
  33. package/build/artifacts/contracts/LiquidityMining/libraries/WeekMath.sol/WeekMath.dbg.json +1 -1
  34. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.json +2 -2
  36. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.json +2 -2
  38. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.json +2 -2
  40. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.json +2 -2
  42. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.json +2 -2
  44. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  45. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.json +0 -19
  46. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  47. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -21
  48. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.json +2 -2
  50. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.json +2 -2
  54. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  56. package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.json +2 -2
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraBbAWethSwethSY.sol/PendleAuraBbAWethSwethSY.json +2 -2
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethAnkrethSYV2.sol/PendleAuraWethAnkrethSYV2.json +2 -2
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRocketEthSYV2.sol/PendleAuraWethRocketEthSYV2.json +2 -2
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.dbg.json +1 -1
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethStafiEthSY.sol/PendleAuraWethStafiEthSY.json +2 -2
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.dbg.json +1 -1
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSYV2.sol/PendleAuraWethWstethSYV2.json +2 -2
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +1 -1
  71. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +1 -1
  73. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAPoolHelper.dbg.json +1 -1
  74. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/BbAPoolHelper.sol/BbAWethHelper.dbg.json +1 -1
  75. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearMath.sol/LinearMath.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/Linear/LinearPreview.sol/LinearPreview.dbg.json +1 -1
  77. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
  78. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  79. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSYV2.sol/PendleAuraBalancerStableLPSYV2.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
  81. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  83. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.json +2 -2
  84. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  85. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  86. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotRewardHelper.sol/CamelotRewardHelper.dbg.json +1 -1
  87. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileCommon.sol/CamelotV1VolatileCommon.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatileLpHelper.sol/CamelotV1VolatileLpHelper.dbg.json +1 -1
  89. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/CamelotV1VolatilePreview.sol/CamelotV1VolatilePreview.dbg.json +1 -1
  90. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.dbg.json +1 -1
  91. package/build/artifacts/contracts/core/StandardizedYield/implementations/CamelotV1Volatile/PendleCamelotV1VolatileSY.sol/PendleCamelotV1VolatileSY.json +2 -2
  92. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  93. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  94. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  95. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  96. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  97. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  98. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  99. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  100. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +1 -1
  101. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  102. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
  103. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +1 -1
  104. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +2 -2
  105. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  106. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.json +2 -2
  107. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.dbg.json +1 -1
  108. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleSfrxEthSY.sol/PendleSfrxEthSY.json +2 -2
  109. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.dbg.json +1 -1
  110. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleStargateLPSY.sol/PendleStargateLPSY.json +2 -2
  111. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  112. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.json +2 -2
  113. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/BotDecisionHelperBase.sol/BotDecisionHelperBase.dbg.json +4 -0
  114. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/BotDecisionHelperBase.sol/BotDecisionHelperBase.json +816 -0
  115. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.dbg.json +4 -0
  116. package/build/artifacts/contracts/core/TradingBot/DecisionHelper/LongYieldDecisionHelper.sol/LongYieldDecisionHelper.json +1411 -0
  117. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.dbg.json +4 -0
  118. package/build/artifacts/contracts/core/TradingBot/LongYieldTradingBot.sol/LongYieldTradingBot.json +2240 -0
  119. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.dbg.json +4 -0
  120. package/build/artifacts/contracts/core/TradingBot/TradingBotBase.sol/TradingBotBase.json +1641 -0
  121. package/build/artifacts/contracts/core/TradingBot/libraries/BotSimulationLib.sol/BotSimulationLib.dbg.json +4 -0
  122. package/build/artifacts/contracts/core/TradingBot/libraries/BotSimulationLib.sol/BotSimulationLib.json +10 -0
  123. package/build/artifacts/contracts/core/TradingBot/libraries/LongYieldActionLib.sol/LongYieldActionLib.dbg.json +4 -0
  124. package/build/artifacts/contracts/core/TradingBot/libraries/LongYieldActionLib.sol/LongYieldActionLib.json +154 -0
  125. package/build/artifacts/contracts/core/TradingBot/libraries/MarketExtLib.sol/MarketExtLib.dbg.json +4 -0
  126. package/build/artifacts/contracts/core/TradingBot/libraries/MarketExtLib.sol/MarketExtLib.json +24 -0
  127. package/build/artifacts/contracts/core/TradingBot/libraries/SpecSegmentLib.sol/SpecSegmentLib.dbg.json +4 -0
  128. package/build/artifacts/contracts/core/TradingBot/libraries/SpecSegmentLib.sol/SpecSegmentLib.json +10 -0
  129. package/build/artifacts/contracts/core/TradingBot/libraries/TvlLib.sol/TvlLib.dbg.json +4 -0
  130. package/build/artifacts/contracts/core/TradingBot/libraries/TvlLib.sol/TvlLib.json +262 -0
  131. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  132. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  133. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.json +2 -2
  134. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  135. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.json +2 -2
  136. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  137. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.json +2 -2
  138. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  139. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  140. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.json +2 -2
  141. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  142. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
  143. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  144. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
  145. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  146. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  147. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  148. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  149. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  150. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  151. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  152. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  153. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.json +151 -2
  154. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  155. package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
  156. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
  157. package/build/artifacts/contracts/core/libraries/TokenAmountLib.sol/TokenAmountLib.dbg.json +4 -0
  158. package/build/artifacts/contracts/core/libraries/TokenAmountLib.sol/TokenAmountLib.json +10 -0
  159. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  160. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  161. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  162. package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +1 -1
  163. package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +1 -1
  164. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  165. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
  166. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
  167. package/build/artifacts/contracts/interfaces/Balancer/IERC4626LinearPool.sol/IERC4626LinearPool.dbg.json +1 -1
  168. package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +1 -1
  169. package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +1 -1
  170. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
  171. package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +1 -1
  172. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  173. package/build/artifacts/contracts/interfaces/Camelot/ICamelotFactory.sol/ICamelotFactory.dbg.json +1 -1
  174. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTFactory.sol/ICamelotNFTFactory.dbg.json +1 -1
  175. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTHandler.sol/ICamelotNFTHandler.dbg.json +1 -1
  176. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNFTPool.sol/ICamelotNFTPool.dbg.json +1 -1
  177. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPool.sol/ICamelotNitroPool.dbg.json +1 -1
  178. package/build/artifacts/contracts/interfaces/Camelot/ICamelotNitroPoolFactory.sol/ICamelotNitroPoolFactory.dbg.json +1 -1
  179. package/build/artifacts/contracts/interfaces/Camelot/ICamelotPair.sol/ICamelotPair.dbg.json +1 -1
  180. package/build/artifacts/contracts/interfaces/Camelot/ICamelotRouter.sol/ICamelotRouter.dbg.json +1 -1
  181. package/build/artifacts/contracts/interfaces/Camelot/ICamelotYieldBooster.sol/ICamelotYieldBooster.dbg.json +1 -1
  182. package/build/artifacts/contracts/interfaces/Camelot/IXGrail.sol/IXGrail.dbg.json +1 -1
  183. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
  184. package/build/artifacts/contracts/interfaces/ConvexCurve/ICrvDepositor.sol/ICrvDepositor.dbg.json +1 -1
  185. package/build/artifacts/contracts/interfaces/ConvexCurve/ICvxCrv.sol/ICvxCrv.dbg.json +1 -1
  186. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
  187. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  188. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
  189. package/build/artifacts/contracts/interfaces/Frax/IFrxEthMinter.sol/IFrxEthMinter.dbg.json +1 -1
  190. package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
  191. package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.dbg.json +1 -1
  192. package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +1 -1
  193. package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.dbg.json +1 -1
  194. package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +1 -1
  195. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
  196. package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
  197. package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
  198. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +1 -1
  199. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +1 -1
  200. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  201. package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
  202. package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
  203. package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +1 -1
  204. package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +1 -1
  205. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  206. package/build/artifacts/contracts/interfaces/IPActionInfoStatic.sol/IPActionInfoStatic.dbg.json +1 -1
  207. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  208. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.json +6 -82
  209. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  210. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +22 -22
  211. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  212. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  213. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.json +4 -42
  214. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +1 -1
  215. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  216. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  217. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  218. package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
  219. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  220. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  221. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  222. package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +1 -1
  223. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  224. package/build/artifacts/contracts/interfaces/IPFeeDistributorV2.sol/IPFeeDistributorV2.dbg.json +1 -1
  225. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  226. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.json +0 -19
  227. package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
  228. package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
  229. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
  230. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
  231. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  232. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.json +0 -19
  233. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  234. package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
  235. package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
  236. package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
  237. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  238. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  239. package/build/artifacts/contracts/interfaces/IPPtOracle.sol/IPPtOracle.dbg.json +1 -1
  240. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  241. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  242. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +32 -146
  243. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
  244. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  245. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  246. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  247. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  248. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
  249. package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
  250. package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
  251. package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
  252. package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
  253. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
  254. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  255. package/build/artifacts/contracts/interfaces/IStargateLP.sol/IStargateLP.dbg.json +1 -1
  256. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  257. package/build/artifacts/contracts/interfaces/IStargateStaking.sol/IStargateStaking.dbg.json +1 -1
  258. package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
  259. package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
  260. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.dbg.json +4 -0
  261. package/build/artifacts/contracts/interfaces/TradingBot/IBotDecisionHelper.sol/IBotDecisionHelper.json +679 -0
  262. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldDecisionHelper.sol/ILongYieldDecisionHelper.dbg.json +4 -0
  263. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldDecisionHelper.sol/ILongYieldDecisionHelper.json +698 -0
  264. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.dbg.json +4 -0
  265. package/build/artifacts/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol/ILongYieldTradingBot.json +745 -0
  266. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldDecisionHelper.sol/IShortYieldDecisionHelper.dbg.json +4 -0
  267. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldDecisionHelper.sol/IShortYieldDecisionHelper.json +679 -0
  268. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldTradingBot.sol/IShortYieldTradingBot.dbg.json +4 -0
  269. package/build/artifacts/contracts/interfaces/TradingBot/IShortYieldTradingBot.sol/IShortYieldTradingBot.json +794 -0
  270. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.dbg.json +4 -0
  271. package/build/artifacts/contracts/interfaces/TradingBot/ITradingBotBase.sol/ITradingBotBase.json +351 -0
  272. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
  273. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  274. package/build/artifacts/contracts/offchain-helpers/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  275. package/build/artifacts/contracts/offchain-helpers/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  276. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +1 -1
  277. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +2 -2
  278. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  279. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.json +2 -2
  280. package/build/artifacts/contracts/offchain-helpers/EmptyUUPS.sol/EmptyUUPS.dbg.json +1 -1
  281. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.dbg.json +1 -1
  282. package/build/artifacts/contracts/offchain-helpers/MarketExchangeRateLib.sol/MarketExchangeRateLib.json +2 -2
  283. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
  284. package/build/artifacts/contracts/offchain-helpers/PendleMulticallV1.sol/PendleMulticallV1.dbg.json +1 -1
  285. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  286. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  287. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  288. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  289. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  290. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +8 -84
  291. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  292. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +24 -24
  293. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  294. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +6 -44
  295. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  296. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  297. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  298. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  299. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  300. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  301. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  302. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.dbg.json +1 -1
  303. package/build/artifacts/contracts/oracles/PendlePtOracle.sol/PendlePtOracle.json +2 -2
  304. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +1 -1
  305. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.json +2 -2
  306. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.dbg.json +1 -1
  307. package/build/artifacts/contracts/oracles/samples/PendleLpGlpOracle.sol/PendleLpGlpOracle.json +2 -2
  308. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.dbg.json +1 -1
  309. package/build/artifacts/contracts/oracles/samples/PendlePtGlpOracle.sol/PendlePtGlpOracle.json +2 -2
  310. package/build/artifacts/contracts/oracles/samples/PendlePtUsdChainlinkOracle.sol/PendlePtUsdChainlinkOracle.dbg.json +1 -1
  311. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  312. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
  313. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  314. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
  315. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  316. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  317. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  318. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  319. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
  320. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  321. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  322. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +1 -1
  323. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +2 -2
  324. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  325. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  326. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  327. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  328. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  329. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  330. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  331. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
  332. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  333. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
  334. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IExecutorHelper.sol/IExecutorHelper.dbg.json +1 -1
  335. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IHashflow.sol/IHashflow.dbg.json +1 -1
  336. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
  337. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberInputScalingHelper.sol/KyberInputScalingHelper.dbg.json +1 -1
  338. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScalingDataLib.sol/ScalingDataLib.dbg.json +1 -1
  339. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +0 -4
  340. package/contracts/core/Market/PendleGauge.sol +2 -3
  341. package/contracts/core/StandardizedYield/PYIndex.sol +14 -0
  342. package/contracts/core/TradingBot/DecisionHelper/BotDecisionHelperBase.sol +265 -0
  343. package/contracts/core/TradingBot/DecisionHelper/LongYieldDecisionHelper.sol +333 -0
  344. package/contracts/core/TradingBot/LongYieldTradingBot.sol +144 -0
  345. package/contracts/core/TradingBot/TradingBotBase.sol +253 -0
  346. package/contracts/core/TradingBot/libraries/BotSimulationLib.sol +99 -0
  347. package/contracts/core/TradingBot/libraries/LongYieldActionLib.sol +308 -0
  348. package/contracts/core/TradingBot/libraries/MarketExtLib.sol +272 -0
  349. package/contracts/core/TradingBot/libraries/SpecSegmentLib.sol +78 -0
  350. package/contracts/core/TradingBot/libraries/TvlLib.sol +69 -0
  351. package/contracts/core/libraries/Errors.sol +12 -0
  352. package/contracts/core/libraries/TokenAmountLib.sol +47 -0
  353. package/contracts/interfaces/IPActionInfoStatic.sol +7 -8
  354. package/contracts/interfaces/IPActionMarketAuxStatic.sol +14 -21
  355. package/contracts/interfaces/IPActionMarketCoreStatic.sol +67 -70
  356. package/contracts/interfaces/IPActionMintRedeemStatic.sol +11 -23
  357. package/contracts/interfaces/IPGauge.sol +0 -3
  358. package/contracts/interfaces/IPRouterStatic.sol +1 -5
  359. package/contracts/interfaces/IStandardizedYield.sol +10 -15
  360. package/contracts/interfaces/TradingBot/IBotDecisionHelper.sol +76 -0
  361. package/contracts/interfaces/TradingBot/ILongYieldDecisionHelper.sol +8 -0
  362. package/contracts/interfaces/TradingBot/ILongYieldTradingBot.sol +74 -0
  363. package/contracts/interfaces/TradingBot/IShortYieldDecisionHelper.sol +7 -0
  364. package/contracts/interfaces/TradingBot/IShortYieldTradingBot.sol +27 -0
  365. package/contracts/interfaces/TradingBot/ITradingBotBase.sol +54 -0
  366. package/contracts/offchain-helpers/BulkSellerOffchain.sol +8 -11
  367. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +11 -14
  368. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +37 -96
  369. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +80 -88
  370. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +14 -43
  371. package/contracts/oracles/PendleLpOracleLib.sol +1 -1
  372. package/deployments/core.ts +29 -0
  373. package/deployments/index.ts +4 -0
  374. package/deployments/markets/ape-june-29-2023.ts +3 -0
  375. package/deployments/markets/balancer-reth-dec-28-2023.ts +3 -0
  376. package/deployments/markets/balancer-wsteth-jun-27-2024.ts +3 -0
  377. package/deployments/markets/curve-fraxusdc-march-30-2023.ts +3 -0
  378. package/deployments/markets/index.ts +17 -0
  379. package/deployments/markets/looks-march-30-2023.ts +3 -0
  380. package/deployments/markets/steth-june-29-2023.ts +3 -0
  381. package/deployments/markets/steth-march-30-2023.ts +3 -0
  382. package/deployments/markets/types.ts +9 -0
  383. package/deployments/misc.ts +23 -0
  384. package/package.json +1 -1
  385. package/typechain-types/ActionMarketAuxStatic.ts +38 -191
  386. package/typechain-types/ActionMarketCoreStatic.ts +134 -600
  387. package/typechain-types/ActionMintRedeemStatic.ts +26 -92
  388. package/typechain-types/AuraEthxBbAWethSY.ts +1532 -0
  389. package/typechain-types/AuraSwEthBbAWethSYV2.ts +1532 -0
  390. package/typechain-types/AutomateReady.ts +102 -0
  391. package/typechain-types/AutomationBase.ts +57 -0
  392. package/typechain-types/AutomationCompatible.ts +140 -0
  393. package/typechain-types/AutomationCompatibleInterface.ts +141 -0
  394. package/typechain-types/BotDecisionHelperBase.ts +508 -0
  395. package/typechain-types/ChainlinkRelayerAutomation.ts +305 -0
  396. package/typechain-types/ChainlinkRelayerGelato.ts +311 -0
  397. package/typechain-types/ComposableStablePreviewProxy.ts +352 -0
  398. package/typechain-types/ComposableStablePreviewV4.ts +217 -0
  399. package/typechain-types/ComposableStablePreviewV5.ts +217 -0
  400. package/typechain-types/{CamelotV1Preview.ts → HLPPricingHelper.ts} +50 -84
  401. package/typechain-types/IAnkrBNB.ts +150 -0
  402. package/typechain-types/IAnkrLiquidStaking.ts +253 -0
  403. package/typechain-types/IAutomate.ts +203 -0
  404. package/typechain-types/IBotDecisionHelper.ts +208 -239
  405. package/typechain-types/IEUSD.ts +194 -0
  406. package/typechain-types/IFluxErc20.ts +298 -0
  407. package/typechain-types/IFluxInterestRateModel.ts +113 -0
  408. package/typechain-types/IHLPStaking.ts +154 -0
  409. package/typechain-types/IHMXCalculator.ts +96 -0
  410. package/typechain-types/IHMXCompounder.ts +122 -0
  411. package/typechain-types/IHMXStaking.ts +165 -0
  412. package/typechain-types/IHMXVester.ts +163 -0
  413. package/typechain-types/IInterestUSTP.ts +156 -0
  414. package/typechain-types/IKyberElasticFactory.ts +734 -0
  415. package/typechain-types/IKyberElasticPool.ts +514 -0
  416. package/typechain-types/IKyberElasticRouter.ts +315 -0
  417. package/typechain-types/IKyberLiquidityMining.ts +968 -0
  418. package/typechain-types/IKyberMathHelper.ts +231 -0
  419. package/typechain-types/IKyberPositionManager.ts +773 -0
  420. package/typechain-types/ILongYieldDecisionHelper.ts +512 -0
  421. package/typechain-types/ILongYieldTradingBot.ts +197 -502
  422. package/typechain-types/IOpsProxyFactory.ts +93 -0
  423. package/typechain-types/IPActionMarketAuxStatic.ts +38 -191
  424. package/typechain-types/IPActionMarketCoreStatic.ts +134 -600
  425. package/typechain-types/IPActionMintRedeemStatic.ts +26 -92
  426. package/typechain-types/IPComposableStablePreview.ts +217 -0
  427. package/typechain-types/IPExternalRewardDistributor.ts +198 -0
  428. package/typechain-types/IPGauge.ts +3 -23
  429. package/typechain-types/IPMarket.ts +0 -18
  430. package/typechain-types/IPMarketFactoryV2.ts +253 -0
  431. package/typechain-types/{ICamelotSY.ts → IPOracleForSy.ts} +13 -26
  432. package/typechain-types/IPRouterStatic.ts +197 -888
  433. package/typechain-types/IRebasingUSTP.ts +133 -0
  434. package/typechain-types/IShortYieldDecisionHelper.ts +476 -0
  435. package/typechain-types/IShortYieldTradingBot.ts +574 -0
  436. package/typechain-types/IStaderStakeManager.ts +700 -0
  437. package/typechain-types/{IExecutorHelper2.ts → ISwETH.ts} +40 -32
  438. package/typechain-types/ITaskTreasuryUpgradable.ts +160 -0
  439. package/typechain-types/ITradingBotBase.ts +97 -247
  440. package/typechain-types/IUSTP.ts +127 -0
  441. package/typechain-types/IVersion.ts +81 -0
  442. package/typechain-types/KyberMathHelper.ts +583 -0
  443. package/typechain-types/KyberNftManagerBase.ts +364 -0
  444. package/typechain-types/LegacyNFTHelper.ts +87 -0
  445. package/typechain-types/LongYieldActionLib.ts +57 -0
  446. package/typechain-types/LongYieldDecisionHelper.ts +663 -0
  447. package/typechain-types/LongYieldTradingBot.ts +1374 -437
  448. package/typechain-types/PendleAnkrBNBSY.ts +1235 -0
  449. package/typechain-types/PendleAuraWethVethSY.ts +1511 -0
  450. package/typechain-types/PendleAuraWstethAnkreth.ts +1511 -0
  451. package/typechain-types/PendleBridgedLSDSY.ts +1222 -0
  452. package/typechain-types/PendleChainlinkReceiver.ts +239 -0
  453. package/typechain-types/PendleChainlinkRelayer.ts +158 -0
  454. package/typechain-types/{PendleBinanceEth.ts → PendleERC4626SY.ts} +18 -31
  455. package/typechain-types/PendleETHXSY.ts +1231 -0
  456. package/typechain-types/PendleEUSDSY.ts +1216 -0
  457. package/typechain-types/PendleExternalRewardDistributor.ts +596 -0
  458. package/typechain-types/PendleFluxLendingSY.ts +1232 -0
  459. package/typechain-types/PendleGauge.ts +3 -23
  460. package/typechain-types/PendleGaugeV2.ts +225 -0
  461. package/typechain-types/PendleHlpSY.ts +1517 -0
  462. package/typechain-types/PendleIUSTPSY.ts +1255 -0
  463. package/typechain-types/{PendleCamelotV1SY.ts → PendleKyberElasticSY.ts} +385 -516
  464. package/typechain-types/PendleMantleStakedEthSY.ts +1222 -0
  465. package/typechain-types/PendleMarket.ts +0 -18
  466. package/typechain-types/PendleMarketFactoryV2.ts +932 -0
  467. package/typechain-types/PendleMarketV2.ts +1311 -0
  468. package/typechain-types/PendleMulticallV2.ts +241 -0
  469. package/typechain-types/PendleOracleForSyProxy.ts +275 -0
  470. package/typechain-types/SDKErrorsDirectory.ts +57 -0
  471. package/typechain-types/StarNFTV1.ts +880 -0
  472. package/typechain-types/SwETHSY.ts +1216 -0
  473. package/typechain-types/TradingBotBase.ts +1275 -157
  474. package/typechain-types/TvlLib.ts +215 -0
  475. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  476. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  477. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +7 -83
  478. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +23 -23
  479. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +5 -43
  480. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  481. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  482. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  483. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  484. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  485. package/typechain-types/factories/AuraEthxBbAWethSY__factory.ts +1240 -0
  486. package/typechain-types/factories/AuraSwEthBbAWethSYV2__factory.ts +1244 -0
  487. package/typechain-types/factories/{ICamelotSY__factory.ts → AutomateReady__factory.ts} +9 -9
  488. package/typechain-types/factories/AutomationBase__factory.ts +69 -0
  489. package/typechain-types/factories/AutomationCompatibleInterface__factory.ts +67 -0
  490. package/typechain-types/factories/AutomationCompatible__factory.ts +72 -0
  491. package/typechain-types/factories/BotDecisionHelperBase__factory.ts +835 -0
  492. package/typechain-types/factories/Broadcaster__factory.ts +1 -1
  493. package/typechain-types/factories/BulkSellerFactory__factory.ts +1 -1
  494. package/typechain-types/factories/BulkSellerOffchain__factory.ts +1 -1
  495. package/typechain-types/factories/BulkSeller__factory.ts +1 -1
  496. package/typechain-types/factories/ChainlinkRelayerAutomation__factory.ts +238 -0
  497. package/typechain-types/factories/ChainlinkRelayerGelato__factory.ts +263 -0
  498. package/typechain-types/factories/ComposableStablePreviewProxy__factory.ts +288 -0
  499. package/typechain-types/factories/ComposableStablePreviewV4__factory.ts +190 -0
  500. package/typechain-types/factories/ComposableStablePreviewV5__factory.ts +190 -0
  501. package/typechain-types/factories/Errors__factory.ts +150 -1
  502. package/typechain-types/factories/HLPPricingHelper__factory.ts +311 -0
  503. package/typechain-types/factories/IAnkrBNB__factory.ts +74 -0
  504. package/typechain-types/factories/IAnkrLiquidStaking__factory.ts +123 -0
  505. package/typechain-types/factories/IAutomate__factory.ts +126 -0
  506. package/typechain-types/factories/IBotDecisionHelper__factory.ts +377 -615
  507. package/typechain-types/factories/IEUSD__factory.ts +101 -0
  508. package/typechain-types/factories/IFluxErc20__factory.ts +178 -0
  509. package/typechain-types/factories/{IExecutorHelper2__factory.ts → IFluxInterestRateModel__factory.ts} +19 -15
  510. package/typechain-types/factories/IHLPStaking__factory.ts +67 -0
  511. package/typechain-types/factories/IHMXCalculator__factory.ts +45 -0
  512. package/typechain-types/factories/IHMXCompounder__factory.ts +59 -0
  513. package/typechain-types/factories/IHMXStaking__factory.ts +78 -0
  514. package/typechain-types/factories/IHMXVester__factory.ts +85 -0
  515. package/typechain-types/factories/IInterestUSTP__factory.ts +75 -0
  516. package/typechain-types/factories/IKyberElasticFactory__factory.ts +455 -0
  517. package/typechain-types/factories/IKyberElasticPool__factory.ts +315 -0
  518. package/typechain-types/factories/IKyberElasticRouter__factory.ts +240 -0
  519. package/typechain-types/factories/IKyberLiquidityMining__factory.ts +913 -0
  520. package/typechain-types/factories/IKyberMathHelper__factory.ts +143 -0
  521. package/typechain-types/factories/IKyberPositionManager__factory.ts +633 -0
  522. package/typechain-types/factories/ILongYieldDecisionHelper__factory.ts +717 -0
  523. package/typechain-types/factories/ILongYieldTradingBot__factory.ts +250 -658
  524. package/typechain-types/factories/IOpsProxyFactory__factory.ts +50 -0
  525. package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +6 -82
  526. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +22 -22
  527. package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +4 -42
  528. package/typechain-types/factories/IPComposableStablePreview__factory.ts +152 -0
  529. package/typechain-types/factories/IPExternalRewardDistributor__factory.ts +128 -0
  530. package/typechain-types/factories/IPGauge__factory.ts +0 -19
  531. package/typechain-types/factories/IPMarketFactoryV2__factory.ts +181 -0
  532. package/typechain-types/factories/IPMarket__factory.ts +0 -19
  533. package/typechain-types/factories/IPOracleForSy__factory.ts +36 -0
  534. package/typechain-types/factories/IPRouterStatic__factory.ts +32 -146
  535. package/typechain-types/factories/IRebasingUSTP__factory.ts +49 -0
  536. package/typechain-types/factories/IShortYieldDecisionHelper__factory.ts +698 -0
  537. package/typechain-types/factories/IShortYieldTradingBot__factory.ts +813 -0
  538. package/typechain-types/factories/IStaderStakeManager__factory.ts +435 -0
  539. package/typechain-types/factories/ISwETH__factory.ts +53 -0
  540. package/typechain-types/factories/ITaskTreasuryUpgradable__factory.ts +76 -0
  541. package/typechain-types/factories/ITradingBotBase__factory.ts +138 -227
  542. package/typechain-types/factories/IUSTP__factory.ts +46 -0
  543. package/typechain-types/factories/IVersion__factory.ts +36 -0
  544. package/typechain-types/factories/KyberMathHelper__factory.ts +417 -0
  545. package/typechain-types/factories/KyberNftManagerBase__factory.ts +279 -0
  546. package/typechain-types/factories/LegacyNFTHelper__factory.ts +83 -0
  547. package/typechain-types/factories/LongYieldActionLib__factory.ts +207 -0
  548. package/typechain-types/factories/LongYieldDecisionHelper__factory.ts +1468 -0
  549. package/typechain-types/factories/LongYieldTradingBot__factory.ts +1153 -748
  550. package/typechain-types/factories/MarketExtLib__factory.ts +1 -1
  551. package/typechain-types/factories/OracleLib__factory.ts +1 -1
  552. package/typechain-types/factories/PendleAnkrBNBSY__factory.ts +1100 -0
  553. package/typechain-types/factories/PendleArbitrumStakedEthSY__factory.ts +1 -1
  554. package/typechain-types/factories/PendleAuraBbAWethSwethSY__factory.ts +1 -1
  555. package/typechain-types/factories/PendleAuraWethAnkrethSYV2__factory.ts +1 -1
  556. package/typechain-types/factories/PendleAuraWethRocketEthSYV2__factory.ts +1 -1
  557. package/typechain-types/factories/PendleAuraWethStafiEthSY__factory.ts +1 -1
  558. package/typechain-types/factories/PendleAuraWethVethSY__factory.ts +1231 -0
  559. package/typechain-types/factories/PendleAuraWethWstethSYV2__factory.ts +1 -1
  560. package/typechain-types/factories/PendleAuraWstethAnkreth__factory.ts +1244 -0
  561. package/typechain-types/factories/PendleBridgedLSDSY__factory.ts +1064 -0
  562. package/typechain-types/factories/PendleCamelotV1VolatileSY__factory.ts +1 -1
  563. package/typechain-types/factories/PendleChainlinkReceiver__factory.ts +216 -0
  564. package/typechain-types/factories/PendleChainlinkRelayer__factory.ts +180 -0
  565. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  566. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  567. package/typechain-types/factories/PendleERC4626SY__factory.ts +1030 -0
  568. package/typechain-types/factories/PendleETHXSY__factory.ts +1059 -0
  569. package/typechain-types/factories/PendleEUSDSY__factory.ts +1022 -0
  570. package/typechain-types/factories/PendleExternalRewardDistributor__factory.ts +437 -0
  571. package/typechain-types/factories/PendleFeeDistributorV2__factory.ts +1 -1
  572. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  573. package/typechain-types/factories/PendleFluxLendingSY__factory.ts +1049 -0
  574. package/typechain-types/factories/PendleGDaiSY__factory.ts +1 -1
  575. package/typechain-types/factories/PendleGaugeControllerMainchainUpg__factory.ts +1 -1
  576. package/typechain-types/factories/PendleGaugeControllerSidechainUpg__factory.ts +1 -1
  577. package/typechain-types/factories/{CamelotV1LpHelper__factory.ts → PendleGaugeV2__factory.ts} +50 -53
  578. package/typechain-types/factories/PendleGauge__factory.ts +0 -19
  579. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  580. package/typechain-types/factories/PendleHlpSY__factory.ts +1283 -0
  581. package/typechain-types/factories/PendleIUSTPSY__factory.ts +1061 -0
  582. package/typechain-types/factories/PendleKyberElasticSY__factory.ts +1512 -0
  583. package/typechain-types/factories/PendleLooksStakingSY__factory.ts +1 -1
  584. package/typechain-types/factories/PendleLpGlpOracle__factory.ts +1 -1
  585. package/typechain-types/factories/PendleMantleStakedEthSY__factory.ts +1068 -0
  586. package/typechain-types/factories/PendleMarketFactoryV2__factory.ts +770 -0
  587. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  588. package/typechain-types/factories/PendleMarketV2__factory.ts +1299 -0
  589. package/typechain-types/factories/PendleMarket__factory.ts +1 -20
  590. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  591. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  592. package/typechain-types/factories/PendleMulticallV2__factory.ts +212 -0
  593. package/typechain-types/factories/PendleOracleForSyProxy__factory.ts +211 -0
  594. package/typechain-types/factories/PendlePrincipalTokenV2__factory.ts +1 -1
  595. package/typechain-types/factories/PendlePrincipalToken__factory.ts +1 -1
  596. package/typechain-types/factories/PendlePtGlpOracle__factory.ts +1 -1
  597. package/typechain-types/factories/PendlePtOracle__factory.ts +1 -1
  598. package/typechain-types/factories/PendleQiTokenHelper__factory.ts +1 -1
  599. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  600. package/typechain-types/factories/PendleRouterHelper__factory.ts +1 -1
  601. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  602. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  603. package/typechain-types/factories/PendleSfrxEthSY__factory.ts +1 -1
  604. package/typechain-types/factories/PendleStargateLPSY__factory.ts +1 -1
  605. package/typechain-types/factories/PendleThenaSY__factory.ts +1 -1
  606. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  607. package/typechain-types/factories/PendleWbEthSY__factory.ts +1 -1
  608. package/typechain-types/factories/PendleWstEthSY__factory.ts +1 -1
  609. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  610. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  611. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
  612. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -1
  613. package/typechain-types/factories/PtAndLpToAsset__factory.ts +1 -1
  614. package/typechain-types/factories/SAPE__factory.ts +1 -1
  615. package/typechain-types/factories/SDKErrorsDirectory__factory.ts +1596 -0
  616. package/typechain-types/factories/StarNFTV1__factory.ts +584 -0
  617. package/typechain-types/factories/SwETHSY__factory.ts +1022 -0
  618. package/typechain-types/factories/ThenaPreview__factory.ts +1 -1
  619. package/typechain-types/factories/TradingBotBase__factory.ts +1258 -230
  620. package/typechain-types/factories/TvlLib__factory.ts +309 -0
  621. package/typechain-types/factories/VotingEscrowPendleMainchain__factory.ts +1 -1
  622. package/typechain-types/factories/VotingEscrowPendleSidechain__factory.ts +1 -1
  623. package/typechain-types/hardhat.d.ts +115 -232
  624. package/typechain-types/index.ts +34 -50
  625. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.dbg.json +0 -4
  626. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol/PendleArbitrumStakedEthSY.json +0 -976
  627. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.dbg.json +0 -4
  628. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol/PendleWbEthSY.json +0 -979
  629. package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.dbg.json +0 -4
  630. package/build/artifacts/contracts/interfaces/BinanceEth/IWBETH.sol/IWBETH.json +0 -42
  631. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.dbg.json +0 -4
  632. package/build/artifacts/contracts/offchain-helpers/PtAndLpToAsset.sol/PtAndLpToAsset.json +0 -97
  633. package/contracts/core/StandardizedYield/implementations/PendleArbitrumStakedEthSY.sol +0 -120
  634. package/contracts/core/StandardizedYield/implementations/PendleWbEthSY.sol +0 -108
  635. package/contracts/interfaces/BinanceEth/IWBETH.sol +0 -9
  636. package/contracts/offchain-helpers/PtAndLpToAsset.sol +0 -62
  637. package/deployments/42161-markets/RETH-ARBITRUM-JUNE2025.json +0 -10
  638. package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2024.json +0 -10
  639. package/deployments/42161-markets/WSTETH-ARBITRUM-JUNE2025.json +0 -10
  640. package/deployments/56-core.json +0 -28
  641. package/deployments/56-markets/THENA-FRXETH-ETH-JUNE2024.json +0 -10
  642. package/deployments/56-markets/WBETH-DEC2024.json +0 -10
  643. package/deployments/56-offchain-helper.json +0 -4
  644. package/typechain-types/BotActionCallback.ts +0 -763
  645. package/typechain-types/BotActionHelper.ts +0 -763
  646. package/typechain-types/BotDecisionHelper.ts +0 -527
  647. package/typechain-types/BotDecisionLib.ts +0 -335
  648. package/typechain-types/CamelotV1LpHelper.ts +0 -203
  649. package/typechain-types/IExecutorHelper1.ts +0 -643
  650. package/typechain-types/IExecutorHelperEthereum1.ts +0 -643
  651. package/typechain-types/PendleSwapArbitrum.ts +0 -126
  652. package/typechain-types/PendleSwapEthereum.ts +0 -126
  653. package/typechain-types/TradingBotOffchain.ts +0 -568
  654. package/typechain-types/factories/BotActionCallback__factory.ts +0 -678
  655. package/typechain-types/factories/BotActionHelper__factory.ts +0 -678
  656. package/typechain-types/factories/BotDecisionHelper__factory.ts +0 -1123
  657. package/typechain-types/factories/BotDecisionLib__factory.ts +0 -642
  658. package/typechain-types/factories/CamelotV1Preview__factory.ts +0 -309
  659. package/typechain-types/factories/IExecutorHelper1__factory.ts +0 -403
  660. package/typechain-types/factories/IExecutorHelperEthereum1__factory.ts +0 -407
  661. package/typechain-types/factories/PendleBinanceEth__factory.ts +0 -1052
  662. package/typechain-types/factories/PendleCamelotV1SY__factory.ts +0 -1595
  663. package/typechain-types/factories/PendleSwapArbitrum__factory.ts +0 -129
  664. package/typechain-types/factories/PendleSwapEthereum__factory.ts +0 -129
  665. package/typechain-types/factories/TradingBotOffchain__factory.ts +0 -1133
@@ -0,0 +1,1512 @@
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 {
7
+ PendleKyberElasticSY,
8
+ PendleKyberElasticSYInterface,
9
+ KyberNftManagerBase,
10
+ } from "../PendleKyberElasticSY";
11
+
12
+ const _abi = [
13
+ {
14
+ inputs: [
15
+ {
16
+ components: [
17
+ {
18
+ internalType: "address",
19
+ name: "pool",
20
+ type: "address",
21
+ },
22
+ {
23
+ internalType: "int24",
24
+ name: "tickLower",
25
+ type: "int24",
26
+ },
27
+ {
28
+ internalType: "int24",
29
+ name: "tickUpper",
30
+ type: "int24",
31
+ },
32
+ {
33
+ internalType: "address",
34
+ name: "positionManager",
35
+ type: "address",
36
+ },
37
+ {
38
+ internalType: "address",
39
+ name: "router",
40
+ type: "address",
41
+ },
42
+ {
43
+ internalType: "address",
44
+ name: "factory",
45
+ type: "address",
46
+ },
47
+ {
48
+ internalType: "address",
49
+ name: "liquidityMining",
50
+ type: "address",
51
+ },
52
+ {
53
+ internalType: "uint256",
54
+ name: "farmId",
55
+ type: "uint256",
56
+ },
57
+ {
58
+ internalType: "uint256",
59
+ name: "rangeId",
60
+ type: "uint256",
61
+ },
62
+ {
63
+ internalType: "address",
64
+ name: "kyberMathHelper",
65
+ type: "address",
66
+ },
67
+ ],
68
+ internalType:
69
+ "struct KyberNftManagerBase.KyberNftManagerConstructorParams",
70
+ name: "params",
71
+ type: "tuple",
72
+ },
73
+ {
74
+ internalType: "address[]",
75
+ name: "_initialRewardTokens",
76
+ type: "address[]",
77
+ },
78
+ ],
79
+ stateMutability: "nonpayable",
80
+ type: "constructor",
81
+ },
82
+ {
83
+ inputs: [
84
+ {
85
+ internalType: "uint256",
86
+ name: "tokenId",
87
+ type: "uint256",
88
+ },
89
+ ],
90
+ name: "InvalidNft",
91
+ type: "error",
92
+ },
93
+ {
94
+ inputs: [
95
+ {
96
+ internalType: "uint256",
97
+ name: "actualSharesOut",
98
+ type: "uint256",
99
+ },
100
+ {
101
+ internalType: "uint256",
102
+ name: "requiredSharesOut",
103
+ type: "uint256",
104
+ },
105
+ ],
106
+ name: "SYInsufficientSharesOut",
107
+ type: "error",
108
+ },
109
+ {
110
+ inputs: [
111
+ {
112
+ internalType: "uint256",
113
+ name: "actualTokenOut",
114
+ type: "uint256",
115
+ },
116
+ {
117
+ internalType: "uint256",
118
+ name: "requiredTokenOut",
119
+ type: "uint256",
120
+ },
121
+ ],
122
+ name: "SYInsufficientTokenOut",
123
+ type: "error",
124
+ },
125
+ {
126
+ inputs: [
127
+ {
128
+ internalType: "address",
129
+ name: "token",
130
+ type: "address",
131
+ },
132
+ ],
133
+ name: "SYInvalidTokenIn",
134
+ type: "error",
135
+ },
136
+ {
137
+ inputs: [
138
+ {
139
+ internalType: "address",
140
+ name: "token",
141
+ type: "address",
142
+ },
143
+ ],
144
+ name: "SYInvalidTokenOut",
145
+ type: "error",
146
+ },
147
+ {
148
+ inputs: [],
149
+ name: "SYZeroDeposit",
150
+ type: "error",
151
+ },
152
+ {
153
+ inputs: [],
154
+ name: "SYZeroRedeem",
155
+ type: "error",
156
+ },
157
+ {
158
+ anonymous: false,
159
+ inputs: [
160
+ {
161
+ indexed: true,
162
+ internalType: "address",
163
+ name: "owner",
164
+ type: "address",
165
+ },
166
+ {
167
+ indexed: true,
168
+ internalType: "address",
169
+ name: "spender",
170
+ type: "address",
171
+ },
172
+ {
173
+ indexed: false,
174
+ internalType: "uint256",
175
+ name: "value",
176
+ type: "uint256",
177
+ },
178
+ ],
179
+ name: "Approval",
180
+ type: "event",
181
+ },
182
+ {
183
+ anonymous: false,
184
+ inputs: [
185
+ {
186
+ indexed: true,
187
+ internalType: "address",
188
+ name: "user",
189
+ type: "address",
190
+ },
191
+ {
192
+ indexed: false,
193
+ internalType: "address[]",
194
+ name: "rewardTokens",
195
+ type: "address[]",
196
+ },
197
+ {
198
+ indexed: false,
199
+ internalType: "uint256[]",
200
+ name: "rewardAmounts",
201
+ type: "uint256[]",
202
+ },
203
+ ],
204
+ name: "ClaimRewards",
205
+ type: "event",
206
+ },
207
+ {
208
+ anonymous: false,
209
+ inputs: [
210
+ {
211
+ indexed: true,
212
+ internalType: "address",
213
+ name: "caller",
214
+ type: "address",
215
+ },
216
+ {
217
+ indexed: true,
218
+ internalType: "address",
219
+ name: "receiver",
220
+ type: "address",
221
+ },
222
+ {
223
+ indexed: true,
224
+ internalType: "address",
225
+ name: "tokenIn",
226
+ type: "address",
227
+ },
228
+ {
229
+ indexed: false,
230
+ internalType: "uint256",
231
+ name: "amountDeposited",
232
+ type: "uint256",
233
+ },
234
+ {
235
+ indexed: false,
236
+ internalType: "uint256",
237
+ name: "amountSyOut",
238
+ type: "uint256",
239
+ },
240
+ ],
241
+ name: "Deposit",
242
+ type: "event",
243
+ },
244
+ {
245
+ anonymous: false,
246
+ inputs: [
247
+ {
248
+ indexed: true,
249
+ internalType: "address",
250
+ name: "user",
251
+ type: "address",
252
+ },
253
+ {
254
+ indexed: true,
255
+ internalType: "uint256",
256
+ name: "tokenId",
257
+ type: "uint256",
258
+ },
259
+ {
260
+ indexed: false,
261
+ internalType: "uint256",
262
+ name: "amountSharesOut",
263
+ type: "uint256",
264
+ },
265
+ ],
266
+ name: "DepositNft",
267
+ type: "event",
268
+ },
269
+ {
270
+ anonymous: false,
271
+ inputs: [
272
+ {
273
+ indexed: false,
274
+ internalType: "uint8",
275
+ name: "version",
276
+ type: "uint8",
277
+ },
278
+ ],
279
+ name: "Initialized",
280
+ type: "event",
281
+ },
282
+ {
283
+ anonymous: false,
284
+ inputs: [
285
+ {
286
+ indexed: true,
287
+ internalType: "address",
288
+ name: "previousOwner",
289
+ type: "address",
290
+ },
291
+ {
292
+ indexed: true,
293
+ internalType: "address",
294
+ name: "newOwner",
295
+ type: "address",
296
+ },
297
+ ],
298
+ name: "OwnershipTransferred",
299
+ type: "event",
300
+ },
301
+ {
302
+ anonymous: false,
303
+ inputs: [
304
+ {
305
+ indexed: false,
306
+ internalType: "address",
307
+ name: "account",
308
+ type: "address",
309
+ },
310
+ ],
311
+ name: "Paused",
312
+ type: "event",
313
+ },
314
+ {
315
+ anonymous: false,
316
+ inputs: [
317
+ {
318
+ indexed: true,
319
+ internalType: "address",
320
+ name: "caller",
321
+ type: "address",
322
+ },
323
+ {
324
+ indexed: true,
325
+ internalType: "address",
326
+ name: "receiver",
327
+ type: "address",
328
+ },
329
+ {
330
+ indexed: true,
331
+ internalType: "address",
332
+ name: "tokenOut",
333
+ type: "address",
334
+ },
335
+ {
336
+ indexed: false,
337
+ internalType: "uint256",
338
+ name: "amountSyToRedeem",
339
+ type: "uint256",
340
+ },
341
+ {
342
+ indexed: false,
343
+ internalType: "uint256",
344
+ name: "amountTokenOut",
345
+ type: "uint256",
346
+ },
347
+ ],
348
+ name: "Redeem",
349
+ type: "event",
350
+ },
351
+ {
352
+ anonymous: false,
353
+ inputs: [
354
+ {
355
+ indexed: true,
356
+ internalType: "address",
357
+ name: "from",
358
+ type: "address",
359
+ },
360
+ {
361
+ indexed: true,
362
+ internalType: "address",
363
+ name: "to",
364
+ type: "address",
365
+ },
366
+ {
367
+ indexed: false,
368
+ internalType: "uint256",
369
+ name: "value",
370
+ type: "uint256",
371
+ },
372
+ ],
373
+ name: "Transfer",
374
+ type: "event",
375
+ },
376
+ {
377
+ anonymous: false,
378
+ inputs: [
379
+ {
380
+ indexed: false,
381
+ internalType: "address",
382
+ name: "account",
383
+ type: "address",
384
+ },
385
+ ],
386
+ name: "Unpaused",
387
+ type: "event",
388
+ },
389
+ {
390
+ anonymous: false,
391
+ inputs: [
392
+ {
393
+ indexed: true,
394
+ internalType: "address",
395
+ name: "user",
396
+ type: "address",
397
+ },
398
+ {
399
+ indexed: true,
400
+ internalType: "uint256",
401
+ name: "tokenId",
402
+ type: "uint256",
403
+ },
404
+ {
405
+ indexed: false,
406
+ internalType: "uint256",
407
+ name: "amountSharesToWithdraw",
408
+ type: "uint256",
409
+ },
410
+ ],
411
+ name: "WithdrawNft",
412
+ type: "event",
413
+ },
414
+ {
415
+ inputs: [],
416
+ name: "DEFAULT_POSITION_TOKEN_ID",
417
+ outputs: [
418
+ {
419
+ internalType: "uint256",
420
+ name: "",
421
+ type: "uint256",
422
+ },
423
+ ],
424
+ stateMutability: "view",
425
+ type: "function",
426
+ },
427
+ {
428
+ inputs: [],
429
+ name: "DOMAIN_SEPARATOR",
430
+ outputs: [
431
+ {
432
+ internalType: "bytes32",
433
+ name: "",
434
+ type: "bytes32",
435
+ },
436
+ ],
437
+ stateMutability: "view",
438
+ type: "function",
439
+ },
440
+ {
441
+ inputs: [],
442
+ name: "MINIMUM_LIQUIDITY",
443
+ outputs: [
444
+ {
445
+ internalType: "uint256",
446
+ name: "",
447
+ type: "uint256",
448
+ },
449
+ ],
450
+ stateMutability: "view",
451
+ type: "function",
452
+ },
453
+ {
454
+ inputs: [
455
+ {
456
+ internalType: "address",
457
+ name: "user",
458
+ type: "address",
459
+ },
460
+ ],
461
+ name: "accruedRewards",
462
+ outputs: [
463
+ {
464
+ internalType: "uint256[]",
465
+ name: "rewardAmounts",
466
+ type: "uint256[]",
467
+ },
468
+ ],
469
+ stateMutability: "view",
470
+ type: "function",
471
+ },
472
+ {
473
+ inputs: [
474
+ {
475
+ internalType: "address",
476
+ name: "rewardToken",
477
+ type: "address",
478
+ },
479
+ ],
480
+ name: "addRewardToken",
481
+ outputs: [],
482
+ stateMutability: "nonpayable",
483
+ type: "function",
484
+ },
485
+ {
486
+ inputs: [
487
+ {
488
+ internalType: "uint256",
489
+ name: "",
490
+ type: "uint256",
491
+ },
492
+ ],
493
+ name: "allRewardTokens",
494
+ outputs: [
495
+ {
496
+ internalType: "address",
497
+ name: "",
498
+ type: "address",
499
+ },
500
+ ],
501
+ stateMutability: "view",
502
+ type: "function",
503
+ },
504
+ {
505
+ inputs: [
506
+ {
507
+ internalType: "address",
508
+ name: "owner",
509
+ type: "address",
510
+ },
511
+ {
512
+ internalType: "address",
513
+ name: "spender",
514
+ type: "address",
515
+ },
516
+ ],
517
+ name: "allowance",
518
+ outputs: [
519
+ {
520
+ internalType: "uint256",
521
+ name: "",
522
+ type: "uint256",
523
+ },
524
+ ],
525
+ stateMutability: "view",
526
+ type: "function",
527
+ },
528
+ {
529
+ inputs: [
530
+ {
531
+ internalType: "address",
532
+ name: "spender",
533
+ type: "address",
534
+ },
535
+ {
536
+ internalType: "uint256",
537
+ name: "amount",
538
+ type: "uint256",
539
+ },
540
+ ],
541
+ name: "approve",
542
+ outputs: [
543
+ {
544
+ internalType: "bool",
545
+ name: "",
546
+ type: "bool",
547
+ },
548
+ ],
549
+ stateMutability: "nonpayable",
550
+ type: "function",
551
+ },
552
+ {
553
+ inputs: [],
554
+ name: "assetInfo",
555
+ outputs: [
556
+ {
557
+ internalType: "enum IStandardizedYield.AssetType",
558
+ name: "assetType",
559
+ type: "uint8",
560
+ },
561
+ {
562
+ internalType: "address",
563
+ name: "assetAddress",
564
+ type: "address",
565
+ },
566
+ {
567
+ internalType: "uint8",
568
+ name: "assetDecimals",
569
+ type: "uint8",
570
+ },
571
+ ],
572
+ stateMutability: "view",
573
+ type: "function",
574
+ },
575
+ {
576
+ inputs: [
577
+ {
578
+ internalType: "address",
579
+ name: "account",
580
+ type: "address",
581
+ },
582
+ ],
583
+ name: "balanceOf",
584
+ outputs: [
585
+ {
586
+ internalType: "uint256",
587
+ name: "",
588
+ type: "uint256",
589
+ },
590
+ ],
591
+ stateMutability: "view",
592
+ type: "function",
593
+ },
594
+ {
595
+ inputs: [],
596
+ name: "claimOwnership",
597
+ outputs: [],
598
+ stateMutability: "nonpayable",
599
+ type: "function",
600
+ },
601
+ {
602
+ inputs: [
603
+ {
604
+ internalType: "address",
605
+ name: "user",
606
+ type: "address",
607
+ },
608
+ ],
609
+ name: "claimRewards",
610
+ outputs: [
611
+ {
612
+ internalType: "uint256[]",
613
+ name: "rewardAmounts",
614
+ type: "uint256[]",
615
+ },
616
+ ],
617
+ stateMutability: "nonpayable",
618
+ type: "function",
619
+ },
620
+ {
621
+ inputs: [],
622
+ name: "decimals",
623
+ outputs: [
624
+ {
625
+ internalType: "uint8",
626
+ name: "",
627
+ type: "uint8",
628
+ },
629
+ ],
630
+ stateMutability: "view",
631
+ type: "function",
632
+ },
633
+ {
634
+ inputs: [
635
+ {
636
+ internalType: "address",
637
+ name: "receiver",
638
+ type: "address",
639
+ },
640
+ {
641
+ internalType: "address",
642
+ name: "tokenIn",
643
+ type: "address",
644
+ },
645
+ {
646
+ internalType: "uint256",
647
+ name: "amountTokenToDeposit",
648
+ type: "uint256",
649
+ },
650
+ {
651
+ internalType: "uint256",
652
+ name: "minSharesOut",
653
+ type: "uint256",
654
+ },
655
+ ],
656
+ name: "deposit",
657
+ outputs: [
658
+ {
659
+ internalType: "uint256",
660
+ name: "amountSharesOut",
661
+ type: "uint256",
662
+ },
663
+ ],
664
+ stateMutability: "payable",
665
+ type: "function",
666
+ },
667
+ {
668
+ inputs: [
669
+ {
670
+ internalType: "uint256",
671
+ name: "tokenId",
672
+ type: "uint256",
673
+ },
674
+ ],
675
+ name: "depositNft",
676
+ outputs: [
677
+ {
678
+ internalType: "uint256",
679
+ name: "amountSharesOut",
680
+ type: "uint256",
681
+ },
682
+ ],
683
+ stateMutability: "nonpayable",
684
+ type: "function",
685
+ },
686
+ {
687
+ inputs: [],
688
+ name: "exchangeRate",
689
+ outputs: [
690
+ {
691
+ internalType: "uint256",
692
+ name: "",
693
+ type: "uint256",
694
+ },
695
+ ],
696
+ stateMutability: "view",
697
+ type: "function",
698
+ },
699
+ {
700
+ inputs: [],
701
+ name: "factory",
702
+ outputs: [
703
+ {
704
+ internalType: "address",
705
+ name: "",
706
+ type: "address",
707
+ },
708
+ ],
709
+ stateMutability: "view",
710
+ type: "function",
711
+ },
712
+ {
713
+ inputs: [],
714
+ name: "farmId",
715
+ outputs: [
716
+ {
717
+ internalType: "uint256",
718
+ name: "",
719
+ type: "uint256",
720
+ },
721
+ ],
722
+ stateMutability: "view",
723
+ type: "function",
724
+ },
725
+ {
726
+ inputs: [],
727
+ name: "fee",
728
+ outputs: [
729
+ {
730
+ internalType: "uint24",
731
+ name: "",
732
+ type: "uint24",
733
+ },
734
+ ],
735
+ stateMutability: "view",
736
+ type: "function",
737
+ },
738
+ {
739
+ inputs: [],
740
+ name: "getRewardTokens",
741
+ outputs: [
742
+ {
743
+ internalType: "address[]",
744
+ name: "rewardTokens",
745
+ type: "address[]",
746
+ },
747
+ ],
748
+ stateMutability: "view",
749
+ type: "function",
750
+ },
751
+ {
752
+ inputs: [],
753
+ name: "getTokensIn",
754
+ outputs: [
755
+ {
756
+ internalType: "address[]",
757
+ name: "res",
758
+ type: "address[]",
759
+ },
760
+ ],
761
+ stateMutability: "view",
762
+ type: "function",
763
+ },
764
+ {
765
+ inputs: [],
766
+ name: "getTokensOut",
767
+ outputs: [
768
+ {
769
+ internalType: "address[]",
770
+ name: "res",
771
+ type: "address[]",
772
+ },
773
+ ],
774
+ stateMutability: "view",
775
+ type: "function",
776
+ },
777
+ {
778
+ inputs: [
779
+ {
780
+ internalType: "address",
781
+ name: "token",
782
+ type: "address",
783
+ },
784
+ ],
785
+ name: "isValidTokenIn",
786
+ outputs: [
787
+ {
788
+ internalType: "bool",
789
+ name: "",
790
+ type: "bool",
791
+ },
792
+ ],
793
+ stateMutability: "view",
794
+ type: "function",
795
+ },
796
+ {
797
+ inputs: [
798
+ {
799
+ internalType: "address",
800
+ name: "token",
801
+ type: "address",
802
+ },
803
+ ],
804
+ name: "isValidTokenOut",
805
+ outputs: [
806
+ {
807
+ internalType: "bool",
808
+ name: "",
809
+ type: "bool",
810
+ },
811
+ ],
812
+ stateMutability: "view",
813
+ type: "function",
814
+ },
815
+ {
816
+ inputs: [],
817
+ name: "kyberMathHelper",
818
+ outputs: [
819
+ {
820
+ internalType: "address",
821
+ name: "",
822
+ type: "address",
823
+ },
824
+ ],
825
+ stateMutability: "view",
826
+ type: "function",
827
+ },
828
+ {
829
+ inputs: [],
830
+ name: "lastRewardBlock",
831
+ outputs: [
832
+ {
833
+ internalType: "uint256",
834
+ name: "",
835
+ type: "uint256",
836
+ },
837
+ ],
838
+ stateMutability: "view",
839
+ type: "function",
840
+ },
841
+ {
842
+ inputs: [],
843
+ name: "liquidityMining",
844
+ outputs: [
845
+ {
846
+ internalType: "address",
847
+ name: "",
848
+ type: "address",
849
+ },
850
+ ],
851
+ stateMutability: "view",
852
+ type: "function",
853
+ },
854
+ {
855
+ inputs: [],
856
+ name: "name",
857
+ outputs: [
858
+ {
859
+ internalType: "string",
860
+ name: "",
861
+ type: "string",
862
+ },
863
+ ],
864
+ stateMutability: "view",
865
+ type: "function",
866
+ },
867
+ {
868
+ inputs: [
869
+ {
870
+ internalType: "address",
871
+ name: "owner",
872
+ type: "address",
873
+ },
874
+ ],
875
+ name: "nonces",
876
+ outputs: [
877
+ {
878
+ internalType: "uint256",
879
+ name: "",
880
+ type: "uint256",
881
+ },
882
+ ],
883
+ stateMutability: "view",
884
+ type: "function",
885
+ },
886
+ {
887
+ inputs: [
888
+ {
889
+ internalType: "address",
890
+ name: "",
891
+ type: "address",
892
+ },
893
+ {
894
+ internalType: "address",
895
+ name: "",
896
+ type: "address",
897
+ },
898
+ {
899
+ internalType: "uint256",
900
+ name: "",
901
+ type: "uint256",
902
+ },
903
+ {
904
+ internalType: "bytes",
905
+ name: "",
906
+ type: "bytes",
907
+ },
908
+ ],
909
+ name: "onERC721Received",
910
+ outputs: [
911
+ {
912
+ internalType: "bytes4",
913
+ name: "",
914
+ type: "bytes4",
915
+ },
916
+ ],
917
+ stateMutability: "pure",
918
+ type: "function",
919
+ },
920
+ {
921
+ inputs: [],
922
+ name: "owner",
923
+ outputs: [
924
+ {
925
+ internalType: "address",
926
+ name: "",
927
+ type: "address",
928
+ },
929
+ ],
930
+ stateMutability: "view",
931
+ type: "function",
932
+ },
933
+ {
934
+ inputs: [],
935
+ name: "pause",
936
+ outputs: [],
937
+ stateMutability: "nonpayable",
938
+ type: "function",
939
+ },
940
+ {
941
+ inputs: [],
942
+ name: "paused",
943
+ outputs: [
944
+ {
945
+ internalType: "bool",
946
+ name: "",
947
+ type: "bool",
948
+ },
949
+ ],
950
+ stateMutability: "view",
951
+ type: "function",
952
+ },
953
+ {
954
+ inputs: [],
955
+ name: "pendingOwner",
956
+ outputs: [
957
+ {
958
+ internalType: "address",
959
+ name: "",
960
+ type: "address",
961
+ },
962
+ ],
963
+ stateMutability: "view",
964
+ type: "function",
965
+ },
966
+ {
967
+ inputs: [
968
+ {
969
+ internalType: "address",
970
+ name: "owner",
971
+ type: "address",
972
+ },
973
+ {
974
+ internalType: "address",
975
+ name: "spender",
976
+ type: "address",
977
+ },
978
+ {
979
+ internalType: "uint256",
980
+ name: "value",
981
+ type: "uint256",
982
+ },
983
+ {
984
+ internalType: "uint256",
985
+ name: "deadline",
986
+ type: "uint256",
987
+ },
988
+ {
989
+ internalType: "uint8",
990
+ name: "v",
991
+ type: "uint8",
992
+ },
993
+ {
994
+ internalType: "bytes32",
995
+ name: "r",
996
+ type: "bytes32",
997
+ },
998
+ {
999
+ internalType: "bytes32",
1000
+ name: "s",
1001
+ type: "bytes32",
1002
+ },
1003
+ ],
1004
+ name: "permit",
1005
+ outputs: [],
1006
+ stateMutability: "nonpayable",
1007
+ type: "function",
1008
+ },
1009
+ {
1010
+ inputs: [],
1011
+ name: "pool",
1012
+ outputs: [
1013
+ {
1014
+ internalType: "address",
1015
+ name: "",
1016
+ type: "address",
1017
+ },
1018
+ ],
1019
+ stateMutability: "view",
1020
+ type: "function",
1021
+ },
1022
+ {
1023
+ inputs: [],
1024
+ name: "positionManager",
1025
+ outputs: [
1026
+ {
1027
+ internalType: "address",
1028
+ name: "",
1029
+ type: "address",
1030
+ },
1031
+ ],
1032
+ stateMutability: "view",
1033
+ type: "function",
1034
+ },
1035
+ {
1036
+ inputs: [],
1037
+ name: "positionTokenId",
1038
+ outputs: [
1039
+ {
1040
+ internalType: "uint256",
1041
+ name: "",
1042
+ type: "uint256",
1043
+ },
1044
+ ],
1045
+ stateMutability: "view",
1046
+ type: "function",
1047
+ },
1048
+ {
1049
+ inputs: [
1050
+ {
1051
+ internalType: "address",
1052
+ name: "tokenIn",
1053
+ type: "address",
1054
+ },
1055
+ {
1056
+ internalType: "uint256",
1057
+ name: "amountTokenToDeposit",
1058
+ type: "uint256",
1059
+ },
1060
+ ],
1061
+ name: "previewDeposit",
1062
+ outputs: [
1063
+ {
1064
+ internalType: "uint256",
1065
+ name: "amountSharesOut",
1066
+ type: "uint256",
1067
+ },
1068
+ ],
1069
+ stateMutability: "view",
1070
+ type: "function",
1071
+ },
1072
+ {
1073
+ inputs: [
1074
+ {
1075
+ internalType: "address",
1076
+ name: "tokenOut",
1077
+ type: "address",
1078
+ },
1079
+ {
1080
+ internalType: "uint256",
1081
+ name: "amountSharesToRedeem",
1082
+ type: "uint256",
1083
+ },
1084
+ ],
1085
+ name: "previewRedeem",
1086
+ outputs: [
1087
+ {
1088
+ internalType: "uint256",
1089
+ name: "amountTokenOut",
1090
+ type: "uint256",
1091
+ },
1092
+ ],
1093
+ stateMutability: "view",
1094
+ type: "function",
1095
+ },
1096
+ {
1097
+ inputs: [],
1098
+ name: "rangeId",
1099
+ outputs: [
1100
+ {
1101
+ internalType: "uint256",
1102
+ name: "",
1103
+ type: "uint256",
1104
+ },
1105
+ ],
1106
+ stateMutability: "view",
1107
+ type: "function",
1108
+ },
1109
+ {
1110
+ inputs: [
1111
+ {
1112
+ internalType: "address",
1113
+ name: "receiver",
1114
+ type: "address",
1115
+ },
1116
+ {
1117
+ internalType: "uint256",
1118
+ name: "amountSharesToRedeem",
1119
+ type: "uint256",
1120
+ },
1121
+ {
1122
+ internalType: "address",
1123
+ name: "tokenOut",
1124
+ type: "address",
1125
+ },
1126
+ {
1127
+ internalType: "uint256",
1128
+ name: "minTokenOut",
1129
+ type: "uint256",
1130
+ },
1131
+ {
1132
+ internalType: "bool",
1133
+ name: "burnFromInternalBalance",
1134
+ type: "bool",
1135
+ },
1136
+ ],
1137
+ name: "redeem",
1138
+ outputs: [
1139
+ {
1140
+ internalType: "uint256",
1141
+ name: "amountTokenOut",
1142
+ type: "uint256",
1143
+ },
1144
+ ],
1145
+ stateMutability: "nonpayable",
1146
+ type: "function",
1147
+ },
1148
+ {
1149
+ inputs: [],
1150
+ name: "rewardIndexesCurrent",
1151
+ outputs: [
1152
+ {
1153
+ internalType: "uint256[]",
1154
+ name: "indexes",
1155
+ type: "uint256[]",
1156
+ },
1157
+ ],
1158
+ stateMutability: "nonpayable",
1159
+ type: "function",
1160
+ },
1161
+ {
1162
+ inputs: [],
1163
+ name: "rewardIndexesStored",
1164
+ outputs: [
1165
+ {
1166
+ internalType: "uint256[]",
1167
+ name: "indexes",
1168
+ type: "uint256[]",
1169
+ },
1170
+ ],
1171
+ stateMutability: "view",
1172
+ type: "function",
1173
+ },
1174
+ {
1175
+ inputs: [
1176
+ {
1177
+ internalType: "address",
1178
+ name: "",
1179
+ type: "address",
1180
+ },
1181
+ ],
1182
+ name: "rewardState",
1183
+ outputs: [
1184
+ {
1185
+ internalType: "uint128",
1186
+ name: "index",
1187
+ type: "uint128",
1188
+ },
1189
+ {
1190
+ internalType: "uint128",
1191
+ name: "lastBalance",
1192
+ type: "uint128",
1193
+ },
1194
+ ],
1195
+ stateMutability: "view",
1196
+ type: "function",
1197
+ },
1198
+ {
1199
+ inputs: [],
1200
+ name: "router",
1201
+ outputs: [
1202
+ {
1203
+ internalType: "address",
1204
+ name: "",
1205
+ type: "address",
1206
+ },
1207
+ ],
1208
+ stateMutability: "view",
1209
+ type: "function",
1210
+ },
1211
+ {
1212
+ inputs: [],
1213
+ name: "symbol",
1214
+ outputs: [
1215
+ {
1216
+ internalType: "string",
1217
+ name: "",
1218
+ type: "string",
1219
+ },
1220
+ ],
1221
+ stateMutability: "view",
1222
+ type: "function",
1223
+ },
1224
+ {
1225
+ inputs: [],
1226
+ name: "tickLower",
1227
+ outputs: [
1228
+ {
1229
+ internalType: "int24",
1230
+ name: "",
1231
+ type: "int24",
1232
+ },
1233
+ ],
1234
+ stateMutability: "view",
1235
+ type: "function",
1236
+ },
1237
+ {
1238
+ inputs: [],
1239
+ name: "tickUpper",
1240
+ outputs: [
1241
+ {
1242
+ internalType: "int24",
1243
+ name: "",
1244
+ type: "int24",
1245
+ },
1246
+ ],
1247
+ stateMutability: "view",
1248
+ type: "function",
1249
+ },
1250
+ {
1251
+ inputs: [],
1252
+ name: "toggleEmergencyStatus",
1253
+ outputs: [],
1254
+ stateMutability: "nonpayable",
1255
+ type: "function",
1256
+ },
1257
+ {
1258
+ inputs: [],
1259
+ name: "token0",
1260
+ outputs: [
1261
+ {
1262
+ internalType: "address",
1263
+ name: "",
1264
+ type: "address",
1265
+ },
1266
+ ],
1267
+ stateMutability: "view",
1268
+ type: "function",
1269
+ },
1270
+ {
1271
+ inputs: [],
1272
+ name: "token1",
1273
+ outputs: [
1274
+ {
1275
+ internalType: "address",
1276
+ name: "",
1277
+ type: "address",
1278
+ },
1279
+ ],
1280
+ stateMutability: "view",
1281
+ type: "function",
1282
+ },
1283
+ {
1284
+ inputs: [],
1285
+ name: "totalSupply",
1286
+ outputs: [
1287
+ {
1288
+ internalType: "uint256",
1289
+ name: "",
1290
+ type: "uint256",
1291
+ },
1292
+ ],
1293
+ stateMutability: "view",
1294
+ type: "function",
1295
+ },
1296
+ {
1297
+ inputs: [
1298
+ {
1299
+ internalType: "address",
1300
+ name: "to",
1301
+ type: "address",
1302
+ },
1303
+ {
1304
+ internalType: "uint256",
1305
+ name: "amount",
1306
+ type: "uint256",
1307
+ },
1308
+ ],
1309
+ name: "transfer",
1310
+ outputs: [
1311
+ {
1312
+ internalType: "bool",
1313
+ name: "",
1314
+ type: "bool",
1315
+ },
1316
+ ],
1317
+ stateMutability: "nonpayable",
1318
+ type: "function",
1319
+ },
1320
+ {
1321
+ inputs: [
1322
+ {
1323
+ internalType: "address",
1324
+ name: "from",
1325
+ type: "address",
1326
+ },
1327
+ {
1328
+ internalType: "address",
1329
+ name: "to",
1330
+ type: "address",
1331
+ },
1332
+ {
1333
+ internalType: "uint256",
1334
+ name: "amount",
1335
+ type: "uint256",
1336
+ },
1337
+ ],
1338
+ name: "transferFrom",
1339
+ outputs: [
1340
+ {
1341
+ internalType: "bool",
1342
+ name: "",
1343
+ type: "bool",
1344
+ },
1345
+ ],
1346
+ stateMutability: "nonpayable",
1347
+ type: "function",
1348
+ },
1349
+ {
1350
+ inputs: [
1351
+ {
1352
+ internalType: "address",
1353
+ name: "newOwner",
1354
+ type: "address",
1355
+ },
1356
+ {
1357
+ internalType: "bool",
1358
+ name: "direct",
1359
+ type: "bool",
1360
+ },
1361
+ {
1362
+ internalType: "bool",
1363
+ name: "renounce",
1364
+ type: "bool",
1365
+ },
1366
+ ],
1367
+ name: "transferOwnership",
1368
+ outputs: [],
1369
+ stateMutability: "nonpayable",
1370
+ type: "function",
1371
+ },
1372
+ {
1373
+ inputs: [],
1374
+ name: "unpause",
1375
+ outputs: [],
1376
+ stateMutability: "nonpayable",
1377
+ type: "function",
1378
+ },
1379
+ {
1380
+ inputs: [
1381
+ {
1382
+ internalType: "address",
1383
+ name: "",
1384
+ type: "address",
1385
+ },
1386
+ {
1387
+ internalType: "address",
1388
+ name: "",
1389
+ type: "address",
1390
+ },
1391
+ ],
1392
+ name: "userReward",
1393
+ outputs: [
1394
+ {
1395
+ internalType: "uint128",
1396
+ name: "index",
1397
+ type: "uint128",
1398
+ },
1399
+ {
1400
+ internalType: "uint128",
1401
+ name: "accrued",
1402
+ type: "uint128",
1403
+ },
1404
+ ],
1405
+ stateMutability: "view",
1406
+ type: "function",
1407
+ },
1408
+ {
1409
+ inputs: [
1410
+ {
1411
+ internalType: "uint256",
1412
+ name: "amountSharesToWithdraw",
1413
+ type: "uint256",
1414
+ },
1415
+ ],
1416
+ name: "withdrawNft",
1417
+ outputs: [
1418
+ {
1419
+ internalType: "uint256",
1420
+ name: "tokenId",
1421
+ type: "uint256",
1422
+ },
1423
+ ],
1424
+ stateMutability: "nonpayable",
1425
+ type: "function",
1426
+ },
1427
+ {
1428
+ inputs: [],
1429
+ name: "yieldToken",
1430
+ outputs: [
1431
+ {
1432
+ internalType: "address",
1433
+ name: "",
1434
+ type: "address",
1435
+ },
1436
+ ],
1437
+ stateMutability: "view",
1438
+ type: "function",
1439
+ },
1440
+ {
1441
+ stateMutability: "payable",
1442
+ type: "receive",
1443
+ },
1444
+ ];
1445
+
1446
+ const _bytecode =
1447
+ "0x6103206040526000196006553480156200001857600080fd5b50604051620076df380380620076df8339810160408190526200003b9162000bb8565b604051806040016040528060118152602001704b7962657220506f736974696f6e20535960781b815250604051806040016040528060048152602001634b50535960e01b8152508360000151828282878383836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000cc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000f2919062000cc7565b6040805180820190915260018152603160f81b6020820152839081848460036200011d848262000d82565b5060046200012c838262000d82565b5060ff166080525050600280546001600160f81b0316600160f81b17905581516020808401919091208251918301919091206101008290526101208190524660c0527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f620001df8184846040805160208101859052908101839052606081018290524660808201523060a082015260009060c0016040516020818303038152906040528051906020012090509392505050565b60a09081523060e09081526101409290925289516001600160a01b039081166101605260208b018051600290810b6101805260408d01805190910b6101a05260608d015183166101c05260808d015183166101e052928c015182166102005260c08c018051831661022052938c018051610240526101008d018051610260526101208e01519093166102e0528c5191519351945190519251620002939c50919a5092985092965090945092509050620005ee565b610160516001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fb919062000e4e565b6001600160a01b0316610280816001600160a01b031681525050610160516001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000357573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037d919062000e4e565b6001600160a01b03166102a0816001600160a01b031681525050610160516001600160a01b031663c79a590e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003ff919062000e6c565b62ffffff166102c052610280516101c0516200041c919062000731565b620004346102a0516101c0516200073160201b60201c565b6200044c610280516101e0516200073160201b60201c565b620004646102a0516101e0516200073160201b60201c565b506039805460ff19169055600854600160a81b900460ff16158080156200049857506008546001600160a01b90910460ff16105b80620004cf5750620004b5306200080060201b62001b851760201c565b158015620004cf5750600854600160a01b900460ff166001145b620005385760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6008805460ff60a01b1916600160a01b179055801562000566576008805460ff60a81b1916600160a81b1790555b6001600160a01b038216610300526200057e6200080f565b8015620005c7576008805460ff60a81b19169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50508551620005e59550603d94506020870193509150620009a69050565b50505062001275565b6040516353fd88bf60e01b81526004810183905260009081906001600160a01b038616906353fd88bf90602401600060405180830381865afa15801562000639573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000663919081019062001029565b505050505091509150816001600160a01b0316886001600160a01b0316148015620006b357508083815181106200069e576200069e620011c1565b60200260200101516000015160020b8760020b145b8015620006e55750808381518110620006d057620006d0620011c1565b60200260200101516020015160020b8660020b145b620007275760405162461bcd60e51b8152602060048201526011602482015270696e76616c696420706f6f6c20696e666f60781b60448201526064016200052f565b5050505050505050565b6001600160a01b03821662000744575050565b6200075860026001600160601b03620011d7565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015620007b2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007d891906200120c565b1015620007fc57620007ed8282600062000892565b620007fc828260001962000892565b5050565b6001600160a01b03163b151590565b600854600160a81b900460ff166200087e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016200052f565b600780546001600160a01b03191633179055565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691620008f0919062001226565b6000604051808303816000865af19150503d80600081146200092f576040519150601f19603f3d011682016040523d82523d6000602084013e62000934565b606091505b5091509150818015620009625750805115806200096257508080602001905181019062000962919062001257565b6200099f5760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b60448201526064016200052f565b5050505050565b828054828255906000526020600020908101928215620009fe579160200282015b82811115620009fe57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620009c7565b5062000a0c92915062000a10565b5090565b5b8082111562000a0c576000815560010162000a11565b634e487b7160e01b600052604160045260246000fd5b60405161014081016001600160401b038111828210171562000a635762000a6362000a27565b60405290565b604051608081016001600160401b038111828210171562000a635762000a6362000a27565b604080519081016001600160401b038111828210171562000a635762000a6362000a27565b604051601f8201601f191681016001600160401b038111828210171562000ade5762000ade62000a27565b604052919050565b80516001600160a01b038116811462000afe57600080fd5b919050565b8051600281900b811462000afe57600080fd5b60006001600160401b0382111562000b325762000b3262000a27565b5060051b60200190565b600082601f83011262000b4e57600080fd5b8151602062000b6762000b618362000b16565b62000ab3565b82815260059290921b8401810191818101908684111562000b8757600080fd5b8286015b8481101562000bad5762000b9f8162000ae6565b835291830191830162000b8b565b509695505050505050565b60008082840361016081121562000bce57600080fd5b6101408082121562000bdf57600080fd5b62000be962000a3d565b915062000bf68562000ae6565b825262000c066020860162000b03565b602083015262000c196040860162000b03565b604083015262000c2c6060860162000ae6565b606083015262000c3f6080860162000ae6565b608083015262000c5260a0860162000ae6565b60a083015262000c6560c0860162000ae6565b60c083015260e085015160e083015261010080860151818401525061012062000c9081870162000ae6565b908301528401519092506001600160401b0381111562000caf57600080fd5b62000cbd8582860162000b3c565b9150509250929050565b60006020828403121562000cda57600080fd5b815160ff8116811462000cec57600080fd5b9392505050565b600181811c9082168062000d0857607f821691505b60208210810362000d2957634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000d7d57600081815260208120601f850160051c8101602086101562000d585750805b601f850160051c820191505b8181101562000d795782815560010162000d64565b5050505b505050565b81516001600160401b0381111562000d9e5762000d9e62000a27565b62000db68162000daf845462000cf3565b8462000d2f565b602080601f83116001811462000dee576000841562000dd55750858301515b600019600386901b1c1916600185901b17855562000d79565b600085815260208120601f198616915b8281101562000e1f5788860151825594840194600190910190840162000dfe565b508582101562000e3e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562000e6157600080fd5b62000cec8262000ae6565b60006020828403121562000e7f57600080fd5b815162ffffff8116811462000cec57600080fd5b805163ffffffff8116811462000afe57600080fd5b8051801515811462000afe57600080fd5b60006080828403121562000ecc57600080fd5b62000ed662000a69565b905062000ee38262000e93565b8152602062000ef481840162000e93565b81830152604062000f0781850162000ea8565b8382015260608401516001600160401b0381111562000f2557600080fd5b8401601f8101861362000f3757600080fd5b805162000f4862000b618262000b16565b81815260069190911b8201840190848101908883111562000f6857600080fd5b928501925b8284101562000fb65784848a03121562000f875760008081fd5b62000f9162000a8e565b62000f9c8562000ae6565b815284870151878201528252928401929085019062000f6d565b606087015250939695505050505050565b600082601f83011262000fd957600080fd5b8151602062000fec62000b618362000b16565b82815260059290921b840181019181810190868411156200100c57600080fd5b8286015b8481101562000bad578051835291830191830162001010565b600080600080600080600060e0888a0312156200104557600080fd5b620010508862000ae6565b60208901519097506001600160401b03808211156200106e57600080fd5b818a0191508a601f8301126200108357600080fd5b81516200109462000b618262000b16565b8082825260208201915060208360071b86010192508d831115620010b757600080fd5b6020850194505b828510156200113d576080858f031215620010d857600080fd5b620010e262000a69565b620010ed8662000b03565b8152620010fd6020870162000b03565b6020820152620011106040870162000e93565b6040820152620011236060870162000ea8565b6060820152825260809490940193602090910190620010be565b60408d0151909a5093505050808211156200115757600080fd5b620011658b838c0162000eb9565b965060608a015195506200117c60808b0162000ae6565b945060a08a01519150808211156200119357600080fd5b50620011a28a828b0162000fc7565b925050620011b360c0890162000e93565b905092959891949750929550565b634e487b7160e01b600052603260045260246000fd5b60006001600160601b03838116806200120057634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b6000602082840312156200121f57600080fd5b5051919050565b6000825160005b818110156200124957602081860181015185830152016200122d565b506000920191825250919050565b6000602082840312156200126a57600080fd5b62000cec8262000ea8565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516102a0516102c0516102e05161030051616130620015af60003960006106ff015260008181610932015281816127600152818161288b015261307d015260008181610a6e015281816137c801526143040152600081816109e501528181610caa0152818161159b0152818161314d015281816133320152818161351101528181613621015281816137990152818161489d01526148be01526000818161038801528181610c5601528181611560015281816127f20152818161291d01528181612ff9015281816130ee0152818161312701528181613183015281816132ce0152818161330c015281816134e4015281816135eb0152818161376a0152818161474f0152614770015260008181610b3701528181613c5c015281816145b301528181614f2b0152614f550152600081816104ec01528181611fd801528181613c3b015281816145920152614e7c0152600081816107bc015281816111b901528181611f1e01528181611fa90152818161358101528181613bae01528181613c0c015281816145630152818161465601528181614de20152614eaf0152600081816109660152613a41015260008181610b6b01526143a3015260008181610753015281816126540152818161369f0152818161372f0152818161394a01528181613b8101528181613cab01528181613d99015281816144d501528181614680015281816147200152818161479f0152818161486e015281816148ed015281816149d60152614cd20152600081816105c0015281816127d1015281816128fc015281816130500152818161381c0152818161387c01528181613b0e015261446f015260008181610607015281816127b0015281816128db01528181613025015281816137f30152818161385001528181613ada015261444701526000818161043b015281816108640152818161278f015281816128ba01528181612fca0152613a1d015260006123480152600061239701526000612372015260006122cb015260006122f50152600061231f0152600061052001526161306000f3fe6080604052600436106102ab5760003560e01c806303086302146102b757806306fdde03146102e0578063071bc3c914610302578063078dfbe714610324578063095ea7b3146103465780630dfe168114610376578063128fced1146103b7578063150b7a02146103e457806316f0115b1461042957806318160ddd1461045d5780631c03e6cc1461047257806320e8c56514610492578063213cae6314610302578063234b6801146104a557806323b872dd146104ba578063278de000146104da578063313ce5671461050e5780633644e515146105545780633ba0b9a9146105695780633f4ba83a146105845780634e71e0c81461059957806355b812a8146105ae57806359c4f905146105f55780635c975abb146106295780635cbadbe41461064157806370a08231146106ad578063769f8e5d146106cd57806376d5de85146106ed578063784367d614610721578063791b98bc146107415780637ecebe00146107755780638456cb591461079557806385b2d535146107aa5780638da5cb5b146107de578063910efae8146107fe57806395d89b411461081e5780639ee80c5c14610833578063a40bee5014610853578063a9059cbb14610894578063a9f8d181146108b4578063b7c3505f146108ca578063b8f82b26146108ea578063ba9a7a561461090a578063c04c142f14610920578063c45a015514610954578063c4f59f9b14610988578063cbe52ae31461099d578063ceefe5d1146109bd578063d21220a7146109d3578063d505accf14610a07578063da88ecb414610a27578063dd62ed3e14610a3c578063ddca3f4314610a5c578063e30c397814610aa4578063ea64a82014610ac4578063ef5cfb8c14610b05578063f7047a0d14610b25578063f887ea4014610b59578063f8b2f99114610b8d578063fa5a4f061461072157600080fd5b366102b257005b600080fd5b3480156102c357600080fd5b506102cd60001981565b6040519081526020015b60405180910390f35b3480156102ec57600080fd5b506102f5610ba2565b6040516102d7919061515b565b34801561030e57600080fd5b50610317610c34565b6040516102d791906151df565b34801561033057600080fd5b5061034461033f366004615215565b610cff565b005b34801561035257600080fd5b50610366610361366004615260565b610e05565b60405190151581526020016102d7565b34801561038257600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b6040516102d7919061528c565b3480156103c357600080fd5b506103d76103d23660046152a0565b610e1f565b6040516102d791906152ed565b3480156103f057600080fd5b506104106103ff366004615300565b630a85bd0160e11b95945050505050565b6040516001600160e01b031990911681526020016102d7565b34801561043557600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b34801561046957600080fd5b506102cd610f2b565b34801561047e57600080fd5b5061034461048d3660046152a0565b610f3a565b6102cd6104a036600461539e565b61106e565b3480156104b157600080fd5b506103446111b7565b3480156104c657600080fd5b506103666104d53660046153e4565b611281565b3480156104e657600080fd5b506102cd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561051a57600080fd5b506105427f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016102d7565b34801561056057600080fd5b506102cd6112ff565b34801561057557600080fd5b50670de0b6b3a76400006102cd565b34801561059057600080fd5b5061034461130e565b3480156105a557600080fd5b50610344611340565b3480156105ba57600080fd5b506105e27f000000000000000000000000000000000000000000000000000000000000000081565b60405160029190910b81526020016102d7565b34801561060157600080fd5b506105e27f000000000000000000000000000000000000000000000000000000000000000081565b34801561063557600080fd5b5060395460ff16610366565b34801561064d57600080fd5b5061068d61065c366004615425565b603a6020908152600092835260408084209091529082529020546001600160801b0380821691600160801b90041682565b604080516001600160801b039384168152929091166020830152016102d7565b3480156106b957600080fd5b506102cd6106c83660046152a0565b6113ec565b3480156106d957600080fd5b506102cd6106e836600461545e565b611407565b3480156106f957600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b34801561072d57600080fd5b5061036661073c3660046152a0565b61155c565b34801561074d57600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b34801561078157600080fd5b506102cd6107903660046152a0565b6115d4565b3480156107a157600080fd5b506103446115f2565b3480156107b657600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b3480156107ea57600080fd5b506007546103aa906001600160a01b031681565b34801561080a57600080fd5b506102cd6108193660046154bd565b611624565b34801561082a57600080fd5b506102f5611685565b34801561083f57600080fd5b506103aa61084e3660046154bd565b611694565b34801561085f57600080fd5b5060007f000000000000000000000000000000000000000000000000000000000000000060126040516102d7939291906154ec565b3480156108a057600080fd5b506103666108af366004615260565b6116be565b3480156108c057600080fd5b506102cd603b5481565b3480156108d657600080fd5b506102cd6108e53660046154bd565b611730565b3480156108f657600080fd5b506102cd610905366004615260565b61177b565b34801561091657600080fd5b506102cd6103e881565b34801561092c57600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b34801561096057600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b34801561099457600080fd5b506103176117b6565b3480156109a957600080fd5b506102cd6109b8366004615260565b6117c0565b3480156109c957600080fd5b506102cd60065481565b3480156109df57600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b348015610a1357600080fd5b50610344610a2236600461552e565b6117f4565b348015610a3357600080fd5b506103d7611958565b348015610a4857600080fd5b506102cd610a57366004615425565b611a29565b348015610a6857600080fd5b50610a907f000000000000000000000000000000000000000000000000000000000000000081565b60405162ffffff90911681526020016102d7565b348015610ab057600080fd5b506008546103aa906001600160a01b031681565b348015610ad057600080fd5b5061068d610adf3660046152a0565b603c602052600090815260409020546001600160801b0380821691600160801b90041682565b348015610b1157600080fd5b506103d7610b203660046152a0565b611a54565b348015610b3157600080fd5b506102cd7f000000000000000000000000000000000000000000000000000000000000000081565b348015610b6557600080fd5b506103aa7f000000000000000000000000000000000000000000000000000000000000000081565b348015610b9957600080fd5b506103d7611b13565b606060038054610bb1906155a5565b80601f0160208091040260200160405190810160405280929190818152602001828054610bdd906155a5565b8015610c2a5780601f10610bff57610100808354040283529160200191610c2a565b820191906000526020600020905b815481529060010190602001808311610c0d57829003601f168201915b5050505050905090565b60408051600280825260608083018452926020830190803683370190505090507f000000000000000000000000000000000000000000000000000000000000000081600081518110610c8857610c886155ef565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610cdc57610cdc6155ef565b60200260200101906001600160a01b031690816001600160a01b03168152505090565b6007546001600160a01b03163314610d325760405162461bcd60e51b8152600401610d2990615605565b60405180910390fd5b8115610de4576001600160a01b038316151580610d4c5750805b610d905760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b6044820152606401610d29565b6007546040516001600160a01b038086169216906000805160206160bb83398151915290600090a3600780546001600160a01b0385166001600160a01b031991821617909155600880549091169055505050565b600880546001600160a01b0319166001600160a01b0385161790555b505050565b600033610e13818585611b94565b60019150505b92915050565b60606000610e2b611cb9565b905080516001600160401b03811115610e4657610e466155d9565b604051908082528060200260200182016040528015610e6f578160200160208202803683370190505b50915060005b8151811015610f2457603a6000838381518110610e9457610e946155ef565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000856001600160a01b03166001600160a01b0316815260200190815260200160002060000160109054906101000a90046001600160801b03166001600160801b0316838281518110610f1157610f116155ef565b6020908102919091010152600101610e75565b5050919050565b6002546001600160f81b031690565b6007546001600160a01b03163314610f645760405162461bcd60e51b8152600401610d2990615605565b610fd181603d805480602002602001604051908101604052809291908181526020018280548015610fbe57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610fa0575b5050505050611d1a90919063ffffffff16565b1561101c5760405162461bcd60e51b815260206004820152601b60248201527a1c995dd85c99151bdad95b88185b1c9958591e48195e1a5cdd1959602a1b6044820152606401610d29565b603d80546001810182556000919091527fece66cfdbd22e3f37d348a3d8e19074452862cd65fd4b9a11f0336d1ac6d1dc30180546001600160a01b0319166001600160a01b0392909216919091179055565b600254600090600119600160f81b90910460ff160161109f5760405162461bcd60e51b8152600401610d299061563a565b600280546001600160f81b0316600160f91b1790556110bd8461155c565b6110dc57836040516315d57ce360e31b8152600401610d29919061528c565b826000036110fd57604051630a907f2f60e41b815260040160405180910390fd5b611108843385611d79565b6111128484611de0565b905081811015611139578082604051635e38f95d60e11b8152600401610d29929190615671565b6111438582611dec565b836001600160a01b0316856001600160a01b0316336001600160a01b03167f5fe47ed6d4225326d3303476197d782ded5a4e9c14f479dc9ec4992af4e85d598685604051611192929190615671565b60405180910390a4600280546001600160f81b0316600160f81b179055949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663430ccd9b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611215573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611239919061567f565b6112755760405162461bcd60e51b815260206004820152600d60248201526c6e6f7420656d657267656e637960981b6044820152606401610d29565b61127f6002611f03565b565b600254600090600119600160f81b90910460ff16016112b25760405162461bcd60e51b8152600401610d299061563a565b600280546001600160f81b0316600160f91b179055336112d3858285612022565b6112de85858561209c565b6001915050600280546001600160f81b0316600160f81b1790559392505050565b60006113096122be565b905090565b6007546001600160a01b031633146113385760405162461bcd60e51b8152600401610d2990615605565b61127f6123e5565b6008546001600160a01b031633811461139b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152606401610d29565b6007546040516001600160a01b038084169216906000805160206160bb83398151915290600090a3600780546001600160a01b039092166001600160a01b0319928316179055600880549091169055565b6001600160a01b031660009081526020819052604090205490565b600254600090600119600160f81b90910460ff16016114385760405162461bcd60e51b8152600401610d299061563a565b600280546001600160f81b0316600160f91b1790556114568461155c565b61147557836040516388a5056160e01b8152600401610d29919061528c565b846000036114965760405163c3d83b0760e01b815260040160405180910390fd5b81156114ab576114a63086612431565b6114b5565b6114b53386612431565b6114c08685876125aa565b9050828110156114e75780836040516305ff726560e51b8152600401610d29929190615671565b836001600160a01b0316866001600160a01b0316336001600160a01b03167faee47cdf925cf525fdae94f9777ee5a06cac37e1c41220d0a8a89ed154f62d1c8885604051611536929190615671565b60405180910390a4600280546001600160f81b0316600160f81b17905595945050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161480610e1957507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161492915050565b6001600160a01b038116600090815260056020526040812054610e19565b6007546001600160a01b0316331461161c5760405162461bcd60e51b8152600401610d2990615605565b61127f6125c3565b60006116303383612431565b61163a8233612600565b905080336001600160a01b03167fcae6e85b835fcf864c07fb3cd4909bf840bf5114adf6a9f2553470fe7ca78ddc8460405161167891815260200190565b60405180910390a3919050565b606060048054610bb1906155a5565b603d81815481106116a457600080fd5b6000918252602090912001546001600160a01b0316905081565b600254600090600119600160f81b90910460ff16016116ef5760405162461bcd60e51b8152600401610d299061563a565b600280546001600160f81b0316600160f91b1790553361171081858561209c565b6001915050600280546001600160f81b0316600160f81b17905592915050565b600061173b8261262e565b90506117473382611dec565b604051818152829033907f7ad89f71bfd411c34e67f1593de34f11c471d79fdb7ed6adadf0253814be9f3690602001611678565b60006117868361155c565b6117a557826040516315d57ce360e31b8152600401610d29919061528c565b6117af838361275c565b9392505050565b6060611309611cb9565b60006117cb8361155c565b6117ea57826040516388a5056160e01b8152600401610d29919061528c565b6117af8383612887565b834211156118445760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152606401610d29565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886118738c612971565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e00160405160208183030381529060405280519060200120905060006118ce82612997565b905060006118de828787876129e5565b9050896001600160a01b0316816001600160a01b0316146119415760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152606401610d29565b61194c8a8a8a611b94565b50505050505050505050565b60606000611964611cb9565b905080516001600160401b0381111561197f5761197f6155d9565b6040519080825280602002602001820160405280156119a8578160200160208202803683370190505b50915060005b8151811015611a2457603c60008383815181106119cd576119cd6155ef565b6020908102919091018101516001600160a01b031682528101919091526040016000205483516001600160801b0390911690849083908110611a1157611a116155ef565b60209081029190910101526001016119ae565b505090565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600254606090600119600160f81b90910460ff1601611a855760405162461bcd60e51b8152600401610d299061563a565b600280546001600160f81b0316600160f91b179055611aa382612a0d565b611aad8283612a18565b9050816001600160a01b03167f2193aa20a3717f5f4ac79482f4f553e5f0afe8f4e6ec3e3d1aa2e138adc4763f611ae2611cb9565b83604051611af192919061569c565b60405180910390a2600280546001600160f81b0316600160f81b179055919050565b600254606090600119600160f81b90910460ff1601611b445760405162461bcd60e51b8152600401610d299061563a565b600280546001600160f81b0316600160f91b179055611b61612cc0565b5050611b6b611958565b9050600280546001600160f81b0316600160f81b17905590565b6001600160a01b03163b151590565b6001600160a01b038316611bf65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610d29565b6001600160a01b038216611c575760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610d29565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6060603d805480602002602001604051908101604052809291908181526020018280548015610c2a57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611cf3575050505050905090565b8151600090815b81811015611d6e57836001600160a01b0316858281518110611d4557611d456155ef565b60200260200101516001600160a01b031603611d6657600192505050610e19565b600101611d21565b506000949350505050565b6001600160a01b038316611dc557803414610e005760405162461bcd60e51b815260206004820152600c60248201526b0cae8d040dad2e6dac2e8c6d60a31b6044820152606401610d29565b8015610e0057610e006001600160a01b038416833084612f5b565b60006117af8383612fb3565b6001600160a01b038216611e425760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610d29565b611e4e600083836131f9565b611e578161320b565b60028054600090611e729084906001600160f81b03166156d7565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555080600080846001600160a01b03166001600160a01b031681526020019081526020016000206000828254611eca91906156f7565b90915550506040518181526001600160a01b038316906000906000805160206160db8339815191529060200160405180910390a35b5050565b6002816002811115611f1757611f176154d6565b03611fa7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634a9280ff611f56600654613225565b6040518263ffffffff1660e01b8152600401611f7291906152ed565b600060405180830381600087803b158015611f8c57600080fd5b505af1158015611fa0573d6000803e3d6000fd5b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635915d8067f0000000000000000000000000000000000000000000000000000000000000000612002600654613225565b6040518363ffffffff1660e01b8152600401611f7292919061570a565b50565b600061202e8484611a29565b9050600019811461209657818110156120895760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610d29565b6120968484848403611b94565b50505050565b6001600160a01b0383166121005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610d29565b6001600160a01b0382166121625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610d29565b816001600160a01b0316836001600160a01b0316036121bd5760405162461bcd60e51b815260206004820152601760248201527622a92199181d103a3930b739b332b9103a379039b2b63360491b6044820152606401610d29565b6121c88383836131f9565b6001600160a01b038316600090815260208190526040902054818110156122405760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610d29565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906122779084906156f7565b92505081905550826001600160a01b0316846001600160a01b03166000805160206160db833981519152846040516122b191815260200190565b60405180910390a3612096565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561231757507f000000000000000000000000000000000000000000000000000000000000000046145b1561234157507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b6123ed61326c565b6039805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051612427919061528c565b60405180910390a1565b6001600160a01b0382166124915760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610d29565b61249d826000836131f9565b6001600160a01b038216600090815260208190526040902054818110156125115760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610d29565b6001600160a01b038316600090815260208190526040902082820390556125378261320b565b600280546000906125529084906001600160f81b0316615723565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555060006001600160a01b0316836001600160a01b03166000805160206160db83398151915284604051611cac91815260200190565b60006125b683836132b5565b90506117af838583613398565b6125cb61345c565b6039805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861241a3390565b6000806000612616612611866134a2565b6134b8565b9150915061262582828661372b565b95945050505050565b60008061263a83613943565b604051632142170760e11b81529091506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906342842e0e9061268d90339030908890600401615743565b600060405180830381600087803b1580156126a757600080fd5b505af11580156126bb573d6000803e3d6000fd5b50505050600019600654036127495760068390556103e86001600160801b038216116127255760405162461bcd60e51b81526020600482015260196024820152781b5a5b9a5b5d5b481b1a5c5d5a591a5d1e481b9bdd081b595d603a1b6044820152606401610d29565b61273a6103e86001600160801b038316615767565b9150612744613b67565b612756565b6127538382613ca4565b91505b50919050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633ee3fa867f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b031614876040518663ffffffff1660e01b815260040161284695949392919061577a565b602060405180830381865afa158015612863573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117af91906157ae565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ca9dac017f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b031614876040518663ffffffff1660e01b815260040161284695949392919061577a565b6001600160a01b0381166000908152600560205260409020805460018101825590612756565b6000610e196129a46122be565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b60008060006129f687878787613e19565b91509150612a0381613efc565b5095945050505050565b61201f8160006140ad565b60606000612a24611cb9565b905080516001600160401b03811115612a3f57612a3f6155d9565b604051908082528060200260200182016040528015612a68578160200160208202803683370190505b50915060005b8151811015612cb857603a6000838381518110612a8d57612a8d6155ef565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060000160109054906101000a90046001600160801b03166001600160801b0316838281518110612b0a57612b0a6155ef565b602002602001018181525050828181518110612b2857612b286155ef565b6020026020010151600014612ca6576000603a6000848481518110612b4f57612b4f6155ef565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000876001600160a01b03166001600160a01b0316815260200190815260200160002060000160106101000a8154816001600160801b0302191690836001600160801b03160217905550612be3838281518110612bd657612bd66155ef565b60200260200101516134a2565b603c6000848481518110612bf957612bf96155ef565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060000160108282829054906101000a90046001600160801b0316612c4591906157c7565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550612ca6828281518110612c7e57612c7e6155ef565b602002602001015185858481518110612c9957612c996155ef565b6020026020010151613398565b80612cb0816157e7565b915050612a6e565b505092915050565b606080612ccb611cb9565b915081516001600160401b03811115612ce657612ce66155d9565b604051908082528060200260200182016040528015612d0f578160200160208202803683370190505b5090508151600003612d1f579091565b43603b5414612ed35743603b556000612d3661412d565b9050612d40614137565b60005b8351811015612ed0576000848281518110612d6057612d606155ef565b6020908102919091018101516001600160a01b0381166000908152603c90925260408220548751919350600160801b90046001600160801b031690612dbe90889086908110612db157612db16155ef565b602002602001015161413f565b612dc89190615767565b6001600160a01b0383166000908152603c60205260408120549192506001600160801b0390911690819003612dfb575060015b8415612e1857612e0b82866141c9565b612e1590826156f7565b90505b612e21816134a2565b6001600160a01b0384166000908152603c6020526040902080546001600160801b0319166001600160801b0392909216919091179055612e60826134a2565b6001600160a01b0384166000908152603c602052604090208054601090612e98908490600160801b90046001600160801b0316615800565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555050505080612ec9906157e7565b9050612d43565b50505b60005b8251811015612f5657603c6000848381518110612ef557612ef56155ef565b6020908102919091018101516001600160a01b031682528101919091526040016000205482516001600160801b0390911690839083908110612f3957612f396155ef565b602090810291909101015280612f4e816157e7565b915050612ed6565b509091565b612096846323b872dd60e01b858585604051602401612f7c93929190615743565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526141f8565b6040516354fa46a160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000081168482161460448301527f0000000000000000000000000000000000000000000000000000000000000000600290810b60648401527f0000000000000000000000000000000000000000000000000000000000000000900b608483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063a9f48d429060a401602060405180830381865afa1580156130c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130e891906157ae565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03161461314b577f000000000000000000000000000000000000000000000000000000000000000061316d565b7f00000000000000000000000000000000000000000000000000000000000000005b9050600061317c8683856142ca565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b0316146131ca57826131c58689615767565b6131d6565b6131d48588615767565b835b915091506131e4828261441b565b6001600160801b031698975050505050505050565b61320161345c565b610e0083836140ad565b60006001600160f81b0382111561322157600080fd5b5090565b60408051600180825281830190925260609160208083019080368337019050509050818160008151811061325b5761325b6155ef565b602002602001018181525050919050565b60395460ff1661127f5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610d29565b60008060006132c6612611856134a2565b9150915060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b0316149050600081613330577f0000000000000000000000000000000000000000000000000000000000000000613352565b7f00000000000000000000000000000000000000000000000000000000000000005b90506000826133615784613363565b835b90506000613372838a846142ca565b90508361337f5784613381565b855b61338b90826156f7565b9998505050505050505050565b806000036133a557505050565b6001600160a01b038316613448576000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114613400576040519150601f19603f3d011682016040523d82523d6000602084013e613405565b606091505b50509050806120965760405162461bcd60e51b815260206004820152600f60248201526e195d1a081cd95b990819985a5b1959608a1b6044820152606401610d29565b610e006001600160a01b0384168383614633565b60395460ff161561127f5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610d29565b60006001600160801b0382111561322157600080fd5b6006546000908190600181016134d0576134d0615820565b6134d8614652565b156136585760006135087f000000000000000000000000000000000000000000000000000000000000000061413f565b905060006135357f000000000000000000000000000000000000000000000000000000000000000061413f565b6040516338f7fbe160e21b8152600481018590526001600160801b038816602482015260006044820181905260648201819052600019608483015260a4820181905260c48201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063e3dfef849060e401600060405180830381600087803b1580156135cd57600080fd5b505af11580156135e1573d6000803e3d6000fd5b505050508161360f7f000000000000000000000000000000000000000000000000000000000000000061413f565b6136199190615767565b9450806136457f000000000000000000000000000000000000000000000000000000000000000061413f565b61364f9190615767565b93505050613725565b6040805160a0810182528281526001600160801b038616602082015260008183018190526060820152600019608082015290516398e04d7760e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916398e04d77916136d39190600401615836565b6060604051808303816000875af11580156136f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137169190615874565b5090935091506137253061471e565b50915091565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ea5406326040518061018001604052807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526020017f000000000000000000000000000000000000000000000000000000000000000062ffffff1681526020017f000000000000000000000000000000000000000000000000000000000000000060020b81526020017f000000000000000000000000000000000000000000000000000000000000000060020b815260200160405180604001604052807f000000000000000000000000000000000000000000000000000000000000000060020b60020b81526020017f000000000000000000000000000000000000000000000000000000000000000060020b60020b81525081526020018781526020018681526020016000815260200160008152602001856001600160a01b031681526020016000198152506040518263ffffffff1660e01b81526004016138f491906158cd565b6080604051808303816000875af1158015613913573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061393791906159bd565b50919695505050505050565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166399fbab88856040518263ffffffff1660e01b815260040161399691815260200190565b61016060405180830381865afa1580156139b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139d89190615b49565b805160408083015160208401519151630b4c774160e11b81526001600160a01b039384166004820152908316602482015262ffffff90911660448201529294509092507f00000000000000000000000000000000000000000000000000000000000000008116917f000000000000000000000000000000000000000000000000000000000000000090911690631698ee8290606401602060405180830381865afa158015613a8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aae9190615c15565b6001600160a01b031614613ad85760405163e7a1cb9760e01b815260048101859052602401610d29565b7f000000000000000000000000000000000000000000000000000000000000000060020b826060015160020b141580613b3b57507f000000000000000000000000000000000000000000000000000000000000000060020b826080015160020b14155b15613b5c5760405163e7a1cb9760e01b815260048101859052602401610d29565b5060a0015192915050565b60065460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b390613bd8907f0000000000000000000000000000000000000000000000000000000000000000908590600401615c32565b600060405180830381600087803b158015613bf257600080fd5b505af1158015613c06573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e177884f7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000613c8485613225565b306040518563ffffffff1660e01b8152600401611f729493929190615c4b565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166398e04d776040518060a00160405280888152602001876001600160801b0316815260200160008152602001600081526020016000198152506040518263ffffffff1660e01b8152600401613d289190615836565b6060604051808303816000875af1158015613d47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d6b9190615874565b5091509150613d793061471e565b613d838533614988565b604051630852cd8d60e31b8152600481018690527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342966c6890602401600060405180830381600087803b158015613de557600080fd5b505af1158015613df9573d6000803e3d6000fd5b50505050613e07828261441b565b6001600160801b031695945050505050565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b03831115613e465750600090506003613ef3565b8460ff16601b14158015613e5e57508460ff16601c14155b15613e6f5750600090506004613ef3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ec3573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613eec57600060019250925050613ef3565b9150600090505b94509492505050565b6000816004811115613f1057613f106154d6565b03613f185750565b6001816004811115613f2c57613f2c6154d6565b03613f745760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b6044820152606401610d29565b6002816004811115613f8857613f886154d6565b03613fd55760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610d29565b6003816004811115613fe957613fe96154d6565b036140415760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610d29565b6004816004811115614055576140556154d6565b0361201f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610d29565b6000806140b8612cc0565b9150915081516000036140cb5750505050565b6001600160a01b038416158015906140ec57506001600160a01b0384163014155b156140fc576140fc848383614a57565b6001600160a01b0383161580159061411d57506001600160a01b0383163014155b1561209657612096838383614a57565b6000611309610f2b565b61127f614c8f565b60006001600160a01b038216156141c2576040516370a0823160e01b81526001600160a01b038316906370a082319061417c90309060040161528c565b602060405180830381865afa158015614199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141bd91906157ae565b610e19565b4792915050565b6000806141de670de0b6b3a764000085615c83565b90508281816141ef576141ef615c9a565b04949350505050565b600061424d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316614d7a9092919063ffffffff16565b805190915015610e00578080602001905181019061426b919061567f565b610e005760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610d29565b6000816000036142dc575060006117af565b60408051610100810182526001600160a01b0386811682528581166020830190815262ffffff7f0000000000000000000000000000000000000000000000000000000000000000811684860190815230606086019081526000196080870190815260a087018a8152600060c0890181815260e08a01918252995163a8c9ed6760e01b81529851881660048a0152955187166024890152925190931660448701525184166064860152905160848501525160a4840152925160c48301529151821660e48201527f00000000000000000000000000000000000000000000000000000000000000009091169063a8c9ed6790610104016020604051808303816000875af11580156143ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061441391906157ae565b949350505050565b6006546000906001810161443157614431615820565b6040805160e081018252828152815180830183527f0000000000000000000000000000000000000000000000000000000000000000600290810b82527f0000000000000000000000000000000000000000000000000000000000000000900b6020828101919091528201528082018690526060810185905260006080820181905260a082015260001960c0820152905163c238a3a360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169163c238a3a3916145099190600401615cb0565b6080604051808303816000875af1158015614528573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061454c9190615d05565b5091935061455c9150614d899050565b1561462c577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638671c2ee7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006145db85613225565b6040518463ffffffff1660e01b81526004016145f993929190615d42565b600060405180830381600087803b15801561461357600080fd5b505af1158015614627573d6000803e3d6000fd5b505050505b5092915050565b610e008363a9059cbb60e01b8484604051602401612f7c929190615c32565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636352211e6006546040518263ffffffff1660e01b81526004016146ce91815260200190565b602060405180830381865afa1580156146eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061470f9190615c15565b6001600160a01b031614905090565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663bf1316c17f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a082317f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016147da919061528c565b602060405180830381865afa1580156147f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061481b91906157ae565b846040518463ffffffff1660e01b815260040161483a93929190615d61565b600060405180830381600087803b15801561485457600080fd5b505af1158015614868573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663bf1316c17f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a082317f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b8152600401614928919061528c565b602060405180830381865afa158015614945573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061496991906157ae565b846040518463ffffffff1660e01b8152600401611f7293929190615d61565b60408051608081018252838152600060208201818152828401918252600019606084019081529351637686c6e960e11b815292516004840152516024830152516044820152905160648201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ed0d8dd2906084016060604051808303816000875af1158015614a27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614a4b9190615874565b505050611eff8161471e565b6001600160a01b03831615801590614a7857506001600160a01b0383163014155b614a8457614a84615820565b6000614a8f84614db5565b905060005b8351811015611fa0576000848281518110614ab157614ab16155ef565b602002602001015190506000848381518110614acf57614acf6155ef565b6020908102919091018101516001600160a01b038085166000908152603a84526040808220928c168252919093528220549092506001600160801b031690819003614b2a57614b1e60016134a2565b6001600160801b031690505b818103614b3957505050614c7f565b6000614b458284615767565b90506000614b538783614dc0565b6001600160a01b038681166000908152603a60209081526040808320938f1683529290529081205491925090614b9a908390600160801b90046001600160801b03166156f7565b90506040518060400160405280614bb0876134a2565b6001600160801b03168152602001614bc7836134a2565b6001600160801b0316815250603a6000886001600160a01b03166001600160a01b0316815260200190815260200160002060008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b031602179055509050505050505050505b614c88816157e7565b9050614a94565b6006546000614c9c614dde565b90506000614ca8614652565b90508015614cb957614cb982611f03565b604051630c479e6560e21b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063311e7994906024016020604051808303816000875af1158015614d23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614d4791906157ae565b90508015614d5957614d598430614988565b6000836002811115614d6d57614d6d6154d6565b0361209657612096613b67565b60606144138484600085614fcf565b600080614d94614dde565b6002811115614da557614da56154d6565b1480156113095750611309614652565b6000610e19826113ec565b600080614dcd8385615c83565b9050670de0b6b3a7640000816141ef565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663430ccd9b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614e3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614e62919061567f565b15614e6d5750600290565b6040516353fd88bf60e01b81527f0000000000000000000000000000000000000000000000000000000000000000600482015260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906353fd88bf90602401600060405180830381865afa158015614ef6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052614f1e9190810190615f22565b50505050925092505081517f0000000000000000000000000000000000000000000000000000000000000000101580614f915750817f000000000000000000000000000000000000000000000000000000000000000081518110614f8457614f846155ef565b6020026020010151606001515b15614f9f5760019250505090565b42816020015163ffffffff161080614fb8575080604001515b15614fc65760019250505090565b60009250505090565b6060824710156150305760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610d29565b61503985611b85565b6150855760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610d29565b600080866001600160a01b031685876040516150a1919061609e565b60006040518083038185875af1925050503d80600081146150de576040519150601f19603f3d011682016040523d82523d6000602084013e6150e3565b606091505b50915091506150f38282866150fe565b979650505050505050565b6060831561510d5750816117af565b82511561511d5782518084602001fd5b8160405162461bcd60e51b8152600401610d29919061515b565b60005b8381101561515257818101518382015260200161513a565b50506000910152565b602081526000825180602084015261517a816040850160208701615137565b601f01601f19169190910160400192915050565b6001600160a01b03169052565b600081518084526020808501945080840160005b838110156151d45781516001600160a01b0316875295820195908201906001016151af565b509495945050505050565b6020815260006117af602083018461519b565b6001600160a01b038116811461201f57600080fd5b801515811461201f57600080fd5b60008060006060848603121561522a57600080fd5b8335615235816151f2565b9250602084013561524581615207565b9150604084013561525581615207565b809150509250925092565b6000806040838503121561527357600080fd5b823561527e816151f2565b946020939093013593505050565b6001600160a01b0391909116815260200190565b6000602082840312156152b257600080fd5b81356117af816151f2565b600081518084526020808501945080840160005b838110156151d4578151875295820195908201906001016152d1565b6020815260006117af60208301846152bd565b60008060008060006080868803121561531857600080fd5b8535615323816151f2565b94506020860135615333816151f2565b93506040860135925060608601356001600160401b038082111561535657600080fd5b818801915088601f83011261536a57600080fd5b81358181111561537957600080fd5b89602082850101111561538b57600080fd5b9699959850939650602001949392505050565b600080600080608085870312156153b457600080fd5b84356153bf816151f2565b935060208501356153cf816151f2565b93969395505050506040820135916060013590565b6000806000606084860312156153f957600080fd5b8335615404816151f2565b92506020840135615414816151f2565b929592945050506040919091013590565b6000806040838503121561543857600080fd5b8235615443816151f2565b91506020830135615453816151f2565b809150509250929050565b600080600080600060a0868803121561547657600080fd5b8535615481816151f2565b9450602086013593506040860135615498816151f2565b92506060860135915060808601356154af81615207565b809150509295509295909350565b6000602082840312156154cf57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b606081016002851061550e57634e487b7160e01b600052602160045260246000fd5b9381526001600160a01b0392909216602083015260ff1660409091015290565b600080600080600080600060e0888a03121561554957600080fd5b8735615554816151f2565b96506020880135615564816151f2565b95506040880135945060608801359350608088013560ff8116811461558857600080fd5b9699959850939692959460a0840135945060c09093013592915050565b600181811c908216806155b957607f821691505b60208210810361275657634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b918252602082015260400190565b60006020828403121561569157600080fd5b81516117af81615207565b6040815260006156af604083018561519b565b828103602084015261262581856152bd565b634e487b7160e01b600052601160045260246000fd5b6001600160f81b0381811683821601908082111561462c5761462c6156c1565b80820180821115610e1957610e196156c1565b82815260406020820152600061441360408301846152bd565b6001600160f81b0382811682821603908082111561462c5761462c6156c1565b6001600160a01b039384168152919092166020820152604081019190915260600190565b81810381811115610e1957610e196156c1565b6001600160a01b03959095168552600293840b60208601529190920b60408401529015156060830152608082015260a00190565b6000602082840312156157c057600080fd5b5051919050565b6001600160801b0382811682821603908082111561462c5761462c6156c1565b6000600182016157f9576157f96156c1565b5060010190565b6001600160801b0381811683821601908082111561462c5761462c6156c1565b634e487b7160e01b600052600160045260246000fd5b815181526020808301516001600160801b03169082015260408083015190820152606080830151908201526080918201519181019190915260a00190565b60008060006060848603121561588957600080fd5b8351925060208401519150604084015190509250925092565b8060005b60028082106158b55750612096565b8251900b8452602093840193909101906001016158a6565b60006101a0820190506158e182845161518e565b60208301516158f3602084018261518e565b50604083015161590a604084018262ffffff169052565b50606083015161591f606084018260020b9052565b506080830151615934608084018260020b9052565b5060a083015161594760a08401826158a2565b5060c083015160e08381019190915283015161010080840191909152830151610120808401919091528301516101408084019190915283015161016061598f8185018361518e565b80850151610180850152505092915050565b80516001600160801b03811681146159b857600080fd5b919050565b600080600080608085870312156159d357600080fd5b845193506159e3602086016159a1565b6040860151606090960151949790965092505050565b60405161010081016001600160401b0381118282101715615a1c57615a1c6155d9565b60405290565b604051608081016001600160401b0381118282101715615a1c57615a1c6155d9565b604080519081016001600160401b0381118282101715615a1c57615a1c6155d9565b604051601f8201601f191681016001600160401b0381118282101715615a8e57615a8e6155d9565b604052919050565b80516159b8816151f2565b80516001600160501b03811681146159b857600080fd5b8051600281900b81146159b857600080fd5b600060608284031215615adc57600080fd5b604051606081016001600160401b0381118282101715615afe57615afe6155d9565b80604052508091508251615b11816151f2565b8152602083015162ffffff81168114615b2957600080fd5b60208201526040830151615b3c816151f2565b6040919091015292915050565b600080828403610160811215615b5e57600080fd5b61010080821215615b6e57600080fd5b615b766159f9565b85519092506001600160601b0381168114615b9057600080fd5b8252615b9e60208601615a96565b6020830152615baf60408601615aa1565b6040830152615bc060608601615ab8565b6060830152615bd160808601615ab8565b6080830152615be260a086016159a1565b60a083015260c085015160c083015260e085015160e0830152819350615c0a86828701615aca565b925050509250929050565b600060208284031215615c2757600080fd5b81516117af816151f2565b6001600160a01b03929092168252602082015260400190565b848152836020820152608060408201526000615c6a60808301856152bd565b905060018060a01b038316606083015295945050505050565b8082028115828204841417610e1957610e196156c1565b634e487b7160e01b600052601260045260246000fd5b81518152602080830151610100830191615ccc908401826158a2565b506040830151606083015260608301516080830152608083015160a083015260a083015160c083015260c083015160e083015292915050565b60008060008060808587031215615d1b57600080fd5b615d24856159a1565b60208601516040870151606090970151919890975090945092505050565b83815282602082015260606040820152600061262560608301846152bd565b6001600160a01b0393841681526020810192909252909116604082015260600190565b60006001600160401b03821115615d9d57615d9d6155d9565b5060051b60200190565b805163ffffffff811681146159b857600080fd5b600060808284031215615dcd57600080fd5b615dd5615a22565b9050615de082615da7565b81526020615def818401615da7565b81830152604080840151615e0281615207565b8382015260608401516001600160401b03811115615e1f57600080fd5b8401601f81018613615e3057600080fd5b8051615e43615e3e82615d84565b615a66565b81815260069190911b82018401908481019088831115615e6257600080fd5b928501925b82841015615eab5784848a031215615e7f5760008081fd5b615e87615a44565b8451615e92816151f2565b8152848701518782015282529284019290850190615e67565b606087015250939695505050505050565b600082601f830112615ecd57600080fd5b81516020615edd615e3e83615d84565b82815260059290921b84018101918181019086841115615efc57600080fd5b8286015b84811015615f175780518352918301918301615f00565b509695505050505050565b600080600080600080600060e0888a031215615f3d57600080fd5b8751615f48816151f2565b60208901519097506001600160401b0380821115615f6557600080fd5b818a0191508a601f830112615f7957600080fd5b8151615f87615e3e82615d84565b8082825260208201915060208360071b86010192508d831115615fa957600080fd5b6020850194505b82851015616024576080858f031215615fc857600080fd5b615fd0615a22565b615fd986615ab8565b8152615fe760208701615ab8565b6020820152615ff860408701615da7565b6040820152606086015161600b81615207565b6060820152825260809490940193602090910190615fb0565b60408d0151909a50935050508082111561603d57600080fd5b6160498b838c01615dbb565b965060608a0151955061605e60808b01615a96565b945060a08a015191508082111561607457600080fd5b506160818a828b01615ebc565b92505061609060c08901615da7565b905092959891949750929550565b600082516160b0818460208701615137565b919091019291505056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220a6cc4d30bf849653ccd3316ac39305fa33f72ad41f696260d34bba86ac3eafbc64736f6c63430008110033";
1448
+
1449
+ type PendleKyberElasticSYConstructorParams =
1450
+ | [signer?: Signer]
1451
+ | ConstructorParameters<typeof ContractFactory>;
1452
+
1453
+ const isSuperArgs = (
1454
+ xs: PendleKyberElasticSYConstructorParams
1455
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1456
+
1457
+ export class PendleKyberElasticSY__factory extends ContractFactory {
1458
+ constructor(...args: PendleKyberElasticSYConstructorParams) {
1459
+ if (isSuperArgs(args)) {
1460
+ super(...args);
1461
+ } else {
1462
+ super(_abi, _bytecode, args[0]);
1463
+ }
1464
+ this.contractName = "PendleKyberElasticSY";
1465
+ }
1466
+
1467
+ deploy(
1468
+ params: KyberNftManagerBase.KyberNftManagerConstructorParamsStruct,
1469
+ _initialRewardTokens: string[],
1470
+ overrides?: Overrides & { from?: string | Promise<string> }
1471
+ ): Promise<PendleKyberElasticSY> {
1472
+ return super.deploy(
1473
+ params,
1474
+ _initialRewardTokens,
1475
+ overrides || {}
1476
+ ) as Promise<PendleKyberElasticSY>;
1477
+ }
1478
+ getDeployTransaction(
1479
+ params: KyberNftManagerBase.KyberNftManagerConstructorParamsStruct,
1480
+ _initialRewardTokens: string[],
1481
+ overrides?: Overrides & { from?: string | Promise<string> }
1482
+ ): TransactionRequest {
1483
+ return super.getDeployTransaction(
1484
+ params,
1485
+ _initialRewardTokens,
1486
+ overrides || {}
1487
+ );
1488
+ }
1489
+ attach(address: string): PendleKyberElasticSY {
1490
+ return super.attach(address) as PendleKyberElasticSY;
1491
+ }
1492
+ connect(signer: Signer): PendleKyberElasticSY__factory {
1493
+ return super.connect(signer) as PendleKyberElasticSY__factory;
1494
+ }
1495
+ static readonly contractName: "PendleKyberElasticSY";
1496
+ public readonly contractName: "PendleKyberElasticSY";
1497
+ static readonly bytecode = _bytecode;
1498
+ static readonly abi = _abi;
1499
+ static createInterface(): PendleKyberElasticSYInterface {
1500
+ return new utils.Interface(_abi) as PendleKyberElasticSYInterface;
1501
+ }
1502
+ static connect(
1503
+ address: string,
1504
+ signerOrProvider: Signer | Provider
1505
+ ): PendleKyberElasticSY {
1506
+ return new Contract(
1507
+ address,
1508
+ _abi,
1509
+ signerOrProvider
1510
+ ) as PendleKyberElasticSY;
1511
+ }
1512
+ }