def make_exposure_shares(exposure_levels, geography="geo_nm", variable="rank"):
    """Aggregate shares of activity at different levels of exposure
    Args:
        exposure_levels (df): employment by lad and sector and exposure ranking
        geography (str): geography to aggregate over
        variable (str): variable we want to calculate shares over

    """

    exp_distr = (
        exposure_levels.groupby(["month_year", variable, geography])["value"]
        .sum()
        .reset_index(drop=False)
        .groupby([geography, "month_year"])
        .apply(lambda x: x.assign(share=lambda df: df["value"] / df["value"].sum()))
    ).reset_index(drop=True)

    return exp_distr