



"""simple docstring"""

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


lowercase__					:						Dict												=			logging.get_logger(__name__)

lowercase__					:						List[str]												=			{
    '''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  _UpperCAmelCase (    lowerCAmelCase__):
 _lowerCAmelCase     :    List[str]	      =	"""vit_msn"""

 def __init__(  self	: int						,  lowercase_	: int=768						,  lowercase_	: Tuple=12						,  lowercase_	: Union[str, Any]=12						,  lowercase_	: Union[str, Any]=3072						,  lowercase_	: Tuple="gelu"						,  lowercase_	: Dict=0.0						,  lowercase_	: Dict=0.0						,  lowercase_	: List[Any]=0.02						,  lowercase_	: Optional[int]=1E-06						,  lowercase_	: Optional[int]=224						,  lowercase_	: Optional[int]=16						,  lowercase_	: str=3						,  lowercase_	: Dict=True						,  **lowercase_	: Dict						,  ):
     super().__init__(**lowercase_       )

     snake_case_				:  Tuple       =			hidden_size
     snake_case_				:  Tuple       =			num_hidden_layers
     snake_case_				:  Optional[int]       =			num_attention_heads
     snake_case_				:  Any       =			intermediate_size
     snake_case_				:  str       =			hidden_act
     snake_case_				:  Union[str, Any]       =			hidden_dropout_prob
     snake_case_				:  Dict       =			attention_probs_dropout_prob
     snake_case_				:  int       =			initializer_range
     snake_case_				:  Union[str, Any]       =			layer_norm_eps
     snake_case_				:  List[str]       =			image_size
     snake_case_				:  Any       =			patch_size
     snake_case_				:  Optional[Any]       =			num_channels
     snake_case_				:  int       =			qkv_bias










"""simple docstring"""

def __lowercase    (							_a					):
    snake_case_				:  Optional[Any]       =			int(_a					)
    if decimal in (0, 1):  # Exit cases for the recursion
        return str(_a					)
    snake_case_,			snake_case_				:  Optional[int]       =			divmod(_a	,    2					)
    return binary_recursive(_a					) + str(_a					)




def __lowercase    (							_a					):
    snake_case_				:  Dict       =			str(_a					).strip()
    if not number:
        raise ValueError('''No input value was provided'''					)
    snake_case_				:  List[str]       =			'''-''' if number.startswith('''-'''					) else ''''''
    snake_case_				:  Optional[Any]       =			number.lstrip('''-'''					)
    if not number.isnumeric():
        raise ValueError('''Input value is not an integer'''					)
    return f"{negative}0b{binary_recursive(int(_a					)					)}"


if __name__ == "__main__":
     from doctest import testmod

     testmod()





