






'''simple docstring'''







from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_speech_available,
    is_tf_available,
    is_torch_available,
)


__lowerCAmelCase        =							{
    "configuration_speech_to_text": ["SPEECH_TO_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP", "Speech2TextConfig"],
    "processing_speech_to_text": ["Speech2TextProcessor"],
}

try:
  if not is_sentencepiece_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase        =							["Speech2TextTokenizer"]

try:
  if not is_speech_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase        =							["Speech2TextFeatureExtractor"]

try:
  if not is_tf_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase        =							[
      "TF_SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST",
      "TFSpeech2TextForConditionalGeneration",
      "TFSpeech2TextModel",
      "TFSpeech2TextPreTrainedModel",
  ]

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase        =							[
      "SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST",
      "Speech2TextForConditionalGeneration",
      "Speech2TextModel",
      "Speech2TextPreTrainedModel",
  ]


if TYPE_CHECKING:
  from .configuration_speech_to_text import SPEECH_TO_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP, SpeechaTextConfig
  from .processing_speech_to_text import SpeechaTextProcessor

  try:
    if not is_sentencepiece_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .tokenization_speech_to_text import SpeechaTextTokenizer

  try:
    if not is_speech_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .feature_extraction_speech_to_text import SpeechaTextFeatureExtractor

  try:
    if not is_tf_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_tf_speech_to_text import (
        TF_SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
        TFSpeechaTextForConditionalGeneration,
        TFSpeechaTextModel,
        TFSpeechaTextPreTrainedModel,
    )

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_speech_to_text import (
        SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
        SpeechaTextForConditionalGeneration,
        SpeechaTextModel,
        SpeechaTextPreTrainedModel,
    )

else:
  import sys

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












'''simple docstring'''







def       __UpperCamelCase					(      lowercase_       :  list[int]   ,       lowercase_       :  list[int]   ,       lowercase_       :  int   ):
       """simple docstring"""




       return not any(
           neighbour == 1 and colored_vertices[i] == color
           for i, neighbour in enumerate(lowercase_   )   )


def       __UpperCamelCase					(      lowercase_       :  list[list[int]]   ,       lowercase_       :  int   ,       lowercase_       :  list[int]   ,       lowercase_       :  int   ):
       """simple docstring"""




       if index == len(lowercase_   ):
              return True

       # Recursive Step
       for i in range(lowercase_   ):
              if valid_coloring(graph[index]   ,       lowercase_   ,       lowercase_   ):
                     # Color current vertex
                     a_						     =			i
                     # Validate coloring
                     if util_color(lowercase_   ,       lowercase_   ,       lowercase_   ,       index + 1   ):
                            return True
                     # Backtrack
                     a_						     =			-1
       return False


def       __UpperCamelCase					(      lowercase_       :  list[list[int]]   ,       lowercase_       :  int   ):
       """simple docstring"""




       a_						     =			[-1] * len(lowercase_   )

       if util_color(lowercase_   ,       lowercase_   ,       lowercase_   ,       0   ):
              return colored_vertices

       return []




