```\nfunction _calculateMaxBorrowCollateral(ActionInfo memory _actionInfo, bool _isLever) internal view returns(uint256) {\n    \n    // Retrieve collateral factor and liquidation threshold for the collateral asset in precise units (1e16 = 1%)\n    ( , uint256 maxLtvRaw, uint256 liquidationThresholdRaw, , , , , , ,) = strategy.aaveProtocolDataProvider.getReserveConfigurationData(address(strategy.collateralAsset));\n\n    // Normalize LTV and liquidation threshold to precise units. LTV is measured in 4 decimals in Aave which is why we must multiply by 1e14\n    // for example ETH has an LTV value of 8000 which represents 80%\n    if (_isLever) {\n        uint256 netBorrowLimit = _actionInfo.collateralValue\n            .preciseMul(maxLtvRaw.mul(10 ** 14))\n            .preciseMul(PreciseUnitMath.preciseUnit().sub(execution.unutilizedLeveragePercentage));\n\n        return netBorrowLimit\n            .sub(_actionInfo.borrowValue)\n            .preciseDiv(_actionInfo.collateralPrice);\n```\n