Fix billing.py only. Return JSON only with one key "billing_py" containing the complete replacement source, without Markdown fences. Do not change the tests.

Contract: billable_minutes(seconds) accepts nonnegative integers only (bool is invalid), raises TypeError for all other types and ValueError for negative integers, returns an integer number of billable minutes rounded up, and returns 0 for 0. Preserve exact integer arithmetic even for seconds greater than 2**60. Use no imports, helper functions, classes, attribute access, or external calls; builtins type, int, bool, isinstance, TypeError and ValueError are allowed. Use only the billable_minutes function. /no_think

Current billing.py:
def billable_minutes(seconds):
    """Return whole billable minutes, rounding an incomplete minute up."""
    return seconds // 60

Supplied implementation guidance after two retained failed model attempts: require type(seconds) is int; reject all other types, including bool, with TypeError. Check that seconds is nonnegative and raise ValueError for negative integers. Return the integer ceiling (seconds + 59) // 60: 0 => 0, 60 => 1, and 61 => 2. This is supplied implementation guidance, not a test of independent coding competence. Keep the original tests unchanged.
