code: def as_list(self) -> List["Geocodes"]:
      if len(self._queries) == 0:
          return [
              Geocodes(
                  self._level_kind,
                  [answer],
                  [RegionQuery(request=None)],
                  self._highlights,
              )
              for answer in self._answers
          ]
  
      assert len(self._queries) == len(self._answers)
      return [
          Geocodes(
              self._level_kind, [answer], [query], self._highlights
          )
          for query, answer in zip(self._queries, self._answers)
      ]
  
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 5 for calling the Geocodes obj's underlying member method code with example usage: obj.as_list() and returns: unknown, unknown