code: def _geo_parse_polygon(self, polygon: Polygon) -> ShapelyPolygon:
      geo_rings: List[ShapelyLinearRing] = [
          ShapelyLinearRing([(p.lon, p.lat) for p in ring.points])
          for ring in polygon.rings
      ]
      return ShapelyPolygon(shell=geo_rings[0], holes=geo_rings[1:])
  
imports: from typing import List
  import shapely
  from geopandas import GeoDataFrame
  from pandas import DataFrame
  from shapely.geometry import box
  from lets_plot.geo_data import PlacesDataFrameBuilder, abstractmethod
  from lets_plot.geo_data.geocodes import _zip_answers
  from lets_plot.geo_data.gis.request import RegionQuery, LevelKind
  from lets_plot.geo_data.gis.response import Answer, GeocodedFeature, GeoRect, Boundary, Multipolygon, Polygon, GeoPoint
label_desc: Use image node_id 5 for calling the BoundariesGeoDataFrame obj's underlying member method code with example usage: obj._geo_parse_polygon(polygon) and returns: ShapelyPolygon