




'''simple docstring'''





from typing import TYPE_CHECKING

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


a		:	List[Any]       =      {
    '''configuration_openai''': ['''OPENAI_GPT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''OpenAIGPTConfig'''],
    '''tokenization_openai''': ['''OpenAIGPTTokenizer'''],
}

try:
  if not is_tokenizers_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  a		:	int       =      ['''OpenAIGPTTokenizerFast''']

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  a		:	int       =      [
      '''OPENAI_GPT_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''OpenAIGPTDoubleHeadsModel''',
      '''OpenAIGPTForSequenceClassification''',
      '''OpenAIGPTLMHeadModel''',
      '''OpenAIGPTModel''',
      '''OpenAIGPTPreTrainedModel''',
      '''load_tf_weights_in_openai_gpt''',
  ]

try:
  if not is_tf_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  a		:	Dict       =      [
      '''TF_OPENAI_GPT_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''TFOpenAIGPTDoubleHeadsModel''',
      '''TFOpenAIGPTForSequenceClassification''',
      '''TFOpenAIGPTLMHeadModel''',
      '''TFOpenAIGPTMainLayer''',
      '''TFOpenAIGPTModel''',
      '''TFOpenAIGPTPreTrainedModel''',
  ]


if TYPE_CHECKING:
  from .configuration_openai import OPENAI_GPT_PRETRAINED_CONFIG_ARCHIVE_MAP, OpenAIGPTConfig
  from .tokenization_openai import OpenAIGPTTokenizer

  try:
    if not is_tokenizers_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .tokenization_openai_fast import OpenAIGPTTokenizerFast

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_openai import (
        OPENAI_GPT_PRETRAINED_MODEL_ARCHIVE_LIST,
        OpenAIGPTDoubleHeadsModel,
        OpenAIGPTForSequenceClassification,
        OpenAIGPTLMHeadModel,
        OpenAIGPTModel,
        OpenAIGPTPreTrainedModel,
        load_tf_weights_in_openai_gpt,
    )

  try:
    if not is_tf_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_tf_openai import (
        TF_OPENAI_GPT_PRETRAINED_MODEL_ARCHIVE_LIST,
        TFOpenAIGPTDoubleHeadsModel,
        TFOpenAIGPTForSequenceClassification,
        TFOpenAIGPTLMHeadModel,
        TFOpenAIGPTMainLayer,
        TFOpenAIGPTModel,
        TFOpenAIGPTPreTrainedModel,
    )

else:
  import sys

  a		:	Union[str, Any]       =      _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)






from __future__ import annotations

import math
from itertools import permutations

def 		snake_case_   (				lowercase__     :    int     ):






				'''simple docstring'''






				if 1 < number < 4:
								# 2 and 3 are primes
								return True
				elif number < 2 or number % 2 == 0 or number % 3 == 0:
								# Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
								return False

				# All primes number are in format of 6k +/- 1
				for i in range(5       ,     int(math.sqrt(lowercase__     ) + 1     )       ,     6     ):
								if number % i == 0 or number % (i + 2) == 0:
												return False
				return True

def 		snake_case_   (				lowercase__     :    int = 7     ):






				'''simple docstring'''






				_lowerCAmelCase  						="""""".join(str(lowercase__     ) for i in range(1       ,     n + 1     )     )
				_lowerCAmelCase  						=[int("""""".join(lowercase__     )     ) for i in permutations(lowercase__       ,     lowercase__     )]
				_lowerCAmelCase  						=[num for num in perm_list if is_prime(lowercase__     )]
				return max(lowercase__     ) if pandigitals else 0


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

