def lookup_clutter_geotype(geotype_lookup, population_density):
    """Return geotype based on population density

    Params:
    ======
    geotype_lookup : list of (population_density_upper_bound, geotype) tuples
        sorted by population_density_upper_bound ascending
    """

    highest_popd, highest_geotype = geotype_lookup[0]
    middle_popd, middle_geotype = geotype_lookup[1]
    lowest_popd, lowest_geotype = geotype_lookup[2]

    if population_density < middle_popd:
        return lowest_geotype

    elif population_density > highest_popd:
        return highest_geotype

    else:
        return middle_geotype