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


UpperCAmelCase_			    =							logging.get_logger(__name__)

UpperCAmelCase_			    =							{
    '''sayakpaul/vit-msn-base''': '''https://huggingface.co/sayakpaul/vit-msn-base/resolve/main/config.json''',
    # See all ViT MSN models at https://huggingface.co/models?filter=vit_msn
}




class  __magic_name__  (		A_    ):





   """simple docstring"""




   lowerCAmelCase      :    Dict  			=   '''vit_msn'''



   def __init__(	self					:  Any		,  _lowercase					:  int=768		,  _lowercase					:  str=12		,  _lowercase					:  int=12		,  _lowercase					:  List[str]=3_072		,  _lowercase					:  str="gelu"		,  _lowercase					:  int=0.0		,  _lowercase					:  str=0.0		,  _lowercase					:  Dict=0.02		,  _lowercase					:  Tuple=1E-06		,  _lowercase					:  str=224		,  _lowercase					:  Dict=16		,  _lowercase					:  List[str]=3		,  _lowercase					:  Any=True		,  **_lowercase					:  Dict		,  ):



    """simple docstring"""



    super().__init__(**_lowercase							)

    _UpperCamelCase:     Optional[int]							= hidden_size
    _UpperCamelCase:     Any							= num_hidden_layers
    _UpperCamelCase:     Dict							= num_attention_heads
    _UpperCamelCase:     List[str]							= intermediate_size
    _UpperCamelCase:     Tuple							= hidden_act
    _UpperCamelCase:     Optional[int]							= hidden_dropout_prob
    _UpperCamelCase:     List[Any]							= attention_probs_dropout_prob
    _UpperCamelCase:     Dict							= initializer_range
    _UpperCamelCase:     str							= layer_norm_eps
    _UpperCamelCase:     Union[str, Any]							= image_size
    _UpperCamelCase:     str							= patch_size
    _UpperCamelCase:     List[str]							= num_channels
    _UpperCamelCase:     List[Any]							= qkv_bias
def       lowerCAmelCase_     (		lowercase:							float		)    ->				float:







 '''simple docstring'''

 if edge <= 0 or not isinstance(lowercase  ,					lowercase		):
  raise ValueError('''Length must be a positive.'''		)
 return 3 * ((25 + 10 * (5 ** (1 / 2))) ** (1 / 2)) * (edge**2)




def       lowerCAmelCase_     (		lowercase:							float		)    ->				float:







 '''simple docstring'''

 if edge <= 0 or not isinstance(lowercase  ,					lowercase		):
  raise ValueError('''Length must be a positive.'''		)
 return ((15 + (7 * (5 ** (1 / 2)))) / 4) * (edge**3)


if __name__ == "__main__":
  import doctest

  doctest.testmod()