

from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowerCAmelCase__						=	{"""configuration_nat""": ["""NAT_PRETRAINED_CONFIG_ARCHIVE_MAP""", """NatConfig"""]}


try:
	if not is_torch_available():
		raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
	pass
else:
	lowerCAmelCase__						=	[
	    """NAT_PRETRAINED_MODEL_ARCHIVE_LIST""",
	    """NatForImageClassification""",
	    """NatModel""",
	    """NatPreTrainedModel""",
	    """NatBackbone""",
	]

if TYPE_CHECKING:
	from .configuration_nat import NAT_PRETRAINED_CONFIG_ARCHIVE_MAP, NatConfig

	try:
		if not is_torch_available():
			raise OptionalDependencyNotAvailable()
	except OptionalDependencyNotAvailable:
		pass
	else:
		from .modeling_nat import (
		    NAT_PRETRAINED_MODEL_ARCHIVE_LIST,
		    NatBackbone,
		    NatForImageClassification,
		    NatModel,
		    NatPreTrainedModel,
		)

else:
	import sys

	lowerCAmelCase__						=	_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)




import math



def    lowerCAmelCase__							(		SCREAMING_SNAKE_CASE_:							int )     -> bool:




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



def    lowerCAmelCase__							(		SCREAMING_SNAKE_CASE_:							int = 2_0_0_0_0_0_0 )     -> int:




				'''simple docstring'''





				return sum(num for num in range(3		,    SCREAMING_SNAKE_CASE_		,    2 ) if is_prime(SCREAMING_SNAKE_CASE_ ) ) + 2 if n > 2 else 0


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

