```\nfunction sqrt(uint256 a, Rounding rounding) internal pure returns (uint256) {\n    unchecked {\n        uint256 result = sqrt(a);\n        return result + (rounding == Rounding.Up && result * result < a ? 1 : 0);\n    }\n}\n```\n