def _all_done(fs, download_results):
    """
    Checks if all futures are ready or done
    """
    if download_results:
        return all([f.done for f in fs])
    else:
        return all([f.success or f.done for f in fs])