


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


A_														=      logging.get_logger(__name__)

A_														=      {
    "MCG-NJU/videomae-base": "https://huggingface.co/MCG-NJU/videomae-base/resolve/main/config.json",
}

class 						snake_case			(       lowerCAmelCase__	):
			'''simple docstring'''

			UpperCAmelCase       :       int       = """videomae"""

			def __init__(	self     :     str							,							lowerCAmelCase_     :     str=224							,							lowerCAmelCase_     :     Dict=16							,							lowerCAmelCase_     :     Dict=3							,							lowerCAmelCase_     :     Optional[int]=16							,							lowerCAmelCase_     :     List[Any]=2							,							lowerCAmelCase_     :     int=768							,							lowerCAmelCase_     :     Optional[Any]=12							,							lowerCAmelCase_     :     Any=12							,							lowerCAmelCase_     :     Optional[Any]=3_072							,							lowerCAmelCase_     :     Union[str, Any]="gelu"							,							lowerCAmelCase_     :     Union[str, Any]=0.0							,							lowerCAmelCase_     :     List[Any]=0.0							,							lowerCAmelCase_     :     List[Any]=0.02							,							lowerCAmelCase_     :     List[Any]=1e-12							,							lowerCAmelCase_     :     List[Any]=True							,							lowerCAmelCase_     :     int=True							,							lowerCAmelCase_     :     Dict=6							,							lowerCAmelCase_     :     Any=384							,							lowerCAmelCase_     :     Optional[Any]=4							,							lowerCAmelCase_     :     str=1_536							,							lowerCAmelCase_     :     int=True							,							**lowerCAmelCase_     :     Optional[int]							,							)					->					Any:




								"""simple docstring"""






								super().__init__(**lowerCAmelCase_					)

								SCREAMING_SNAKE_CASE_	      =       image_size
								SCREAMING_SNAKE_CASE_	      =       patch_size
								SCREAMING_SNAKE_CASE_	      =       num_channels
								SCREAMING_SNAKE_CASE_	      =       num_frames
								SCREAMING_SNAKE_CASE_	      =       tubelet_size

								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_	      =       qkv_bias
								SCREAMING_SNAKE_CASE_	      =       use_mean_pooling

								SCREAMING_SNAKE_CASE_	      =       decoder_num_attention_heads
								SCREAMING_SNAKE_CASE_	      =       decoder_hidden_size
								SCREAMING_SNAKE_CASE_	      =       decoder_num_hidden_layers
								SCREAMING_SNAKE_CASE_	      =       decoder_intermediate_size
								SCREAMING_SNAKE_CASE_	      =       norm_pix_loss






from __future__ import annotations

class 						snake_case			:
			'''simple docstring'''

			def __init__(	self     :     int							,							lowerCAmelCase_     :     int					)					->					None:




								"""simple docstring"""






								SCREAMING_SNAKE_CASE_	      =       value
								SCREAMING_SNAKE_CASE_	      =       None
								SCREAMING_SNAKE_CASE_	      =       None

class 						snake_case			:
			'''simple docstring'''

			UpperCAmelCase       :       int

			def __init__(	self     :     Union[str, Any]					)					->					None:




								"""simple docstring"""






								SCREAMING_SNAKE_CASE_	      =       0

			def _lowercase (	self     :     Optional[int]							,							lowerCAmelCase_     :     Node | None							,							lowerCAmelCase_     :     int					)					->					None:




								"""simple docstring"""






								if node is None:
													return

								if path_sum == self.target:
													self.paths += 1

								if node.left:
													self.depth_first_search(node.left							,							path_sum + node.left.value					)
								if node.right:
													self.depth_first_search(node.right							,							path_sum + node.right.value					)




			def _lowercase (	self     :     str							,							lowerCAmelCase_     :     Node | None							,							lowerCAmelCase_     :     int | None = None					)					->					int:




								"""simple docstring"""






								if node is None:
													return 0
								if target is not None:
													SCREAMING_SNAKE_CASE_	      =       target

								self.depth_first_search(lowerCAmelCase_							,							node.value					)
								self.path_sum(node.left					)
								self.path_sum(node.right					)

								return self.paths


if __name__ == "__main__":
		import doctest

		doctest.testmod()


