docs: def ungeometrize_shapes(geo_shapes) -> DataFrame:
      """
      The inverse of :func:`geometrize_shapes`.
      Produces the columns:
  
      - ``'shape_id'``
      - ``'shape_pt_sequence'``
      - ``'shape_pt_lon'``
      - ``'shape_pt_lat'``
  
      If ``geo_shapes`` is in UTM coordinates (has a UTM CRS property),
      then convert thoes UTM coordinates back to WGS84 coordinates,
      which is the standard for a GTFS shapes table.
      """
      geo_shapes = geo_shapes.to_crs(cs.WGS84)
  
      F = []
      for index, row in geo_shapes.iterrows():
          F.extend(
              [
                  [row["shape_id"], i, x, y]
                  for i, (x, y) in enumerate(row["geometry"].coords)
              ]
          )
  
      return pd.DataFrame(
          F,
          columns=[
              "shape_id",
              "shape_pt_sequence",
              "shape_pt_lon",
              "shape_pt_lat",
          ],
      )