def suggested_override_timeout_changes(override_times, override_values,
    override_timeout, schedule):
    """
    There can be some conditions about how to do the override checks.  The first of which is that
    if there is a schedule then that should be used to filter for only those override events that occur when the system is scheduled to be off.
    
    If there is no schedule however all overrides can be counted for analysis.
    """
    from optimization_checks import check_overrides_with_timeouts
    if override_times is None or len(override_times) == 0:
        return []
    if schedule:
        return check_overrides_with_timeouts(override_times,
            override_values, schedule, override_timeout=override_timeout)
    else:
        return check_overrides_with_timeouts(override_times,
            override_values, None, override_timeout=override_timeout,
            only_check_when_schedule_is_off=False)
