


from dataclasses import dataclass
from typing import Callable, Optional

import datasets







@dataclass
class 					snake_case__(				datasets.BuilderConfig				):







						'''simple docstring'''




						SCREAMING_SNAKE_CASE__   :	Optional[Callable]       =				None
						SCREAMING_SNAKE_CASE__   :	Optional[dict]       =				None
						SCREAMING_SNAKE_CASE__   :	Optional[datasets.Features]       =				None




						def     lowercase_			(					self				)       ->     Union[str, Any]:
										assert self.generator is not None, "generator must be specified"

										if self.gen_kwargs is None:
														lowerCAmelCase_			:   int     					=					{}







class 					snake_case__(				datasets.GeneratorBasedBuilder				):







						'''simple docstring'''




						SCREAMING_SNAKE_CASE__   :	Optional[Any]       =				GeneratorConfig




						def     lowercase_			(					self				)       ->     str:
										return datasets.DatasetInfo(features=self.config.features				)




						def     lowercase_			(					self ,    __lowercase				)       ->     str:
										return [datasets.SplitGenerator(name=datasets.Split.TRAIN ,    gen_kwargs=self.config.gen_kwargs				)]




						def     lowercase_			(					self ,    **__lowercase				)       ->     Union[str, Any]:
										for idx, ex in enumerate(self.config.generator(**__lowercase				)				):
														yield idx, ex
'''simple docstring'''
from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_torch_available,
    is_vision_available,
)


_A		:      Optional[Any]						   ={
    '''configuration_mobilevitv2''': [
        '''MOBILEVITV2_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''MobileViTV2Config''',
        '''MobileViTV2OnnxConfig''',
    ],
}


try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 _A		:      Union[str, Any]						   =[
     '''MOBILEVITV2_PRETRAINED_MODEL_ARCHIVE_LIST''',
     '''MobileViTV2ForImageClassification''',
     '''MobileViTV2ForSemanticSegmentation''',
     '''MobileViTV2Model''',
     '''MobileViTV2PreTrainedModel''',
 ]

if TYPE_CHECKING:
 from .configuration_mobilevitva import (
     MOBILEVITV2_PRETRAINED_CONFIG_ARCHIVE_MAP,
     MobileViTVaConfig,
     MobileViTVaOnnxConfig,
 )

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_mobilevitva import (
      MOBILEVITV2_PRETRAINED_MODEL_ARCHIVE_LIST,
      MobileViTVaForImageClassification,
      MobileViTVaForSemanticSegmentation,
      MobileViTVaModel,
      MobileViTVaPreTrainedModel,
  )

else:
 import sys

 _A		:      Tuple						   =_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)