```\ncontract LybraWstETHVault is LybraPeUSDVaultBase {\n Ilido immutable lido;\n //WstETH = 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0;\n //Lido = 0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84;\n constructor(address \_lido, address \_asset, address \_oracle, address \_config) LybraPeUSDVaultBase(\_asset, \_oracle, \_config) {\n lido = Ilido(\_lido);\n }\n\n function depositEtherToMint(uint256 mintAmount) external payable override {\n require(msg.value >= 1 ether, "DNL");\n uint256 sharesAmount = lido.submit{value: msg.value}(address(configurator));\n require(sharesAmount != 0, "ZERO\_DEPOSIT");\n lido.approve(address(collateralAsset), msg.value);\n uint256 wstETHAmount = IWstETH(address(collateralAsset)).wrap(msg.value);\n depositedAsset[msg.sender] += wstETHAmount;\n if (mintAmount > 0) {\n \_mintPeUSD(msg.sender, msg.sender, mintAmount, getAssetPrice());\n }\n emit DepositEther(msg.sender, address(collateralAsset), msg.value,wstETHAmount, block.timestamp);\n }\n```\n