code: 
  from typing import TYPE_CHECKING
  
  from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available, is_vision_available
  
  
  snake_case				:	List[Any]							   =						{"configuration_bit": ["BIT_PRETRAINED_CONFIG_ARCHIVE_MAP", "BitConfig", "BitOnnxConfig"]}
  
  try:
  				if not is_torch_available():
  								raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
  				pass
  else:
  				snake_case				:	Union[str, Any]							   =						[
  				    "BIT_PRETRAINED_MODEL_ARCHIVE_LIST",
  				    "BitForImageClassification",
  				    "BitModel",
  				    "BitPreTrainedModel",
  				    "BitBackbone",
  				]
  
  
  try:
  				if not is_vision_available():
  								raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
  				pass
  else:
  				snake_case				:	List[Any]							   =						["BitImageProcessor"]
  
  
  if TYPE_CHECKING:
  				from .configuration_bit import BIT_PRETRAINED_CONFIG_ARCHIVE_MAP, BitConfig, BitOnnxConfig
  
  				try:
  								if not is_torch_available():
  												raise OptionalDependencyNotAvailable()
  				except OptionalDependencyNotAvailable:
  								pass
  				else:
  								from .modeling_bit import (
  								    BIT_PRETRAINED_MODEL_ARCHIVE_LIST,
  								    BitBackbone,
  								    BitForImageClassification,
  								    BitModel,
  								    BitPreTrainedModel,
  								)
  
  				try:
  								if not is_vision_available():
  												raise OptionalDependencyNotAvailable()
  				except OptionalDependencyNotAvailable:
  								pass
  				else:
  								from .image_processing_bit import BitImageProcessor
  
  else:
  				import sys
  
  				snake_case				:	List[Any]							   =						_LazyModule(__name__, globals()["__file__"], _import_structure)
  
style_context: 
  def 						lowerCAmelCase_		(      _snake_case   :						int     )       ->	int:
  
  
  
  
  
  
  
  	'''simple docstring'''
  
  
  	if not isinstance(_snake_case   ,     _snake_case     ) or number < 0:
  		raise ValueError("Input must be a non-negative integer"     )
  
  	__magic_name__	:	Dict			     =  number & ~(number - 1)
  	__magic_name__	:	Optional[Any]			     =  0
  	while intermediate:
  		intermediate >>= 1
  		index += 1
  	return index - 1
  
  
  if __name__ == "__main__":
  				import doctest
  
  				doctest.testmod(verbose=True)
  