




'''simple docstring'''




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_torch_available,
)


snake_case__ 							=    {
    """configuration_unispeech_sat""": ["""UNISPEECH_SAT_PRETRAINED_CONFIG_ARCHIVE_MAP""", """UniSpeechSatConfig"""],
}

try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							snake_case__ 							=    [
							    """UNISPEECH_SAT_PRETRAINED_MODEL_ARCHIVE_LIST""",
							    """UniSpeechSatForAudioFrameClassification""",
							    """UniSpeechSatForCTC""",
							    """UniSpeechSatForPreTraining""",
							    """UniSpeechSatForSequenceClassification""",
							    """UniSpeechSatForXVector""",
							    """UniSpeechSatModel""",
							    """UniSpeechSatPreTrainedModel""",
							]

if TYPE_CHECKING:
							from .configuration_unispeech_sat import UNISPEECH_SAT_PRETRAINED_CONFIG_ARCHIVE_MAP, UniSpeechSatConfig

							try:
														if not is_torch_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_unispeech_sat import (
														    UNISPEECH_SAT_PRETRAINED_MODEL_ARCHIVE_LIST,
														    UniSpeechSatForAudioFrameClassification,
														    UniSpeechSatForCTC,
														    UniSpeechSatForPreTraining,
														    UniSpeechSatForSequenceClassification,
														    UniSpeechSatForXVector,
														    UniSpeechSatModel,
														    UniSpeechSatPreTrainedModel,
														)

else:
							import sys

							snake_case__ 							=    _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)









'''simple docstring'''




import abc
import copy
import dataclasses
from dataclasses import dataclass
from typing import ClassVar, Dict, Type, TypeVar

from ..features import Features


snake_case__ 							=    TypeVar("""T""", bound="""TaskTemplate""")






@dataclass(frozen=a__  )
class      UpperCamelCase_  (abc.ABC  ):







						"""simple docstring"""


						_lowerCAmelCase         =       42
						_lowerCAmelCase         =       42
						_lowerCAmelCase         =       42







						def    _a     (  self   :							T				,			_lowerCamelCase   :							Features     ):





											"""simple docstring"""







											return copy.deepcopy(self     )







						@property
						def    _a     (  self   :							List[str]     ):





											"""simple docstring"""







											return Features(**self.input_schema				,			**self.label_schema     )







						@property
						@abc.abstractmethod
						def    _a     (  self   :							int     ):





											"""simple docstring"""







											raise NotImplementedError







						@classmethod
						def    _a     (  cls   :							Type[T]				,			_lowerCamelCase   :							dict     ):





											"""simple docstring"""







											A_			:  Dict			=				{f.name for f in dataclasses.fields(cls     )}
											return cls(**{k: v for k, v in template_dict.items() if k in field_names}     )



