code: def __init__(
      self, shape, min_dims, max_dims, allow_ellipsis, allow_newaxis
  ):
      assert 0 <= min_dims <= max_dims <= 32
      SearchStrategy.__init__(self)
      self.shape = shape
      self.min_dims = min_dims
      self.max_dims = max_dims
      self.allow_ellipsis = allow_ellipsis
      self.allow_newaxis = allow_newaxis
  
imports: from __future__ import absolute_import, division, print_function
  import math
  import re
  from collections import namedtuple
  import numpy
  import hypothesis.internal.conjecture.utils
  import hypothesis.strategies._internal.core
  from hypothesis import Verbosity, assume
  from hypothesis._settings import note_deprecation
  from hypothesis.errors import InvalidArgument
  from hypothesis.internal.compat import PY2, hrange, integer_types, quiet_raise, string_types
  from hypothesis.internal.coverage import check_function
  from hypothesis.internal.reflection import proxies, reserved_means_kwonly_star
  from hypothesis.internal.validation import check_type, check_valid_interval
  from hypothesis.reporting import current_verbosity
  from hypothesis.strategies._internal import SearchStrategy
  from hypothesis.utils.conventions import UniqueIdentifier, not_set
label_desc: Use image node_id 1 to create a new BasicIndexStrategy object from inherited base classes: SearchStrategy with example: obj = BasicIndexStrategy(shape, min_dims, max_dims, allow_ellipsis, allow_newaxis)