



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


_lowerCamelCase						    =  logging.get_logger(__name__)

_lowerCamelCase						    =  {
    """microsoft/cvt-13""": """https://huggingface.co/microsoft/cvt-13/resolve/main/config.json""",
    # See all Cvt models at https://huggingface.co/models?filter=cvt
}

class       _SCREAMING_SNAKE_CASE	(UpperCamelCase ):
     lowerCAmelCase					=			"""cvt"""





     def __init__(       self :							Union[str, Any]     ,  UpperCamelCase :							int=3     ,  UpperCamelCase :							Union[str, Any]=[7, 3, 3]     ,  UpperCamelCase :							List[str]=[4, 2, 2]     ,  UpperCamelCase :							Any=[2, 1, 1]     ,  UpperCamelCase :							List[Any]=[6_4, 1_9_2, 3_8_4]     ,  UpperCamelCase :							Any=[1, 3, 6]     ,  UpperCamelCase :							Tuple=[1, 2, 1_0]     ,  UpperCamelCase :							Union[str, Any]=[4.0, 4.0, 4.0]     ,  UpperCamelCase :							int=[0.0, 0.0, 0.0]     ,  UpperCamelCase :							List[str]=[0.0, 0.0, 0.0]     ,  UpperCamelCase :							Dict=[0.0, 0.0, 0.1]     ,  UpperCamelCase :							List[str]=[True, True, True]     ,  UpperCamelCase :							Dict=[False, False, True]     ,  UpperCamelCase :							Tuple=["dw_bn", "dw_bn", "dw_bn"]     ,  UpperCamelCase :							int=[3, 3, 3]     ,  UpperCamelCase :							int=[1, 1, 1]     ,  UpperCamelCase :							Optional[int]=[2, 2, 2]     ,  UpperCamelCase :							str=[1, 1, 1]     ,  UpperCamelCase :							Optional[int]=[1, 1, 1]     ,  UpperCamelCase :							List[str]=0.0_2     ,  UpperCamelCase :							Dict=1E-12     ,  **UpperCamelCase :							Dict     ,  )->str:
      super().__init__(**UpperCamelCase				)
      __SCREAMING_SNAKE_CASE       :    int       =	num_channels
      __SCREAMING_SNAKE_CASE       :    List[str]       =	patch_sizes
      __SCREAMING_SNAKE_CASE       :    Dict       =	patch_stride
      __SCREAMING_SNAKE_CASE       :    Dict       =	patch_padding
      __SCREAMING_SNAKE_CASE       :    Dict       =	embed_dim
      __SCREAMING_SNAKE_CASE       :    Dict       =	num_heads
      __SCREAMING_SNAKE_CASE       :    str       =	depth
      __SCREAMING_SNAKE_CASE       :    List[Any]       =	mlp_ratio
      __SCREAMING_SNAKE_CASE       :    Optional[Any]       =	attention_drop_rate
      __SCREAMING_SNAKE_CASE       :    List[Any]       =	drop_rate
      __SCREAMING_SNAKE_CASE       :    Optional[int]       =	drop_path_rate
      __SCREAMING_SNAKE_CASE       :    str       =	qkv_bias
      __SCREAMING_SNAKE_CASE       :    str       =	cls_token
      __SCREAMING_SNAKE_CASE       :    int       =	qkv_projection_method
      __SCREAMING_SNAKE_CASE       :    Any       =	kernel_qkv
      __SCREAMING_SNAKE_CASE       :    str       =	padding_kv
      __SCREAMING_SNAKE_CASE       :    Any       =	stride_kv
      __SCREAMING_SNAKE_CASE       :    Optional[int]       =	padding_q
      __SCREAMING_SNAKE_CASE       :    str       =	stride_q
      __SCREAMING_SNAKE_CASE       :    Any       =	initializer_range
      __SCREAMING_SNAKE_CASE       :    Union[str, Any]       =	layer_norm_eps











def 	_lowerCAmelCase						(				__lowerCamelCase   :     Union[str, Any]		,	__lowerCamelCase   :     Dict		,	__lowerCamelCase   :     Dict		,	__lowerCamelCase   :     int     ):



 """simple docstring"""





 if height >= 1:
  move_tower(height - 1		,	__lowerCamelCase		,	__lowerCamelCase		,	__lowerCamelCase     )
  move_disk(__lowerCamelCase		,	__lowerCamelCase     )
  move_tower(height - 1		,	__lowerCamelCase		,	__lowerCamelCase		,	__lowerCamelCase     )






def 	_lowerCAmelCase						(				__lowerCamelCase   :     Optional[Any]		,	__lowerCamelCase   :     Optional[int]     ):



 """simple docstring"""





 print("moving disk from"		,	__lowerCamelCase		,	"to"		,	__lowerCamelCase     )






def 	_lowerCAmelCase						(				):



 """simple docstring"""





 __SCREAMING_SNAKE_CASE       :    List[Any]       =	int(input("Height of hanoi: "     ).strip()     )
 move_tower(__lowerCamelCase		,	"A"		,	"B"		,	"C"     )


if __name__ == "__main__":
      main()






