
"""simple docstring"""






from __future__ import annotations





def __A						(   a_ :							list[int | float]		,		a_ :							int		,		a_ :							int     )->							int | float:




		'''simple docstring'''






		if len(a_     ) == 0:
				raise ValueError('''find_max() arg is an empty sequence'''     )
		if (
		    left >= len(a_     )
		    or left < -len(a_     )
		    or right >= len(a_     )
		    or right < -len(a_     )
		):
				raise IndexError('''list index out of range'''     )
		if left == right:
				return nums[left]
		SCREAMING_SNAKE_CASE       :     Dict				= (left + right) >> 1  # the middle
		SCREAMING_SNAKE_CASE       :     Union[str, Any]				= find_max(a_		,		a_		,		a_     )  # find max in range[left, mid]
		SCREAMING_SNAKE_CASE       :     List[Any]				= find_max(a_		,		mid + 1		,		a_     )  # find max in range[mid + 1, right]

		return left_max if left_max >= right_max else right_max


if __name__ == "__main__":
							import doctest

							doctest.testmod(verbose=True)







"""simple docstring"""






def __A						(   a_ :							int     )->							list[int]:




		'''simple docstring'''






		if num <= 0:
				raise ValueError('''Input must be a positive integer'''     )

		SCREAMING_SNAKE_CASE       :     Optional[int]				= [True] * (num + 1)

		SCREAMING_SNAKE_CASE       :     Optional[Any]				= 2
		while p * p <= num:
				if primes[p]:
						for i in range(p * p		,		num + 1		,		a_     ):
								SCREAMING_SNAKE_CASE       :     Any				= False
				p += 1

		return [prime for prime in range(2		,		num + 1     ) if primes[prime]]


if __name__ == "__main__":
					import doctest

					doctest.testmod()

					lowerCamelCase__ :       str						     =			int(input("Enter a positive integer: ").strip())
					print(prime_sieve_eratosthenes(user_num))





