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


__lowerCamelCase					:	Union[str, Any]       =  logging.get_logger(__name__)

__lowerCamelCase					:	Dict       =  {
    '''google/vivit-b-16x2-kinetics400''': (
        '''https://huggingface.co/google/vivit-b-16x2-kinetics400/resolve/main/config.json'''
    ),
    # See all Vivit models at https://huggingface.co/models?filter=vivit
}






class 		a__						(					A__					):
					A	       =							'vivit'

					def __init__(    self      :       Tuple,_A      :       Any=224,_A      :       str=32,_A      :       Optional[Any]=[2, 16, 16],_A      :       Any=3,_A      :       Optional[Any]=768,_A      :       int=12,_A      :       Any=12,_A      :       str=3072,_A      :       List[Any]="gelu_fast",_A      :       Optional[int]=0.0,_A      :       Tuple=0.0,_A      :       int=0.02,_A      :       List[str]=1E-06,_A      :       Any=True,**_A      :       Any,):







							"""simple docstring"""






							SCREAMING_SNAKE_CASE_  :		Tuple				      =    hidden_size
							SCREAMING_SNAKE_CASE_  :		Dict				      =    num_hidden_layers
							SCREAMING_SNAKE_CASE_  :		List[Any]				      =    num_attention_heads
							SCREAMING_SNAKE_CASE_  :		Union[str, Any]				      =    intermediate_size
							SCREAMING_SNAKE_CASE_  :		Union[str, Any]				      =    hidden_act
							SCREAMING_SNAKE_CASE_  :		Optional[int]				      =    hidden_dropout_prob
							SCREAMING_SNAKE_CASE_  :		Tuple				      =    attention_probs_dropout_prob
							SCREAMING_SNAKE_CASE_  :		List[str]				      =    initializer_range
							SCREAMING_SNAKE_CASE_  :		Optional[int]				      =    layer_norm_eps

							SCREAMING_SNAKE_CASE_  :		List[Any]				      =    image_size
							SCREAMING_SNAKE_CASE_  :		List[Any]				      =    num_frames
							SCREAMING_SNAKE_CASE_  :		Optional[Any]				      =    tubelet_size
							SCREAMING_SNAKE_CASE_  :		Optional[int]				      =    num_channels
							SCREAMING_SNAKE_CASE_  :		Dict				      =    qkv_bias

							super().__init__(**_A    )

def       _snake_case	(   lowerCAmelCase							:   int	):
		"""simple docstring"""







		SCREAMING_SNAKE_CASE_  :		Tuple				      =    int(lowerCAmelCase	)
		if decimal in (0, 1):  # Exit cases for the recursion
				return str(lowerCAmelCase	)
		SCREAMING_SNAKE_CASE_      ,    SCREAMING_SNAKE_CASE_  :		Dict				      =    divmod(lowerCAmelCase   , 2	)
		return binary_recursive(lowerCAmelCase	) + str(lowerCAmelCase	)




def       _snake_case	(   lowerCAmelCase							:   str	):
		"""simple docstring"""







		SCREAMING_SNAKE_CASE_  :		str				      =    str(lowerCAmelCase	).strip()
		if not number:
				raise ValueError("No input value was provided"	)
		SCREAMING_SNAKE_CASE_  :		List[str]				      =    "-" if number.startswith("-"	) else ""
		SCREAMING_SNAKE_CASE_  :		Optional[Any]				      =    number.lstrip("-"	)
		if not number.isnumeric():
				raise ValueError("Input value is not an integer"	)
		return f'{negative}0b{binary_recursive(int(lowerCAmelCase	)	)}'


if __name__ == "__main__":
		from doctest import testmod

		testmod()
