def _get_work_status_category(human, work_activity):
    """
    Returns relevant categories for `work_activity` depending on its cancellation status.

    Args:
        work_activity (covid19sim.utils.mobility_planner.Activity): activity of type work

    Returns:
        (list): a list of str
    """
    assert work_activity.name == "work", f"Expected a work_activity. Got: {work_activity}"

    # its a kid that is accompanying an adult to work
    if work_activity.prepend_name == "supervised":
        return []

    activity_status = work_activity.append_name
    if "-cancel-" in activity_status:
        if "-inverted-supervision-" in activity_status:
            return "WORK-CANCEL--KID"

        elif (
            "sick-rest-at_home" in activity_status
            or "Hospitalized" in activity_status
            or "ICU" in activity_status
        ):
            return "WORK-CANCEL--ILL"

        elif "quarantine-" in activity_status:
            return "WORK-CANCEL--QUARANTINE"

        else:
            return f"WORK-CANCEL--{activity_status}"

    return "WORK"