def make_mu_id_lookup(mus):
    """a function that lakes of list of management unit objects and
    returns a dictionary of dictionaryies that are keyed first by lake ,
    and then by management unit label.

    mus = ManagementUnit.objects.values_list(
    "id", "slug", "lake__abbrev", "label")

    This:
    (12, 'hu_mu_mh3', 'HU', 'MH3')
    (13, 'hu_mu_mh4', 'HU', 'MH4')
    (14, 'hu_mu_mh5', 'HU', 'MH5')
    (15, 'hu_mu_mh6', 'HU', 'MH6')
    (16, 'er_mu_mich', 'ER', 'MICH')
    (38, 'er_mu_ny', 'ER', 'NY')
    (39, 'er_mu_o1', 'ER', 'O1')
    (40, 'er_mu_o2', 'ER', 'O2')
    (41, 'er_mu_o3', 'ER', 'O3')

    becomes this:
    {"HU": {"MH3":12,"MH4": 13,...}, "ER": {"NY":16}, ...}

    """
    mu_lookup = {}
    for mu in mus:
        lake_abbrev = mu[2]
        items = mu_lookup.get(lake_abbrev)
        if items:
            # label:id
            items[mu[3]] = mu[0]
        else:
            items = {mu[3]: mu[0]}
        mu_lookup[lake_abbrev] = items
    return mu_lookup