

"""simple docstring"""





from typing import TYPE_CHECKING

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


_SCREAMING_SNAKE_CASE							:	List[Any]										=			{
    """configuration_dpr""": ["""DPR_PRETRAINED_CONFIG_ARCHIVE_MAP""", """DPRConfig"""],
    """tokenization_dpr""": [
        """DPRContextEncoderTokenizer""",
        """DPRQuestionEncoderTokenizer""",
        """DPRReaderOutput""",
        """DPRReaderTokenizer""",
    ],
}


try:
				if not is_tokenizers_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_SCREAMING_SNAKE_CASE							:	Optional[int]										=			[
				    """DPRContextEncoderTokenizerFast""",
				    """DPRQuestionEncoderTokenizerFast""",
				    """DPRReaderTokenizerFast""",
				]

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_SCREAMING_SNAKE_CASE							:	str										=			[
				    """DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """DPRContextEncoder""",
				    """DPRPretrainedContextEncoder""",
				    """DPRPreTrainedModel""",
				    """DPRPretrainedQuestionEncoder""",
				    """DPRPretrainedReader""",
				    """DPRQuestionEncoder""",
				    """DPRReader""",
				]

try:
				if not is_tf_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_SCREAMING_SNAKE_CASE							:	List[str]										=			[
				    """TF_DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """TF_DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """TF_DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST""",
				    """TFDPRContextEncoder""",
				    """TFDPRPretrainedContextEncoder""",
				    """TFDPRPretrainedQuestionEncoder""",
				    """TFDPRPretrainedReader""",
				    """TFDPRQuestionEncoder""",
				    """TFDPRReader""",
				]


if TYPE_CHECKING:
				from .configuration_dpr import DPR_PRETRAINED_CONFIG_ARCHIVE_MAP, DPRConfig
				from .tokenization_dpr import (
				    DPRContextEncoderTokenizer,
				    DPRQuestionEncoderTokenizer,
				    DPRReaderOutput,
				    DPRReaderTokenizer,
				)

				try:
								if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .tokenization_dpr_fast import (
								    DPRContextEncoderTokenizerFast,
								    DPRQuestionEncoderTokenizerFast,
								    DPRReaderTokenizerFast,
								)

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_dpr import (
								    DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    DPRContextEncoder,
								    DPRPretrainedContextEncoder,
								    DPRPreTrainedModel,
								    DPRPretrainedQuestionEncoder,
								    DPRPretrainedReader,
								    DPRQuestionEncoder,
								    DPRReader,
								)

				try:
								if not is_tf_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_tf_dpr import (
								    TF_DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    TF_DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    TF_DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    TFDPRContextEncoder,
								    TFDPRPretrainedContextEncoder,
								    TFDPRPretrainedQuestionEncoder,
								    TFDPRPretrainedReader,
								    TFDPRQuestionEncoder,
								    TFDPRReader,
								)

else:
				import sys

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






"""simple docstring"""







from ..utils import DummyObject, requires_backends






class 		_A    (    metaclass=_a    ):







    """simple docstring"""




    UpperCAmelCase			:				int      =			["""torch""", """transformers""", """invisible_watermark"""]






    def __init__(   self							:       int							,					*__UpperCAmelCase							:       List[Any]							,					**__UpperCAmelCase							:       Optional[int]):
      requires_backends(self							,					["torch", "transformers", "invisible_watermark"])






    @classmethod
    def       __snake_case				(   cls							:       Optional[Any]							,					*__UpperCAmelCase							:       Any							,					**__UpperCAmelCase							:       int):
      requires_backends(cls							,					["torch", "transformers", "invisible_watermark"])






    @classmethod
    def       __snake_case				(   cls							:       List[Any]							,					*__UpperCAmelCase							:       Optional[Any]							,					**__UpperCAmelCase							:       Tuple):
      requires_backends(cls							,					["torch", "transformers", "invisible_watermark"])






class 		_A    (    metaclass=_a    ):







    """simple docstring"""




    UpperCAmelCase			:				Optional[int]      =			["""torch""", """transformers""", """invisible_watermark"""]






    def __init__(   self							:       int							,					*__UpperCAmelCase							:       Tuple							,					**__UpperCAmelCase							:       Tuple):
      requires_backends(self							,					["torch", "transformers", "invisible_watermark"])






    @classmethod
    def       __snake_case				(   cls							:       int							,					*__UpperCAmelCase							:       str							,					**__UpperCAmelCase							:       Optional[int]):
      requires_backends(cls							,					["torch", "transformers", "invisible_watermark"])






    @classmethod
    def       __snake_case				(   cls							:       Any							,					*__UpperCAmelCase							:       Optional[int]							,					**__UpperCAmelCase							:       Union[str, Any]):
      requires_backends(cls							,					["torch", "transformers", "invisible_watermark"])






