```\n    if (maxFCash < fCashAmount) {\n        // NOTE: lending at zero\n        uint256 fCashAmountExternal = fCashAmount * precision / uint256(Constants.INTERNAL_TOKEN_PRECISION);\n        require(fCashAmountExternal <= depositAmountExternal);\n\n        // NOTE: Residual (depositAmountExternal - fCashAmountExternal) will be transferred\n        // back to the account\n        NotionalV2.depositUnderlyingToken{value: msgValue}(address(this), currencyId, fCashAmountExternal);\n    } else if (isETH || hasTransferFee || getCashBalance() > 0) {\n```\n