





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


SCREAMING_SNAKE_CASE_		     = logging.get_logger(__name__)

SCREAMING_SNAKE_CASE_		     = {
    '''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 	UpperCamelCase__				(   snake_case__     ):



					'''simple docstring'''

					__snake_case					:			Any				=    '''vivit'''






					def __init__(							self		:					List[str]		,lowerCamelCase__		:					Union[str, Any]=224		,lowerCamelCase__		:					List[str]=32		,lowerCamelCase__		:					Any=[2, 16, 16]		,lowerCamelCase__		:					Union[str, Any]=3		,lowerCamelCase__		:					Any=768		,lowerCamelCase__		:					Optional[Any]=12		,lowerCamelCase__		:					List[str]=12		,lowerCamelCase__		:					Tuple=3072		,lowerCamelCase__		:					Dict="gelu_fast"		,lowerCamelCase__		:					Union[str, Any]=0.0		,lowerCamelCase__		:					Dict=0.0		,lowerCamelCase__		:					int=0.02		,lowerCamelCase__		:					int=1e-0_6		,lowerCamelCase__		:					List[Any]=True		,**lowerCamelCase__		:					Any		,)  ->	Optional[Any]:




											'''simple docstring'''


											SCREAMING_SNAKE_CASE	=		hidden_size
											SCREAMING_SNAKE_CASE	=		num_hidden_layers
											SCREAMING_SNAKE_CASE	=		num_attention_heads
											SCREAMING_SNAKE_CASE	=		intermediate_size
											SCREAMING_SNAKE_CASE	=		hidden_act
											SCREAMING_SNAKE_CASE	=		hidden_dropout_prob
											SCREAMING_SNAKE_CASE	=		attention_probs_dropout_prob
											SCREAMING_SNAKE_CASE	=		initializer_range
											SCREAMING_SNAKE_CASE	=		layer_norm_eps

											SCREAMING_SNAKE_CASE	=		image_size
											SCREAMING_SNAKE_CASE	=		num_frames
											SCREAMING_SNAKE_CASE	=		tubelet_size
											SCREAMING_SNAKE_CASE	=		num_channels
											SCREAMING_SNAKE_CASE	=		qkv_bias

											super().__init__(**_A )









def      __lowercase     (   _SCREAMING_SNAKE_CASE				,		_SCREAMING_SNAKE_CASE			)				->     float:


      '''simple docstring'''


      _validate_point(_SCREAMING_SNAKE_CASE			)
      _validate_point(_SCREAMING_SNAKE_CASE			)
      if len(_SCREAMING_SNAKE_CASE			) != len(_SCREAMING_SNAKE_CASE			):
            raise ValueError("""Both points must be in the same n-dimensional space"""			)

      return float(sum(abs(a - b			) for a, b in zip(_SCREAMING_SNAKE_CASE				,		_SCREAMING_SNAKE_CASE			)			)			)



def      __lowercase     (   _SCREAMING_SNAKE_CASE			)				->     None:


      '''simple docstring'''


      if point:
            if isinstance(_SCREAMING_SNAKE_CASE				,		_SCREAMING_SNAKE_CASE			):
                  for item in point:
                        if not isinstance(_SCREAMING_SNAKE_CASE				,		(int, float)			):
                              SCREAMING_SNAKE_CASE	=		(
                                  """Expected a list of numbers as input, found """
                                  F"""{type(_SCREAMING_SNAKE_CASE			).__name__}"""
                              )
                              raise TypeError(_SCREAMING_SNAKE_CASE			)
            else:
                  SCREAMING_SNAKE_CASE	=		F"""Expected a list of numbers as input, found {type(_SCREAMING_SNAKE_CASE			).__name__}"""
                  raise TypeError(_SCREAMING_SNAKE_CASE			)
      else:
            raise ValueError("""Missing an input"""			)



def      __lowercase     (   _SCREAMING_SNAKE_CASE				,		_SCREAMING_SNAKE_CASE			)				->     float:


      '''simple docstring'''


      _validate_point(_SCREAMING_SNAKE_CASE			)
      _validate_point(_SCREAMING_SNAKE_CASE			)
      if len(_SCREAMING_SNAKE_CASE			) != len(_SCREAMING_SNAKE_CASE			):
            raise ValueError("""Both points must be in the same n-dimensional space"""			)

      return float(sum(abs(x - y			) for x, y in zip(_SCREAMING_SNAKE_CASE				,		_SCREAMING_SNAKE_CASE			)			)			)


if __name__ == "__main__":
      import doctest

      doctest.testmod()


