






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


UpperCamelCase 				=	DUMMY_UNKNOWN_IDENTIFIER
# An actual model hosted on huggingface.co

UpperCamelCase 				=	"main"
# Default branch name
UpperCamelCase 				=	"f2c752cfc5c0ab6f4bdec59acea69eefbee381c2"
# One particular commit (not the top of `main`)
UpperCamelCase 				=	"aaaaaaa"
# This commit does not exist, so we should 404.

UpperCamelCase 				=	"d9e9f15bc825e4b2c9249e9578f884bbcb5e3684"
# Sha-1 of config.json on the top of `main`, for checking purposes
UpperCamelCase 				=	"4b243c475af8d0a7754e87d7d096c92e5199ec2fe168a2ee7998e3b8e9bcb1d3"

@contextlib.contextmanager
def        __lowerCamelCase			(		)							->  Optional[int]:






						"""simple docstring"""





						print("""Welcome!"""		)
						yield
						print("""Bye!"""		)

@contextlib.contextmanager
def        __lowerCamelCase			(		)							->  Tuple:






						"""simple docstring"""





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



class       __UpperCAmelCase		(unittest.TestCase    ):







			def 							UpperCamelCase      (	self:  Union[str, Any]     ):







									'''simple docstring'''




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



class       __UpperCAmelCase		(unittest.TestCase    ):







			@unittest.mock.patch("""sys.stdout"""      ,	new_callable=io.StringIO     )
			def 							UpperCamelCase      (	self:  int      ,	UpperCAmelCase_:  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 							UpperCamelCase      (	self:  List[Any]      ,	UpperCAmelCase_:  List[Any]     ):







									'''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 							UpperCamelCase      (	self:  Tuple      ,	UpperCAmelCase_:  List[str]     ):







									'''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 							UpperCamelCase      (	self:  List[Any]     ):







									'''simple docstring'''




									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""labels"""]     )
									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""labels""", """next_sentence_label"""]     )
									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""start_positions""", """end_positions"""]     )



									class       __UpperCAmelCase		(UpperCAmelCase__    ):
												pass
									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""labels"""]     )







			@require_tf
			def 							UpperCamelCase      (	self:  List[Any]     ):







									'''simple docstring'''




									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""labels"""]     )
									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""labels""", """next_sentence_label"""]     )
									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""start_positions""", """end_positions"""]     )



									class       __UpperCAmelCase		(UpperCAmelCase__    ):
												pass
									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	["""labels"""]     )







			@require_flax
			def 							UpperCamelCase      (	self:  Tuple     ):







									'''simple docstring'''




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



									class       __UpperCAmelCase		(UpperCAmelCase__    ):
												pass
									self.assertEqual(find_labels(_SCREAMING_SNAKE_CASE     )      ,	[]     )






"""simple docstring"""
A:   Union[str, Any]								=		{
    0: "0",
    1: "1",
    2: "2",
    3: "3",
    4: "4",
    5: "5",
    6: "6",
    7: "7",
    8: "8",
    9: "9",
    1_0: "a",
    1_1: "b",
    1_2: "c",
    1_3: "d",
    1_4: "e",
    1_5: "f",
}

def       _snake_case						(						UpperCamelCase						:		float						):
 assert type(UpperCamelCase						) in (int, float) and decimal == int(UpperCamelCase						)
 UpperCAmelCase	:					str	=	int(UpperCamelCase						)
 UpperCAmelCase	:					Optional[int]	=	""""""
 UpperCAmelCase	:					List[str]	=	False
 if decimal < 0:
  UpperCAmelCase	:					Any	=	True
  decimal *= -1
 while decimal > 0:
  UpperCAmelCase	,		UpperCAmelCase	:					Dict	=	divmod(UpperCamelCase			,		16						)
  UpperCAmelCase	:					Union[str, Any]	=	values[remainder] + hexadecimal
 UpperCAmelCase	:					int	=	"""0x""" + hexadecimal
 if negative:
  UpperCAmelCase	:					Optional[int]	=	"""-""" + hexadecimal
 return hexadecimal


if __name__ == "__main__":
      import doctest

      doctest.testmod()
