MISSING = object()


def describe(status, code, flag, value=MISSING):
    if status == "active":
        return 1
    if code is None or flag is True or flag is not False:
        return 2
    if value is MISSING or value is ...:
        return 3
    return 0
