def _regions(df, top=None, min_positive=100):
    """Returns regions with the most cumulative infections.

    Args:
        top: if not `None`, only this many regions will be returned.
        min_positive: if `top` is `None`, only regions with this many cumulative
            infections will be returned.
    """
    s = df.groupby('region').cumulative.max()
    if top:
        return sorted(s.sort_values(ascending=False).index[:top])
    else:
        return sorted(s[s >= min_positive].index)