

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


a_      =     logging.get_logger(__name__)

a_      =     {
    'Visual-Attention-Network/van-base': (
        'https://huggingface.co/Visual-Attention-Network/van-base/blob/main/config.json'
    ),
}






class _UpperCamelCase				(				__A ):
			'''simple docstring'''







			lowerCamelCase__							     ='van'
			def __init__(      self				:			Optional[Any]   ,   a				:			Union[str, Any]=224   ,   a				:			List[str]=3   ,   a				:			Optional[Any]=[7, 3, 3, 3]   ,   a				:			Tuple=[4, 2, 2, 2]   ,   a				:			Any=[64, 128, 320, 512]   ,   a				:			Tuple=[3, 3, 12, 3]   ,   a				:			str=[8, 8, 4, 4]   ,   a				:			Any="gelu"   ,   a				:			List[str]=0.02   ,   a				:			Optional[int]=1e-6   ,   a				:			Optional[int]=1e-2   ,   a				:			Dict=0.0   ,   a				:			List[Any]=0.0   ,   **a				:			Union[str, Any]   ,   )				->							str:

				"""simple docstring"""

				super().__init__(**a						)
				SCREAMING_SNAKE_CASE :   List[Any]					  =							image_size
				SCREAMING_SNAKE_CASE :   Optional[int]					  =							num_channels
				SCREAMING_SNAKE_CASE :   Union[str, Any]					  =							patch_sizes
				SCREAMING_SNAKE_CASE :   Tuple					  =							strides
				SCREAMING_SNAKE_CASE :   List[str]					  =							hidden_sizes
				SCREAMING_SNAKE_CASE :   List[str]					  =							depths
				SCREAMING_SNAKE_CASE :   Optional[int]					  =							mlp_ratios
				SCREAMING_SNAKE_CASE :   Tuple					  =							hidden_act
				SCREAMING_SNAKE_CASE :   Any					  =							initializer_range
				SCREAMING_SNAKE_CASE :   Optional[int]					  =							layer_norm_eps
				SCREAMING_SNAKE_CASE :   Optional[int]					  =							layer_scale_init_value
				SCREAMING_SNAKE_CASE :   Tuple					  =							drop_path_rate
				SCREAMING_SNAKE_CASE :   Union[str, Any]					  =							dropout_rate


from __future__ import annotations

def 			lowerCamelCase__			(       _a):
	SCREAMING_SNAKE_CASE :   Optional[Any]					  =							2
	SCREAMING_SNAKE_CASE :   Optional[int]					  =							[]
	while i * i <= n:
		if n % i:
			i += 1
		else:
			n //= i
			factors.append(_a)
	if n > 1:
		factors.append(_a)
	return factors


if __name__ == "__main__":
			import doctest

			doctest.testmod()