@pendle/core-v2 2.0.1-mainnet → 2.1.1-mainnet

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 (294) 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/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  13. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.dbg.json +1 -1
  14. package/build/artifacts/contracts/LiquidityMining/VeDistributor/PendleFeeDistributor.sol/PendleFeeDistributor.json +2 -2
  15. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.dbg.json +1 -1
  16. package/build/artifacts/contracts/LiquidityMining/VotingController/PendleVotingControllerUpg.sol/PendleVotingControllerUpg.json +2 -2
  17. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.dbg.json +1 -1
  18. package/build/artifacts/contracts/LiquidityMining/VotingController/VotingControllerStorageUpg.sol/VotingControllerStorageUpg.json +39 -0
  19. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleMainchain.sol/VotingEscrowPendleMainchain.dbg.json +1 -1
  20. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowPendleSidechain.sol/VotingEscrowPendleSidechain.dbg.json +1 -1
  21. package/build/artifacts/contracts/LiquidityMining/VotingEscrow/VotingEscrowTokenBase.sol/VotingEscrowTokenBase.dbg.json +1 -1
  22. package/build/artifacts/contracts/LiquidityMining/libraries/VeBalanceLib.sol/VeBalanceLib.dbg.json +1 -1
  23. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/CheckpointHelper.dbg.json +1 -1
  24. package/build/artifacts/contracts/LiquidityMining/libraries/VeHistoryLib.sol/Checkpoints.dbg.json +1 -1
  25. package/build/artifacts/contracts/LiquidityMining/libraries/WeekMath.sol/WeekMath.dbg.json +1 -1
  26. package/build/artifacts/contracts/core/BulkSeller/BulkSeller.sol/BulkSeller.dbg.json +1 -1
  27. package/build/artifacts/contracts/core/BulkSeller/BulkSellerFactory.sol/BulkSellerFactory.dbg.json +1 -1
  28. package/build/artifacts/contracts/core/BulkSeller/BulkSellerMathCore.sol/BulkSellerMathCore.dbg.json +1 -1
  29. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  30. package/build/artifacts/contracts/core/Market/OracleLib.sol/OracleLib.dbg.json +1 -1
  31. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  32. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.dbg.json +1 -1
  33. package/build/artifacts/contracts/core/Market/PendleMarket.sol/PendleMarket.json +2 -2
  34. package/build/artifacts/contracts/core/Market/PendleMarketFactory.sol/PendleMarketFactory.dbg.json +1 -1
  35. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  36. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  37. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  38. package/build/artifacts/contracts/core/StandardizedYield/SYBase.sol/SYBase.dbg.json +1 -1
  39. package/build/artifacts/contracts/core/StandardizedYield/SYBaseWithRewards.sol/SYBaseWithRewards.dbg.json +1 -1
  40. package/build/artifacts/contracts/core/StandardizedYield/SYUtils.sol/SYUtils.dbg.json +1 -1
  41. package/build/artifacts/contracts/core/StandardizedYield/StEthHelper.sol/StEthHelper.dbg.json +1 -1
  42. package/build/artifacts/contracts/core/StandardizedYield/implementations/Ape/sAPE.sol/sAPE.dbg.json +1 -1
  43. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.dbg.json +1 -1
  44. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethRethSY.sol/PendleAuraWethRethSY.json +2 -2
  45. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.dbg.json +1 -1
  46. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraWethWstethSY.sol/PendleAuraWethWstethSY.json +2 -2
  47. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/FixedPoint.sol/FixedPoint.dbg.json +1 -1
  48. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStableMath.sol/MetaStableMath.dbg.json +1 -1
  49. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/MetaStable/MetaStablePreview.sol/MetaStablePreview.dbg.json +1 -1
  50. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/PendleAuraBalancerStableLPSY.sol/PendleAuraBalancerStableLPSY.dbg.json +1 -1
  51. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePoolUserData.sol/StablePoolUserData.dbg.json +1 -1
  52. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/StablePreviewBase.sol/StablePreviewBase.dbg.json +1 -1
  53. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenHelper.sol/PendleQiTokenHelper.dbg.json +1 -1
  54. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.dbg.json +1 -1
  55. package/build/artifacts/contracts/core/StandardizedYield/implementations/BenQi/PendleQiTokenSY.sol/PendleQiTokenSY.json +2 -2
  56. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.dbg.json +1 -1
  57. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveFraxUsdcSY.sol/PendleCurveFraxUsdcSY.json +2 -2
  58. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.dbg.json +1 -1
  59. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/PendleCurveUsdd3CrvSY.sol/PendleCurveUsdd3CrvSY.json +2 -2
  60. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/Curve3CrvPoolHelper.sol/Curve3CrvPoolHelper.dbg.json +1 -1
  61. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveFraxUsdcPoolHelper.sol/CurveFraxUsdcPoolHelper.dbg.json +1 -1
  62. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/CurveUsdd3CrvPoolHelper.sol/CurveUsdd3CrvPoolHelper.dbg.json +1 -1
  63. package/build/artifacts/contracts/core/StandardizedYield/implementations/Convex/base/PendleConvexLPSY.sol/PendleConvexLPSY.dbg.json +1 -1
  64. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/GLPPreviewHelper.sol/GLPPreviewHelper.dbg.json +1 -1
  65. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.dbg.json +1 -1
  66. package/build/artifacts/contracts/core/StandardizedYield/implementations/GLP/PendleGlpSY.sol/PendleGlpSY.json +2 -2
  67. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.dbg.json +4 -0
  68. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol/PendleGDaiSY.json +974 -0
  69. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleLooksStakingSY.sol/PendleLooksStakingSY.dbg.json +1 -1
  70. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleWstEthSY.sol/PendleWstEthSY.dbg.json +1 -1
  71. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  72. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  73. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  74. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  75. package/build/artifacts/contracts/core/YieldContractsV2/InterestManagerYTV2.sol/InterestManagerYTV2.dbg.json +1 -1
  76. package/build/artifacts/contracts/core/YieldContractsV2/PendlePrincipalTokenV2.sol/PendlePrincipalTokenV2.dbg.json +1 -1
  77. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.dbg.json +1 -1
  78. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldContractFactoryV2.sol/PendleYieldContractFactoryV2.json +2 -2
  79. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.dbg.json +1 -1
  80. package/build/artifacts/contracts/core/YieldContractsV2/PendleYieldTokenV2.sol/PendleYieldTokenV2.json +2 -2
  81. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  82. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  83. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  84. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/BaseSplitCodeFactory.dbg.json +1 -1
  85. package/build/artifacts/contracts/core/libraries/BaseSplitCodeFactory.sol/CodeDeployer.dbg.json +1 -1
  86. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeable.dbg.json +1 -1
  87. package/build/artifacts/contracts/core/libraries/BoringOwnableUpgradeable.sol/BoringOwnableUpgradeableData.dbg.json +1 -1
  88. package/build/artifacts/contracts/core/libraries/Errors.sol/Errors.dbg.json +1 -1
  89. package/build/artifacts/contracts/core/libraries/ExpiryUtilsLib.sol/ExpiryUtils.dbg.json +1 -1
  90. package/build/artifacts/contracts/core/libraries/MiniHelpers.sol/MiniHelpers.dbg.json +1 -1
  91. package/build/artifacts/contracts/core/libraries/StringLib.sol/StringLib.dbg.json +1 -1
  92. package/build/artifacts/contracts/core/libraries/TokenHelper.sol/TokenHelper.dbg.json +1 -1
  93. package/build/artifacts/contracts/core/libraries/math/LogExpMath.sol/LogExpMath.dbg.json +1 -1
  94. package/build/artifacts/contracts/core/libraries/math/Math.sol/Math.dbg.json +1 -1
  95. package/build/artifacts/contracts/interfaces/Balancer/IAsset.sol/IAsset.dbg.json +1 -1
  96. package/build/artifacts/contracts/interfaces/Balancer/IBalancerFees.sol/IBalancerFees.dbg.json +1 -1
  97. package/build/artifacts/contracts/interfaces/Balancer/IBalancerStablePreview.sol/IBalancerStablePreview.dbg.json +1 -1
  98. package/build/artifacts/contracts/interfaces/Balancer/IBasePool.sol/IBasePool.dbg.json +1 -1
  99. package/build/artifacts/contracts/interfaces/Balancer/IComposableStable.sol/IComposableStable.dbg.json +1 -1
  100. package/build/artifacts/contracts/interfaces/Balancer/IGauge.sol/IGauge.dbg.json +1 -1
  101. package/build/artifacts/contracts/interfaces/Balancer/ILiquidityGaugeFactory.sol/ILiquidityGaugeFactory.dbg.json +1 -1
  102. package/build/artifacts/contracts/interfaces/Balancer/IMetaStablePool.sol/IMetaStablePool.dbg.json +1 -1
  103. package/build/artifacts/contracts/interfaces/Balancer/IRateProvider.sol/IRateProvider.dbg.json +1 -1
  104. package/build/artifacts/contracts/interfaces/Balancer/IVault.sol/IVault.dbg.json +1 -1
  105. package/build/artifacts/contracts/interfaces/ConvexCurve/IBooster.sol/IBooster.dbg.json +1 -1
  106. package/build/artifacts/contracts/interfaces/ConvexCurve/ICrvDepositor.sol/ICrvDepositor.dbg.json +1 -1
  107. package/build/artifacts/contracts/interfaces/ConvexCurve/ICvxCrv.sol/ICvxCrv.dbg.json +1 -1
  108. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
  109. package/build/artifacts/contracts/interfaces/Curve/ICrvPool.sol/ICrvPool.dbg.json +1 -1
  110. package/build/artifacts/contracts/interfaces/Curve/ITriCrvPool.sol/ITriCrvPool.dbg.json +1 -1
  111. package/build/artifacts/contracts/interfaces/GMX/IGMXVault.sol/IGMXVault.dbg.json +1 -1
  112. package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.dbg.json +1 -1
  113. package/build/artifacts/contracts/interfaces/GMX/IGlpManager.sol/IGlpManager.json +26 -0
  114. package/build/artifacts/contracts/interfaces/GMX/IRewardRouterV2.sol/IRewardRouterV2.dbg.json +1 -1
  115. package/build/artifacts/contracts/interfaces/GMX/IVaultPriceFeed.sol/IVaultPriceFeed.dbg.json +1 -1
  116. package/build/artifacts/contracts/interfaces/IAToken.sol/IAToken.dbg.json +1 -1
  117. package/build/artifacts/contracts/interfaces/IAavePool.sol/IAavePool.dbg.json +1 -1
  118. package/build/artifacts/contracts/interfaces/IAaveRewardsController.sol/IAaveRewardsController.dbg.json +1 -1
  119. package/build/artifacts/contracts/interfaces/IAddressProvider.sol/IAddressProvider.dbg.json +1 -1
  120. package/build/artifacts/contracts/interfaces/IApeStaking.sol/IApeStaking.dbg.json +1 -1
  121. package/build/artifacts/contracts/interfaces/IBenQiComptroller.sol/IBenQiComptroller.dbg.json +1 -1
  122. package/build/artifacts/contracts/interfaces/IBenQiInterestRateModel.sol/IBenQiInterestRateModel.dbg.json +1 -1
  123. package/build/artifacts/contracts/interfaces/IBoringOwnableUpgradeable.sol/IBoringOwnableUpgradeable.dbg.json +1 -1
  124. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +1 -1
  125. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +1 -1
  126. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.dbg.json +1 -1
  127. package/build/artifacts/contracts/interfaces/IERC4626.sol/IERC4626.json +19 -0
  128. package/build/artifacts/contracts/interfaces/IEulerEToken.sol/IEulerEToken.dbg.json +1 -1
  129. package/build/artifacts/contracts/interfaces/IEulerMarkets.sol/IEulerMarkets.dbg.json +1 -1
  130. package/build/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.dbg.json +1 -1
  131. package/build/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.dbg.json +1 -1
  132. package/build/artifacts/contracts/interfaces/ILooksFeeSharing.sol/ILooksFeeSharing.dbg.json +1 -1
  133. package/build/artifacts/contracts/interfaces/ILooksStaking.sol/ILooksStaking.dbg.json +1 -1
  134. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  135. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  136. package/build/artifacts/contracts/interfaces/IPActionMisc.sol/IPActionMisc.dbg.json +1 -1
  137. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  138. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  139. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  140. package/build/artifacts/contracts/interfaces/IPBulkSeller.sol/IPBulkSeller.dbg.json +1 -1
  141. package/build/artifacts/contracts/interfaces/IPBulkSellerFactory.sol/IPBulkSellerFactory.dbg.json +1 -1
  142. package/build/artifacts/contracts/interfaces/IPBulkSellerSYCallback.sol/IPBulkSellerCallback.dbg.json +1 -1
  143. package/build/artifacts/contracts/interfaces/IPFeeDistributor.sol/IPFeeDistributor.dbg.json +1 -1
  144. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  145. package/build/artifacts/contracts/interfaces/IPGaugeController.sol/IPGaugeController.dbg.json +1 -1
  146. package/build/artifacts/contracts/interfaces/IPGaugeControllerMainchain.sol/IPGaugeControllerMainchain.dbg.json +1 -1
  147. package/build/artifacts/contracts/interfaces/IPGovernanceManager.sol/IPGovernanceManager.dbg.json +1 -1
  148. package/build/artifacts/contracts/interfaces/IPInterestManagerYT.sol/IPInterestManagerYT.dbg.json +1 -1
  149. package/build/artifacts/contracts/interfaces/IPInterestManagerYTV2.sol/IPInterestManagerYTV2.dbg.json +1 -1
  150. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  151. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  152. package/build/artifacts/contracts/interfaces/IPMarketSwapCallback.sol/IPMarketSwapCallback.dbg.json +1 -1
  153. package/build/artifacts/contracts/interfaces/IPMsgReceiverApp.sol/IPMsgReceiverApp.dbg.json +1 -1
  154. package/build/artifacts/contracts/interfaces/IPMsgSendEndpoint.sol/IPMsgSendEndpoint.dbg.json +1 -1
  155. package/build/artifacts/contracts/interfaces/IPPermissionsV2Upg.sol/IPermissionsV2Upg.dbg.json +1 -1
  156. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  157. package/build/artifacts/contracts/interfaces/IPVeToken.sol/IPVeToken.dbg.json +1 -1
  158. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.dbg.json +1 -1
  159. package/build/artifacts/contracts/interfaces/IPVotingController.sol/IPVotingController.json +39 -0
  160. package/build/artifacts/contracts/interfaces/IPVotingEscrowMainchain.sol/IPVotingEscrowMainchain.dbg.json +1 -1
  161. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  162. package/build/artifacts/contracts/interfaces/IPYieldToken.sol/IPYieldToken.dbg.json +1 -1
  163. package/build/artifacts/contracts/interfaces/IPYieldTokenV2.sol/IPYieldTokenV2.dbg.json +1 -1
  164. package/build/artifacts/contracts/interfaces/IQiAvax.sol/IQiAvax.dbg.json +1 -1
  165. package/build/artifacts/contracts/interfaces/IQiErc20.sol/IQiErc20.dbg.json +1 -1
  166. package/build/artifacts/contracts/interfaces/IQiToken.sol/IQiToken.dbg.json +1 -1
  167. package/build/artifacts/contracts/interfaces/IREDACTEDStaking.sol/IREDACTEDStaking.dbg.json +1 -1
  168. package/build/artifacts/contracts/interfaces/IRewardManager.sol/IRewardManager.dbg.json +1 -1
  169. package/build/artifacts/contracts/interfaces/ISAvax.sol/ISAvax.dbg.json +1 -1
  170. package/build/artifacts/contracts/interfaces/ISJoe.sol/ISJoe.dbg.json +1 -1
  171. package/build/artifacts/contracts/interfaces/IStETH.sol/IStETH.dbg.json +1 -1
  172. package/build/artifacts/contracts/interfaces/IStandardizedYield.sol/IStandardizedYield.dbg.json +1 -1
  173. package/build/artifacts/contracts/interfaces/IStargateLPStaking.sol/IStargateLPStaking.dbg.json +1 -1
  174. package/build/artifacts/contracts/interfaces/IStargatePool.sol/IStargatePool.dbg.json +1 -1
  175. package/build/artifacts/contracts/interfaces/IStargateRouter.sol/IStargateRouter.dbg.json +1 -1
  176. package/build/artifacts/contracts/interfaces/IWAvax.sol/IWAvax.dbg.json +1 -1
  177. package/build/artifacts/contracts/interfaces/IWETH.sol/IWETH.dbg.json +1 -1
  178. package/build/artifacts/contracts/interfaces/IWXBTRFLY.sol/IWXBTRFLY.dbg.json +1 -1
  179. package/build/artifacts/contracts/interfaces/IWstETH.sol/IWstETH.dbg.json +1 -1
  180. package/build/artifacts/contracts/interfaces/IYearnVault.sol/IYearnVault.dbg.json +1 -1
  181. package/build/artifacts/contracts/offchain-helpers/AddressProvider.sol/AddressProvider.dbg.json +1 -1
  182. package/build/artifacts/contracts/offchain-helpers/BaseSplitCodeFactoryContract.sol/BaseSplitCodeFactoryContract.dbg.json +1 -1
  183. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.dbg.json +4 -0
  184. package/build/artifacts/contracts/offchain-helpers/Broadcaster.sol/Broadcaster.json +256 -0
  185. package/build/artifacts/contracts/offchain-helpers/BulkSellerOffchain.sol/BulkSellerOffchain.dbg.json +1 -1
  186. package/build/artifacts/contracts/offchain-helpers/MarketMathStatic.sol/MarketMathStatic.dbg.json +1 -1
  187. package/build/artifacts/contracts/offchain-helpers/Multicall2.sol/Multicall2.dbg.json +1 -1
  188. package/build/artifacts/contracts/offchain-helpers/PendleMulticall.sol/PendleMulticall.dbg.json +1 -1
  189. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.dbg.json +1 -1
  190. package/build/artifacts/contracts/offchain-helpers/RouterStatic.sol/RouterStatic.json +51 -51
  191. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  192. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  193. package/build/artifacts/contracts/router/ActionMisc.sol/ActionMisc.dbg.json +1 -1
  194. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  195. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  196. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  197. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  198. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  199. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  200. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  201. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  202. package/build/artifacts/contracts/router/swap-aggregator/1inch/I1inchAggregationRouterV5.sol/I1inchAggregationRouterV5.dbg.json +1 -1
  203. package/build/artifacts/contracts/router/swap-aggregator/1inch/OneInchAggregationRouterHelper.sol/OneInchAggregationRouterHelper.dbg.json +1 -1
  204. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
  205. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapAggregator.sol/PendleSwapAggregator.dbg.json +1 -1
  206. package/build/artifacts/contracts/router/swap-aggregator/PendleSwapAggregator.sol/PendleSwapAggregator.json +2 -2
  207. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/KyberAggregationRouterHelper.sol/KyberAggregationRouterHelper.dbg.json +1 -1
  208. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/ScaleDataHelperEthereum1.sol/ScaleDataHelperEthereum1.dbg.json +1 -1
  209. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +1 -1
  210. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperEthereum1.sol/IExecutorHelperEthereum1.dbg.json +1 -1
  211. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IHashflow.sol/IHashflow.dbg.json +1 -1
  212. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +1 -1
  213. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +2 -0
  214. package/contracts/core/RewardManager/RewardManager.sol +1 -1
  215. package/contracts/core/StandardizedYield/implementations/PendleGdaiSY.sol +138 -0
  216. package/contracts/interfaces/GMX/IGlpManager.sol +4 -0
  217. package/contracts/interfaces/IERC4626.sol +2 -0
  218. package/contracts/interfaces/IPVotingController.sol +6 -0
  219. package/contracts/offchain-helpers/Broadcaster.sol +48 -0
  220. package/contracts/offchain-helpers/RouterStatic.sol +31 -27
  221. package/contracts/router/swap-aggregator/PendleSwapAggregator.sol +0 -1
  222. package/deployments/42161-markets/GDAI-28MARCH2024.json +10 -0
  223. package/package.json +8 -9
  224. package/typechain-types/ActionInfoStatic.ts +310 -0
  225. package/typechain-types/ActionMarketAuxStatic.ts +350 -0
  226. package/typechain-types/ActionMarketCoreStatic.ts +1489 -0
  227. package/typechain-types/ActionMintRedeemStatic.ts +461 -0
  228. package/typechain-types/ActionStorageStatic.ts +403 -0
  229. package/typechain-types/ActionVePendleStatic.ts +113 -0
  230. package/typechain-types/Broadcaster.ts +454 -0
  231. package/typechain-types/IERC4626.ts +34 -0
  232. package/typechain-types/IGlpManager.ts +50 -0
  233. package/typechain-types/IPActionInfoStatic.ts +310 -0
  234. package/typechain-types/IPActionMarketAuxStatic.ts +350 -0
  235. package/typechain-types/IPActionMarketCoreStatic.ts +1489 -0
  236. package/typechain-types/IPActionMintRedeemStatic.ts +461 -0
  237. package/typechain-types/IPActionStorageStatic.ts +326 -0
  238. package/typechain-types/IPActionVePendleStatic.ts +113 -0
  239. package/typechain-types/IPMiniDiamond.ts +147 -0
  240. package/typechain-types/IPRouterStatic.ts +2394 -509
  241. package/typechain-types/IPVotingController.ts +96 -0
  242. package/typechain-types/PendleGDaiSY.ts +1229 -0
  243. package/typechain-types/PendleRouterStatic.ts +57 -0
  244. package/typechain-types/VotingControllerStorageUpg.ts +96 -0
  245. package/typechain-types/factories/ActionInfoStatic__factory.ts +360 -0
  246. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +390 -0
  247. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1464 -0
  248. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +367 -0
  249. package/typechain-types/factories/ActionStorageStatic__factory.ts +281 -0
  250. package/typechain-types/factories/ActionVePendleStatic__factory.ts +155 -0
  251. package/typechain-types/factories/Broadcaster__factory.ts +311 -0
  252. package/typechain-types/factories/IERC4626__factory.ts +19 -0
  253. package/typechain-types/factories/IGlpManager__factory.ts +26 -0
  254. package/typechain-types/factories/IPActionInfoStatic__factory.ts +322 -0
  255. package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +288 -0
  256. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +1289 -0
  257. package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +292 -0
  258. package/typechain-types/factories/IPActionStorageStatic__factory.ts +203 -0
  259. package/typechain-types/factories/IPActionVePendleStatic__factory.ts +59 -0
  260. package/typechain-types/factories/IPMiniDiamond__factory.ts +67 -0
  261. package/typechain-types/factories/IPRouterStatic__factory.ts +1952 -494
  262. package/typechain-types/factories/IPVotingController__factory.ts +39 -0
  263. package/typechain-types/factories/PendleAuraWethRethSY__factory.ts +1 -1
  264. package/typechain-types/factories/PendleAuraWethWstethSY__factory.ts +1 -1
  265. package/typechain-types/factories/PendleCurveFraxUsdcSY__factory.ts +1 -1
  266. package/typechain-types/factories/PendleCurveUsdd3CrvSY__factory.ts +1 -1
  267. package/typechain-types/factories/PendleFeeDistributor__factory.ts +1 -1
  268. package/typechain-types/factories/PendleGDaiSY__factory.ts +1035 -0
  269. package/typechain-types/factories/PendleGlpSY__factory.ts +1 -1
  270. package/typechain-types/factories/PendleMarket__factory.ts +1 -1
  271. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  272. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  273. package/typechain-types/factories/PendleQiTokenSY__factory.ts +1 -1
  274. package/typechain-types/factories/PendleRouterStatic__factory.ts +88 -0
  275. package/typechain-types/factories/PendleSwapAggregator__factory.ts +1 -1
  276. package/typechain-types/factories/PendleVotingControllerUpg__factory.ts +1 -1
  277. package/typechain-types/factories/PendleYieldContractFactoryV2__factory.ts +1 -1
  278. package/typechain-types/factories/PendleYieldTokenV2__factory.ts +1 -1
  279. package/typechain-types/factories/RouterStatic__factory.ts +1 -1
  280. package/typechain-types/factories/VotingControllerStorageUpg__factory.ts +39 -0
  281. package/typechain-types/hardhat.d.ts +171 -27
  282. package/typechain-types/index.ts +36 -8
  283. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.dbg.json +0 -4
  284. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol/PendleAura3EthSY.json +0 -1257
  285. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.dbg.json +0 -4
  286. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol/PendleAuraCbethWstethSY.json +0 -1244
  287. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.dbg.json +0 -4
  288. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol/ComposableStableMath.json +0 -10
  289. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.dbg.json +0 -4
  290. package/build/artifacts/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol/ComposableStablePreview.json +0 -133
  291. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAura3EthSY.sol +0 -170
  292. package/contracts/core/StandardizedYield/implementations/BalancerStable/PendleAuraCbethWstethSY.sol +0 -162
  293. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol +0 -289
  294. package/contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol +0 -618
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../../../../../build-info/c5caa7775912116b38a3eac15cde30f1.json"
4
- }
@@ -1,10 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "ComposableStableMath",
4
- "sourceName": "contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStableMath.sol",
5
- "abi": [],
6
- "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202dae619a23f173b97ba4c1af5c3dd28bbb0d34c0b78027e8e726ab94bdcf474a64736f6c63430008110033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202dae619a23f173b97ba4c1af5c3dd28bbb0d34c0b78027e8e726ab94bdcf474a64736f6c63430008110033",
8
- "linkReferences": {},
9
- "deployedLinkReferences": {}
10
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../../../../../build-info/c5caa7775912116b38a3eac15cde30f1.json"
4
- }
@@ -1,133 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "ComposableStablePreview",
4
- "sourceName": "contracts/core/StandardizedYield/implementations/BalancerStable/base/ComposableStable/ComposableStablePreview.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "bytes32",
10
- "name": "poolId",
11
- "type": "bytes32"
12
- },
13
- {
14
- "internalType": "address",
15
- "name": "sender",
16
- "type": "address"
17
- },
18
- {
19
- "internalType": "address",
20
- "name": "recipient",
21
- "type": "address"
22
- },
23
- {
24
- "components": [
25
- {
26
- "internalType": "address[]",
27
- "name": "assets",
28
- "type": "address[]"
29
- },
30
- {
31
- "internalType": "uint256[]",
32
- "name": "minAmountsOut",
33
- "type": "uint256[]"
34
- },
35
- {
36
- "internalType": "bytes",
37
- "name": "userData",
38
- "type": "bytes"
39
- },
40
- {
41
- "internalType": "bool",
42
- "name": "toInternalBalance",
43
- "type": "bool"
44
- }
45
- ],
46
- "internalType": "struct IVault.ExitPoolRequest",
47
- "name": "request",
48
- "type": "tuple"
49
- },
50
- {
51
- "internalType": "bytes",
52
- "name": "data",
53
- "type": "bytes"
54
- }
55
- ],
56
- "name": "exitPoolPreview",
57
- "outputs": [
58
- {
59
- "internalType": "uint256",
60
- "name": "amountTokenOut",
61
- "type": "uint256"
62
- }
63
- ],
64
- "stateMutability": "view",
65
- "type": "function"
66
- },
67
- {
68
- "inputs": [
69
- {
70
- "internalType": "bytes32",
71
- "name": "poolId",
72
- "type": "bytes32"
73
- },
74
- {
75
- "internalType": "address",
76
- "name": "sender",
77
- "type": "address"
78
- },
79
- {
80
- "internalType": "address",
81
- "name": "recipient",
82
- "type": "address"
83
- },
84
- {
85
- "components": [
86
- {
87
- "internalType": "address[]",
88
- "name": "assets",
89
- "type": "address[]"
90
- },
91
- {
92
- "internalType": "uint256[]",
93
- "name": "maxAmountsIn",
94
- "type": "uint256[]"
95
- },
96
- {
97
- "internalType": "bytes",
98
- "name": "userData",
99
- "type": "bytes"
100
- },
101
- {
102
- "internalType": "bool",
103
- "name": "fromInternalBalance",
104
- "type": "bool"
105
- }
106
- ],
107
- "internalType": "struct IVault.JoinPoolRequest",
108
- "name": "request",
109
- "type": "tuple"
110
- },
111
- {
112
- "internalType": "bytes",
113
- "name": "data",
114
- "type": "bytes"
115
- }
116
- ],
117
- "name": "joinPoolPreview",
118
- "outputs": [
119
- {
120
- "internalType": "uint256",
121
- "name": "amountBptOut",
122
- "type": "uint256"
123
- }
124
- ],
125
- "stateMutability": "view",
126
- "type": "function"
127
- }
128
- ],
129
- "bytecode": "0x608060405234801561001057600080fd5b50612617806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063626117301461003b5780636669506014610060575b600080fd5b61004e610049366004611fe6565b610073565b60405190815260200160405180910390f35b61004e61006e366004611fe6565b610096565b600061008c6001878787610086886100a5565b876100d6565b9695505050505050565b600061008c6000878787610086885b6100d260405180608001604052806060815260200160608152602001606081526020016000151581525090565b5090565b6000806100e68460000151610117565b90506000806100f589846101cf565b915091506101098a8a8a8a8a87878c61025f565b9a9950505050505050505050565b6060600082516001600160401b0381111561013457610134611d43565b60405190808252806020026020018201604052801561015d578160200160208202803683370190505b50905060005b83518110156101c85761018e84828151811061018157610181612078565b60200260200101516102c5565b8282815181106101a0576101a0612078565b6001600160a01b03909216602092830291909101909101526101c1816120a4565b9050610163565b5092915050565b604051631f29a8cd60e31b8152600481018390526060906000908190819073ba12222222228d8ba445958a75a0704d566bf2c89063f94d466890602401600060405180830381865afa158015610229573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102519190810190612118565b909890975095505050505050565b600080896001811115610274576102746121e5565b0361029b5761029488888887876102896102f8565b8b6040015189610375565b90506102b9565b6102b688888887876102ab6102f8565b8b60400151896103d6565b90505b98975050505050505050565b60006001600160a01b038216156102dc57816102f2565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25b92915050565b600073ce88686553686da562ce7cea497ce749da109f9f6001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa15801561034c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037091906121fb565b905090565b6000808280602001905181019061038c91906122f2565b90506000610399826104b2565b905060006103a783836104bd565b90506103b38982610588565b6103c58c8c8c8c8c8c878d8b8b610604565b509c9b505050505050505050505050565b600080828060200190518101906103ed91906122f2565b90506000606060006103fe846104b2565b9050600061040c85836104bd565b90506104188b82610588565b61042a8e8e8e8e8e8e878f8d8b61062a565b9094509250610439838261063d565b60005b83518110156104a057600084828151811061045957610459612078565b6020026020010151111561048e5783818151811061047957610479612078565b602002602001015196505050505050506102b9565b80610498816120a4565b91505061043c565b50505050505098975050505050505050565b60606102f2826106b3565b606060008361010001516001600160401b038111156104de576104de611d43565b604051908082528060200260200182016040528015610507578160200160208202803683370190505b50905060005b84610100015181101561058057610553610527858361075c565b8660400151838151811061053d5761053d612078565b60200260200101516107b790919063ffffffff16565b82828151811061056557610565612078565b6020908102919091010152610579816120a4565b905061050d565b509392505050565b815160005b818110156105fe576105d18482815181106105aa576105aa612078565b60200260200101518483815181106105c4576105c4612078565b60200260200101516107b7565b8482815181106105e3576105e3612078565b60209081029190910101526105f7816120a4565b905061058d565b50505050565b6000606061061760018a888888886107d6565b915091509a509a98505050505050505050565b6000606061061760008a888888886107d6565b815160005b818110156105fe5761068684828151811061065f5761065f612078565b602002602001015184838151811061067957610679612078565b602002602001015161083f565b84828151811061069857610698612078565b60209081029190910101526106ac816120a4565b9050610642565b60608161010001516001600160401b038111156106d2576106d2611d43565b60405190808252806020026020018201604052801561070b57816020015b6106f8611d07565b8152602001906001900390816106f05790505b50905060005b8261010001518110156107565761072881846108a2565b82828151811061073a5761073a612078565b60200260200101819052508061074f906120a4565b9050610711565b50919050565b600082828151811061077057610770612078565b6020026020010151600001516000146107a65782828151811061079557610795612078565b6020026020010151600001516107b0565b670de0b6b3a76400005b9392505050565b6000670de0b6b3a76400006107cc8385612415565b6107b09190612442565b600060606000806000806107eb8b8989610a04565b9350935093509350611d218c61080357610b2c610807565b610b4e5b905061081c848487858f8f8f8863ffffffff16565b909750955061082d8660008b610b61565b95505050505050965096945050505050565b60008160000361086a5760405162461bcd60e51b815260040161086190612464565b60405180910390fd5b8260000361087a575060006102f2565b600061088e670de0b6b3a764000085612415565b905061089a8382612442565b9150506102f2565b6108aa611d07565b8160e001518314806108c357506108c18284610c37565b155b6102f257600082608001516001600160a01b0316637f1260d1846000015186815181106108f2576108f2612078565b60200260200101516040518263ffffffff1660e01b815260040161092591906001600160a01b0391909116815260200190565b608060405180830381865afa158015610942573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610966919061248b565b6020860192909252509083529050428110156101c8578260200151848151811061099257610992612078565b60200260200101516001600160a01b031663679aefce6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fb91906121fb565b82525092915050565b6000606060008060008087608001516001600160a01b0316633c975d516040518163ffffffff1660e01b81526004016040805180830381865afa158015610a4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7391906124c1565b915091506000806000610a898c86868e8e610c74565b92509250925060008b608001516001600160a01b0316636daccffa6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610ad3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af791906124e5565b505090506000868214610b1357610b0e8285610ccb565b610b15565b825b949e939d50909b5092995090975050505050505050565b60006060610b3e87878a8c8888610e78565b9150915097509795505050505050565b60006060610b3e87878a8c898989610f7b565b606083516001610b71919061251e565b6001600160401b03811115610b8857610b88611d43565b604051908082528060200260200182016040528015610bb1578160200160208202803683370190505b50905060005b8151811015610580578260e001518114610c0657848360e001518210610be757610be2600183612531565b610be9565b815b81518110610bf957610bf9612078565b6020026020010151610c08565b835b828281518110610c1a57610c1a612078565b602090810291909101015280610c2f816120a4565b915050610bb7565b6000806001600160a01b031683602001518381518110610c5957610c59612078565b60200260200101516001600160a01b03161415905092915050565b600060606000806000610c87878b61102b565b91509150600080610c9b838c8c8c8c61106b565b915091506000610cab85846111e2565b9050610cb7818661251e565b9d939c50909a509198505050505050505050565b80516000908190815b81811015610d1257610d08858281518110610cf157610cf1612078565b60200260200101518461120090919063ffffffff16565b9250600101610cd4565b5081600003610d26576000925050506102f2565b600082868302825b60ff811015610e25578260005b86811015610d8257610d78610d50838761120c565b610d738c8481518110610d6557610d65612078565b60200260200101518a61120c565b611235565b9150600101610d3b565b50839450610ddb610dba610db4610d99848a61120c565b610dae610da6888d61120c565b6103e8611235565b90611200565b8661120c565b610d73610dca896001018561120c565b610dae610da66103e889038a61120c565b935084841115610e0357600185850311610dfe57839750505050505050506102f2565b610e1c565b600184860311610e1c57839750505050505050506102f2565b50600101610d2e565b5060405162461bcd60e51b815260206004820152602160248201527f537461626c6520496e76617269616e7420646964206e6f7420636f6e766572676044820152606560f81b6064820152608401610861565b60006060600080610e888661125b565b91509150600087516001600160401b03811115610ea757610ea7611d43565b604051908082528060200260200182016040528015610ed0578160200160208202803683370190505b509050610f4d8883858e8e8b608001516001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4191906121fb565b8f95949392919061127d565b818381518110610f5f57610f5f612078565b6020908102919091010152919a91995090975050505050505050565b600060606000610f8a856113b1565b509050610fa081610f9b86896113c9565b610588565b600061101a88838d8d89608001516001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa158015610feb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100f91906121fb565b8e949392919061148f565b9b919a509098505050505050505050565b6000606061105684848660e001518151811061104957611049612078565b6020026020010151611775565b61106085856113c9565b915091509250929050565b600080600080600061107f8a8a89896117e7565b925092509250600088841161109557600061109f565b61109f8985612531565b905060008484116110b15760006110bb565b6110bb8585612531565b60808a0151604051633823200b60e11b8152600060048201819052929350611141916001600160a01b031690637046401690602401602060405180830381865afa15801561110d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113191906121fb565b61113b858761083f565b906107b7565b60808b0151604051633823200b60e11b8152600260048201529192506000916111c2916001600160a01b031690637046401690602401602060405180830381865afa158015611194573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b891906121fb565b61113b858861083f565b90506111ce818361251e565b9e949d50939b505050505050505050505050565b60006107b06111f08361186a565b6111fa85856107b7565b9061083f565b60006107b0828461251e565b600082820283158061122c5750828482816112295761122961242c565b04145b6107b057600080fd5b60008160000361124457600080fd5b8183816112535761125361242c565b049392505050565b600080828060200190518101906112729190612544565b909590945092505050565b60008061129e8461129887611292818b611890565b9061189c565b90611902565b905060006112ae8a8a848b611936565b905060006112de828b8b815181106112c8576112c8612078565b602002602001015161189090919063ffffffff16565b90506000805b8b51811015611323576113198c828151811061130257611302612078565b60200260200101518361120090919063ffffffff16565b91506001016112e4565b506000611352828d8d8151811061133c5761133c612078565b602002602001015161083f90919063ffffffff16565b9050600061135f8261186a565b9050600061136d8583611902565b9050600061137b8683611890565b905061139c61139583670de0b6b3a76400008d90036107b7565b8290611200565b98505050505050505050979650505050505050565b6060600082806020019051810190611272919061257f565b60606000600183516113db9190612531565b6001600160401b038111156113f2576113f2611d43565b60405190808252806020026020018201604052801561141b578160200160208202803683370190505b50905060005b815181101561058057838560e0015182106114465761144182600161251e565b611448565b815b8151811061145857611458612078565b602002602001015182828151811061147257611472612078565b602090810291909101015280611487816120a4565b915050611421565b600080805b87518110156114bc576114b288828151811061130257611302612078565b9150600101611494565b50600086516001600160401b038111156114d8576114d8611d43565b604051908082528060200260200182016040528015611501578160200160208202803683370190505b5090506000805b89518110156115d6576000611529858c848151811061133c5761133c612078565b905061158d8b838151811061154057611540612078565b60200260200101516111fa8c858151811061155d5761155d612078565b60200260200101518e868151811061157757611577612078565b602002602001015161120090919063ffffffff16565b84838151811061159f5761159f612078565b6020026020010181815250506115cb6115c48286858151811061053d5761053d612078565b8490611200565b925050600101611508565b50600089516001600160401b038111156115f2576115f2611d43565b60405190808252806020026020018201604052801561161b578160200160208202803683370190505b50905060005b8a518110156117135760008385838151811061163f5761163f612078565b602002602001015111156116ba57600061167661166486670de0b6b3a7640000611890565b8e858151811061053d5761053d612078565b90506000611690828e86815181106112c8576112c8612078565b90506116b16116aa82670de0b6b3a76400008d90036107b7565b8390611200565b925050506116d7565b8a82815181106116cc576116cc612078565b602002602001015190505b6116ed818d848151811061157757611577612078565b8383815181106116ff576116ff612078565b602090810291909101015250600101611621565b5060006117208c83610ccb565b9050600061172e828a61083f565b9050670de0b6b3a7640000811115611762576117558a670de0b6b3a763ffff1983016107b7565b965050505050505061008c565b5060009c9b505050505050505050505050565b60006107b08284608001516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e191906121fb565b90611890565b60008060006118036117fc8860018888611b5d565b8790610ccb565b92508460a0015115611823576118198688610ccb565b9150819050611860565b8460c00151156118415782915061183a8688610ccb565b9050611860565b6118516117fc8860008888611b5d565b915061185d8688610ccb565b90505b9450945094915050565b6000670de0b6b3a764000082106118825760006102f2565b50670de0b6b3a76400000390565b60006107b08284612531565b6000816000036118be5760405162461bcd60e51b815260040161086190612464565b826000036118ce575060006102f2565b60006118e2670de0b6b3a764000085612415565b90508260018203816118f6576118f661242c565b046001019150506102f2565b60008061190f8385612415565b9050806000036119235760009150506102f2565b670de0b6b3a764000060001982016118f6565b60008084518602905060008560008151811061195457611954612078565b60200260200101519050600086518760008151811061197557611975612078565b60200260200101510290506000600190505b87518110156119e7576119c66119c06119b9848b85815181106119ac576119ac612078565b602002602001015161120c565b8a5161120c565b88611235565b91506119dd888281518110610cf157610cf1612078565b9250600101611987565b508685815181106119fa576119fa612078565b6020026020010151820391506000611a12878861120c565b90506000611a49611a37611a2f84611a2a898861120c565b611c8e565b6103e861120c565b8a89815181106119ac576119ac612078565b90506000611a64611a5d611a2f8b89611235565b8690611200565b9050600080611a80611a768686611200565b611a2a8d86611200565b905060005b60ff811015611b0057819250611ab5611aa286610dae858661120c565b611a2a8e6117e188610dae88600261120c565b915082821115611ade57600183830311611ad957509750611b559650505050505050565b611af8565b600182840311611af857509750611b559650505050505050565b600101611a85565b5060405162461bcd60e51b815260206004820152602360248201527f537461626c65206765742062616c616e636520646964206e6f7420636f6e766560448201526272676560e81b6064820152608401610861565b949350505050565b83516060906000816001600160401b03811115611b7c57611b7c611d43565b604051908082528060200260200182016040528015611ba5578160200160208202803683370190505b50905060005b82811015611c835760008660e00151821015611bc75781611bd2565b611bd282600161251e565b9050611bde8782611cca565b80611bf65750878015611bf65750611bf68782610c37565b611c1957888281518110611c0c57611c0c612078565b6020026020010151611c55565b611c55898381518110611c2e57611c2e612078565b6020026020010151878381518110611c4857611c48612078565b6020026020010151611cf2565b838381518110611c6757611c67612078565b602090810291909101015250611c7c816120a4565b9050611bab565b509695505050505050565b600081600003611c9d57600080fd5b82600003611cad575060006102f2565b816001840381611cbf57611cbf61242c565b0460010190506102f2565b600082606001518281518110611ce257611ce2612078565b6020026020010151905092915050565b80516020820151600091906107cc9085612415565b604051806040016040528060008152602001600081525090565b611d296125cb565b565b6001600160a01b0381168114611d4057600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b0381118282101715611d7b57611d7b611d43565b60405290565b60405161012081016001600160401b0381118282101715611d7b57611d7b611d43565b604051601f8201601f191681016001600160401b0381118282101715611dcc57611dcc611d43565b604052919050565b60006001600160401b03821115611ded57611ded611d43565b5060051b60200190565b600082601f830112611e0857600080fd5b81356020611e1d611e1883611dd4565b611da4565b82815260059290921b84018101918181019086841115611e3c57600080fd5b8286015b84811015611c835780358352918301918301611e40565b600082601f830112611e6857600080fd5b81356001600160401b03811115611e8157611e81611d43565b611e94601f8201601f1916602001611da4565b818152846020838601011115611ea957600080fd5b816020850160208301376000918101602001919091529392505050565b8015158114611d4057600080fd5b8035611edf81611ec6565b919050565b600060808284031215611ef657600080fd5b611efe611d59565b905081356001600160401b0380821115611f1757600080fd5b818401915084601f830112611f2b57600080fd5b81356020611f3b611e1883611dd4565b82815260059290921b84018101918181019088841115611f5a57600080fd5b948201945b83861015611f81578535611f7281611d2b565b82529482019490820190611f5f565b86525085810135935082841115611f9757600080fd5b611fa387858801611df7565b90850152506040840135915080821115611fbc57600080fd5b50611fc984828501611e57565b604083015250611fdb60608301611ed4565b606082015292915050565b600080600080600060a08688031215611ffe57600080fd5b85359450602086013561201081611d2b565b9350604086013561202081611d2b565b925060608601356001600160401b038082111561203c57600080fd5b61204889838a01611ee4565b9350608088013591508082111561205e57600080fd5b5061206b88828901611e57565b9150509295509295909350565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120b6576120b661208e565b5060010190565b600082601f8301126120ce57600080fd5b815160206120de611e1883611dd4565b82815260059290921b840181019181810190868411156120fd57600080fd5b8286015b84811015611c835780518352918301918301612101565b60008060006060848603121561212d57600080fd5b83516001600160401b038082111561214457600080fd5b818601915086601f83011261215857600080fd5b81516020612168611e1883611dd4565b82815260059290921b8401810191818101908a84111561218757600080fd5b948201945b838610156121ae57855161219f81611d2b565b8252948201949082019061218c565b918901519197509093505050808211156121c757600080fd5b506121d4868287016120bd565b925050604084015190509250925092565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561220d57600080fd5b5051919050565b8051611edf81611d2b565b600082601f83011261223057600080fd5b81516020612240611e1883611dd4565b82815260059290921b8401810191818101908684111561225f57600080fd5b8286015b84811015611c8357805161227681611d2b565b8352918301918301612263565b8051611edf81611ec6565b600082601f83011261229f57600080fd5b815160206122af611e1883611dd4565b82815260059290921b840181019181810190868411156122ce57600080fd5b8286015b84811015611c835780516122e581611ec6565b83529183019183016122d2565b60006020828403121561230457600080fd5b81516001600160401b038082111561231b57600080fd5b90830190610120828603121561233057600080fd5b612338611d81565b82518281111561234757600080fd5b6123538782860161221f565b82525060208301518281111561236857600080fd5b6123748782860161221f565b60208301525060408301518281111561238c57600080fd5b612398878286016120bd565b6040830152506060830151828111156123b057600080fd5b6123bc8782860161228e565b6060830152506123ce60808401612214565b60808201526123df60a08401612283565b60a08201526123f060c08401612283565b60c082015260e083810151908201526101009283015192810192909252509392505050565b80820281158282048414176102f2576102f261208e565b634e487b7160e01b600052601260045260246000fd5b60008261245f57634e487b7160e01b600052601260045260246000fd5b500490565b6020808252600d908201526c2d32b937903234bb34b9b4b7b760991b604082015260600190565b600080600080608085870312156124a157600080fd5b505082516020840151604085015160609095015191969095509092509050565b600080604083850312156124d457600080fd5b505080516020909101519092909150565b6000806000606084860312156124fa57600080fd5b83519250602084015161250c81611ec6565b80925050604084015190509250925092565b808201808211156102f2576102f261208e565b818103818111156102f2576102f261208e565b60008060006060848603121561255957600080fd5b83516002811061256857600080fd5b602085015160409095015190969495509392505050565b60008060006060848603121561259457600080fd5b8351600381106125a357600080fd5b60208501519093506001600160401b038111156125bf57600080fd5b6121d4868287016120bd565b634e487b7160e01b600052605160045260246000fdfea2646970667358221220f47c7e989a8c121dbce44771a9c8411189ae7186160de2014d9cf8de3762578f64736f6c63430008110033",
130
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063626117301461003b5780636669506014610060575b600080fd5b61004e610049366004611fe6565b610073565b60405190815260200160405180910390f35b61004e61006e366004611fe6565b610096565b600061008c6001878787610086886100a5565b876100d6565b9695505050505050565b600061008c6000878787610086885b6100d260405180608001604052806060815260200160608152602001606081526020016000151581525090565b5090565b6000806100e68460000151610117565b90506000806100f589846101cf565b915091506101098a8a8a8a8a87878c61025f565b9a9950505050505050505050565b6060600082516001600160401b0381111561013457610134611d43565b60405190808252806020026020018201604052801561015d578160200160208202803683370190505b50905060005b83518110156101c85761018e84828151811061018157610181612078565b60200260200101516102c5565b8282815181106101a0576101a0612078565b6001600160a01b03909216602092830291909101909101526101c1816120a4565b9050610163565b5092915050565b604051631f29a8cd60e31b8152600481018390526060906000908190819073ba12222222228d8ba445958a75a0704d566bf2c89063f94d466890602401600060405180830381865afa158015610229573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102519190810190612118565b909890975095505050505050565b600080896001811115610274576102746121e5565b0361029b5761029488888887876102896102f8565b8b6040015189610375565b90506102b9565b6102b688888887876102ab6102f8565b8b60400151896103d6565b90505b98975050505050505050565b60006001600160a01b038216156102dc57816102f2565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25b92915050565b600073ce88686553686da562ce7cea497ce749da109f9f6001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa15801561034c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037091906121fb565b905090565b6000808280602001905181019061038c91906122f2565b90506000610399826104b2565b905060006103a783836104bd565b90506103b38982610588565b6103c58c8c8c8c8c8c878d8b8b610604565b509c9b505050505050505050505050565b600080828060200190518101906103ed91906122f2565b90506000606060006103fe846104b2565b9050600061040c85836104bd565b90506104188b82610588565b61042a8e8e8e8e8e8e878f8d8b61062a565b9094509250610439838261063d565b60005b83518110156104a057600084828151811061045957610459612078565b6020026020010151111561048e5783818151811061047957610479612078565b602002602001015196505050505050506102b9565b80610498816120a4565b91505061043c565b50505050505098975050505050505050565b60606102f2826106b3565b606060008361010001516001600160401b038111156104de576104de611d43565b604051908082528060200260200182016040528015610507578160200160208202803683370190505b50905060005b84610100015181101561058057610553610527858361075c565b8660400151838151811061053d5761053d612078565b60200260200101516107b790919063ffffffff16565b82828151811061056557610565612078565b6020908102919091010152610579816120a4565b905061050d565b509392505050565b815160005b818110156105fe576105d18482815181106105aa576105aa612078565b60200260200101518483815181106105c4576105c4612078565b60200260200101516107b7565b8482815181106105e3576105e3612078565b60209081029190910101526105f7816120a4565b905061058d565b50505050565b6000606061061760018a888888886107d6565b915091509a509a98505050505050505050565b6000606061061760008a888888886107d6565b815160005b818110156105fe5761068684828151811061065f5761065f612078565b602002602001015184838151811061067957610679612078565b602002602001015161083f565b84828151811061069857610698612078565b60209081029190910101526106ac816120a4565b9050610642565b60608161010001516001600160401b038111156106d2576106d2611d43565b60405190808252806020026020018201604052801561070b57816020015b6106f8611d07565b8152602001906001900390816106f05790505b50905060005b8261010001518110156107565761072881846108a2565b82828151811061073a5761073a612078565b60200260200101819052508061074f906120a4565b9050610711565b50919050565b600082828151811061077057610770612078565b6020026020010151600001516000146107a65782828151811061079557610795612078565b6020026020010151600001516107b0565b670de0b6b3a76400005b9392505050565b6000670de0b6b3a76400006107cc8385612415565b6107b09190612442565b600060606000806000806107eb8b8989610a04565b9350935093509350611d218c61080357610b2c610807565b610b4e5b905061081c848487858f8f8f8863ffffffff16565b909750955061082d8660008b610b61565b95505050505050965096945050505050565b60008160000361086a5760405162461bcd60e51b815260040161086190612464565b60405180910390fd5b8260000361087a575060006102f2565b600061088e670de0b6b3a764000085612415565b905061089a8382612442565b9150506102f2565b6108aa611d07565b8160e001518314806108c357506108c18284610c37565b155b6102f257600082608001516001600160a01b0316637f1260d1846000015186815181106108f2576108f2612078565b60200260200101516040518263ffffffff1660e01b815260040161092591906001600160a01b0391909116815260200190565b608060405180830381865afa158015610942573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610966919061248b565b6020860192909252509083529050428110156101c8578260200151848151811061099257610992612078565b60200260200101516001600160a01b031663679aefce6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fb91906121fb565b82525092915050565b6000606060008060008087608001516001600160a01b0316633c975d516040518163ffffffff1660e01b81526004016040805180830381865afa158015610a4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7391906124c1565b915091506000806000610a898c86868e8e610c74565b92509250925060008b608001516001600160a01b0316636daccffa6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610ad3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af791906124e5565b505090506000868214610b1357610b0e8285610ccb565b610b15565b825b949e939d50909b5092995090975050505050505050565b60006060610b3e87878a8c8888610e78565b9150915097509795505050505050565b60006060610b3e87878a8c898989610f7b565b606083516001610b71919061251e565b6001600160401b03811115610b8857610b88611d43565b604051908082528060200260200182016040528015610bb1578160200160208202803683370190505b50905060005b8151811015610580578260e001518114610c0657848360e001518210610be757610be2600183612531565b610be9565b815b81518110610bf957610bf9612078565b6020026020010151610c08565b835b828281518110610c1a57610c1a612078565b602090810291909101015280610c2f816120a4565b915050610bb7565b6000806001600160a01b031683602001518381518110610c5957610c59612078565b60200260200101516001600160a01b03161415905092915050565b600060606000806000610c87878b61102b565b91509150600080610c9b838c8c8c8c61106b565b915091506000610cab85846111e2565b9050610cb7818661251e565b9d939c50909a509198505050505050505050565b80516000908190815b81811015610d1257610d08858281518110610cf157610cf1612078565b60200260200101518461120090919063ffffffff16565b9250600101610cd4565b5081600003610d26576000925050506102f2565b600082868302825b60ff811015610e25578260005b86811015610d8257610d78610d50838761120c565b610d738c8481518110610d6557610d65612078565b60200260200101518a61120c565b611235565b9150600101610d3b565b50839450610ddb610dba610db4610d99848a61120c565b610dae610da6888d61120c565b6103e8611235565b90611200565b8661120c565b610d73610dca896001018561120c565b610dae610da66103e889038a61120c565b935084841115610e0357600185850311610dfe57839750505050505050506102f2565b610e1c565b600184860311610e1c57839750505050505050506102f2565b50600101610d2e565b5060405162461bcd60e51b815260206004820152602160248201527f537461626c6520496e76617269616e7420646964206e6f7420636f6e766572676044820152606560f81b6064820152608401610861565b60006060600080610e888661125b565b91509150600087516001600160401b03811115610ea757610ea7611d43565b604051908082528060200260200182016040528015610ed0578160200160208202803683370190505b509050610f4d8883858e8e8b608001516001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4191906121fb565b8f95949392919061127d565b818381518110610f5f57610f5f612078565b6020908102919091010152919a91995090975050505050505050565b600060606000610f8a856113b1565b509050610fa081610f9b86896113c9565b610588565b600061101a88838d8d89608001516001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa158015610feb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100f91906121fb565b8e949392919061148f565b9b919a509098505050505050505050565b6000606061105684848660e001518151811061104957611049612078565b6020026020010151611775565b61106085856113c9565b915091509250929050565b600080600080600061107f8a8a89896117e7565b925092509250600088841161109557600061109f565b61109f8985612531565b905060008484116110b15760006110bb565b6110bb8585612531565b60808a0151604051633823200b60e11b8152600060048201819052929350611141916001600160a01b031690637046401690602401602060405180830381865afa15801561110d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113191906121fb565b61113b858761083f565b906107b7565b60808b0151604051633823200b60e11b8152600260048201529192506000916111c2916001600160a01b031690637046401690602401602060405180830381865afa158015611194573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b891906121fb565b61113b858861083f565b90506111ce818361251e565b9e949d50939b505050505050505050505050565b60006107b06111f08361186a565b6111fa85856107b7565b9061083f565b60006107b0828461251e565b600082820283158061122c5750828482816112295761122961242c565b04145b6107b057600080fd5b60008160000361124457600080fd5b8183816112535761125361242c565b049392505050565b600080828060200190518101906112729190612544565b909590945092505050565b60008061129e8461129887611292818b611890565b9061189c565b90611902565b905060006112ae8a8a848b611936565b905060006112de828b8b815181106112c8576112c8612078565b602002602001015161189090919063ffffffff16565b90506000805b8b51811015611323576113198c828151811061130257611302612078565b60200260200101518361120090919063ffffffff16565b91506001016112e4565b506000611352828d8d8151811061133c5761133c612078565b602002602001015161083f90919063ffffffff16565b9050600061135f8261186a565b9050600061136d8583611902565b9050600061137b8683611890565b905061139c61139583670de0b6b3a76400008d90036107b7565b8290611200565b98505050505050505050979650505050505050565b6060600082806020019051810190611272919061257f565b60606000600183516113db9190612531565b6001600160401b038111156113f2576113f2611d43565b60405190808252806020026020018201604052801561141b578160200160208202803683370190505b50905060005b815181101561058057838560e0015182106114465761144182600161251e565b611448565b815b8151811061145857611458612078565b602002602001015182828151811061147257611472612078565b602090810291909101015280611487816120a4565b915050611421565b600080805b87518110156114bc576114b288828151811061130257611302612078565b9150600101611494565b50600086516001600160401b038111156114d8576114d8611d43565b604051908082528060200260200182016040528015611501578160200160208202803683370190505b5090506000805b89518110156115d6576000611529858c848151811061133c5761133c612078565b905061158d8b838151811061154057611540612078565b60200260200101516111fa8c858151811061155d5761155d612078565b60200260200101518e868151811061157757611577612078565b602002602001015161120090919063ffffffff16565b84838151811061159f5761159f612078565b6020026020010181815250506115cb6115c48286858151811061053d5761053d612078565b8490611200565b925050600101611508565b50600089516001600160401b038111156115f2576115f2611d43565b60405190808252806020026020018201604052801561161b578160200160208202803683370190505b50905060005b8a518110156117135760008385838151811061163f5761163f612078565b602002602001015111156116ba57600061167661166486670de0b6b3a7640000611890565b8e858151811061053d5761053d612078565b90506000611690828e86815181106112c8576112c8612078565b90506116b16116aa82670de0b6b3a76400008d90036107b7565b8390611200565b925050506116d7565b8a82815181106116cc576116cc612078565b602002602001015190505b6116ed818d848151811061157757611577612078565b8383815181106116ff576116ff612078565b602090810291909101015250600101611621565b5060006117208c83610ccb565b9050600061172e828a61083f565b9050670de0b6b3a7640000811115611762576117558a670de0b6b3a763ffff1983016107b7565b965050505050505061008c565b5060009c9b505050505050505050505050565b60006107b08284608001516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e191906121fb565b90611890565b60008060006118036117fc8860018888611b5d565b8790610ccb565b92508460a0015115611823576118198688610ccb565b9150819050611860565b8460c00151156118415782915061183a8688610ccb565b9050611860565b6118516117fc8860008888611b5d565b915061185d8688610ccb565b90505b9450945094915050565b6000670de0b6b3a764000082106118825760006102f2565b50670de0b6b3a76400000390565b60006107b08284612531565b6000816000036118be5760405162461bcd60e51b815260040161086190612464565b826000036118ce575060006102f2565b60006118e2670de0b6b3a764000085612415565b90508260018203816118f6576118f661242c565b046001019150506102f2565b60008061190f8385612415565b9050806000036119235760009150506102f2565b670de0b6b3a764000060001982016118f6565b60008084518602905060008560008151811061195457611954612078565b60200260200101519050600086518760008151811061197557611975612078565b60200260200101510290506000600190505b87518110156119e7576119c66119c06119b9848b85815181106119ac576119ac612078565b602002602001015161120c565b8a5161120c565b88611235565b91506119dd888281518110610cf157610cf1612078565b9250600101611987565b508685815181106119fa576119fa612078565b6020026020010151820391506000611a12878861120c565b90506000611a49611a37611a2f84611a2a898861120c565b611c8e565b6103e861120c565b8a89815181106119ac576119ac612078565b90506000611a64611a5d611a2f8b89611235565b8690611200565b9050600080611a80611a768686611200565b611a2a8d86611200565b905060005b60ff811015611b0057819250611ab5611aa286610dae858661120c565b611a2a8e6117e188610dae88600261120c565b915082821115611ade57600183830311611ad957509750611b559650505050505050565b611af8565b600182840311611af857509750611b559650505050505050565b600101611a85565b5060405162461bcd60e51b815260206004820152602360248201527f537461626c65206765742062616c616e636520646964206e6f7420636f6e766560448201526272676560e81b6064820152608401610861565b949350505050565b83516060906000816001600160401b03811115611b7c57611b7c611d43565b604051908082528060200260200182016040528015611ba5578160200160208202803683370190505b50905060005b82811015611c835760008660e00151821015611bc75781611bd2565b611bd282600161251e565b9050611bde8782611cca565b80611bf65750878015611bf65750611bf68782610c37565b611c1957888281518110611c0c57611c0c612078565b6020026020010151611c55565b611c55898381518110611c2e57611c2e612078565b6020026020010151878381518110611c4857611c48612078565b6020026020010151611cf2565b838381518110611c6757611c67612078565b602090810291909101015250611c7c816120a4565b9050611bab565b509695505050505050565b600081600003611c9d57600080fd5b82600003611cad575060006102f2565b816001840381611cbf57611cbf61242c565b0460010190506102f2565b600082606001518281518110611ce257611ce2612078565b6020026020010151905092915050565b80516020820151600091906107cc9085612415565b604051806040016040528060008152602001600081525090565b611d296125cb565b565b6001600160a01b0381168114611d4057600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b0381118282101715611d7b57611d7b611d43565b60405290565b60405161012081016001600160401b0381118282101715611d7b57611d7b611d43565b604051601f8201601f191681016001600160401b0381118282101715611dcc57611dcc611d43565b604052919050565b60006001600160401b03821115611ded57611ded611d43565b5060051b60200190565b600082601f830112611e0857600080fd5b81356020611e1d611e1883611dd4565b611da4565b82815260059290921b84018101918181019086841115611e3c57600080fd5b8286015b84811015611c835780358352918301918301611e40565b600082601f830112611e6857600080fd5b81356001600160401b03811115611e8157611e81611d43565b611e94601f8201601f1916602001611da4565b818152846020838601011115611ea957600080fd5b816020850160208301376000918101602001919091529392505050565b8015158114611d4057600080fd5b8035611edf81611ec6565b919050565b600060808284031215611ef657600080fd5b611efe611d59565b905081356001600160401b0380821115611f1757600080fd5b818401915084601f830112611f2b57600080fd5b81356020611f3b611e1883611dd4565b82815260059290921b84018101918181019088841115611f5a57600080fd5b948201945b83861015611f81578535611f7281611d2b565b82529482019490820190611f5f565b86525085810135935082841115611f9757600080fd5b611fa387858801611df7565b90850152506040840135915080821115611fbc57600080fd5b50611fc984828501611e57565b604083015250611fdb60608301611ed4565b606082015292915050565b600080600080600060a08688031215611ffe57600080fd5b85359450602086013561201081611d2b565b9350604086013561202081611d2b565b925060608601356001600160401b038082111561203c57600080fd5b61204889838a01611ee4565b9350608088013591508082111561205e57600080fd5b5061206b88828901611e57565b9150509295509295909350565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120b6576120b661208e565b5060010190565b600082601f8301126120ce57600080fd5b815160206120de611e1883611dd4565b82815260059290921b840181019181810190868411156120fd57600080fd5b8286015b84811015611c835780518352918301918301612101565b60008060006060848603121561212d57600080fd5b83516001600160401b038082111561214457600080fd5b818601915086601f83011261215857600080fd5b81516020612168611e1883611dd4565b82815260059290921b8401810191818101908a84111561218757600080fd5b948201945b838610156121ae57855161219f81611d2b565b8252948201949082019061218c565b918901519197509093505050808211156121c757600080fd5b506121d4868287016120bd565b925050604084015190509250925092565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561220d57600080fd5b5051919050565b8051611edf81611d2b565b600082601f83011261223057600080fd5b81516020612240611e1883611dd4565b82815260059290921b8401810191818101908684111561225f57600080fd5b8286015b84811015611c8357805161227681611d2b565b8352918301918301612263565b8051611edf81611ec6565b600082601f83011261229f57600080fd5b815160206122af611e1883611dd4565b82815260059290921b840181019181810190868411156122ce57600080fd5b8286015b84811015611c835780516122e581611ec6565b83529183019183016122d2565b60006020828403121561230457600080fd5b81516001600160401b038082111561231b57600080fd5b90830190610120828603121561233057600080fd5b612338611d81565b82518281111561234757600080fd5b6123538782860161221f565b82525060208301518281111561236857600080fd5b6123748782860161221f565b60208301525060408301518281111561238c57600080fd5b612398878286016120bd565b6040830152506060830151828111156123b057600080fd5b6123bc8782860161228e565b6060830152506123ce60808401612214565b60808201526123df60a08401612283565b60a08201526123f060c08401612283565b60c082015260e083810151908201526101009283015192810192909252509392505050565b80820281158282048414176102f2576102f261208e565b634e487b7160e01b600052601260045260246000fd5b60008261245f57634e487b7160e01b600052601260045260246000fd5b500490565b6020808252600d908201526c2d32b937903234bb34b9b4b7b760991b604082015260600190565b600080600080608085870312156124a157600080fd5b505082516020840151604085015160609095015191969095509092509050565b600080604083850312156124d457600080fd5b505080516020909101519092909150565b6000806000606084860312156124fa57600080fd5b83519250602084015161250c81611ec6565b80925050604084015190509250925092565b808201808211156102f2576102f261208e565b818103818111156102f2576102f261208e565b60008060006060848603121561255957600080fd5b83516002811061256857600080fd5b602085015160409095015190969495509392505050565b60008060006060848603121561259457600080fd5b8351600381106125a357600080fd5b60208501519093506001600160401b038111156125bf57600080fd5b6121d4868287016120bd565b634e487b7160e01b600052605160045260246000fdfea2646970667358221220f47c7e989a8c121dbce44771a9c8411189ae7186160de2014d9cf8de3762578f64736f6c63430008110033",
131
- "linkReferences": {},
132
- "deployedLinkReferences": {}
133
- }
@@ -1,170 +0,0 @@
1
- // SPDX-License-Identifier: GPL-3.0-or-later
2
- pragma solidity 0.8.17;
3
-
4
- import "./base/PendleAuraBalancerStableLPSY.sol";
5
- import "../../StEthHelper.sol";
6
- import "./base/ComposableStable/ComposableStablePreview.sol";
7
-
8
- contract PendleAura3EthSY is PendleAuraBalancerStableLPSY, StEthHelper {
9
- address public constant SFRXETH = 0xac3E018457B222d93114458476f3E3416Abbe38F;
10
- address public constant RETH = 0xae78736Cd615f374D3085123A210448E74Fc6393;
11
-
12
- uint256 internal constant AURA_PID = 13;
13
- address internal constant LP = 0x8e85e97ed19C0fa13B2549309965291fbbc0048b;
14
-
15
- uint256 public constant BPT_INDEX = 1;
16
- bool public constant NO_TOKENS_EXEMPT = true;
17
- bool public constant ALL_TOKENS_EXEMPT = false;
18
-
19
- constructor(
20
- string memory _name,
21
- string memory _symbol,
22
- ComposableStablePreview _previewHelper
23
- ) PendleAuraBalancerStableLPSY(_name, _symbol, LP, AURA_PID, _previewHelper) {}
24
-
25
- function _deposit(address tokenIn, uint256 amount)
26
- internal
27
- virtual
28
- override
29
- returns (uint256 amountSharesOut)
30
- {
31
- if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
32
- uint256 amountWstETH = _depositWstETH(tokenIn, amount);
33
- amountSharesOut = super._deposit(WSTETH, amountWstETH);
34
- } else {
35
- amountSharesOut = super._deposit(tokenIn, amount);
36
- }
37
- }
38
-
39
- function _redeem(
40
- address receiver,
41
- address tokenOut,
42
- uint256 amountSharesToRedeem
43
- ) internal virtual override returns (uint256 amountTokenOut) {
44
- if (tokenOut == STETH) {
45
- uint256 amountWstETH = super._redeem(address(this), WSTETH, amountSharesToRedeem);
46
- amountTokenOut = _redeemWstETH(receiver, amountWstETH);
47
- } else {
48
- amountTokenOut = super._redeem(receiver, tokenOut, amountSharesToRedeem);
49
- }
50
- }
51
-
52
- function _previewDeposit(address tokenIn, uint256 amountTokenToDeposit)
53
- internal
54
- view
55
- virtual
56
- override
57
- returns (uint256 amountSharesOut)
58
- {
59
- if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
60
- uint256 amountWstETH = _previewDepositWstETH(tokenIn, amountTokenToDeposit);
61
- amountSharesOut = super._previewDeposit(WSTETH, amountWstETH);
62
- } else {
63
- amountSharesOut = super._previewDeposit(tokenIn, amountTokenToDeposit);
64
- }
65
- }
66
-
67
- function _previewRedeem(address tokenOut, uint256 amountSharesToRedeem)
68
- internal
69
- view
70
- virtual
71
- override
72
- returns (uint256 amountTokenOut)
73
- {
74
- if (tokenOut == STETH) {
75
- uint256 amountWstETH = super._previewRedeem(WSTETH, amountSharesToRedeem);
76
- amountTokenOut = _previewRedeemWstETH(amountWstETH);
77
- } else {
78
- amountTokenOut = super._previewRedeem(tokenOut, amountSharesToRedeem);
79
- }
80
- }
81
-
82
- function _getImmutablePoolData() internal view virtual override returns (bytes memory ret) {
83
- ComposableStablePreview.ImmutableData memory res;
84
- res.poolTokens = _getPoolTokenAddresses();
85
- res.rateProviders = _getRateProviders();
86
- res.rawScalingFactors = _getRawScalingFactors();
87
- res.isExemptFromYieldProtocolFee = _getExemption();
88
- res.LP = LP;
89
- res.noTokensExempt = NO_TOKENS_EXEMPT;
90
- res.allTokensExempt = ALL_TOKENS_EXEMPT;
91
- res.bptIndex = BPT_INDEX;
92
- res.totalTokens = res.poolTokens.length;
93
-
94
- return abi.encode(res);
95
- }
96
-
97
- function _getPoolTokenAddresses()
98
- internal
99
- view
100
- virtual
101
- override
102
- returns (address[] memory res)
103
- {
104
- res = new address[](4);
105
- res[0] = WSTETH;
106
- res[1] = LP;
107
- res[2] = SFRXETH;
108
- res[3] = RETH;
109
- }
110
-
111
- function _getBPTIndex() internal view virtual override returns (uint256) {
112
- return BPT_INDEX;
113
- }
114
-
115
- function _getRateProviders() internal view virtual returns (address[] memory res) {
116
- res = new address[](4);
117
- res[0] = 0x72D07D7DcA67b8A406aD1Ec34ce969c90bFEE768;
118
- res[1] = 0x0000000000000000000000000000000000000000;
119
- res[2] = 0x302013E7936a39c358d07A3Df55dc94EC417E3a1;
120
- res[3] = 0x1a8F81c256aee9C640e14bB0453ce247ea0DFE6F;
121
- }
122
-
123
- function _getRawScalingFactors() internal view virtual returns (uint256[] memory res) {
124
- res = new uint256[](4);
125
- res[0] = res[1] = res[2] = res[3] = 1e18;
126
- }
127
-
128
- function _getExemption() internal view virtual returns (bool[] memory res) {
129
- res = new bool[](4);
130
- res[0] = res[1] = res[2] = res[3] = false;
131
- }
132
-
133
- function getTokensIn() public view virtual override returns (address[] memory res) {
134
- res = new address[](7);
135
- res[0] = WSTETH;
136
- res[1] = LP;
137
- res[2] = SFRXETH;
138
- res[3] = RETH;
139
- res[4] = NATIVE;
140
- res[5] = WETH;
141
- res[6] = STETH;
142
- }
143
-
144
- function getTokensOut() public view virtual override returns (address[] memory res) {
145
- res = new address[](5);
146
- res[0] = WSTETH;
147
- res[1] = LP;
148
- res[2] = SFRXETH;
149
- res[3] = RETH;
150
- res[4] = STETH;
151
- }
152
-
153
- function isValidTokenIn(address token) public view virtual override returns (bool) {
154
- return (token == WSTETH ||
155
- token == LP ||
156
- token == SFRXETH ||
157
- token == RETH ||
158
- token == NATIVE ||
159
- token == WETH ||
160
- token == STETH);
161
- }
162
-
163
- function isValidTokenOut(address token) public view virtual override returns (bool) {
164
- return (token == WSTETH ||
165
- token == LP ||
166
- token == SFRXETH ||
167
- token == RETH ||
168
- token == STETH);
169
- }
170
- }
@@ -1,162 +0,0 @@
1
- // SPDX-License-Identifier: GPL-3.0-or-later
2
- pragma solidity 0.8.17;
3
-
4
- import "./base/PendleAuraBalancerStableLPSY.sol";
5
- import "../../StEthHelper.sol";
6
- import "./base/ComposableStable/ComposableStablePreview.sol";
7
-
8
- contract PendleAuraCbethWstethSY is PendleAuraBalancerStableLPSY, StEthHelper {
9
- address public constant CBETH = 0xBe9895146f7AF43049ca1c1AE358B0541Ea49704;
10
-
11
- uint256 internal constant AURA_PID = 37;
12
- address internal constant LP = 0x4EdcB2B46377530Bc18BB4D2c7Fe46a992c73e10;
13
-
14
- uint256 public constant BPT_INDEX = 0;
15
- bool public constant NO_TOKENS_EXEMPT = true;
16
- bool public constant ALL_TOKENS_EXEMPT = false;
17
-
18
- constructor(
19
- string memory _name,
20
- string memory _symbol,
21
- ComposableStablePreview _previewHelper
22
- ) PendleAuraBalancerStableLPSY(_name, _symbol, LP, AURA_PID, _previewHelper) {}
23
-
24
- function _deposit(address tokenIn, uint256 amount)
25
- internal
26
- virtual
27
- override
28
- returns (uint256 amountSharesOut)
29
- {
30
- if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
31
- uint256 amountWstETH = _depositWstETH(tokenIn, amount);
32
- amountSharesOut = super._deposit(WSTETH, amountWstETH);
33
- } else {
34
- amountSharesOut = super._deposit(tokenIn, amount);
35
- }
36
- }
37
-
38
- function _redeem(
39
- address receiver,
40
- address tokenOut,
41
- uint256 amountSharesToRedeem
42
- ) internal virtual override returns (uint256 amountTokenOut) {
43
- if (tokenOut == STETH) {
44
- uint256 amountWstETH = super._redeem(address(this), WSTETH, amountSharesToRedeem);
45
- amountTokenOut = _redeemWstETH(receiver, amountWstETH);
46
- } else {
47
- amountTokenOut = super._redeem(receiver, tokenOut, amountSharesToRedeem);
48
- }
49
- }
50
-
51
- function _previewDeposit(address tokenIn, uint256 amountTokenToDeposit)
52
- internal
53
- view
54
- virtual
55
- override
56
- returns (uint256 amountSharesOut)
57
- {
58
- if (tokenIn == NATIVE || tokenIn == WETH || tokenIn == STETH) {
59
- uint256 amountWstETH = _previewDepositWstETH(tokenIn, amountTokenToDeposit);
60
- amountSharesOut = super._previewDeposit(WSTETH, amountWstETH);
61
- } else {
62
- amountSharesOut = super._previewDeposit(tokenIn, amountTokenToDeposit);
63
- }
64
- }
65
-
66
- function _previewRedeem(address tokenOut, uint256 amountSharesToRedeem)
67
- internal
68
- view
69
- virtual
70
- override
71
- returns (uint256 amountTokenOut)
72
- {
73
- if (tokenOut == STETH) {
74
- uint256 amountWstETH = super._previewRedeem(WSTETH, amountSharesToRedeem);
75
- amountTokenOut = _previewRedeemWstETH(amountWstETH);
76
- } else {
77
- amountTokenOut = super._previewRedeem(tokenOut, amountSharesToRedeem);
78
- }
79
- }
80
-
81
- function _getImmutablePoolData() internal view virtual override returns (bytes memory ret) {
82
- ComposableStablePreview.ImmutableData memory res;
83
- res.poolTokens = _getPoolTokenAddresses();
84
- res.rateProviders = _getRateProviders();
85
- res.rawScalingFactors = _getRawScalingFactors();
86
- res.isExemptFromYieldProtocolFee = _getExemption();
87
- res.LP = LP;
88
- res.noTokensExempt = NO_TOKENS_EXEMPT;
89
- res.allTokensExempt = ALL_TOKENS_EXEMPT;
90
- res.bptIndex = BPT_INDEX;
91
- res.totalTokens = res.poolTokens.length;
92
-
93
- return abi.encode(res);
94
- }
95
-
96
- function _getPoolTokenAddresses()
97
- internal
98
- view
99
- virtual
100
- override
101
- returns (address[] memory res)
102
- {
103
- res = new address[](3);
104
- res[0] = LP;
105
- res[1] = WSTETH;
106
- res[2] = CBETH;
107
- }
108
-
109
- function _getBPTIndex() internal view virtual override returns (uint256) {
110
- return BPT_INDEX;
111
- }
112
-
113
- function _getRateProviders() internal view virtual returns (address[] memory res) {
114
- res = new address[](3);
115
- res[0] = 0x0000000000000000000000000000000000000000;
116
- res[1] = 0x72D07D7DcA67b8A406aD1Ec34ce969c90bFEE768;
117
- res[2] = 0x7311E4BB8a72e7B300c5B8BDE4de6CdaA822a5b1;
118
- }
119
-
120
- function _getRawScalingFactors() internal view virtual returns (uint256[] memory res) {
121
- res = new uint256[](3);
122
- res[0] = res[1] = res[2] = 1e18;
123
- }
124
-
125
- function _getExemption() internal view virtual returns (bool[] memory res) {
126
- res = new bool[](3);
127
- res[0] = res[1] = res[2] = false;
128
- }
129
-
130
- function getTokensIn() public view virtual override returns (address[] memory res) {
131
- res = new address[](6);
132
- res[0] = WSTETH;
133
- res[1] = STETH;
134
- res[2] = NATIVE;
135
- res[3] = WETH;
136
- // All 4 converted to WSTETH
137
- res[4] = CBETH;
138
- res[5] = LP;
139
- }
140
-
141
- function getTokensOut() public view virtual override returns (address[] memory res) {
142
- res = new address[](4);
143
- res[0] = WSTETH;
144
- res[1] = STETH;
145
- //
146
- res[2] = CBETH;
147
- res[3] = LP;
148
- }
149
-
150
- function isValidTokenIn(address token) public view virtual override returns (bool) {
151
- return (token == WSTETH ||
152
- token == STETH ||
153
- token == NATIVE ||
154
- token == WETH ||
155
- token == CBETH ||
156
- token == LP);
157
- }
158
-
159
- function isValidTokenOut(address token) public view virtual override returns (bool) {
160
- return (token == WSTETH || token == STETH || token == CBETH || token == LP);
161
- }
162
- }