



from typing import TYPE_CHECKING

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


lowerCAmelCase:      List[Any]		 =		{
    'configuration_layoutlmv2': ['LAYOUTLMV2_PRETRAINED_CONFIG_ARCHIVE_MAP', 'LayoutLMv2Config'],
    'processing_layoutlmv2': ['LayoutLMv2Processor'],
    'tokenization_layoutlmv2': ['LayoutLMv2Tokenizer'],
}

try:
     if not is_tokenizers_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     lowerCAmelCase:      Dict		 =		['LayoutLMv2TokenizerFast']

try:
     if not is_vision_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     lowerCAmelCase:      List[str]		 =		['LayoutLMv2FeatureExtractor']
     lowerCAmelCase:      Any		 =		['LayoutLMv2ImageProcessor']

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     lowerCAmelCase:      List[Any]		 =		[
         'LAYOUTLMV2_PRETRAINED_MODEL_ARCHIVE_LIST',
         'LayoutLMv2ForQuestionAnswering',
         'LayoutLMv2ForSequenceClassification',
         'LayoutLMv2ForTokenClassification',
         'LayoutLMv2Layer',
         'LayoutLMv2Model',
         'LayoutLMv2PreTrainedModel',
     ]

if TYPE_CHECKING:
     from .configuration_layoutlmva import LAYOUTLMV2_PRETRAINED_CONFIG_ARCHIVE_MAP, LayoutLMvaConfig
     from .processing_layoutlmva import LayoutLMvaProcessor
     from .tokenization_layoutlmva import LayoutLMvaTokenizer

     try:
          if not is_tokenizers_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .tokenization_layoutlmva_fast import LayoutLMvaTokenizerFast

     try:
          if not is_vision_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .feature_extraction_layoutlmva import LayoutLMvaFeatureExtractor, LayoutLMvaImageProcessor

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_layoutlmva import (
              LAYOUTLMV2_PRETRAINED_MODEL_ARCHIVE_LIST,
              LayoutLMvaForQuestionAnswering,
              LayoutLMvaForSequenceClassification,
              LayoutLMvaForTokenClassification,
              LayoutLMvaLayer,
              LayoutLMvaModel,
              LayoutLMvaPreTrainedModel,
          )
else:
     import sys

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




'''simple docstring'''






import warnings

from ...utils import logging
from .image_processing_chinese_clip import ChineseCLIPImageProcessor


lowerCAmelCase:      Optional[Any]		 =		logging.get_logger(__name__)

class 							a__(      lowerCamelCase__			):







    def __init__(   self				:						Union[str, Any]		,    *__snake_case				:						List[str]		,    **__snake_case				:						Union[str, Any]			):
      warnings.warn(
          'The class ChineseCLIPFeatureExtractor is deprecated and will be removed in version 5 of Transformers.'
          ' Please use ChineseCLIPImageProcessor instead.'		,    __snake_case		,    )
      super().__init__(*__snake_case		,    **__snake_case			)