code: def unsigned_integer_dtypes(
      *,
      endianness: str = "?",
      sizes: Sequence[Literal[8, 16, 32, 64]] = (8, 16, 32, 64),
  ) -> st.SearchStrategy[np.dtype]:
      """Return a strategy for unsigned integer dtypes.
  
      endianness may be ``<`` for little-endian, ``>`` for big-endian,
      ``=`` for native byte order, or ``?`` to allow either byte order.
      This argument only applies to dtypes of more than one byte.
  
      sizes must be a collection of integer sizes in bits.  The default
      (8, 16, 32, 64) covers the full range of sizes.
      """
      return dtype_factory("u", sizes, (8, 16, 32, 64), endianness)
  
imports: import importlib
  import math
  from typing import TYPE_CHECKING, Any, Literal, Mapping, Optional, Sequence, Tuple, Type, TypeVar, Union
  import numpy
  from hypothesis import strategies
  from hypothesis._settings import note_deprecation
  from hypothesis.errors import HypothesisException, InvalidArgument
  from hypothesis.extra._array_helpers import NDIM_MAX, BasicIndex, BasicIndexStrategy, BroadcastableShapes, Shape, array_shapes, broadcastable_shapes, check_argument, check_valid_dims, mutually_broadcastable_shapes, order_check, valid_tuple_axes
  from hypothesis.internal.conjecture import utils
  from hypothesis.internal.coverage import check_function
  from hypothesis.internal.reflection import proxies
  from hypothesis.internal.validation import check_type
  from hypothesis.strategies._internal.numbers import Real
  from hypothesis.strategies._internal.strategies import Ex, T, check_strategy
  from hypothesis.strategies._internal.utils import defines_strategy
label_desc: Use image node_id 9 for calling a global function with example usage: unsigned_integer_dtypes() and returns: dtype_factory