from typing import TYPE_CHECKING

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


__a    :	int         =    {
    """configuration_lxmert""": ["""LXMERT_PRETRAINED_CONFIG_ARCHIVE_MAP""", """LxmertConfig"""],
    """tokenization_lxmert""": ["""LxmertTokenizer"""],
}

try:
		if not is_tokenizers_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__a    :	Any         =    ["""LxmertTokenizerFast"""]

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__a    :	Any         =    [
		    """LxmertEncoder""",
		    """LxmertForPreTraining""",
		    """LxmertForQuestionAnswering""",
		    """LxmertModel""",
		    """LxmertPreTrainedModel""",
		    """LxmertVisualFeatureEncoder""",
		    """LxmertXLayer""",
		]

try:
		if not is_tf_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		__a    :	Optional[int]         =    [
		    """TF_LXMERT_PRETRAINED_MODEL_ARCHIVE_LIST""",
		    """TFLxmertForPreTraining""",
		    """TFLxmertMainLayer""",
		    """TFLxmertModel""",
		    """TFLxmertPreTrainedModel""",
		    """TFLxmertVisualFeatureEncoder""",
		]


if TYPE_CHECKING:
		from .configuration_lxmert import LXMERT_PRETRAINED_CONFIG_ARCHIVE_MAP, LxmertConfig
		from .tokenization_lxmert import LxmertTokenizer

		try:
				if not is_tokenizers_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_lxmert_fast import LxmertTokenizerFast

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_lxmert import (
				    LxmertEncoder,
				    LxmertForPreTraining,
				    LxmertForQuestionAnswering,
				    LxmertModel,
				    LxmertPreTrainedModel,
				    LxmertVisualFeatureEncoder,
				    LxmertXLayer,
				)

		try:
				if not is_tf_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_tf_lxmert import (
				    TF_LXMERT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    TFLxmertForPreTraining,
				    TFLxmertMainLayer,
				    TFLxmertModel,
				    TFLxmertPreTrainedModel,
				    TFLxmertVisualFeatureEncoder,
				)

else:
		import sys

		__a    :	Optional[int]         =    _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)
from argparse import ArgumentParser

from .env import EnvironmentCommand





def 							UpperCAmelCase		(       ):







				"""simple docstring"""



				__lowercase					     =				ArgumentParser('''Diffusers CLI tool'''				,     usage='''diffusers-cli <command> [<args>]'''				)
				__lowercase					     =				parser.add_subparsers(help='''diffusers-cli command helpers'''				)

				# Register commands
				EnvironmentCommand.register_subcommand(lowercase				)

				# Let's go
				__lowercase					     =				parser.parse_args()

				if not hasattr(lowercase				,     '''func'''				):
								parser.print_help()
								exit(1				)

				# Run
				__lowercase					     =				args.func(lowercase				)
				service.run()


if __name__ == "__main__":
		main()