code: def test_multipolygon():
      # 2 MultiPolygon
      # 1. 4 Solid Squares
      # 2. 4 Squares with holes (to the upper-right of each of
      #    the squares in 1)
      length = 0.5
      centers = np.array([[1, 1], [1, 2], [2, 2], [2, 1]])
      corners = np.array([[-1, -1], [-1, 1], [1, 1], [1, -1]])
      shift = corners * (length / 2)
      shift_holes = corners * (length / 4)
      mpolygons = [
          MultiPolygon([(c + shift, None) for c in centers]),
          MultiPolygon(
              [
                  (c + length + shift, [c + length + shift_holes])
                  for c in centers
              ]
          ),
      ]
      names = [f"mpolygon{i}" for i in range(len(mpolygons))]
      data = GeoDataFrame({"name": names, "geometry": mpolygons})
      p = (
          ggplot()
          + aes(fill="geometry.bounds.miny")
          + geom_map(data)
          + labs(fill="miny")
          + theme(aspect_ratio=1)
      )
  
      assert p == "multipolygon"
  
imports: import numpy
  from geopandas import GeoDataFrame
  from shapely.geometry import LineString, MultiLineString, MultiPoint, MultiPolygon, Point, Polygon
  from plotnine import aes, facet_wrap, geom_map, ggplot, labs, theme
label_desc: Use image node_id 2 for calling a global function with example usage: test_multipolygon() without return types