

"""simple docstring"""





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


_SCREAMING_SNAKE_CASE							:	Optional[Any]										=			logging.get_logger(__name__)

_SCREAMING_SNAKE_CASE							:	Union[str, Any]										=			{
    """MCG-NJU/videomae-base""": """https://huggingface.co/MCG-NJU/videomae-base/resolve/main/config.json""",
}

class      __a (   snake_case__     ):

			"""simple docstring"""

			SCREAMING_SNAKE_CASE_      =    'videomae'






			def __init__(				self  :       List[str]    ,	lowercase_  :       int=224    ,	lowercase_  :       Any=16    ,	lowercase_  :       int=3    ,	lowercase_  :       List[str]=16    ,	lowercase_  :       Union[str, Any]=2    ,	lowercase_  :       Optional[int]=768    ,	lowercase_  :       Dict=12    ,	lowercase_  :       Optional[Any]=12    ,	lowercase_  :       Any=3072    ,	lowercase_  :       Any="gelu"    ,	lowercase_  :       str=0.0    ,	lowercase_  :       Optional[Any]=0.0    ,	lowercase_  :       List[Any]=0.0_2    ,	lowercase_  :       Tuple=1e-12    ,	lowercase_  :       int=True    ,	lowercase_  :       Union[str, Any]=True    ,	lowercase_  :       Dict=6    ,	lowercase_  :       Tuple=384    ,	lowercase_  :       Any=4    ,	lowercase_  :       Optional[Any]=1536    ,	lowercase_  :       str=True    ,	**lowercase_  :       Tuple    ,	):
								super().__init__(**lowercase_    )

								UpperCamelCase__		:     Union[str, Any]								=image_size
								UpperCamelCase__		:     List[Any]								=patch_size
								UpperCamelCase__		:     Any								=num_channels
								UpperCamelCase__		:     Optional[int]								=num_frames
								UpperCamelCase__		:     Union[str, Any]								=tubelet_size

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

								UpperCamelCase__		:     Union[str, Any]								=decoder_num_attention_heads
								UpperCamelCase__		:     Optional[int]								=decoder_hidden_size
								UpperCamelCase__		:     List[Any]								=decoder_num_hidden_layers
								UpperCamelCase__		:     List[Any]								=decoder_intermediate_size
								UpperCamelCase__		:     Optional[int]								=norm_pix_loss





"""simple docstring"""





def 							_lowerCAmelCase   (    UpperCAmelCase  :				int   ,				UpperCAmelCase  :				int   ,				UpperCAmelCase  :				int					):


					'''simple docstring'''






					if power < 0:
										return -1
					base %= mod
					UpperCamelCase__		:     Any								=1

					while power > 0:
										if power & 1:
															UpperCamelCase__		:     Optional[Any]								=(result * base) % mod
										UpperCamelCase__		:     Union[str, Any]								=power >> 1
										UpperCamelCase__		:     Union[str, Any]								=(base * base) % mod

					return result



def 							_lowerCAmelCase   (    ):


					'''simple docstring'''






					print(modular_exponential(3   ,				200   ,				13					)					)


if __name__ == "__main__":
				import doctest

				doctest.testmod()

				main()


