




from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowercase__							:	Any											=		{"configuration_vit_msn": ["VIT_MSN_PRETRAINED_CONFIG_ARCHIVE_MAP", "ViTMSNConfig"]}

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase__							:	Optional[Any]											=		[
		    "VIT_MSN_PRETRAINED_MODEL_ARCHIVE_LIST",
		    "ViTMSNModel",
		    "ViTMSNForImageClassification",
		    "ViTMSNPreTrainedModel",
		]

if TYPE_CHECKING:
		from .configuration_vit_msn import VIT_MSN_PRETRAINED_CONFIG_ARCHIVE_MAP, ViTMSNConfig

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_vit_msn import (
				    VIT_MSN_PRETRAINED_MODEL_ARCHIVE_LIST,
				    ViTMSNForImageClassification,
				    ViTMSNModel,
				    ViTMSNPreTrainedModel,
				)

else:
		import sys

		lowercase__							:	Union[str, Any]											=		_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)






from abc import ABC, abstractmethod
from argparse import ArgumentParser
class 						UpperCAmelCase  (							UpperCAmelCase__     ):







						'''simple docstring'''





						@staticmethod
						@abstractmethod
						def 			snake_case__		(		__lowercase				:	ArgumentParser		):






							"""simple docstring"""






							raise NotImplementedError()






						@abstractmethod
						def 			snake_case__		(		self				:	Optional[Any]		):






							"""simple docstring"""






							raise NotImplementedError()
