code: def times(
      min_value: dt.time = dt.time.min,
      max_value: dt.time = dt.time.max,
      *,
      timezones: SearchStrategy[Optional[dt.tzinfo]] = none(),
  ) -> SearchStrategy[dt.time]:
      """times(min_value=datetime.time.min, max_value=datetime.time.max, *, timezones=none())
  
      A strategy for times between ``min_value`` and ``max_value``.
  
      The ``timezones`` argument is handled as for :py:func:`datetimes`.
  
      Examples from this strategy shrink towards midnight, with the timezone
      component shrinking as for the strategy that provided it.
      """
      check_type(dt.time, min_value, "min_value")
      check_type(dt.time, max_value, "max_value")
      if min_value.tzinfo is not None:
          raise InvalidArgument(f"{min_value=} must not have tzinfo")
      if max_value.tzinfo is not None:
          raise InvalidArgument(f"{max_value=} must not have tzinfo")
      check_valid_interval(
          min_value, max_value, "min_value", "max_value"
      )
      return TimeStrategy(min_value, max_value, timezones)
  
imports: import datetime
  from calendar import monthrange
  from functools import lru_cache
  from importlib import resources
  from pathlib import Path
  from typing import Optional
  from hypothesis.errors import InvalidArgument
  from hypothesis.internal.validation import check_type, check_valid_interval
  from hypothesis.strategies._internal.core import sampled_from
  from hypothesis.strategies._internal.misc import just, none
  from hypothesis.strategies._internal.strategies import SearchStrategy
  from hypothesis.strategies._internal.utils import defines_strategy
label_desc: Use image node_id 6 for calling a global function with example usage: times(min_value, max_value) and returns: TimeStrategy