


'''simple docstring'''



import math







def 			_UpperCamelCase					(						UpperCamelCase__    ):
			assert isinstance(__lowerCAmelCase       ,					__lowerCAmelCase    ) 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 not number % 2:
						# Negatives, 0, 1 and all even numbers are not primes
						return False

			UpperCAmelCase__     :    List[str]         =   range(3       ,					int(math.sqrt(__lowerCAmelCase    ) + 1    )       ,					2    )
			return not any(not number % i for i in odd_numbers    )







def 			_UpperCamelCase					(						UpperCamelCase__       ,					UpperCamelCase__=1       ,					**UpperCamelCase__    ):
			UpperCAmelCase__     :    str         =   factor * value
			UpperCAmelCase__     :    Tuple         =   value

			while not is_prime(__lowerCAmelCase    ):
						value += 1 if not ("desc" in kwargs and kwargs["desc"] is True) else -1

			if value == first_value_val:
						return next_prime(value + 1       ,					**__lowerCAmelCase    )
			return value



import sys

from .dependency_versions_table import deps
from .utils.versions import require_version, require_version_core


# define which module versions we always want to check at run time
# (usually the ones defined in `install_requires` in setup.py)
#
# order specific notes:
# - tqdm must be checked before tokenizers

snake_case							:       List[str]     			=      '''python tqdm regex requests packaging filelock numpy tokenizers'''.split()
if sys.version_info < (3, 7):
						pkgs_to_check_at_runtime.append('''dataclasses''')
if sys.version_info < (3, 8):
						pkgs_to_check_at_runtime.append('''importlib_metadata''')

for pkg in pkgs_to_check_at_runtime:
						if pkg in deps:
												if pkg == "tokenizers":
																		# must be loaded here, or else tqdm check may fail
																		from .utils import is_tokenizers_available

																		if not is_tokenizers_available():
																								continue  # not required, check version only if installed

												require_version_core(deps[pkg])
						else:
												raise ValueError(f"""can't find {pkg} in {deps.keys()}, check dependency_versions_table.py""")






def 							__lowercase   ( __lowerCAmelCase							:				Optional[Any]					,    __lowerCAmelCase							:				Tuple=None   ):
							require_version(deps[pkg]					,    __lowerCAmelCase   )




