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


_SCREAMING_SNAKE_CASE    :      Dict          =			logging.get_logger(__name__)

_SCREAMING_SNAKE_CASE    :      int          =			{
    'caidas/swin2sr-classicalsr-x2-64': (
        'https://huggingface.co/caidas/swin2sr-classicalsr-x2-64/resolve/main/config.json'
    ),
}







class  UpperCamelCase__		(    SCREAMING_SNAKE_CASE_   ):







	'''simple docstring'''
	_lowerCAmelCase							       =				"swin2sr"

	_lowerCAmelCase							       =				{
	    "hidden_size": "embed_dim",
	    "num_attention_heads": "num_heads",
	    "num_hidden_layers": "num_layers",
	}





	def __init__(			self				,       UpperCamelCase__=64				,       UpperCamelCase__=1				,       UpperCamelCase__=3				,       UpperCamelCase__=180				,       UpperCamelCase__=[6, 6, 6, 6, 6, 6]				,       UpperCamelCase__=[6, 6, 6, 6, 6, 6]				,       UpperCamelCase__=8				,       UpperCamelCase__=2.0				,       UpperCamelCase__=True				,       UpperCamelCase__=0.0				,       UpperCamelCase__=0.0				,       UpperCamelCase__=0.1				,       UpperCamelCase__="gelu"				,       UpperCamelCase__=False				,       UpperCamelCase__=0.0_2				,       UpperCamelCase__=1e-5				,       UpperCamelCase__=2				,       UpperCamelCase__=1.0				,       UpperCamelCase__="1conv"				,       UpperCamelCase__="pixelshuffle"				,       **UpperCamelCase__				,       ):
					super().__init__(**UpperCamelCase__		)

					A__  :	Dict         =							image_size
					A__  :	Dict         =							patch_size
					A__  :	List[str]         =							num_channels
					A__  :	Dict         =							embed_dim
					A__  :	Dict         =							depths
					A__  :	List[str]         =							len(UpperCamelCase__		)
					A__  :	Union[str, Any]         =							num_heads
					A__  :	Any         =							window_size
					A__  :	Tuple         =							mlp_ratio
					A__  :	str         =							qkv_bias
					A__  :	List[str]         =							hidden_dropout_prob
					A__  :	Union[str, Any]         =							attention_probs_dropout_prob
					A__  :	List[Any]         =							drop_path_rate
					A__  :	Tuple         =							hidden_act
					A__  :	Dict         =							use_absolute_embeddings
					A__  :	Any         =							layer_norm_eps
					A__  :	Any         =							initializer_range
					A__  :	Any         =							upscale
					A__  :	int         =							img_range
					A__  :	Optional[Any]         =							resi_connection
					A__  :	Optional[int]         =							upsampler

from abc import ABC, abstractmethod
from argparse import ArgumentParser







class  UpperCamelCase__		(    SCREAMING_SNAKE_CASE_   ):







	'''simple docstring'''





	@staticmethod
	@abstractmethod
	def   __snake_case				(			UpperCamelCase__		):
					raise NotImplementedError()





	@abstractmethod
	def   __snake_case				(			self		):
					raise NotImplementedError()