
from typing import TYPE_CHECKING

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


lowercase						:      List[str]									= {
    'configuration_rembert': ['REMBERT_PRETRAINED_CONFIG_ARCHIVE_MAP', 'RemBertConfig', 'RemBertOnnxConfig']
}

try:
		if not is_sentencepiece_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase						:      int									= ['RemBertTokenizer']

try:
		if not is_tokenizers_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase						:      Tuple									= ['RemBertTokenizerFast']

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase						:      Any									= [
		    'REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'RemBertForCausalLM',
		    'RemBertForMaskedLM',
		    'RemBertForMultipleChoice',
		    'RemBertForQuestionAnswering',
		    'RemBertForSequenceClassification',
		    'RemBertForTokenClassification',
		    'RemBertLayer',
		    'RemBertModel',
		    'RemBertPreTrainedModel',
		    'load_tf_weights_in_rembert',
		]


try:
		if not is_tf_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase						:      List[Any]									= [
		    'TF_REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'TFRemBertForCausalLM',
		    'TFRemBertForMaskedLM',
		    'TFRemBertForMultipleChoice',
		    'TFRemBertForQuestionAnswering',
		    'TFRemBertForSequenceClassification',
		    'TFRemBertForTokenClassification',
		    'TFRemBertLayer',
		    'TFRemBertModel',
		    'TFRemBertPreTrainedModel',
		]


if TYPE_CHECKING:
		from .configuration_rembert import REMBERT_PRETRAINED_CONFIG_ARCHIVE_MAP, RemBertConfig, RemBertOnnxConfig

		try:
				if not is_sentencepiece_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_rembert import RemBertTokenizer

		try:
				if not is_tokenizers_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_rembert_fast import RemBertTokenizerFast

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_rembert import (
				    REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    RemBertForCausalLM,
				    RemBertForMaskedLM,
				    RemBertForMultipleChoice,
				    RemBertForQuestionAnswering,
				    RemBertForSequenceClassification,
				    RemBertForTokenClassification,
				    RemBertLayer,
				    RemBertModel,
				    RemBertPreTrainedModel,
				    load_tf_weights_in_rembert,
				)

		try:
				if not is_tf_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_tf_rembert import (
				    TF_REMBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    TFRemBertForCausalLM,
				    TFRemBertForMaskedLM,
				    TFRemBertForMultipleChoice,
				    TFRemBertForQuestionAnswering,
				    TFRemBertForSequenceClassification,
				    TFRemBertForTokenClassification,
				    TFRemBertLayer,
				    TFRemBertModel,
				    TFRemBertPreTrainedModel,
				)


else:
		import sys

		lowercase						:      int									= _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)

from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


lowercase						:      List[Any]									= {'configuration_swin': ['SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP', 'SwinConfig', 'SwinOnnxConfig']}


try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase						:      Dict									= [
		    'SWIN_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'SwinForImageClassification',
		    'SwinForMaskedImageModeling',
		    'SwinModel',
		    'SwinPreTrainedModel',
		    'SwinBackbone',
		]

try:
		if not is_tf_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase						:      Optional[int]									= [
		    'TF_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'TFSwinForImageClassification',
		    'TFSwinForMaskedImageModeling',
		    'TFSwinModel',
		    'TFSwinPreTrainedModel',
		]

if TYPE_CHECKING:
		from .configuration_swin import SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP, SwinConfig, SwinOnnxConfig

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_swin import (
				    SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
				    SwinBackbone,
				    SwinForImageClassification,
				    SwinForMaskedImageModeling,
				    SwinModel,
				    SwinPreTrainedModel,
				)

		try:
				if not is_tf_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_tf_swin import (
				    TF_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
				    TFSwinForImageClassification,
				    TFSwinForMaskedImageModeling,
				    TFSwinModel,
				    TFSwinPreTrainedModel,
				)

else:
		import sys

		lowercase						:      Optional[Any]									= _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)