






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


_a    :   int        =			DUMMY_UNKNOWN_IDENTIFIER
# An actual model hosted on huggingface.co

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

_a    :   Optional[Any]        =			"""d9e9f15bc825e4b2c9249e9578f884bbcb5e3684"""
# Sha-1 of config.json on the top of `main`, for checking purposes
_a    :   Dict        =			"""4b243c475af8d0a7754e87d7d096c92e5199ec2fe168a2ee7998e3b8e9bcb1d3"""


@contextlib.contextmanager
def 				snake_case__							(							)     ->   List[Any]:
    print("Welcome!"       )
    yield
    print("Bye!"       )


@contextlib.contextmanager
def 				snake_case__							(							)     ->   Tuple:
    print("Bonjour!"       )
    yield
    print("Au revoir!"       )







class 	_UpperCAmelCase  (  unittest.TestCase		):




      """simple docstring"""



      def 			snake_case_      (   self		):



          '''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 			snake_case_      (   self    ,	_lowerCAmelCase		):



          '''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 			snake_case_      (   self    ,	_lowerCAmelCase		):



          '''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 			snake_case_      (   self    ,	_lowerCAmelCase		):



          '''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 			snake_case_      (   self		):



          '''simple docstring'''
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["labels"]		)
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["labels", "next_sentence_label"]		)
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["start_positions", "end_positions"]		)







          class 	_UpperCAmelCase  (  _A		):




                """simple docstring"""



                pass





          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["labels"]		)
      @require_tf
      def 			snake_case_      (   self		):



          '''simple docstring'''
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["labels"]		)
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["labels", "next_sentence_label"]		)
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["start_positions", "end_positions"]		)







          class 	_UpperCAmelCase  (  _A		):




                """simple docstring"""



                pass





          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	["labels"]		)



      @require_flax
      def 			snake_case_      (   self		):



          '''simple docstring'''
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	[]		)
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	[]		)
          self.assertEqual(find_labels(_lowerCAmelCase		)    ,	[]		)







          class 	_UpperCAmelCase  (  _A		):




                """simple docstring"""



                pass





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











from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


_a    :   str        =			{"""configuration_wavlm""": ["""WAVLM_PRETRAINED_CONFIG_ARCHIVE_MAP""", """WavLMConfig"""]}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 _a    :   Optional[Any]        =			[
     """WAVLM_PRETRAINED_MODEL_ARCHIVE_LIST""",
     """WavLMForAudioFrameClassification""",
     """WavLMForCTC""",
     """WavLMForSequenceClassification""",
     """WavLMForXVector""",
     """WavLMModel""",
     """WavLMPreTrainedModel""",
 ]

if TYPE_CHECKING:
 from .configuration_wavlm import WAVLM_PRETRAINED_CONFIG_ARCHIVE_MAP, WavLMConfig

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_wavlm import (
      WAVLM_PRETRAINED_MODEL_ARCHIVE_LIST,
      WavLMForAudioFrameClassification,
      WavLMForCTC,
      WavLMForSequenceClassification,
      WavLMForXVector,
      WavLMModel,
      WavLMPreTrainedModel,
  )

else:
 import sys

 _a    :   str        =			_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)



