code: def extract_coordinates(d):
      """Extracts the coordinates from all geometries in the GeoJSON dictionary.
  
      The dict can have any ``type`` supported by the GeoJSON spec, including
      ``Feature``, ``FeatureCollection``, ``GeometryCollection``, and primitive
      geometries ``Point``, ``LineString``, ``Polygon``, ``MultiPoint``,
      ``MultiLineString``, or ``MultiPolygon``.
  
      Args:
          d: a GeoJSON dict
  
      Returns:
          a tuple of
  
          -   points: a list of ``Point`` coordinates
          -   lines: a list of ``LineString`` coordinates
          -   points: a list of ``Polygon`` coordinates
      """
      _type = d["type"]
  
      if _type == "FeatureCollection":
          geometries = [f["geometry"] for f in d.get("features", [])]
      elif _type == "GeometryCollection":
          geometries = d.get("geometries", [])
      elif _type == "Feature":
          geometries = [d["geometry"]]
      else:
          geometries = [d]
  
      return _parse_geometries(geometries)
  
imports: import logging
  import os
  import eta.core.serial
  import eta.core.utils
  import fiftyone.core.fields
  import fiftyone.core.labels
  from fiftyone.core.sample import Sample
  import fiftyone.core.storage
  import fiftyone.core.utils
  import fiftyone.core.validation
  import fiftyone.utils.data
label_desc: Use image node_id 6 for calling a global function with example usage: extract_coordinates(d) and returns: _parse_geometries