
from __future__ import annotations

A		:   Any         =    '''Alexander Joslin'''




def   UpperCamelCase__     (    SCREAMING_SNAKE_CASE_  :  int					)     ->    int:

						if number <= 0:
												_lowercase									=				f"""n must be greater than 0. Got n = {number}"""
												raise ValueError(SCREAMING_SNAKE_CASE_					)

						_lowercase									=				[number + 1] * (number + 1)

						# starting position
						_lowercase									=				0
						for i in range(1		,      SCREAMING_SNAKE_CASE_					):
												_lowercase									=				min(table[i + 1]		,      table[i] + 1					)
												# check if out of bounds
												if i * 2 <= number:
																		_lowercase									=				min(table[i * 2]		,      table[i] + 1					)
												# check if out of bounds
												if i * 3 <= number:
																		_lowercase									=				min(table[i * 3]		,      table[i] + 1					)
						return table[number]


if __name__ == "__main__":
		import doctest

		doctest.testmod()






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


A		:   List[Any]         =    logging.get_logger(__name__)

A		:   str         =    {
    '''MCG-NJU/videomae-base''': '''https://huggingface.co/MCG-NJU/videomae-base/resolve/main/config.json''',
}



class       a_   ( _a						):
			a  : str				      =       '''videomae'''






			def __init__(			self							, __UpperCamelCase=224							, __UpperCamelCase=16							, __UpperCamelCase=3							, __UpperCamelCase=16							, __UpperCamelCase=2							, __UpperCamelCase=768							, __UpperCamelCase=12							, __UpperCamelCase=12							, __UpperCamelCase=3_072							, __UpperCamelCase="gelu"							, __UpperCamelCase=0.0							, __UpperCamelCase=0.0							, __UpperCamelCase=0.02							, __UpperCamelCase=1E-12							, __UpperCamelCase=True							, __UpperCamelCase=True							, __UpperCamelCase=6							, __UpperCamelCase=384							, __UpperCamelCase=4							, __UpperCamelCase=1_536							, __UpperCamelCase=True							, **__UpperCamelCase							, ):
									super().__init__(**__UpperCamelCase     )

									_lowercase									=				image_size
									_lowercase									=				patch_size
									_lowercase									=				num_channels
									_lowercase									=				num_frames
									_lowercase									=				tubelet_size

									_lowercase									=				hidden_size
									_lowercase									=				num_hidden_layers
									_lowercase									=				num_attention_heads
									_lowercase									=				intermediate_size
									_lowercase									=				hidden_act
									_lowercase									=				hidden_dropout_prob
									_lowercase									=				attention_probs_dropout_prob
									_lowercase									=				initializer_range
									_lowercase									=				layer_norm_eps
									_lowercase									=				qkv_bias
									_lowercase									=				use_mean_pooling

									_lowercase									=				decoder_num_attention_heads
									_lowercase									=				decoder_hidden_size
									_lowercase									=				decoder_num_hidden_layers
									_lowercase									=				decoder_intermediate_size
									_lowercase									=				norm_pix_loss