code: def test_explicit_request():
      request: ExplicitRequest = (
          RequestBuilder()
          .set_request_kind(RequestKind.explicit)
          .set_ids(["1", "2", "3"])
          .build()
      )
  
      json = RequestFormatter().format(request).to_dict()
  
      parsed_request = RequestParser().parse(json)
  
      assert isinstance(parsed_request, ExplicitRequest)
      assert (
          request.requested_payload == parsed_request.requested_payload
      )
      assert request.resolution == parsed_request.resolution
  
      assert request.geo_object_list == parsed_request.geo_object_list
  
file_path: lets-plot/python-package/test/geo_data/gis/test_request_formatter.py
imports: from typing import Optional
  from assertions import assert_region_query
  from lets_plot.geo_data.gis.geometry import GeoRect, GeoPoint
  from lets_plot.geo_data.gis.json_request import RequestFormatter, RequestParser
  from lets_plot.geo_data.gis.request import RequestBuilder, ExplicitRequest, RequestKind, GeocodingRequest, RegionQuery, MapRegion, PayloadKind, AmbiguityResolver, IgnoringStrategyKind, ReverseGeocodingRequest
  from lets_plot.geo_data.gis.response import LevelKind
label_desc: Use image node_id 2 for calling a global function with example usage: test_explicit_request() without return types