def normalize_polys(geometry):
    """Turn MultiPolygons into their constituent geometries, and Polygons into singleton lists.

    When we take the union of all the highlight lines, we may get 1 or n distinct polygons. This
    is used to treat both cases identically.
    """
    if geometry.geom_type == 'MultiPolygon':
        return geometry.geoms
    if geometry.geom_type == 'Polygon':
        return [geometry]
    raise ValueError(f'Unexpected geometry type: {geometry.geom_type}')
