```\n    if (depositAssets.gt(_maxDeposit(context)))\n        revert VaultDepositLimitExceededError();\n// rest of code\nfunction _maxDeposit(Context memory context) private view returns (UFixed6) {\n    if (context.latestCheckpoint.unhealthy()) return UFixed6Lib.ZERO;\n    UFixed6 collateral = UFixed6Lib.from(totalAssets().max(Fixed6Lib.ZERO)).add(context.global.deposit);\n    return context.global.assets.add(context.parameter.cap.sub(collateral.min(context.parameter.cap)));\n}\n```\n