



'''simple docstring'''

from ..utils import DummyObject, requires_backends



class 		lowerCamelCase__      (						metaclass=A     ):




					'''simple docstring'''



					A_						    =						["""flax""", """transformers"""]




					def __init__(  self				:	Optional[Any]     ,  *UpperCamelCase_				:	Tuple     ,  **UpperCamelCase_				:	Union[str, Any]					)  ->       Dict:



						'''simple docstring'''





						requires_backends(self     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	str     ,  *UpperCamelCase_				:	Dict     ,  **UpperCamelCase_				:	List[Any]					)  ->       int:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	Optional[int]     ,  *UpperCamelCase_				:	Union[str, Any]     ,  **UpperCamelCase_				:	List[Any]					)  ->       int:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)






class 		lowerCamelCase__      (						metaclass=A     ):




					'''simple docstring'''



					A_						    =						["""flax""", """transformers"""]




					def __init__(  self				:	List[str]     ,  *UpperCamelCase_				:	List[Any]     ,  **UpperCamelCase_				:	Union[str, Any]					)  ->       str:



						'''simple docstring'''





						requires_backends(self     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	Tuple     ,  *UpperCamelCase_				:	Dict     ,  **UpperCamelCase_				:	Optional[Any]					)  ->       Tuple:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	Tuple     ,  *UpperCamelCase_				:	Optional[Any]     ,  **UpperCamelCase_				:	str					)  ->       str:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)






class 		lowerCamelCase__      (						metaclass=A     ):




					'''simple docstring'''



					A_						    =						["""flax""", """transformers"""]




					def __init__(  self				:	Optional[Any]     ,  *UpperCamelCase_				:	Optional[Any]     ,  **UpperCamelCase_				:	Union[str, Any]					)  ->       Tuple:



						'''simple docstring'''





						requires_backends(self     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	Tuple     ,  *UpperCamelCase_				:	str     ,  **UpperCamelCase_				:	Union[str, Any]					)  ->       Dict:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	str     ,  *UpperCamelCase_				:	List[str]     ,  **UpperCamelCase_				:	Dict					)  ->       List[str]:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)






class 		lowerCamelCase__      (						metaclass=A     ):




					'''simple docstring'''



					A_						    =						["""flax""", """transformers"""]




					def __init__(  self				:	Any     ,  *UpperCamelCase_				:	int     ,  **UpperCamelCase_				:	Any					)  ->       Optional[int]:



						'''simple docstring'''





						requires_backends(self     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	Optional[int]     ,  *UpperCamelCase_				:	Dict     ,  **UpperCamelCase_				:	str					)  ->       Optional[int]:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)




					@classmethod
					def 						__UpperCAmelCase     (  cls				:	Union[str, Any]     ,  *UpperCamelCase_				:	Optional[Any]     ,  **UpperCamelCase_				:	Optional[int]					)  ->       str:



						'''simple docstring'''





						requires_backends(cls     ,  ['flax', 'transformers']					)





'''simple docstring'''

from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_tokenizers_available,
    is_torch_available,
)


_A				:    Union[str, Any]     						={'''configuration_reformer''': ['''REFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''ReformerConfig''']}

try:
		if not is_sentencepiece_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_A				:    Dict     						=['''ReformerTokenizer''']

try:
		if not is_tokenizers_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_A				:    Union[str, Any]     						=['''ReformerTokenizerFast''']

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_A				:    str     						=[
		    '''REFORMER_PRETRAINED_MODEL_ARCHIVE_LIST''',
		    '''ReformerAttention''',
		    '''ReformerForMaskedLM''',
		    '''ReformerForQuestionAnswering''',
		    '''ReformerForSequenceClassification''',
		    '''ReformerLayer''',
		    '''ReformerModel''',
		    '''ReformerModelWithLMHead''',
		    '''ReformerPreTrainedModel''',
		]


if TYPE_CHECKING:
		from .configuration_reformer import REFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP, ReformerConfig

		try:
				if not is_sentencepiece_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_reformer import ReformerTokenizer

		try:
				if not is_tokenizers_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_reformer_fast import ReformerTokenizerFast

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_reformer import (
				    REFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
				    ReformerAttention,
				    ReformerForMaskedLM,
				    ReformerForQuestionAnswering,
				    ReformerForSequenceClassification,
				    ReformerLayer,
				    ReformerModel,
				    ReformerModelWithLMHead,
				    ReformerPreTrainedModel,
				)

else:
		import sys

		_A				:    Union[str, Any]     						=_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)
