




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


UpperCamelCase__    			=			logging.get_logger(__name__)

UpperCamelCase__    			=			{
    """alibaba-damo/mgp-str-base""": """https://huggingface.co/alibaba-damo/mgp-str-base/resolve/main/config.json""",
}
class 			a__    (					snake_case__      ):
						_a							:    Union[str, Any]					=    """mgp-str"""






						def __init__(   self		,			_A=[3_2, 1_2_8]		,			_A=4		,			_A=3		,			_A=2_7		,			_A=3_8		,			_A=5_0_2_5_7		,			_A=3_0_5_2_2		,			_A=7_6_8		,			_A=1_2		,			_A=1_2		,			_A=4.0		,			_A=True		,			_A=False		,			_A=1E-5		,			_A=0.0		,			_A=0.0		,			_A=0.0		,			_A=False		,			_A=0.02		,			**_A		,			):




											"""simple docstring"""



											super().__init__(**_A			)

											__lowerCAmelCase				   =       image_size
											__lowerCAmelCase				   =       patch_size
											__lowerCAmelCase				   =       num_channels
											__lowerCAmelCase				   =       max_token_length
											__lowerCAmelCase				   =       num_character_labels
											__lowerCAmelCase				   =       num_bpe_labels
											__lowerCAmelCase				   =       num_wordpiece_labels
											__lowerCAmelCase				   =       hidden_size
											__lowerCAmelCase				   =       num_hidden_layers
											__lowerCAmelCase				   =       num_attention_heads
											__lowerCAmelCase				   =       mlp_ratio
											__lowerCAmelCase				   =       distilled
											__lowerCAmelCase				   =       layer_norm_eps
											__lowerCAmelCase				   =       drop_rate
											__lowerCAmelCase				   =       qkv_bias
											__lowerCAmelCase				   =       attn_drop_rate
											__lowerCAmelCase				   =       drop_path_rate
											__lowerCAmelCase				   =       output_aa_attentions
											__lowerCAmelCase				   =       initializer_range





from functools import lru_cache




@lru_cache
def       _snake_case	(   lowerCAmelCase							:   int	):
		"""simple docstring"""







		if num < 0:
				raise ValueError("Number should not be negative."	)

		return 1 if num in (0, 1) else num * factorial(num - 1	)


if __name__ == "__main__":
		import doctest

		doctest.testmod()
