


"""simple docstring"""






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


_lowerCAmelCase							:    List[str]					   =	logging.get_logger(__name__)

_lowerCAmelCase							:    List[str]					   =	{
    '''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 ):
  lowerCAmelCase__      			=	'vivit'


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







     '''simple docstring'''







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

     _lowerCamelCase   :				Tuple							=     image_size
     _lowerCamelCase   :				Dict							=     num_frames
     _lowerCamelCase   :				Optional[int]							=     tubelet_size
     _lowerCamelCase   :				int							=     num_channels
     _lowerCamelCase   :				List[str]							=     qkv_bias

     super().__init__(**__lowerCAmelCase    )







SCREAMING_SNAKE_CASE__   :      Tuple				=		{
    """a""": """AAAAA""",
    """b""": """AAAAB""",
    """c""": """AAABA""",
    """d""": """AAABB""",
    """e""": """AABAA""",
    """f""": """AABAB""",
    """g""": """AABBA""",
    """h""": """AABBB""",
    """i""": """ABAAA""",
    """j""": """BBBAA""",
    """k""": """ABAAB""",
    """l""": """ABABA""",
    """m""": """ABABB""",
    """n""": """ABBAA""",
    """o""": """ABBAB""",
    """p""": """ABBBA""",
    """q""": """ABBBB""",
    """r""": """BAAAA""",
    """s""": """BAAAB""",
    """t""": """BAABA""",
    """u""": """BAABB""",
    """v""": """BBBAB""",
    """w""": """BABAA""",
    """x""": """BABAB""",
    """y""": """BABBA""",
    """z""": """BABBB""",
    """ """: """ """,
}


SCREAMING_SNAKE_CASE__   :      Union[str, Any]				=		{value: key for key, value in encode_dict.items()}

def   __lowercase       (			snake_case			):







				"""simple docstring"""






				__magic_name__		:Tuple   =   ''''''
				for letter in word.lower():
								if letter.isalpha() or letter == " ":
												encoded += encode_dict[letter]
								else:
												raise Exception('''encode() accepts only letters of the alphabet and spaces'''			)
				return encoded

def   __lowercase       (			snake_case			):







				"""simple docstring"""






				if set(snake_case			) - {"A", "B", " "} != set():
								raise Exception('''decode() accepts only \'A\', \'B\' and spaces'''			)
				__magic_name__		:Dict   =   ''''''
				for word in coded.split():
								while len(snake_case			) != 0:
												decoded += decode_dict[word[:5]]
												__magic_name__		:int   =   word[5:]
								decoded += " "
				return decoded.strip()


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

					testmod()






