```\nfunction getTVLForAsset(address asset) public view returns (uint256) {\n        uint256 balance = getTotalBalanceForAsset(asset);\n        if (asset == ETH_ADDRESS) {\n            return balance;\n        }\n        return convertToUnitOfAccountFromAsset(asset, balance);\n    }\n\n    function getTotalBalanceForAsset(address asset) public view returns (uint256) {\n        if (!isSupportedAsset(asset)) revert ASSET_NOT_SUPPORTED(asset);\n\n        address depositPool_ = address(depositPool());\n        if (asset == ETH_ADDRESS) {\n            return depositPool_.balance + getETHBalanceInEigenLayer();\n        }\n\n        uint256 sharesHeld = getAssetSharesHeld(asset);\n        uint256 tokensInRio = IERC20(asset).balanceOf(depositPool_);\n        uint256 tokensInEigenLayer = convertFromSharesToAsset(getAssetStrategy(asset), sharesHeld);\n\n        return tokensInRio + tokensInEigenLayer;\n    }\n\n    function getETHBalanceInEigenLayer() public view returns (uint256 balance) {\n        balance = ethBalanceInUnverifiedValidators;\n\n        IRioLRTOperatorRegistry operatorRegistry_ = operatorRegistry();\n        -> uint8 endAtID = operatorRegistry_.operatorCount() + 1; // Operator IDs start at 1.\n        -> for (uint8 id = 1; id < endAtID; ++id) {\n            -> balance += operatorDelegator(operatorRegistry_, id).getETHUnderManagement();\n        }\n    }\n```\n