code: def __init__(
      self,
      level_kind: LevelKind,
      answers: List[Answer],
      queries: List[RegionQuery],
      highlights: bool = False,
  ):
      assert_list_type(answers, Answer)
      assert_list_type(queries, RegionQuery)
  
      if len(answers) == 0:
          assert (
              len(queries) == 1 and queries[0].request is None
          )  # select all
      else:
          assert len(queries) == len(
              answers
          )  # regular request - should have same size
  
      try:
          import geopandas
      except ImportError:
          raise ValueError(
              "Module 'geopandas'is required for geocoding"
          ) from None
  
      self._level_kind: LevelKind = level_kind
      self._answers: List[Answer] = answers
  
      features = []
      for answer in answers:
          features.extend(answer.features)
  
      self._geocoded_features: List[GeocodedFeature] = features
      self._highlights: bool = highlights
      self._queries: List[RegionQuery] = queries
  
imports: import enum
  from abc import abstractmethod
  from collections.abc import Iterable
  from typing import List, Optional, Union, Dict
  from pandas import DataFrame, Series
  from lets_plot.geo_data_internals.constants import DF_COLUMN_HIGHLIGHTS, DF_COLUMN_COUNTRY, DF_COLUMN_STATE, DF_COLUMN_COUNTY, DF_COLUMN_CITY, DF_COLUMN_ID, DF_COLUMN_FOUND_NAME, DF_COLUMN_POSITION, DF_COLUMN_LIMIT, DF_COLUMN_CENTROID
  from .gis.geocoding_service import GeocodingService
  from .gis.request import PayloadKind, RequestBuilder, RequestKind, MapRegion, RegionQuery
  from .gis.response import Answer, GeocodedFeature, Namesake, AmbiguousFeature, LevelKind
  from .gis.response import SuccessResponse, Response, AmbiguousResponse, ErrorResponse
  from .type_assertion import assert_type, assert_list_type
label_desc: Use image node_id 1 to create a new Geocodes object  with example: obj = Geocodes(level_kind, answers, queries, highlights)