






from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowerCamelCase     :							str    ={'''configuration_vit_msn''': ['''VIT_MSN_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''ViTMSNConfig''']}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 lowerCamelCase     :							str    =[
     '''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

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







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


lowerCamelCase     :							Dict    =logging.get_logger(__name__)





class       __a  (   A__	):
 _lowerCAmelCase	:	Optional[int]				=			'''timm_backbone'''







 def __init__(		self :       Dict							,       SCREAMING_SNAKE_CASE :       Dict=None							,       SCREAMING_SNAKE_CASE :       List[Any]=3							,       SCREAMING_SNAKE_CASE :       List[Any]=True							,       SCREAMING_SNAKE_CASE :       Dict=True							,       SCREAMING_SNAKE_CASE :       Union[str, Any]=None							,       **SCREAMING_SNAKE_CASE :       int							,       ):


      '''simple docstring'''






      super().__init__(**SCREAMING_SNAKE_CASE						)
      UpperCamelCase__      :       Union[str, Any]	    =  backbone
      UpperCamelCase__      :       Dict	    =  num_channels
      UpperCamelCase__      :       str	    =  features_only
      UpperCamelCase__      :       Dict	    =  use_pretrained_backbone
      UpperCamelCase__      :       Tuple	    =  True
      UpperCamelCase__      :       List[Any]	    =  out_indices if out_indices is not None else (-1,)