


import math
import unittest


def 			UpperCAmelCase_				(      UpperCAmelCase__  ):
					assert isinstance(UpperCAmelCase__						,							UpperCAmelCase__  ) and (
					    number >= 0
					), "'number' must been an int and positive"

					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(UpperCAmelCase__  ) + 1  )						,							6  ):
										if number % i == 0 or number % (i + 2) == 0:
															return False
					return True







class        UpperCamelCase__   (	unittest.TestCase   ):

					def   UpperCAmelCase__       (     self       :   str       ):






										'''simple docstring'''






										self.assertTrue(is_prime(2       )       )
										self.assertTrue(is_prime(3       )       )
										self.assertTrue(is_prime(5       )       )
										self.assertTrue(is_prime(7       )       )
										self.assertTrue(is_prime(11       )       )
										self.assertTrue(is_prime(13       )       )
										self.assertTrue(is_prime(17       )       )
										self.assertTrue(is_prime(19       )       )
										self.assertTrue(is_prime(23       )       )
										self.assertTrue(is_prime(29       )       )







					def   UpperCAmelCase__       (     self       :   Optional[Any]       ):






										'''simple docstring'''






										with self.assertRaises(UpperCamelCase__       ):
															is_prime(-19       )
										self.assertFalse(
										    is_prime(0       )							,					"""Zero doesn't have any positive factors, primes must have exactly two."""							,					)
										self.assertFalse(
										    is_prime(1       )							,					"""One only has 1 positive factor, primes must have exactly two."""							,					)
										self.assertFalse(is_prime(2 * 2       )       )
										self.assertFalse(is_prime(2 * 3       )       )
										self.assertFalse(is_prime(3 * 3       )       )
										self.assertFalse(is_prime(3 * 5       )       )
										self.assertFalse(is_prime(3 * 5 * 7       )       )


if __name__ == "__main__":
							unittest.main()






from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_speech_available,
    is_torch_available,
)


a					  =     {
    'configuration_trocr': ['TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP', 'TrOCRConfig'],
    'processing_trocr': ['TrOCRProcessor'],
}


try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							a					  =     [
							    'TROCR_PRETRAINED_MODEL_ARCHIVE_LIST',
							    'TrOCRForCausalLM',
							    'TrOCRPreTrainedModel',
							]


if TYPE_CHECKING:
							from .configuration_trocr import TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP, TrOCRConfig
							from .processing_trocr import TrOCRProcessor

							try:
														if not is_torch_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_trocr import TROCR_PRETRAINED_MODEL_ARCHIVE_LIST, TrOCRForCausalLM, TrOCRPreTrainedModel

else:
							import sys

							a					  =     _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)


