code: def _get_over_max_options_message(
      current_selections: int, max_selections: int
  ):
      curr_selections_noun = (
          "option" if current_selections == 1 else "options"
      )
      max_selections_noun = (
          "option" if max_selections == 1 else "options"
      )
      return f"""
  Multiselect has {current_selections} {curr_selections_noun} selected but `max_selections`
  is set to {max_selections}. This happened because you either gave too many options to `default`
  or you manipulated the widget's state through `st.session_state`. Note that
  the latter can happen before the line indicated in the traceback.
  Please select at most {max_selections} {max_selections_noun}.
  """
  
imports: from dataclasses import dataclass
  from textwrap import dedent
  from typing import TYPE_CHECKING, Any, Callable, Generic, List, Optional, Sequence, Union, cast, overload
  from streamlit.elements.form import current_form_id
  from streamlit.elements.utils import check_callback_rules, check_session_state_rules, get_label_visibility_proto_value, maybe_coerce_enum_sequence
  from streamlit.errors import StreamlitAPIException
  from streamlit.proto.MultiSelect_pb2 import MultiSelect
  from streamlit.runtime.metrics_util import gather_metrics
  from streamlit.runtime.scriptrunner import ScriptRunContext, get_script_run_ctx
  from streamlit.runtime.state import WidgetArgs, WidgetCallback, WidgetKwargs, register_widget
  from streamlit.runtime.state.common import compute_widget_id
  from streamlit.type_util import Key, LabelVisibility, OptionSequence, T, check_python_comparable, ensure_indexable, is_iterable, is_type, maybe_raise_label_warnings, to_key
label_desc: Use image node_id 5 for calling a global function with example usage: _get_over_max_options_message(current_selections, max_selections) and returns: str, current_selections, str, curr_selections_noun, str, max_selections, str, max_selections, str, max_selections_noun, str