code: def marshall(
      pydeck_proto: PydeckProto,
      pydeck_obj: Optional["Deck"],
      use_container_width: bool,
  ) -> None:
      if pydeck_obj is None:
          spec = json.dumps(EMPTY_MAP)
          id = ""
      else:
          spec = pydeck_obj.to_json()
          json_string = json.dumps(spec)
          json_bytes = json_string.encode("utf-8")
          id = hashlib.md5(json_bytes, **HASHLIB_KWARGS).hexdigest()
  
      pydeck_proto.json = spec
      pydeck_proto.use_container_width = use_container_width
  
      pydeck_proto.id = id
  
      tooltip = _get_pydeck_tooltip(pydeck_obj)
      if tooltip:
          pydeck_proto.tooltip = json.dumps(tooltip)
  
      mapbox_token = config.get_option("mapbox.token")
      if mapbox_token:
          pydeck_proto.mapbox_token = mapbox_token
  
file_path: streamlit/lib/streamlit/elements/deck_gl_json_chart.py
imports: import hashlib
  import json
  from typing import TYPE_CHECKING, Any, Dict, Mapping, Optional, cast
  from typing_extensions import Final
  from streamlit import config
  from streamlit.proto.DeckGlJsonChart_pb2 import DeckGlJsonChart
  from streamlit.runtime.metrics_util import gather_metrics
  from streamlit.util import HASHLIB_KWARGS
label_desc: Use image node_id 2 for calling a global function with example usage: marshall(pydeck_proto, pydeck_obj, use_container_width) without return types