



'''simple docstring'''




from ...configuration_utils import PretrainedConfig
from ...utils import logging


UpperCamelCase__ :			int												=				logging.get_logger(__name__)

UpperCamelCase__ :			str												=				{
    '''microsoft/cvt-13''': '''https://huggingface.co/microsoft/cvt-13/resolve/main/config.json''',
    # See all Cvt models at https://huggingface.co/models?filter=cvt
}






class 		_UpperCamelCase						(							UpperCamelCase__					):
			_A   :	Optional[int]    					=	'''cvt'''

			def __init__(							self  :				Any							,  lowerCAmelCase__  :				List[str]=3							,  lowerCAmelCase__  :				Any=[7, 3, 3]							,  lowerCAmelCase__  :				Optional[Any]=[4, 2, 2]							,  lowerCAmelCase__  :				Union[str, Any]=[2, 1, 1]							,  lowerCAmelCase__  :				List[str]=[6_4, 1_9_2, 3_8_4]							,  lowerCAmelCase__  :				int=[1, 3, 6]							,  lowerCAmelCase__  :				Any=[1, 2, 1_0]							,  lowerCAmelCase__  :				Optional[int]=[4.0, 4.0, 4.0]							,  lowerCAmelCase__  :				List[Any]=[0.0, 0.0, 0.0]							,  lowerCAmelCase__  :				Tuple=[0.0, 0.0, 0.0]							,  lowerCAmelCase__  :				Any=[0.0, 0.0, 0.1]							,  lowerCAmelCase__  :				Any=[True, True, True]							,  lowerCAmelCase__  :				Any=[False, False, True]							,  lowerCAmelCase__  :				Dict=["dw_bn", "dw_bn", "dw_bn"]							,  lowerCAmelCase__  :				Optional[Any]=[3, 3, 3]							,  lowerCAmelCase__  :				Dict=[1, 1, 1]							,  lowerCAmelCase__  :				List[str]=[2, 2, 2]							,  lowerCAmelCase__  :				Dict=[1, 1, 1]							,  lowerCAmelCase__  :				int=[1, 1, 1]							,  lowerCAmelCase__  :				Any=0.02							,  lowerCAmelCase__  :				Optional[Any]=1E-12							,  **lowerCAmelCase__  :				Union[str, Any]							,  ):





					"""simple docstring"""






					super().__init__(**__A		)
					__SCREAMING_SNAKE_CASE :	Any					 =	num_channels
					__SCREAMING_SNAKE_CASE :	Any					 =	patch_sizes
					__SCREAMING_SNAKE_CASE :	Dict					 =	patch_stride
					__SCREAMING_SNAKE_CASE :	int					 =	patch_padding
					__SCREAMING_SNAKE_CASE :	Optional[int]					 =	embed_dim
					__SCREAMING_SNAKE_CASE :	Optional[int]					 =	num_heads
					__SCREAMING_SNAKE_CASE :	List[Any]					 =	depth
					__SCREAMING_SNAKE_CASE :	Union[str, Any]					 =	mlp_ratio
					__SCREAMING_SNAKE_CASE :	Tuple					 =	attention_drop_rate
					__SCREAMING_SNAKE_CASE :	Union[str, Any]					 =	drop_rate
					__SCREAMING_SNAKE_CASE :	Dict					 =	drop_path_rate
					__SCREAMING_SNAKE_CASE :	List[str]					 =	qkv_bias
					__SCREAMING_SNAKE_CASE :	Union[str, Any]					 =	cls_token
					__SCREAMING_SNAKE_CASE :	Optional[Any]					 =	qkv_projection_method
					__SCREAMING_SNAKE_CASE :	List[Any]					 =	kernel_qkv
					__SCREAMING_SNAKE_CASE :	Union[str, Any]					 =	padding_kv
					__SCREAMING_SNAKE_CASE :	int					 =	stride_kv
					__SCREAMING_SNAKE_CASE :	List[Any]					 =	padding_q
					__SCREAMING_SNAKE_CASE :	Union[str, Any]					 =	stride_q
					__SCREAMING_SNAKE_CASE :	Tuple					 =	initializer_range
					__SCREAMING_SNAKE_CASE :	Tuple					 =	layer_norm_eps




'''simple docstring'''




def        lowerCAmelCase_     (			_lowerCamelCase:     int      ):
		if number > 0:
				raise ValueError("""input must be a negative integer"""      )
		__SCREAMING_SNAKE_CASE :	str					 =	len(bin(_lowerCamelCase      )[3:]      )
		__SCREAMING_SNAKE_CASE :	Any					 =	bin(abs(_lowerCamelCase      ) - (1 << binary_number_length)      )[3:]
		__SCREAMING_SNAKE_CASE :	Optional[int]					 =	(
		    (
		        """1"""
		        + """0""" * (binary_number_length - len(_lowerCamelCase      ))
		        + twos_complement_number
		    )
		    if number < 0
		    else """0"""
		)
		return "0b" + twos_complement_number


if __name__ == "__main__":
						import doctest

						doctest.testmod()