

'''simple docstring'''



from typing import TYPE_CHECKING

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


UpperCAmelCase					:			Tuple       =	{
    '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:
  UpperCAmelCase					:			int       =	['LayoutLMv2TokenizerFast']

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

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCAmelCase					:			Optional[int]       =	[
      '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

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











'''simple docstring'''
def A__       (	UpperCAmelCase_ = 6_0_0_8_5_1_4_7_5_1_4_3				):

						try:
												_UpperCamelCase   :						str												=  int(UpperCAmelCase_				)
						except (TypeError, ValueError):
												raise TypeError('Parameter n must be int or castable to int.'				)
						if n <= 0:
												raise ValueError('Parameter n must be greater than or equal to one.'				)
						_UpperCamelCase   :						int												=  1
						_UpperCamelCase   :						Optional[Any]												=  2
						while i * i <= n:
												while n % i == 0:
																		_UpperCamelCase   :						Union[str, Any]												=  i
																		n //= i
												i += 1
						if n > 1:
												_UpperCamelCase   :						Dict												=  n
						return int(UpperCAmelCase_				)


if __name__ == "__main__":
					print(F"""{solution() = }""")


