





"""simple docstring"""
from ...configuration_utils import PretrainedConfig
from ...utils import logging


lowerCamelCase_								=		logging.get_logger(__name__)

lowerCamelCase_								=		{
    "microsoft/swinv2-tiny-patch4-window8-256": (
        "https://huggingface.co/microsoft/swinv2-tiny-patch4-window8-256/resolve/main/config.json"
    ),
}






class 					_SCREAMING_SNAKE_CASE(   A  ):
       SCREAMING_SNAKE_CASE_   :      Tuple							=  '''swinv2'''

       SCREAMING_SNAKE_CASE_   :      Optional[int]							=  {
           '''num_attention_heads''': '''num_heads''',
           '''num_hidden_layers''': '''num_layers''',
       }




       def __init__(						self		,SCREAMING_SNAKE_CASE__=2_24		,SCREAMING_SNAKE_CASE__=4		,SCREAMING_SNAKE_CASE__=3		,SCREAMING_SNAKE_CASE__=96		,SCREAMING_SNAKE_CASE__=[2, 2, 6, 2]		,SCREAMING_SNAKE_CASE__=[3, 6, 12, 24]		,SCREAMING_SNAKE_CASE__=7		,SCREAMING_SNAKE_CASE__=4.0		,SCREAMING_SNAKE_CASE__=True		,SCREAMING_SNAKE_CASE__=0.0		,SCREAMING_SNAKE_CASE__=0.0		,SCREAMING_SNAKE_CASE__=0.1		,SCREAMING_SNAKE_CASE__="gelu"		,SCREAMING_SNAKE_CASE__=False		,SCREAMING_SNAKE_CASE__=0.0_2		,SCREAMING_SNAKE_CASE__=1E-5		,SCREAMING_SNAKE_CASE__=32		,**SCREAMING_SNAKE_CASE__		,)			->      Any:





             """simple docstring"""






             super().__init__(**SCREAMING_SNAKE_CASE__							)

             __SCREAMING_SNAKE_CASE   :Union[str, Any]						=  image_size
             __SCREAMING_SNAKE_CASE   :List[str]						=  patch_size
             __SCREAMING_SNAKE_CASE   :int						=  num_channels
             __SCREAMING_SNAKE_CASE   :Dict						=  embed_dim
             __SCREAMING_SNAKE_CASE   :Optional[int]						=  depths
             __SCREAMING_SNAKE_CASE   :Optional[Any]						=  len(SCREAMING_SNAKE_CASE__							)
             __SCREAMING_SNAKE_CASE   :str						=  num_heads
             __SCREAMING_SNAKE_CASE   :List[str]						=  window_size
             __SCREAMING_SNAKE_CASE   :List[Any]						=  mlp_ratio
             __SCREAMING_SNAKE_CASE   :Dict						=  qkv_bias
             __SCREAMING_SNAKE_CASE   :List[Any]						=  hidden_dropout_prob
             __SCREAMING_SNAKE_CASE   :Dict						=  attention_probs_dropout_prob
             __SCREAMING_SNAKE_CASE   :Dict						=  drop_path_rate
             __SCREAMING_SNAKE_CASE   :Tuple						=  hidden_act
             __SCREAMING_SNAKE_CASE   :str						=  use_absolute_embeddings
             __SCREAMING_SNAKE_CASE   :int						=  layer_norm_eps
             __SCREAMING_SNAKE_CASE   :Tuple						=  initializer_range
             __SCREAMING_SNAKE_CASE   :Optional[int]						=  encoder_stride
             # we set the hidden_size attribute in order to make Swinv2 work with VisionEncoderDecoderModel
             # this indicates the channel dimension after the last stage of the model
             __SCREAMING_SNAKE_CASE   :Optional[Any]						=  int(embed_dim * 2 ** (len(SCREAMING_SNAKE_CASE__							) - 1)							)
             __SCREAMING_SNAKE_CASE   :Any						=  (0, 0, 0, 0)






"""simple docstring"""
def      __lowerCamelCase   (							a_     :		int							)			->      bool:
      if not isinstance(a_ ,   a_							):
            __SCREAMING_SNAKE_CASE   :int						=  f'''Input value of [number={number}] must be an integer'''
            raise TypeError(a_							)
      if number < 0:
            return False
      __SCREAMING_SNAKE_CASE   :Any						=  number * number
      while number > 0:
            if number % 10 != number_square % 10:
                  return False
            number //= 10
            number_square //= 10
      return True


if __name__ == "__main__":
  import doctest

  doctest.testmod()