




import contextlib
import importlib
import io
import unittest

import transformers

# Try to import everything from transformers to ensure every object can be loaded.
from transformers import *  # noqa F406
from transformers.testing_utils import DUMMY_UNKNOWN_IDENTIFIER, require_flax, require_tf, require_torch
from transformers.utils import ContextManagers, find_labels, is_flax_available, is_tf_available, is_torch_available


if is_torch_available():
  from transformers import BertForPreTraining, BertForQuestionAnswering, BertForSequenceClassification

if is_tf_available():
  from transformers import TFBertForPreTraining, TFBertForQuestionAnswering, TFBertForSequenceClassification

if is_flax_available():
  from transformers import FlaxBertForPreTraining, FlaxBertForQuestionAnswering, FlaxBertForSequenceClassification


_lowerCamelCase     :		str								=       DUMMY_UNKNOWN_IDENTIFIER
# An actual model hosted on huggingface.co

_lowerCamelCase     :		Union[str, Any]								=       """main"""
# Default branch name
_lowerCamelCase     :		Tuple								=       """f2c752cfc5c0ab6f4bdec59acea69eefbee381c2"""
# One particular commit (not the top of `main`)
_lowerCamelCase     :		Tuple								=       """aaaaaaa"""
# This commit does not exist, so we should 404.

_lowerCamelCase     :		str								=       """d9e9f15bc825e4b2c9249e9578f884bbcb5e3684"""
# Sha-1 of config.json on the top of `main`, for checking purposes
_lowerCamelCase     :		List[str]								=       """4b243c475af8d0a7754e87d7d096c92e5199ec2fe168a2ee7998e3b8e9bcb1d3"""







@contextlib.contextmanager
def SCREAMING_SNAKE_CASE    (	)       ->	str:



       """simple docstring"""

       print('''Welcome!'''						)
       yield
       print('''Bye!'''						)







@contextlib.contextmanager
def SCREAMING_SNAKE_CASE    (	)       ->	Dict:



       """simple docstring"""

       print('''Bonjour!'''						)
       yield
       print('''Au revoir!'''						)


class     UpperCamelCase_   (			unittest.TestCase					):

    '''simple docstring'''






    def 	SCREAMING_SNAKE_CASE							(      self				:     Tuple)						->str:





           '''simple docstring'''

           assert transformers.__spec__ is not None
           assert importlib.util.find_spec('''transformers''') is not None


class     UpperCamelCase_   (			unittest.TestCase					):

    '''simple docstring'''






    @unittest.mock.patch('''sys.stdout''' ,			new_callable=io.StringIO)
    def 	SCREAMING_SNAKE_CASE							(      self				:     List[Any] ,			UpperCAmelCase__				:     List[Any])						->Optional[Any]:





           '''simple docstring'''

           with ContextManagers([]):
                  print('''Transformers are awesome!''')
           # The print statement adds a new line at the end of the output
           self.assertEqual(mock_stdout.getvalue() ,			'''Transformers are awesome!\n''')


    @unittest.mock.patch('''sys.stdout''' ,			new_callable=io.StringIO)
    def 	SCREAMING_SNAKE_CASE							(      self				:     str ,			UpperCAmelCase__				:     List[Any])						->Dict:





           '''simple docstring'''

           with ContextManagers([context_en()]):
                  print('''Transformers are awesome!''')
           # The output should be wrapped with an English welcome and goodbye
           self.assertEqual(mock_stdout.getvalue() ,			'''Welcome!\nTransformers are awesome!\nBye!\n''')


    @unittest.mock.patch('''sys.stdout''' ,			new_callable=io.StringIO)
    def 	SCREAMING_SNAKE_CASE							(      self				:     Union[str, Any] ,			UpperCAmelCase__				:     int)						->Union[str, Any]:





           '''simple docstring'''

           with ContextManagers([context_fr(), context_en()]):
                  print('''Transformers are awesome!''')
           # The output should be wrapped with an English and French welcome and goodbye
           self.assertEqual(mock_stdout.getvalue() ,			'''Bonjour!\nWelcome!\nTransformers are awesome!\nBye!\nAu revoir!\n''')


    @require_torch
    def 	SCREAMING_SNAKE_CASE							(      self				:     Optional[Any])						->str:





           '''simple docstring'''

           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''labels'''])
           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''labels''', '''next_sentence_label'''])
           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''start_positions''', '''end_positions'''])


           class     UpperCamelCase_   (			UpperCAmelCase__					):

               '''simple docstring'''






               pass
           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''labels'''])


    @require_tf
    def 	SCREAMING_SNAKE_CASE							(      self				:     Dict)						->Optional[Any]:





           '''simple docstring'''

           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''labels'''])
           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''labels''', '''next_sentence_label'''])
           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''start_positions''', '''end_positions'''])


           class     UpperCamelCase_   (			UpperCAmelCase__					):

               '''simple docstring'''






               pass
           self.assertEqual(find_labels(UpperCAmelCase__) ,			['''labels'''])





    @require_flax
    def 	SCREAMING_SNAKE_CASE							(      self				:     str)						->int:





           '''simple docstring'''

           self.assertEqual(find_labels(UpperCAmelCase__) ,			[])
           self.assertEqual(find_labels(UpperCAmelCase__) ,			[])
           self.assertEqual(find_labels(UpperCAmelCase__) ,			[])


           class     UpperCamelCase_   (			UpperCAmelCase__					):

               '''simple docstring'''






               pass
           self.assertEqual(find_labels(UpperCAmelCase__) ,			[])








from typing import TYPE_CHECKING

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


_lowerCamelCase     :		Tuple								=       {
    """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     :		int								=       ["""Speech2TextTokenizer"""]

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

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

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  _lowerCamelCase     :		List[Any]								=       [
      """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     :		Union[str, Any]								=       _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)


